codepad
[
create a new paste
]
login
|
about
Language:
C
C++
D
Haskell
Lua
OCaml
PHP
Perl
Plain Text
Python
Ruby
Scheme
Tcl
<?php /** * Klasa reprezentująca talię */ class Talia { /* @var $talia Karta[] */ private $talia = array(); /** * Konstruktor inicjujący talię */ public function __construct() { $kolory = array('Kier', 'Karo', 'Trefl', 'Pik'); $wartosci = array('As', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'Jupek', 'Dama', 'Krol'); foreach($wartosci as $wartosc) { foreach ($kolory as $kolor) { $this->talia[] = new Karta($kolor, $wartosc); } } } /** * * @return Karta losowa karta */ public function wybierzLosowa() { $index = array_rand($this->talia); $karta = $this->talia[$index]; unset ($this->talia[$index]); return $karta; } /** * * @param Karta $karta wybiera Kartę, o ile jest w talii * @return Karta */ public function wybierzKonkretna(Karta $karta) { $index = $this->wTalii($karta); if( $index !== false ) { unset( $this->talia[ $index ] ); return $karta; } else { return false; } } /** * * @param Karta $karta dodaje kartę do talii, o ile już nie istnieje * @return bool true jeżeli dodane, false w przeciwnym wypadku */ public function odlozDoTalii(Karta $karta) { if( $this->wTalii($karta) === false ){ $this->talia[] = $karta; return true; } else { return false; } } private function wTalii(Karta $karta) { return array_search($karta, $this->talia); } }
Private
[
?
]
Run code
Submit