Boucle répéter [Résolu]

TheRogerFederer 256 Messages postés mercredi 31 mars 2010Date d'inscription 10 mars 2016 Dernière intervention - 18 sept. 2015 à 10:25 - Dernière réponse : TheRogerFederer 256 Messages postés mercredi 31 mars 2010Date d'inscription 10 mars 2016 Dernière intervention
- 18 sept. 2015 à 15:46
Bonjour, je suis sur codeblocks cette fois avec les cout et cin mais je sèche un peu, voici l'énoncé :


programme tableDeMultiplication
val, k : entier
debut
repeter
afficher "Entrez un nombre entier = "
saisir val
jusqu'à val>=1 et val<=9
pour k de 1 à 10
afficher val, " * ", k, " = ", (val*k)
finpour
fin

et j'ai codé cela mais ce n'est pas suffisant :
int main()
{
    int val = 1, k = 1, z ;
    cout << " Table de multiplication\n ";
    cout << " Entrer un nombre : ";
    cin >> k;
    while ( val <=9 && k <= 10)
    {
        z = val * k;
        cout << ("z = val * k", val, k, z);
        k = k + 1 ;
    }
    return 0 ;
}

Mais je ne sais pas comment on écrit la boucle répéter !
Afficher la suite 

Votre réponse

3 réponses

cgandco 219 Messages postés mercredi 26 octobre 2011Date d'inscription 22 juin 2017 Dernière intervention - Modifié par cgandco le 18/09/2015 à 11:22
0
Merci
Bonjour,
je ne connais pas bien le c++ mais comme je me souviens

peut-etre

int main()
{
    int val = 1, k = 1, z ;
    cout << " Table de multiplication\n ";
    
   
do    
{
cout << " Entrer un nombre : ";
    cin >> val;
    }
 while ( !( val >= 1 && val <= 9 ))

       for (k=1;k<=10;k++)
       {
        z = val * k;
        cout << (" %d * %d = %d\n", val, k, z);
        }
    return 0 ;
}



Bonne journée
Faites simple, aussi simple que possible, mais pas simpliste.
A. Einstein.
Commenter la réponse de cgandco
cptpingu 3803 Messages postés dimanche 12 décembre 2004Date d'inscriptionModérateurStatut 18 septembre 2018 Dernière intervention - Modifié par cptpingu le 18/09/2015 à 15:54
0
Merci
Bonjour.

Code::block est un éditeur (comme peut l'être QtCreator, Visual Studio, etc...).
La "vraie" information, c'est que tu fais maintenant du C++.

Ton erreur, vient du fait que tu n'essaies pas de comprendre la logique, mais de traduire l'algo qu'on te donne.
Tu y vas à "l'aveugle", et ça ne passera pas à long terme. En lisant l'algo, on comprends qu'il y a deux phases.
La première demande à l'utilisateur un nombre entre 1 et 10 compris. Si ce n'est pas le cas, on redemande à l'utilisateur une valeur correcte.
La deuxième, affiche la multiplication du nombre donné avec les chiffres de 1 à 10.

Tu dois absolument, quand on te donne ce genre d'exercice, écrire sur papier ce que ça fait en "français", comme je viens de le faire ci-dessus. Il te faut impérativement comprendre globalement ce que fait un code, puis être capable d'en analyser les différentes parties (c-à-d découper en paragraphes "logiques").

Attention, il est (fortement) conseillé d'éviter les using namespace, voir: http://0217021.free.fr/portfolio/axel.berardino/articles/bon-usage-using-namespace

Voici le code corrigé:
#include <iostream>

int main()
{
  int val = 0;

  std::cout << "Table de multiplication" << std::endl;

  // Demande un nombre entre 1 et 10 compris.
  // Si pas dans cette plage, recommence.
  do
  {
    std::cout << "Entrez un nombre: ";
    std::cin >> val;
  }
  while (val < 1 || val > 10);

  // Affichage des 10 premières valeurs de la table de "val"
  for (int k = 1; k <= 10; ++k)
    std::cout << val << " * " << k << " = " << val * k << std::endl;

  return 0;
}


Pour les prochaines fois où tu posteras, je te demanderai de me joindre le découpage logique, et ce que tu comprends de la fonction qu'on te donne. Ce n'est pas pour t'embêter, mais si je te fais tes exos, sans que tu fasses cette étape, ça te sera préjudiciable.


Améliorer votre expérience CodeS-SourceS avec ce plugin:
http://codes-sources.commentcamarche.net/forum/affich-10000111-plugin-better-cs-2#cptpingu-signature
Commenter la réponse de cptpingu
TheRogerFederer 256 Messages postés mercredi 31 mars 2010Date d'inscription 10 mars 2016 Dernière intervention - 18 sept. 2015 à 15:46
0
Merci
cptpingu il n'y a aucuns problèmes je sais que ce n'est pas pour m'embêter d'ailleurs je te remercie d'être aussi "scolaire" (ne le prend pas mal, ici c'est un compliment), avec moi. Tu as tout a fait raison, il faut aussi que je comprenne ! C'est d'ailleurs ce que je souhaite comprendre alors merci de ta patiente
Commenter la réponse de TheRogerFederer

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.