Basculer le menu
Changer de menu des préférences
Basculer le menu personnel
Non connecté(e)
Votre adresse IP sera visible au public si vous faites des modifications.

Php algo td2

De The Linux Craftsman
Version datée du 11 mars 2014 à 20:08 par Jc.forton (discussion | contributions) (Page créée avec « = Sujet = Sujet_TD2.pdf = Partie A = <div class="toccolours mw-collapsible mw-collapsed" style="width:700px"> <big>Exercice 1</big> <sour... »)
(diff) ← Version précédente | Version actuelle (diff) | Version suivante → (diff)

Sujet

Sujet_TD2.pdf

Partie A

Exercice 1

FONCTION lettre_au_hasard()
VAR
   RETOURNER alphabet[alea(0,25)]
FIN FONCTION


Exercice 2

FONCTION noms(liste, lettre)
VAR
   resultat : liste de chaînes de caractères
   i : entier
   i <- 0
   POUR TOUT nom DE liste
      SI nom[0] = 'lettre'
         resultat[i] <- nom
      FIN SI
      i++
   FIN POUR
   RETOURNE resultat
FIN FONCTION

Partie B

Exercice 3

function lettre_au_hasard() {
   global $alphabet;
   return $alphabet [rand ( 0, 25 )];
}


Exercice 4

function noms($liste, $lettre) {
   $resultat = array();
   foreach ($liste as $nom){
      if(substr($nom, 0, 1) == $lettre){
         $resultat[] = $nom;
      }
   }
   return $resultat;
}


Exercice 5

<?php
$alphabet = array (
   "A",
   "B",
   "C",
   "D",
   "E",
   "F",
   "G",
   "H",
   "I",
   "J",
   "K",
   "L",
   "M",
   "N",
   "O",
   "P",
   "Q",
   "R",
   "S",
   "T",
   "U",
   "V",
   "W",
   "X",
   "Y",
   "Z" 
);
$listenoms = array (
   "Alain",
   "Antoine",
   "Bernard",
   "Colin",
   "Christine",
   "François",
   "Guy",
   "Gérard",
   "Léa",
   "Léon",
   "Louis",
   "Nathalie",
   "Serge",
   "Sylvie",
   "Sylvain",
   "Vincent" 
);
function lettre_au_hasard() {
   global $alphabet;
   return $alphabet [rand ( 0, 25 )];
}
function noms($liste, $lettre) {
   $resultat = array();
   foreach ($liste as $nom){
      if(substr($nom, 0, 1) == $lettre){
         $resultat[] = $nom;
      }
   }
   return $resultat;
}
function main(){
   global $listenoms;
   /* Lecture de la lettre */
   $lettre = lettre_au_hasard();
   /* Récupération des noms */
   $noms = noms($listenoms, $lettre);
   /* Récupération de la longeur */
   $size = sizeof($noms);   
   /* Affichage du résultat */
   if ($size == 0) {
      echo "Il n’y a pas de noms commençant par la lettre ".$lettre;
   }else if ($size == 1){
      echo "Il y a 1 nom commençant par la lettre ".$lettre."\n";
      echo "Ce nom est ".$noms[0];
   }else{
      echo "Il y a ".$size." noms commençant par la lettre ".$lettre."\n";
      echo "Ces noms sont: \n";
      foreach ($noms as $nom){
         echo "- ".$nom."\n";
      }
   }
   echo "\n";
}

main();
?>

Exécution

# php -f TD2.php 
Il n’y a pas de noms commençant par la lettre P

# php -f TD2.php 
Il y a 2 noms commençant par la lettre C
Ces noms sont: 
- Colin
- Christine

# php -f TD2.php 
Il y a 1 nom commençant par la lettre N
Ce nom est Nathalie