Source de: parite.php
Retour
<?php
//Code servant a afficher le source.
echo "<link rel=\"stylesheet\" type=\"text/css\" href=\"../css/sga.css\">";
Echo "<A href=\"show_source.php?script=parite.php\">Voir source</A><br><br>";
//Code de l'exercice.
$annuaire_stagiaires=array("Madame Durant" => array("21, rue Georges Brassens","94000","Creteil"),
"Mademoiselle Dupré" => array("54, rue Jacques Brel", "75000","Paris"),
"Père Alain" => array("13, rue des Saint pères", "93000", "Saint-Denis"),
"Monsieur Camus" => array("79, rue du scribe", "92160","Antony"),
"Jean-Marc Leblanc" => array("rue des blanc manteaux", "91000","Montfermeil")
);
$msg = "Nombre de stagiaires ";
//On définit la fonction qui déterminera la parité et le nombre hommes/femmes'
function ajoute_stagiaire($mode = '',$chaine='')
{
global $msg;
static $nbF = 0;
static $nbM = 0;
if($mode!='affiche'){
if(eregi("Madame",$chaine)){
$nbF++; // on incrémente le nombre de stagiaires femme
}
elseif(eregi("Mademoiselle",$chaine))
{
$nbF++; // on incrémente le nombre de stagiaires femme
}
else
{
$nbM++; // on incrémente le nombre de stagiaires homme
}
}
//Si la fonction a été appellée avec le paramètre $mode='affiche'
//alors on calcul la parité on met en page et on affiche le résultat
if($mode == "affiche")
{
$total= $nbF + $nbM;
$resultat = "Calcul de la parité sur un total de $total stagiaires : <br>";
$resultat .= $msg."femmes : ".$nbF."<br>"; // on affiche le nombre de stagiaires
$resultat .= $msg."hommes : ".$nbM."<br>"; // on affiche le nombre de stagiaires
$resultat .= moyenne_parité($nbF,$nbM); // on calcul la moyenne de la parité
echo $resultat; // on affiche le résultat
}
}
// on calcul la parité et on renvoi le résultat sous forme de chaine
function moyenne_parité($nbF=1,$nbM=1)
{
$total= $nbF + $nbM;
$PcentF=round(100/($total/$nbF),2);
$PcentM=round(100/($total/$nbM),2);
return "soit $PcentF de femmes et $PcentM d'hommes"; // on renvoi le nombre de stagiaires
}
// on parcour le tableau et pour chaque élément du tableau on éxécute la fonction ajoute_stagiaire
foreach ($annuaire_stagiaires as $k => $adresse)
{
ajoute_stagiaire('',$k); // incrémente nb de 1
}
//on execute la fonction ajoute_stagiaire avec le paramètre $mode='affiche'
//pour afficher le résultat
ajoute_stagiaire("affiche"); // affiche Nombre de stagiaires
?>
Traité le : 26/08/2026 21:51:57