Как в цикле создать 50 кошек и 50 собак с любыми параметрами из задания 66?

1

мой код http://joxi.ru/12MgNO4H434ePr

php
class
oop

5 ответов

6

Пример с созданием классов кошек и собак в цикле с ООП на PHP.

<?php 

class Animal{
		private $name;
		private $color;
		private $breed;
		private $age;
		

		public function __construct( $name, $color, $breed, $age){
			$this->name  = $name;
			$this->color = $color;
			$this->breed = $breed;
			$this->age   = $age;
		}

		public function say(){
			echo "ee имя - ".$this->name.", окраска - ".$this->color.", порода - ".$this->breed.", возраст - ".$this->age;
		}
	}

	class Cat extends Animal{
		public function catSay(){
			echo "Это кошка ";
		}
	}

	class Dog extends Animal{
		public function dogSay() {
			echo "Это собака ";
		}
	}

	/* Массивы с именами, окраской, породой */
    $randName = array("Айли","Птолемей","Жук","Чауст","Аркон","Рыжик","Фокс","Скейч","Пророк","Челли","Найт","Кельт","Акбай");
    $randColor = array("Черный","Пятнистый","Белый","Коричневый","Серый");
    $randCatBreed = array("Сиамская","Сибирская","Персидская","Норвежская лесная","Уральский рекс","Японский бобтейл","Корат");
    $randDogBreed = array("Акита-ину","Бордер-колли","Кеесхонд","Немецкая овчарка","Фокстерьер","Такса","Эрдельтерьер");
	

    /*
	* Функции для рандомизации: rand и mt_rand.
	* Документация про эти функции: http://php.net/manual/ru/function.mt-rand.php
	* Документация про эти функции: http://php.net/manual/ru/function.rand.php
    */

	for ($i = 0; $i <= 50; $i++) { 
		$rName = mt_rand(0, count($randName) - 1);
		$rColor = mt_rand(0, count($randColor) - 1);
		$rBreed = mt_rand(0, count($randCatBreed) - 1);

		$cat = new Cat($randName[$rName], $randColor[$rColor], $randCatBreed[$rBreed], rand(1 ,15));
		$cat->catSay();
		$cat->say();

		echo"<br>";
	}

	for ($i = 0; $i <= 50; $i++) { 
		$rName = mt_rand(0, count($randName) - 1);
		$rColor = mt_rand(0, count($randColor) - 1);
		$rBreed = mt_rand(0, count($randDogBreed) - 1);

		$dog = new Dog($randName[$rName], $randColor[$rColor], $randDogBreed[$rBreed], rand(1 ,15));
		$dog->dogSay();
		$dog->say();

		echo"<br>";
	}
 ?>

0

Спасибо!

1

В коде ошибка! В задании требовалось срандомить не по 51 животному, а по 50! А вообще круто получилось.

0

поменяй вместо '<=50' на '<50'

2

Спасибо! Будем разбираться...)))

Sign up or Log in to write an answer