La boucle FOR

Résolu
Bonjour,

Je veut afficher le motif suivant en utilisant la Boucle FOR :
1
12
123
1234
.......
12345678910

j'ai déjà essayé avec ça mais je sais pas où est mon erreur
j'attend vos réponses sérieuses et merci..

#include <stdio.h>
#include <conio.h>
main()
{
int i,j;
for(i=0;i<=10;i++)
{
for(j=0;j<i;j++)
printf("\n");
scanf("%d",&j);
}
getch();
}

3 réponses

  1. Modérateur
    Pourquoi utiliser scanf ? Si c'est de l'affichage que tu veux faire, mets printf !
    1. Contributeur
      Bonjour,

      As-tu fait un algorithme du programme avant de taper le code ? Parce si tu avais suivi un algorithme, tu aurais vu où était l'erreur.

      Le programme est censé passer une ligne après avoir entrée une série de chiffres (ou nombres)... pas avant, or c'est ce que ton code fait.

      Ensuite, l'instruction qui affiche à l'écran est printf et non scanf... scanf sert à entrée une valeur dans une variable.

      voici la correction:

      
      #include <stdio.h>
      #include <conio.h>
      main()
      {
      int i,j;
      for(i=0;i<=10;i++)
      {
      for(j=0;j<i;j++)
      {
      printf("%d", j);
      }
      printf("\n");
      }
      getch();
      } 
      
      


      Teste pour voir si cela correspond mieux à ton cahier des charges.
      1. Merci,
        nous n'avons pas étudier l'algorithme, on a passer directement au langage C, ça c'est un TP..
      2. Contributeur
        C'est étonnant que vous n'ayez pas eu un cours d'algorithme avant d'étudier le langage C. C'est pourtant la base de tout langage informatique.
      3. Modérateur
        Pour faire ce genre de TP, il n'y a pas besoin de trop de théorie non plus...
        Tout dépend le niveau et l'intérêt des élèves à la programmation (collégien en technologie, ou lycéen en bachotage...)
      4. oui 2ème année option physique et on étudie le langage C et le réseaux je sais pas pourquoi tout simplement!!!!
      5. Contributeur
        Certes mais dans son cas, l'algorithme aurait pu l'aider.
    2. vous avez raison ;-)

      Merci..

      #include <stdio.h>
      #include <conio.h>
      main()
      {
      int i,j;
      for(i=0;i<=10;i++)
      {
      for(j=0;j<i;j++)
      {
      printf("%d",j);
      }
      printf("\n");
      }
      getch();
      }
      1. Modérateur
        Il serait plus correct de partir de 1 que de 0, puisque c'est comme ça qu'est construit l'exemple.
        De plus il vaut mieux mettre <=i plutôt que <i, ça évitera de faire un tour de boucle pour rien, qui afficherait un saut de ligne inutile et oublierait du coup la dernière valeur à afficher !

        #include <stdio.h>
        
        const int n=10;
        
        int main()
        {
            int i,j;
            for(i=1; i<=n; i++)
            {
                for(j=1; j<=i; j++)
                    printf("%d",j);
        
                printf("\n"); 
            }
        
            return 0;
        }
      2. on peut aussi faire cela :
        for(i=0;i<=n;i++)
        {
        for(j=0; j<i; j++)
        printf("%d",j+1);