Aide pour le TP n°5 de Programmation 1

Exercice 1 : fonctions, robustesse et convivialité d'un programme

Fonction Carré
Entrée : un entier naturel n.
Sortie : n2, calculé avec le théorème des impairs.
K← 0;
Pour i de 1 à n faire
  K← K+2i−1;
Retourner K.

Algorithme PlusieursCarrés
Donnée : une suite d'entiers naturels saisis au clavier (la saisie se termine avec un nombre strictement négatif).
Résultat : affichage du carré de chacun de ces entiers.
Répéter
  Saisir N;   // N.B. Gérer en C les saisies inattendues...
  Si N≥0 alors Afficher Carré(N);
  jusqu'à N<0.

Exercice 2 : approfondissement sur les chaines

Fonction Compter
Entrée : une chaine non vide S, un caractère C.
Sortie : le nombre d'occurrence de C dans S.
K← 0;
Pour i de 0 à longueur(S)−1 faire
// N.B. en C, les indices d'une chaine commencent à 0
  Si S[i]=C alors K← K+1;
Retourner K.

Procédure Remplacer
Donnée : une chaine S, deux caractères C et D.
Résultat : remplacement dans S de chaque C par D.
// N.B. En C, une chaine peut ne pas être allouée
Si S≠NULL alors
  Pour i de 0 à longueur(S)−1 faire
    Si S[i]=C alors S[i]=D.
// N.B. pas de retour : la procédure modifie S par effet de bord