Salut,
Etant débutant en programmation C++ j'élabore un petit logiciel qui permettra de calculer le quotient intellectuelle (QI) d'une personne. J'en suis qu'au début du script et lorsque je programme la première question, j'ai un problème avec le getline. Je vous explique tout en vidéo, donc visionner là bien et regardez ensuite le code que je posterais ci-dessous pour mieux comprendre.
Indication: Le problème surgit à la fin du script, j'ai commenté l'endroit pour que vous puissiez vous y retrouver.
Le lien de la vidéo (youtube):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64 #include <cstdlib> #include <iostream> #include <windows.h> using namespace std; int main(int argc, char *argv[]) { cout << "Bienvenue sur Qi+ logiciel de calcul de votre quotient intelectuelle." << endl; cout << "Pour mener a bien le test, suivez les etapes ci-dessous."<< endl; cout << "Nous allons tout d'abord commencer par mieux vous connaitre."<< endl; cout << "Quel est votre prenom ?" << endl; string nomUtilisateur("Sans nom"); cin >> nomUtilisateur; cout << "Quelle age avez-vous ?" << endl; double piUtilisateur(-1.); cin >> piUtilisateur; cout << "Bien, donc vous vous appelez " << nomUtilisateur << " et vous avez " << piUtilisateur << "ans." << endl; cout << "Etes vous donc pret a debuter le test? (oui/non)" << endl; string rep(""); cin >> rep; cout << "Votre reponse est " << rep << "." << endl; cout << "Le test va commencer dans 5 secondes." << endl; cout << "Il y'aura 3 secondes d'intervale entre chaque question." << endl; cout << "Veuillez patienter..." << endl; Sleep(1000); cout << "Un.." << endl; Sleep(1000); cout << "Deux.." << endl; Sleep(1000); cout << "Trois.." << endl; Sleep(1000); cout << "Quatre.." << endl; Sleep(1000); cout << "Cinq." << endl; cout << "Le temps est ecouler, le test commence." << endl; /* C'est à partir d'ici que commence le problème /!\ */ char rop[256]; string r; cout << "[Question 1] Qu'est ce qui est petit et marron?" << endl; cin.getline (rop, sizeof (rop)); // fonction geltine r = rop; cout << "Ce qui est petit et marron est " << r << "." << endl; // le résultat est immédiatement affiché sans que je puisse écrire dans la chaine de caractère system("PAUSE"); // après que le résultat soit affiché, il se stop automatiquement sans que je clique sur la touche ENTREE return EXIT_SUCCESS; }
http://youtu.be/tcisDIMkAk0
Voila, je m'adresse aux fins connaisseurs qui auront l'amabilité de résoudre ce problème. Merci à eux par avance.
Amicalement,
Arman.
Partager