Forum INFOMATH
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
-28%
Le deal à ne pas rater :
-28% Machine à café avec broyeur à grain MELITTA Purista
229.99 € 318.99 €
Voir le deal

Exercice corrigé : manipulation simple des tableaux

Aller en bas

Exercice corrigé : manipulation simple des tableaux Empty Exercice corrigé : manipulation simple des tableaux

Message par methodiX Mar 6 Avr - 11:37

ENONCE:

Ecrire un programme qui permet de:

1. remplir un tableau de N entiers (2 2. afficher tous les éléments du tableau.
3. calculer le nombre d'entiers pairs qui existent dans le tableau.
4. calculer la moyenne du tableau.
5. calculer le produit des entiers non nul du tableau.

Code:

program tab01;

uses wincrt;

type

  TAB = array[1..50] of integer;

{ ****************************************************** }

procedure saisie_tab(var n: integer; var T: TAB);
var
  i: integer;
begin

  repeat
      write('Dimension du tableau: ');
      readln(n);
  until (n in [3..49]);

  Writeln('Remplissage du tableau:');
  for i:=1 to n do
    begin
      write('T[',i,'] = ');
      readln(T[i]);
    end;
end;

{ ****************************************************** }

procedure affiche_tab(n: integer; T: TAB);
var
i:integer;
begin

  Writeln('Affichage du tableau:');
  for i:=1 to n do
    writeln('T[',i,'] = ',T[i]);

end;                   

{ ****************************************************** }

function calcul_pair(n:integer; T: TAB):integer;
var
  nbr,i: integer;
begin
  nbr := 0;
  for i:=1 to n do
      if (T[i] mod 2 = 0) then
        nbr := nbr + 1;

  calcul_pair := nbr;
end;

{ ****************************************************** }
function calcul_moy(N:integer;T:tab):real;
var
  i:integer;
  som:integer;
begin
    som := 0;
    for i:=1 to n do
        som := som + T[i];


    calcul_moy := som / n;
end;

{**********************************************************}
function calcul_prod(N:integer;T:TAB):integer;
var
i,pr:integer;

begin
    pr:=1;
    for i:=1 to n do
        if (T[i]<>0) then
          pr:= pr*T[i] ;

  calcul_prod := pr;
end;
{**********************************************************=}
var

  N: integer;
  T: TAB;
  x: integer;
  m: real;
  p: integer;
begin



  saisie_tab(N,T);

  affiche_tab(N,T);

  x := calcul_pair(N,T);         
  writeln('Il existe ',x,' entiers pairs dans T.');

  m := calcul_moy(N,T);
  writeln('La moyenne du tableau est: ',m:2:2);
 
  p:= calcul_prod(N,T);
  writeln('le produit du tableau est: ',p);
end.

methodiX
methodiX
Admin
Admin

Masculin
Nombre de messages : 1260
Localisation : Le couloir de l'école polytechnique de Tunis
Réputation : 68
Points : 7253
Date d'inscription : 22/03/2007

Feuille de personnage
Capacité linguistique:
Exercice corrigé : manipulation simple des tableaux Left_bar_bleue1000/1000Exercice corrigé : manipulation simple des tableaux Empty_bar_bleue  (1000/1000)

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum