Table de multiplication

Jayn22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   -  
 jayn22 -
Bonjour,
je suis entrain d'écrire un programme et je suis bloqué. J'aimerais que mon programme calcule les dix premieres table de multiplication mais il calcule la table de tous les nombres. comment faire?
Merci d'avance.
voici un aperçu
  var
  N,i:integer;
  rep:char;

begin
rep:='o';
while (rep='o') or (rep='O') do
begin
  write('entrer le nombre pour lequel vous souhaitez ses tables: ');
  readln(N);
  i:=0;
  while i<10 do
    begin
    writeln('| ',N ,' X ',i,' = ',N*i, ' |');
    i:=i+1;
   end;
   write('voulez-vous calculer une autre table? O pour oui N pour non  :');
   readln(rep);
end;
 readln;
end.


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ICI

Merci d'y penser dans tes prochains messages.
A voir également:

3 réponses

Utilisateur anonyme
 
Bonjour, au moment où tu demandes à l'utilisateur d'entrer un nombre, tu testes s'il est entre 0 et 10, si ça n'est pas le cas, tu reposes la question
0
jayn22
 
Merci j'ai réussi à corriger ce qui n'allait pas dans le programme en utilisant une boucle for
0
Jayn22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention  
 
je suis débutante et je j'aimerais savoir avec quelle boucle je peux faire ce teste
Mais merci pour l'aide
0
Utilisateur anonyme
 
Qu'est ce que tu connais comme boucle ou comme test?
0
Jayn22 Messages postés 3 Date d'inscription   Statut Membre Dernière intervention   > Utilisateur anonyme
 
toutes les boucles
0
Utilisateur anonyme
 
Et en réfléchissant bien, tu ne voies pas laquelle te permettre de poser toujours la même question, et de sortir quand la réponse est bonne?
0
Profil bloqué
 
program Multiplier;

const Max_Table = 10;
var

  N, I : Integer;
  Rep : Char;

begin

repeat

  repeat
  write('Entrer le nombre pour lequel vous souhaitez ses tables 0 < N <= 10 : ');
  Readln(N);
  until InRange(N, 1, 10);

  WriteLn;
  WriteLn;

  I := 1;
  while I <= Max_Table do begin
    Writeln('| ',N:3 ,' x ',I:3,' = ',(N * I):3, ' |');
    I := I + 1;
   end;

  WriteLn;
  WriteLn;

   Write('voulez-vous calculer une autre table? O pour oui N pour non  :');
   Readln(Rep);
   Rep := UpCase(Rep);

   until Rep = 'N';

end.
0
Utilisateur anonyme
 
EDIT : Ajout du LANGAGE dans les balises de code.
Explications disponibles ICI

Merci d'y penser dans tes prochains messages.



D'autre part, ne crois tu pas que pour son apprentissage, il était plus utile de la faire chercher un peu?
0