Prog Web & MM

Ce document présente des exercices corrigés en langage PHP, destinés aux étudiants en programmation web. Il couvre les manipulations de chaînes de caractères, de tableaux, ainsi que la définition et l'utilisation de fonctions. Chaque exercice illustre des concepts fondamentaux à travers des exemples concrets.

D'après le document Prog Web & MM

Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Prog Web & MM

Document source

Prog Web & MM

Programming, PHP, Math · PDF · 3 pages · 2013

Afficher l'aperçu du document

Consulter le document original →

Ce document présente des exercices corrigés en langage PHP, destinés aux étudiants en programmation web. Il couvre les manipulations de chaînes de caractères, de tableaux, ainsi que la définition et l'utilisation de fonctions. Chaque exercice illustre des concepts fondamentaux à travers des exemples concrets.

Manipulation des chaînes de caractères et affichage formaté

Le premier exercice montre deux méthodes pour afficher des noms et prénoms avec une mise en forme spécifique :

  • Conversion en majuscules avec strtoupper pour le nom.
  • Majuscule sur la première lettre avec ucfirst pour le prénom.
  • Affichage formaté avec sprintf ou vsprintf pour aligner les chaînes sur 20 caractères, remplies par des underscores.

Exemple de la première méthode :

<?php
$nom1 = strtoupper("azerky");
$prenom1 = ucfirst("sophia");
echo sprintf("<tt>%'_-20s %'_-20s </tt><br />", $nom1, $prenom1);

$nom2 = strtoupper("Bazertudoh");
$prenom2 = ucfirst("Jean-Michel");
echo sprintf("<tt>%'_-20s %'_-20s </tt><br />", $nom2, $prenom2);
?>

Exemple de la deuxième méthode utilisant un tableau :

<?php
$tab[0][] = strtoupper("Azerky");
$tab[0][] = ucfirst("Sophia");
$tab[1][] = strtoupper("Bazertudoh");
$tab[1][] = ucfirst("Jean-Michel");

for ($i = 0; $i < count($tab); $i++) {
  echo vsprintf("<tt>%'_-20s %'_-20s </tt><br />", $tab[$i]);
}
?>

Travail sur les tableaux numériques et affichage HTML

Le deuxième exercice illustre la création et la manipulation de tableaux numériques, ainsi que la génération d'un tableau HTML :

  1. Création d'un tableau $tab1 contenant les entiers de 0 à 50 avec range(0,50).
  2. Création d'un tableau $tab2 contenant les valeurs décimales de 0 à 5 par division par 10 des éléments de $tab1.
  3. Création d'un tableau $tab3 où les clés sont les valeurs de $tab2 (converties en chaîne) et les valeurs sont le cosinus de ces clés.
  4. Affichage d'un tableau HTML présentant les valeurs de X et cos(X).

Extrait du code pour la création du tableau cosinus :

<?php
$tab1 = range(0, 50);

foreach ($tab1 as $ind => $val) {
  $tab2[$ind] = $val / 10;
}

foreach ($tab2 as $ind => $val) {
  $val = (string) $val;
  $tab3[$val] = cos($val);
}

echo "<table border='3' width='60%'>";
echo "<caption><b>Tableau de valeurs de la fonction cosinus</b></caption>";
echo "<tr><th>X</th><th>cos(X)</th></tr>";
foreach ($tab3 as $cle => $val) {
  echo "<tr><td>$cle</td><td>$val</td></tr>";
}
echo "</table>";
echo "<hr />";
?>

Définition et utilisation d'une fonction de calcul de somme

Le troisième exercice présente une fonction PHP calculant la somme d'une série selon une formule donnée, avec un arrondi au nombre de décimales souhaité.

Définition de la fonction SOMME :

<?php
function SOMME($n, $d, $x) {
  $som = 0;
  $fact = 1;
  for ($i = 0; $i <= $n; $i++) {
    // Calcul de la factorielle de $i
    if ($i == 0) {
      $fact = 1;
    } else {
      $fact *= $i;
    }
    // Calcul de la somme
    $som += (pow($x, 2 * $i + 1)) / $fact;
  }
  return round($som, $d);
}
?>

Utilisation dans un script principal :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Fonction de calcul de la somme des termes d'une suite</title>
</head>
<body>
<?php
include("somme.php");
echo SOMME(10, 6, 1);
?>
</body>
</html>

Fonction de transformation d'un tableau de chaînes

Le quatrième exercice définit une fonction qui transforme chaque élément d'un tableau de chaînes en mettant la première lettre en majuscule et le reste en minuscules. La fonction modifie le tableau par référence.

Définition de la fonction TransTab :

<?php
function TransTab (&$tab) {
  foreach ($tab as $ind => $val) {
    $tab[$ind] = ucfirst(strtolower($val));
  }
  return $tab;
}
?>

Exemple d'utilisation dans un script principal :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Fonction TransTab</title>
</head>
<body>
<?php
include("Fonction.php");

// Tableau avant transformation
$tabch = array("AzertToTO", "Sous peAu", "sARtHES jp");

echo "Tableau avant transformation : <br/>";
print_r($tabch);

echo "<br/>Tableau après transformation : <br/>";
print_r(TransTab($tabch));
?>
</body>
</html>

Glossaire des termes clés

  • strtoupper : fonction PHP qui convertit une chaîne en majuscules.
  • ucfirst : fonction PHP qui met en majuscule la première lettre d'une chaîne.
  • sprintf / vsprintf : fonctions PHP pour formater des chaînes avec des spécificateurs.
  • range : fonction PHP qui crée un tableau contenant une séquence de valeurs.
  • foreach : structure de boucle pour parcourir les éléments d'un tableau.
  • pow : fonction PHP qui calcule la puissance d'un nombre.
  • round : fonction PHP qui arrondit un nombre à un certain nombre de décimales.
  • passage par référence (&) : permet de modifier directement la variable passée en argument.
  • print_r : fonction PHP qui affiche la structure et le contenu d'une variable.

Points clés à retenir

  • La manipulation des chaînes de caractères en PHP permet de normaliser l'affichage (majuscules, capitalisation).
  • Les tableaux peuvent être créés, modifiés et parcourus facilement avec range et foreach.
  • La génération dynamique de tableaux HTML est simple à réaliser en PHP.
  • Les fonctions permettent d'encapsuler des calculs complexes et d'améliorer la réutilisabilité du code.
  • Le passage par référence est utile pour modifier un tableau directement dans une fonction.

Partager

Commentaires

Aucun commentaire pour le moment. Posez la première question.

Les commentaires sont relus avant publication. Votre e-mail n'est jamais affiché.

← Toutes les révisions