<?php // archive-ipq-co.narod.ru abstract class Worker { public $rang; // Ранг сотрудника 1-3 public $dicrementcoffe; // выжрано кофе public $stavka; // начальная ставка public $mainingDocument; // Произвел документов public $endStavka; // окончательная ставка, вычисляется через функцию EndStavka public $boss = false; // является ли сотрудник начальником public function __construct(){$this->endStavka=$this->getendStavka();} public function getendStavka() { $percent=1; if ($this->rang==2) { $percent=1.25; } elseif ($this->rang==3) { $percent=1.5; } else { $percent=1; } $endStavkaB = $this->stavka * $percent; if ($this->boss) { $endStavkaB *= 1.5; } return $endStavkaB; } } class Menedger extends Worker { public $dicrementcoffe = 20; public $stavka = 500; public $mainingDocument = 200; } class Market extends Worker { public $dicrementcoffe = 15; public $stavka = 400; public $mainingDocument = 150; } class Engeener extends Worker { public $dicrementcoffe = 5; public $stavka = 200; public $mainingDocument = 50; } class Analitic extends Worker { public $dicrementcoffe = 50; public $stavka = 800; public $mainingDocument = 5; } class Departament // возвращает массив с работниками в каждом департаменте { public $name; public $workers; public $menedgerA; //1 rang public $menedgerB; //2 rang public $menedgerC; //3 rang public $menedgerBoss; //Руководитель // инженеры public $engeenerA; //1 rang public $engeenerB; //2 rang public $engeenerC; //3 rang public $engeenerBoss; //Руководитель //маркетологи public $marketA;//1 rang public $marketB;//2 rang public $marketC;//3 rang public $marketBoss;//Руководитель //аналитики public $analiticA; //1 rang public $analiticB; //2 rang public $analiticC; //3 rang public $analiticBoss; public function __construct(){$this->workers=$this->quantityWorker();} public function quantityWorker () // Возвращает массив с сотрудниками { for ($i=0; $i<$this->menedgerA; $i++) // заносим в массив менеджеров 1й ранг { $w = new Menedger; $w->rang = 1; $workers[] = $w; } for ($i=0; $i<$this->menedgerB; $i++) // заносим в массив менеджеров 2й ранг { $w = new Menedger; $w->rang = 2; $workers[] = $w; }for ($i=0; $i<$this->menedgerA; $i++) // заносим в массив менеджеров 1й ранг { $w = new Menedger; $w->rang = 1; $workers[] = $w; }for ($i=0; $i<$this->menedgerB; $i++) // заносим в массив менеджеров 3й ранг { $w = new Menedger; $w->rang = 3; $workers[] = $w; } for ($i=0; $i<$this->menedgerBoss; $i++) // заносим в массив менеджеров руководителей { $w = new Menedger; $w->rang = 1; $w->boss = true; $workers[] = $w; }for ($i=0; $i<$this->engeenerA; $i++) // заносим в массив инженеров 1й ранг { $w = new Engeener; $w->rang = 1; $workers[] = $w; }for ($i=0; $i<$this->engeenerB; $i++) // заносим в массив инжей 2й ранг { $w = new Engeener; $w->rang = 2; $workers[] = $w; }for ($i=0; $i<$this->engeenerC; $i++) // заносим в массив инжей 3й ранг { $w = new Engeener; $w->rang = 3; $workers[] = $w; } for ($i=0; $i<$this->engeenerBoss; $i++) // заносим в массив инжей боссов { $w = new Engeener; $w->rang = 1; $w->boss = true; $workers[] = $w; } for ($i=0; $i<$this->marketA; $i++) // заносим в массив маркетологов 1 { $w = new Market; $w->rang = 1; $workers[] = $w; } for ($i=0; $i<$this->marketB; $i++) // заносим в массив маркетологов 2 { $w = new Market; $w->rang = 2; $workers[] = $w; } for ($i=0; $i<$this->marketC; $i++) // заносим в массив мfhrtnjkjujd 3 { $w = new Market; $w->rang = 3; $workers[] = $w; } for ($i=0; $i<$this->marketBoss; $i++) // заносим в массив Boss Market { $w = new Market; $w->rang = 1; $w->boss = true; $workers[] = $w; } for ($i=0; $i<$this->analiticA; $i++) // заносим в массив Analitic 1 { $w = new Analitic; $w->rang = 1; $workers[] = $w; }for ($i=0; $i<$this->analiticB; $i++) // заносим в массив Analitic 2 { $w = new Analitic; $w->rang = 2; $workers[] = $w; }for ($i=0; $i<$this->analiticC; $i++) // Analitic 3 { $w = new Analitic; $w->rang = 3; $workers[] = $w; } for ($i=0; $i<$this->analiticC; $i++) // Analitic BoSS { $w = new Analitic; $w->rang = 3; $w->boss = true; $workers[] = $w; } return $workers; } } class ProcurementDivision extends Departament { public $name = "Закупок"; public $menedgerA=9; public $menedgerB=3; public $menedgerC=2; public $marketA=2; public $menedgerBoss=1; //поменять в классе на ранг } $quest = new ProcurementDivision;
Standard input is empty
object(ProcurementDivision)#1 (18) { ["name"]=> string(14) "Закупок" ["menedgerA"]=> int(9) ["menedgerB"]=> int(3) ["menedgerC"]=> int(2) ["marketA"]=> int(2) ["menedgerBoss"]=> int(1) ["workers"]=> array(27) { [0]=> object(Menedger)#2 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [1]=> object(Menedger)#3 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [2]=> object(Menedger)#4 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [3]=> object(Menedger)#5 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [4]=> object(Menedger)#6 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [5]=> object(Menedger)#7 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [6]=> object(Menedger)#8 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [7]=> object(Menedger)#9 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [8]=> object(Menedger)#10 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [9]=> object(Menedger)#11 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(2) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [10]=> object(Menedger)#12 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(2) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [11]=> object(Menedger)#13 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(2) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [12]=> object(Menedger)#14 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [13]=> object(Menedger)#15 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [14]=> object(Menedger)#16 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [15]=> object(Menedger)#17 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [16]=> object(Menedger)#18 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [17]=> object(Menedger)#19 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [18]=> object(Menedger)#20 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [19]=> object(Menedger)#21 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [20]=> object(Menedger)#22 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [21]=> object(Menedger)#23 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(3) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [22]=> object(Menedger)#24 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(3) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [23]=> object(Menedger)#25 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(3) ["endStavka"]=> int(500) ["boss"]=> bool(false) } [24]=> object(Menedger)#26 (6) { ["dicrementcoffe"]=> int(20) ["stavka"]=> int(500) ["mainingDocument"]=> int(200) ["rang"]=> int(1) ["endStavka"]=> int(500) ["boss"]=> bool(true) } [25]=> object(Market)#27 (6) { ["dicrementcoffe"]=> int(15) ["stavka"]=> int(400) ["mainingDocument"]=> int(150) ["rang"]=> int(1) ["endStavka"]=> int(400) ["boss"]=> bool(false) } [26]=> object(Market)#28 (6) { ["dicrementcoffe"]=> int(15) ["stavka"]=> int(400) ["mainingDocument"]=> int(150) ["rang"]=> int(1) ["endStavka"]=> int(400) ["boss"]=> bool(false) } } ["engeenerA"]=> NULL ["engeenerB"]=> NULL ["engeenerC"]=> NULL ["engeenerBoss"]=> NULL ["marketB"]=> NULL ["marketC"]=> NULL ["marketBoss"]=> NULL ["analiticA"]=> NULL ["analiticB"]=> NULL ["analiticC"]=> NULL ["analiticBoss"]=> NULL }