Dhifallah Fethi Admin
Messages : 74 Date d'inscription : 02/03/2011
| Sujet: Exercice 7 (Récursivité) Ven 18 Mar - 4:59 | |
| Exercice 7
Ecrire un programme modulaire qui permet de : - Saisir un entier N ( 1 ≤ N ≤ 100) et remplir un tableau T par N caractères. - Saisir un caractère C. - Calculer et afficher le nombre d’occurrences de C dans le tableau T. Vous devez utilisez un module récursif. Traduire le programe emn PASCAL.
Réponse - Code:
-
program occu; uses wincrt; type tab=array[1..100] of char; var s,i,n:integer; t:tab; c:char;
procedure saisie (var n:integer); begin writeln('donner n'); readln(n); if (n<1) or (n>100) then saisie(n); end;
procedure remplir(var t:tab; n:integer; var i:integer); var j:integer; begin write('t[',i,']=');readln(t[i]); if ((upcase(t[i]) in ['A'..'Z'])and (i<n))then begin j:=i+1; remplir(t,n,j); end; end;
function occurence(c : char ; t:tab ; n,i:integer):integer; begin if (i>n) then occurence:=0 else if (t[i] = c ) then occurence:=1+occurence(c, t, n , i+1) else occurence := occurence (c, t, n ,i+1); end;
begin saisie(n); i:=1; remplir(t,n,i); repeat writeln('donner un caractère de ''A'' à ''Z''');readln(c); until upcase(c) in ['A'..'Z']; i:=1; writeln('le nbr d''ocurence de ',c,' est:', occurence(c,t,n,i)); end. | |
|