Programme en c

Résolu
Bonjour,
j'ai un problème dans le programme appelée <<triangles inverses>>comme ça
8
88
888
8888
88888
88888
8888
888
88
8
grâce aux structures itératives et aux tableaux,j'ai essayé mais il ma donner
8
88
888
8888
88888
88888
8888
888
88
8
je sais pas pour quoi aide moi s'ils te plait :(
Configuration: Windows XP
Firefox 3.0.15

41 réponses

Résumé de la discussion

Problème central : l'affichage d'un motif d'« triangles inverses » composé de 8, 88, 888, etc., obtenu avec des boucles et des tableaux, ne produit pas la séquence attendue. Des réponses indiquent que l'exécution donne parfois l'ordre correct des lignes mais un affichage décalé ou des répétitions, et certaines propositions reprennent des variantes en C ou en PHP pour reproduire le motif. Plusieurs échanges évoquent un code C donné comprenant une boucle principale, des manipulations de temp et d'indices et des erreurs comme temp -= 1 ou des conditions d'affichage incorrectes. D'autres interventions recommandent de tester le même programme dans différents environnements et d'isoler le code problématique en le copiant mot à mot pour faciliter le débogage.

Bobot (l’IA à votre service)
  1. Bonjour

    Ben tu as obtenu la même chose non ? O_o
    0
    1. oui oui pardon je veux comme ça
      88888
      8888
      888
      88
      8
      merci Pilow c'est gentille :)
      0
      1. Donc tu veux
        88888
        8888
        888
        88
        8

        Et tu as
        8
        88
        888
        8888
        88888
        88888
        8888
        888
        88
        8

        C'est bien ça ?
        Si il manque des espaces utilise les balises < code > pour les conserver
        0
        1. nn pas comme ce je sais pas pourquoi elle a affiché comme ca ms je veux exactement l'inverse de ca
          8
          88
          888
          8888
          88888
          0
          1. 8
            88
            888
            8888
            88888
            88888
             8888
              888
               88
                8 


            Ca alors ?
            0
            1. comme ça
              88888
              <code>8888
              <code><code>888
              <code><code><code>88
              <code><code><code><code>8
              0
              1. Bon j'ai fais en php deja, je traduis en C je reviens ^^

                $taille = 4;
                
                
                for ($count = 0; $count < $taille * 2; $count++)
                {
                	if ($count < $taille)
                		for ($temp = 0; $temp <= $count; $temp++)
                			echo '*';
                	else
                	{
                		for ($temp = 0; $temp < ($count - $taille); $temp++)
                			echo '-';
                		for ($temp = 0; $temp < ($taille - ($count - $taille)); $temp++)
                			echo '*';
                	}
                	echo '<br/>';
                }
                0
                1. int taille = 4;
                  int temp;
                  int count;
                  
                  for (count = 0; count < (taille * 2); count++)
                  {
                  	if (count < taille)
                  		for (temp = 0; temp <= count; temp++)
                  			printf("*");
                  	else
                  	{
                  		for (temp = 0; temp < (count - taille);temp++)
                  			printf(" ");
                  		for (temp = 0; temp < (taille - (count - taille)); temp++)
                  			printf("*");
                  	}
                  	printf("\n");
                  }


                  Voila ça, dites moi si je me trompe, j'ai pas de compilateur C sous la main

                  EDIT : Remplacer "-" par " ", c'etait pour une meilleur aperçu, sous firefox j'obtiens :
                  *
                  **
                  ***
                  ****
                  ****
                  -***
                  --**
                  ---*
                  0
                  1. mais je voulais aux tableaux a deux dimensions !!!!
                    0
                    1. Ahhh; ben je refais alors deux sec :P
                      0
                      1. int taille = 4;
                        int temp;
                        int count;
                        char	tab[8][4];
                        
                        for (count = 0; count < (taille * 2); count++)
                        {
                        	if (count < taille)
                        		for (temp = 0; temp <= count; temp++)
                        			tab[count][temp] = '*';
                        	else
                        	{
                        		for (temp = 0; temp < (count - taille);temp++)
                        			tab[count][temp] = ' ';
                        		for (temp = 0; temp < (taille - (count - taille)); temp++)
                        			tab[count][temp] = '*';
                        	}
                        }


                        Reste plus qu'a afficher le tableau avec une tite boucle
                        0
                        1. for (count = 0; count < taille * 2; count++)
                          printf("%s\n", tab[count]);


                          Rajoute ça a la fin.
                          0
                          1. !!!!!!!!!!!!
                            ms on a un tableau a 2 dimension
                            j'ai aucun résultat
                            0
                            1. int taille = 4;
                              int temp;
                              int count;
                              char	tab[8][4];
                              
                              for (count = 0; count < (taille * 2); count++)
                              {
                              	if (count < taille)
                              		for (temp = 0; temp <= count; temp++)
                              			tab[count][temp] = '*';
                              	else
                              	{
                              		for (temp = 0; temp < (count - taille);temp++)
                              			tab[count][temp] = ' ';
                              		while (temp++ < taille)
                              			tab[count][temp] = '*';
                              	}
                              }
                              for (count = 0; count < taille * 2; count++)
                                  printf("%s\n", tab[count]);


                              Avec ça t'as rien ?

                              Ben tu m'a bien dis que tu voulais un tableau nan ? :s
                              0
                              • 1
                              • 2
                              • 3