From 9fe033ea88c2f705ec18c232873d056e0c229d72 Mon Sep 17 00:00:00 2001 From: Gaspard Coulet Date: Wed, 28 Apr 2021 23:05:53 +0200 Subject: Initial commit --- sem_5/HLIN510_Web/tp2/Mastermind.php | 74 ++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 sem_5/HLIN510_Web/tp2/Mastermind.php (limited to 'sem_5/HLIN510_Web/tp2/Mastermind.php') diff --git a/sem_5/HLIN510_Web/tp2/Mastermind.php b/sem_5/HLIN510_Web/tp2/Mastermind.php new file mode 100644 index 0000000..548af3a --- /dev/null +++ b/sem_5/HLIN510_Web/tp2/Mastermind.php @@ -0,0 +1,74 @@ +code.="$c"; + } + } + /** teste la validité d'une chaîne code et retourne un booléen : + * - que des chiffres ; + * - de même taille que $this->code + */ + public function valide($code){ + if(!is_string($code) || strlen($code)!=strlen($this->code) + || !ctype_digit($code)){ + return false; + } + return true; + } + /** teste une chaîne de caractères par rapport au code et retourne un + * tableau de 2 entiers : ( nb de chiffres bien placés, nb de chiffres mal + * placés ou false si invalide + */ + public function test($code){ + if(!$this->valide($code)) + return false; + $res=array("bon"=>0, "mal"=>0); + $tampon=$this->code; + for($i=0;$ilessai[$code]=$res; + return $res; + } + + /** retourne la taille du code */ + public function getTaille () { + return strlen($this->code); + } + public function getEssais () { + return $this->lessai; + } +} +// $m=new Mastermind(); //pour tester +// print_r($m); +// print_r($m->test("1234")); +?> -- cgit v1.2.3