"", "nom" => "", "age" => 0, "heure" => 0, "minute" => 0, "seconde" => 0, "tempstotal" => 0.0, "contribution" => 0.0 ]; (string) $saisieTexte=""; //demander/stocker le prénom while(!$saisieTexte): print("Bonjour quel est votre prénom ? "); $saisieTexte = trim(strval(fgets(STDIN))); endwhile; $infoparticipant["prenom"] = $saisieTexte; //demander/stocker le nom (string) $saisieNom=""; while(!$saisieNom): print("Quel est votre nom ? "); $saisieNom= trim(strval(fgets(STDIN))); endwhile; $infoparticipant["nom"] = $saisieNom; //demander/stocker l'age (int) $saisieAge= 0; while(!$saisieAge): print("Quel est votre age ? "); $saisieAge = intval(trim(strval(fgets(STDIN)))); endwhile; $infoparticipant["age"] = $saisieAge; // on verifie que la durée de la course n'est pas 00:00:00 while ($infoparticipant["heure"] == 0 && $infoparticipant["minute"] == 0 && $infoparticipant["seconde"] == 0): // Saisie et Stockage des données temps (int) $saisieHeure = -1; while ($saisieHeure < 0): print('saisir heure ? '); $saisieHeure = intval(trim(strval(fgets(STDIN)))); endwhile; // Pour stocker la valeur de la variable saisieHeure dans le tableau listeTemps $infoparticipant ["heure"]= $saisieHeure; (int) $saisieMinute= -1; while (!($saisieMinute >=0 && $saisieMinute <= 59)): print('saisir minute ? '); $saisieMinute = intval(trim(strval(fgets(STDIN)))); endwhile; // Pour stocker la valeur de la variable saisieMinute dans le tableau listeTemps $infoparticipant ["minute"]= $saisieMinute; (int) $saisieSeconde= -1; while (!($saisieSeconde >=0 && $saisieSeconde <= 59)): print('saisir seconde ? '); $saisieSeconde = intval(trim(strval(fgets(STDIN)))); endwhile; // Pour stocker la valeur de la variable saisieSeconde dans le tableau listeTemps $infoparticipant ["seconde"]= $saisieSeconde; endwhile; // Conversion heure et seconde en minute + envoie a key(tempstotal) $infoparticipant["tempstotal"] = $infoparticipant["heure"]*60 + $infoparticipant["minute"] + $infoparticipant["seconde"]/60; $infoparticipant["contribution"] = $infoparticipant["tempstotal"]*DON_PAR_MINUTE; if($infoparticipant["age"] < 18 ): printf(" Le participant %s %s contribue de: %g euros". PHP_EOL ,$infoparticipant["nom"][0] ,$infoparticipant["prenom"][0] , $infoparticipant["contribution"]); else: printf(" Le participant %s %s contribue de: %g euros". PHP_EOL ,$infoparticipant["nom"] ,$infoparticipant["prenom"] , $infoparticipant["contribution"]); endif; $additioncontribution = $additioncontribution + $infoparticipant["contribution"]; printf("La contribution totale est actuellement de %g euros". PHP_EOL ,$additioncontribution); // Stock les données saisies par l'utilisateur dans le tableau $ListeParticipants[] $ListeParticipants[]= $infoparticipant; // print_r($ListeParticipants); //il faut une liste classée par tranche d'age et par le temps décroissant // TRANCHES D'AGES switch ($infoparticipant["age"]) : case ($infoparticipant ["age"] < 8) : //equivalent à case ($infoparticipant["age"] == ($infoparticipant["age"] < 8)) print('Vous êtes dans la tranche d\'âge 8 ans ou moins.'). PHP_EOL; break; case ($infoparticipant ["age"] < 10) : print('Vous êtes dans la tranche d\'âge 8 - 10 ans.'). PHP_EOL; break; case ($infoparticipant ["age"] < 14) : print('Vous êtes dans la tranche d\'âge 10 - 14 ans.'). PHP_EOL; break; case ($infoparticipant ["age"] <= 17) : print('Vous êtes dans la tranche d\'âge 14 - 18 ans.'). PHP_EOL; break; case ($infoparticipant ["age"] < 25) : print('Vous êtes dans la tranche d\'âge 18 - 25 ans.'). PHP_EOL; break; case ($infoparticipant ["age"] < 45) : print('Vous êtes dans la tranche d\'âge 25 - 45 ans.'). PHP_EOL; break; case ($infoparticipant ["age"] < 60) : print('Vous êtes dans la tranche d\'âge 45 - 60 ans.'). PHP_EOL; break; case ($infoparticipant ["age"] < 70) : print('Vous êtes dans la tranche d\'âge 60 - 70 ans.'). PHP_EOL; break; default : print('Vous êtes dans la tranche d\'âge 70 ans et plus.'). PHP_EOL; endswitch; //chaque sponsor verse un % précis de la somme totale. (array) $SPONSORS = [ "Super U" => 0.15, "Garage Moulin" => 0.045, "Bijouterie Excelior" => 0.045, "Boucherie Sanzos" => 0.025, "Carrefour Market" => 0.075, "Boulangerie Giraud" => 0.02, "Cabinet comptable AGC" => 0.045, "Lambert et Colin avocats associés" => 0.055, "Chez Romain (épicerie)" => 0.05, "Le café de la gare (bar-restaurant)" => 0.05, "Cinéma Le Plaza" => 0.04, "Lions Club" => 0.125, "Relai H" => 0.055, "Mc Donalds (SARL Bernard)" => 0.095, "Starbuck café" => 0.08, "La page blanche (libraire-papeterie)" => 0.045 ]; (array)$partsponsor =[ "Super U" => $SPONSORS[ "Super U"]*$additioncontribution, "Garage Moulin" => $SPONSORS["Garage Moulin"]*$additioncontribution, "Bijouterie Excelior" => $SPONSORS["Bijouterie Excelior"]*$additioncontribution, "Boucherie Sanzos" => $SPONSORS["Boucherie Sanzos"]*$additioncontribution, "Carrefour Market" => $SPONSORS["Carrefour Market"]*$additioncontribution, "Boulangerie Giraud" => $SPONSORS["Boulangerie Giraud"]*$additioncontribution, "Cabinet comptable AGC" => $SPONSORS["Cabinet comptable AGC"]*$additioncontribution, "Lambert et Colin avocats associés" => $SPONSORS["Lambert et Colin avocats associés"]*$additioncontribution, "Chez Romain (épicerie)" => $SPONSORS["Chez Romain (épicerie)"]*$additioncontribution, "Le café de la gare (bar-restaurant)" => $SPONSORS["Le café de la gare (bar-restaurant)"]*$additioncontribution, "Cinéma Le Plaza" => $SPONSORS["Cinéma Le Plaza"]*$additioncontribution, "Lions Club" => $SPONSORS["Lions Club"]*$additioncontribution, "Relai H" => $SPONSORS["Relai H"]*$additioncontribution , "Mc Donalds (SARL Bernard)" => $SPONSORS["Mc Donalds (SARL Bernard)"]*$additioncontribution, "Starbuck café" => $SPONSORS["Starbuck café"]*$additioncontribution, "La page blanche (libraire-papeterie)" => $SPONSORS["La page blanche (libraire-papeterie)"]*$additioncontribution ]; print("La contribution en euros des différent sponsors est :".PHP_EOL); print_r($partsponsor); $classement=[]; foreach($ListeParticipants as $participantT): $participantT=$participantT["tempstotal"].' '.$participantT["nom"]; $classement[]=$participantT; endforeach; // print_r($Participants); arsort($classement); // print_r($participant); // print($participant["tempstotal"].PHP_EOL); print('Le classement generale actuel :'.PHP_EOL); print_r($classement); (string) $choixFin = ''; while ( $choixFin != 'n' && $choixFin != 'y'): print('Voulez vous continuer la course (y / n) ?'); $choixFin = trim(strval(fgets(STDIN))); endwhile; $courseActive = ($choixFin == 'y'); endwhile; // function initiales($nom){ // $nom_initiale = ''; // déclare le recipient // $n_mot = explode(" ",$nom); // foreach($n_mot as $lettre){ // $nom_initiale .= $lettre{0}.'.'; // } // return strtoupper($nom_initiale); // } ?>