If et Else en C++
Résolu/Fermé
Cytrox
-
22 sept. 2010 à 19:27
overcode Messages postés 119 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 21 octobre 2011 - 22 sept. 2010 à 20:52
overcode Messages postés 119 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 21 octobre 2011 - 22 sept. 2010 à 20:52
A voir également:
- If et Else en C++
- Vba if not ✓ - Forum Excel
- Date if en francais excel - Forum Programmation
- Else without a previous if - Forum C
- If char ✓ - Forum Programmation
- If exist - Forum Programmation
3 réponses
overcode
Messages postés
119
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
21 octobre 2011
27
22 sept. 2010 à 20:32
22 sept. 2010 à 20:32
Salut,
Il y a bien quelques boulettes sur ton programme. Il compile, mais ne fait absolument pas ce que tu désires faire.
Si tu n'as pas encore eu vent des "string" (le type C++ qui désigne les objets chaîne de caractères), voilà une proposition :
Attention : Le mot de passe ne doit pas contenir d'espace et ne peux faire que 19 caractères au maximum.
Sinon, avec les strings :
Note : cette fois pas limitation de taille. Le premier programme est vraiment une plaie (risque de buffer overflow).
J'espère au moins que c'est bien ce que tu voulais faire :)
Il y a bien quelques boulettes sur ton programme. Il compile, mais ne fait absolument pas ce que tu désires faire.
Si tu n'as pas encore eu vent des "string" (le type C++ qui désigne les objets chaîne de caractères), voilà une proposition :
# include <iostream> # include <cstring> using namespace std ; int main() { char entree[20] ; // tableau de caractères pour stocker l'entrée de l'utilisateur char mdp[20] = "cytrox" ; // le mot de passe auquel sera comparée l'entrée cout << "Mot de passe : " ; cin >> entree ; if( strcmp(entree,mdp) != 0 ) cout << "Mot de passe incorrect. Dégage d'ici !" << endl ; else cout << "OK, mot de passe accepté. Bienvenue !" << endl ; return 0 ; }
Attention : Le mot de passe ne doit pas contenir d'espace et ne peux faire que 19 caractères au maximum.
Sinon, avec les strings :
# include <iostream> # include <string> using namespace std ; int main() { string entree ; string mdp = "cytrox" ; cout << "Mot de passe : " ; getline(cin, entree) ; if( entree != mdp ) cout << "Mot de passe incorrect. Dégage d'ici !" << endl ; else cout << "OK, mot de passe accepté. Bienvenue !" << endl ; return 0 ; }
Note : cette fois pas limitation de taille. Le premier programme est vraiment une plaie (risque de buffer overflow).
J'espère au moins que c'est bien ce que tu voulais faire :)
Oh he bien parfait c'est ça oui
Mais un prof incompétent ça ne fait pas de miracle...
Merci beaucoup en tout cas, je me demandais pourquoi celà ne fonctionnait pas avec les lettres mais que celà fonctionnait avec les chiffres
Merci bien :)
Mais un prof incompétent ça ne fait pas de miracle...
Merci beaucoup en tout cas, je me demandais pourquoi celà ne fonctionnait pas avec les lettres mais que celà fonctionnait avec les chiffres
Merci bien :)
overcode
Messages postés
119
Date d'inscription
jeudi 6 décembre 2007
Statut
Membre
Dernière intervention
21 octobre 2011
27
Modifié par overcode le 22/09/2010 à 20:53
Modifié par overcode le 22/09/2010 à 20:53
Ok :) de rien