CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

petit probleme en c

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 18:48:28

oui mais il faudrait que je le cale dans mon 1er while non?

Bunyan
Bunyan
Niveau 17
06 octobre 2009 à 18:49:33

Ouaip.
Juste après le WHILE imbriqué, et donc après (ou avant) l'incrémentation de ta variable cpt2.

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 18:52:10

ok il faut que je fasse un printf(" \n")
Mais qu'est ce que je met dans le printf?, ya rien a mettre puisqu'on ne veut rien afficher d'autre

Bunyan
Bunyan
Niveau 17
06 octobre 2009 à 18:54:11

Regarde de près ta variable cpt1, et essaye de faire manuellement ton programme, pas a pas.

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 18:54:25

je me suis (encore) mal exprimé sur l'énoncé je crois^^
par exemple ici n=3 et m=10

ce qui donne:

    • *******
    • *******
    • *******

je sais pas si tu avais compris^^

Bunyan
Bunyan
Niveau 17
06 octobre 2009 à 18:57:54

Ouaip, j'avais compris :p
Mais tu as un problème qui "saute aux yeux" a ceux qui sont habitués a coder.
La meilleure façon de le voir, c'est d'essayer de le comprendre par toi-même ^^

Puis ... quand un programme déconne, un bon moyen de le débugger, c'est de le faire pas a pas (sur la papier ou avec un débugger capable de le faire).
Ceci quand le programme n'est pas trop long.

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 18:59:16

ok^^

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 19:19:21

non jvois pas :(

Bunyan
Bunyan
Niveau 17
06 octobre 2009 à 19:25:30

Tu initialises tes variables cpt et cpt2 a 1 avant la première boucle.

La condition cpt2 <= lig est bien vérifiée, donc tu rentres dans le premier WHILE.
La condition cpt <= cara est vérifiée, donc tu rentres dans le second WHILE.

Tu fais les printf de tes étoiles, et tu sors du second WHILE.
A ce moment là, ta variable cpt2 vaut 1 (premier passage de boucle) et ta variable cpt est supérieure a cara.

Tu refais un tour de boucle dans ton premier WHILE puisque la condition de celui-ci est toujours vérifiée, mais vu que cpt est supérieure a cara, tu ne rentreras plus jamais dans le WHILE imbriqué.

Tu as donc 2 solutions :
-remplacer tes WHILE par des FOR : un for réalise 3 instructions, a savoir la vérification de la condition, l'initialisation de(s) variable(s) a chaque premier tour de boucle et l'incrémentation de celle(s)-ci.
-garder ton code, mais remettre a 1 ta variable cpt après la sortie de ton second WHILE.

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 19:33:50

non cpt est EGALE a cara quand on sort de la seconde boucle

Bunyan
Bunyan
Niveau 17
06 octobre 2009 à 19:39:31

Non =D

On va prendre cara = 3.
Tu initialises cpt a 1.

Premier tour de boucle => une étoile d'afficher, cpt = 2
Deuxième tour de boucle => affichage deuxième étoile, cpt = 3
Troisième tour de boucle => affichage troisième étoile, cpt = 4

Sortie de la boucle puisque la condition cpt <= cara (4 <= 3) n'est plus vérifiée.

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 19:43:22

okok^^

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 19:44:35

il faut que j'initialise a 0 alors?

Bunyan
Bunyan
Niveau 17
06 octobre 2009 à 19:45:39

Je vais me citer :p

Tu as donc 2 solutions :
-remplacer tes WHILE par des FOR : un for réalise 3 instructions, a savoir la vérification de la condition, l'initialisation de(s) variable(s) a chaque premier tour de boucle et l'incrémentation de celle(s)-ci.
-garder ton code, mais remettre a 1 ta variable cpt après la sortie de ton second WHILE.

Je compléterai qu'un WHILE ne fait qu'une seule chose : vérifier la condition, donc tu dois faire le reste.

FuckMeBaby
FuckMeBaby
Niveau 6
06 octobre 2009 à 20:47:34

je reprendrai demain :ok:

Sous forums
  • Aide à l'achat Mac
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment