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

Probleme condition if C++

TarteAuLardons
TarteAuLardons
Niveau 5
14 mai 2014 à 21:50:08

Salut tout le monde je commence a apprendre le C++ et je suis face a un mur ... Voici mon fragment de code :

string reponse1 ("abcde");
cout << "C'est bien ca ? (oui/non)" << endl;
getline (cin, reponse1);
if (reponse1 != oui || reponse1 != non)

Je voudrais que si la réponse n'est ni oui ni non la question soit reposé sauf qu'un message d'erreur apparait "error: 'oui' was not declared in this scope" :( pareil pour le non.
Quelqu'un pourrait m'aider ? :ange: :coeur:

Caletlog
Caletlog
Niveau 10
14 mai 2014 à 21:57:14

Salut,

Les variables oui et non n'existent pas dans ton code ; pourtant c'est ce que tu appelles à la dernière ligne.
"oui" et "non" devraient t'être plus utiles : tu manipules des chaînes de caractère.

FortCommeMeric
FortCommeMeric
Niveau 10
14 mai 2014 à 22:00:11

Tu n'as pas déclarer oui et non donc il ne sait pas ce que c'est.

par contre "oui" et "non" sont des chaines de caractères statiques et tu peux les comparer à un type string donc tu peux faire comme ça : if (reponse1 != "oui" || reponse1 != "non")

mais là encore il y a un problème de logique, si l'utilisateur répond "non" alors sa réponse est différente de "oui", donc cette condition est vérifiée reponse1 != "oui" et donc celle là aussi reponse1 != "oui" || reponse1 != "non"

donc à la place de OU met ET dans ta condition

Pseudo supprimé
Pseudo supprimé 14 mai 2014 à 22:09:21
  1. include <iostream>
  2. include <string>

int main () {

std::string reponse1; // Tu initialises ta chaîne de caractères
std::cout << " C'est bien cela ? (oui/non) " << std::endl;
std::cin >> reponse1; // tu proposes à l'utilisateur de répondre
while(reponse1 != "oui" && reponse1 != "non") { // Tant que reponse1 est différent de "oui" et de "non"

std::cout << " Il y a une erreur, tu dois répondre par OUI OU par NON " << std::endl;
std::cin >> reponse1;
}

return 0;

}

---------------

Aussi, getline permet de récupérer une ligne, dans un flux que tu lies, par exemple ( un fichier ).

Ensuite, concernant le if, sache qu'il faut ouvrir des { et y mettre les instructions.
Par exemple :

if ( reponse1 != "oui" && reponse1 != "non") {
std::cout << " Error ";
}

Aussi, il est important d'utiliser les guillemets, car sans guillemets tu appelles, dans ce cas-ci, une variable.
Or tu n'en as déclarée aucune.

J'ai préféré utiliser while car il permet de répéter l'action TANT QUE [...] alors que if ne te l'aurait proposé "qu'une fois", si tu l'utilisais de cette manière.

Pseudo supprimé
Pseudo supprimé 14 mai 2014 à 22:09:58

"mais là encore il y a un problème de logique, si l'utilisateur répond "non" alors sa réponse est différente de "oui", donc cette condition est vérifiée reponse1 != "oui" et donc celle là aussi reponse1 != "oui" || reponse1 != "non" "

Merci, j'allais le rajouter :hap:

TarteAuLardons
TarteAuLardons
Niveau 5
14 mai 2014 à 22:57:24

Merci beaucoup ça marche :ange:

Pseudo supprimé
Pseudo supprimé 15 mai 2014 à 21:34:38

Mais de rien chère tarte au lardons :hap:

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