Forum INFOMATH
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
-20%
Le deal à ne pas rater :
Ecran PC GIGABYTE 28″ LED M28U 4K ( IPS, 1 ms, 144 Hz, FreeSync ...
399 € 499 €
Voir le deal

Exercice 7 page 121: Boucle FOR + Random

Aller en bas

boucle* - Exercice 7 page 121: Boucle FOR + Random Empty Exercice 7 page 121: Boucle FOR + Random

Message par Napoléon Jeu 19 Fév - 0:00

Il s'agit de saisir un nombre n > 10, et remplir aléatoirement un tableau de n réels compris entre 0 et 20, puis, :
1) calculer la moyenne arithmétique (MG) du tableau.
2) afficher les nombres qui sont supérieurs à MG, ainsi que leur nombre.

NB:
La fonction RANDOM(N) en Pascal, retourne une nombre entier aléatoire entre 0 et N-1.
Napoléon
Napoléon
Admin
Admin

Masculin
Nombre de messages : 2934
Localisation : Tunisie
Réputation : 122
Points : 7667
Date d'inscription : 19/03/2007

Feuille de personnage
Capacité linguistique:
boucle* - Exercice 7 page 121: Boucle FOR + Random Left_bar_bleue999/1000boucle* - Exercice 7 page 121: Boucle FOR + Random Empty_bar_bleue  (999/1000)

https://infomath.1fr1.net

Revenir en haut Aller en bas

boucle* - Exercice 7 page 121: Boucle FOR + Random Empty Re: Exercice 7 page 121: Boucle FOR + Random

Message par Napoléon Jeu 19 Fév - 0:01

Une solution possible est :

Code:

Program EXERCICE_7p121;
uses wincrt;

type
  TAB = array[1..100] of real;

var
  i,N, nbr: integer;
  T: TAB;
  Somme, MG: real;

begin

    Randomize;

    {Saisie d'un nombre >= 20}
    repeat
      write('Donner un nombre > 20: ');
      readln(N);

    until (N >= 20);

    {Repmlissage du tableau aléatoirement}
    for i:=1 to N do
        T[i] := random(21);

    {calcul moyenne arithmétique}
    Somme := 0;
    for i:=1 to N do
        Somme := Somme + T[i];

    MG := Somme / N;
    writeln('La moyenne arithmétique (MG) = ',MG:5:2);

    writeln('Liste des notes supérieures à MG:');
    for i:=1 to N do
        if (T[i] > MG) then
        begin
          writeln('Note n°',i:2,' = ',T[i]:3:0);
          nbr := nbr + 1;
        end;

    writeln('On a exactement ',nbr,' notes > ',MG:5:3);

end.

a+
Napoléon
Napoléon
Admin
Admin

Masculin
Nombre de messages : 2934
Localisation : Tunisie
Réputation : 122
Points : 7667
Date d'inscription : 19/03/2007

Feuille de personnage
Capacité linguistique:
boucle* - Exercice 7 page 121: Boucle FOR + Random Left_bar_bleue999/1000boucle* - Exercice 7 page 121: Boucle FOR + Random Empty_bar_bleue  (999/1000)

https://infomath.1fr1.net

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