Base de C - Or dans un do...while
blague sur la cocaine incoming... merci letenia
Salut les chouals
j'ai une question hyper basique en C (j'en suis au début de l'apprentissage)
J'ai un do...while (var!=1||var!=2)
qui ne marche pas... Problème de syntaxe ?
Faut il vraiment que je m'humilie en vous filant le code entier ? (lvl CM2 je débute)
(l'absence de booléenne dans C me guave d'ailleurs, bien que là il n'y ai pas de raison que ca ait un quelconque rapport)
J'ai l'impression que c'est un AND qu'il te faut, pas un OR, car 1 != 2 (oe c vré), donc tu reste toujours dans ton while. Avec un AND tu recommence si c'est ni 1 ni 2
@rekted: +1 après relecture, si tu tapes "1", player != 2 et inversement, bien vu l'aveugle !
Commentaire supprimé.
@Suranovi: Ouais j'ai bien mis les deux regarde
edit: pfiouu sniper
mais du coup maintenant je sais que tu connais le c t'es obligé de m'aider
@Azertsix: Nan mais ya pas de mal il avait juste mal lu un truc (la présence de deux || pour le or, il pensait que j'en avais mis qu'un), et j'ai répondu assez vite
@Suranovi: En vrai jveux bien j'men fout mais jpense que c'est mon OR qui va pas puisqu'en laissant juste !=1 ou !=2 ca marche pour cette valeur
@J100591: Sinon tu dis qu'il n'y a pas de bool, mais ça existe en C les bool (no homo).
@Suranovi: ah ué? au début de mon tuto on m'a dit qu'il yavait pas de var bool que c'était que des int jcrois
jvous balance mon bout de code no troll c'est les tp du début du tuto d'open class room
http://pastebin.com/He8ZhtR8
@J100591: Selon ton code une condition (var>2) pourrait suffir si tu restes en positif. Tu sembles vouloir continuer ton code si ta variable est différente de 1 ou 2, donc tant qu'elle est strictement supérieure à 2, je me trompe ?
@PtitPapier: Oui m'enfin le C99 et la librarie bool c'est juste présent de partout maintenant, donc oui on peut dire que c'est présent de base.
Commentaire supprimé.
@PtitPapier: http://pastebin.com/He8ZhtR8
voilà sir
sorry pour l'absence de commentaires je pensais pas avoir à la partager
Normal que tu sorte jamais de ta boucle, ta condition est toujours vraie. une valeur ne peux pas valoir en même temps 2 et 1.
Et les booleens, tu peux les implanter si tu veux, tu fais :
#define true 1
#define false 0
En vrai, un booleen c'est soit vrai (1) soit faux(0), et les conditions fonctionnent de la même facon :
int i = 10;
while (i)
{
i--;
}
Cette boucle tournera jusqu'à ce que i soit à 0, reconnu comme condition fausse pour la machine (en vrai, en C : 0 = false et autre chose que 0 = true)
@Golsh: Merci à tous effectivement c'était plus une erreur de "logique" que de code
merci de votre aide
Merci à tous effectivement c'était plus une erreur de "logique" que de code
merci de votre aide
Et tu incrémentes à quel moment dans ton exemple ? Car il faut bien sortir de la boucle un jour.
Jamais fait de C, mais dans pas mal de langages ton while doit contenir l'incrémentation de la variable qui définit ta boucle.
J'suis pas pro dans le domaine, mais tu as tenté de mettre des parenthèses autour des valeurs à comparer ? Des fois que ça vienne de la priorité des opérations (je dis sûrement de la merde, mais venant d'une erreur de syntaxe...)
Edit : J'avais pas vu ton pastebin.
Tu ne dois accéder à ce site que si tu as au moins 18 ans ou si tu as l'âge légal pour visionner ce type de matériel dans ta juridiction locale, l’âge le plus élevé étant retenu. En outre, tu déclares et garantis que tu ne permettras aucun mineur à d'accéder à ce site ou à ces services.
En accédant à ce site, tu acceptes nos conditions d'utilisation.