Forums Rue-Montgallet.com
Rue-Montgallet.comRue-Hardware.comRue-Occasion.comRue-DVD.comRue-Jeuxvideo.comRue-AudioVideo.comRue-Telephone.comForums
S'inscrire | S'identifier |
| Recherche avancée | Aide
 
 

Il y a 56 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

[C++]Debugger !!!!!!!!!

 
n°2108
Nodashi
Silence je dors
Profil : Dinosaure
Posté le 04-10-2002 à 20:02:39  profilanswer
 

Code :
  1. #include <iostream.h>
  2. #include <ctype.h>
  3. void main()
  4. {
  5. /*--------------------------------*/
  6. /* - Declaration des constantes - */
  7. /*--------------------------------*/
  8. /* pg_hs = prix grp Haute saison  */
  9. /* pg_bs = prix grp Basse saison  */
  10. /* pi_hs = prix ind Haute saison  */
  11. /* pi_bs = prix ind Basse saison  */
  12. /* grp   = groupe                 */
  13. /*--------------------------------*/
  14. const float pg_bs = 10000.00 , pg_hs = 12000.00 , pi_bs = 12250.25 , pi_hs = 15020.00 ;
  15. const int grp = 10 ;
  16. /*-------------------------------*/
  17. /* - Declaration des variables - */
  18. /*-------------------------------*/
  19. float total , nb_pers ;
  20. char periode ;
  21. /*----------------------------------*/
  22. /* Saisie du nombre de participants */
  23. /*----------------------------------*/
  24. do
  25. {
  26.     cout << "Bienvenue chez Les Tropiques Extremes à destination de Koh-Lanta." << endl ;
  27.     cout << "Veuillez saisir le nombre de participants au voyage : ";
  28.     cin >> nb_pers ;
  29. } while ( nb_pers <= 0 );
  30. /*----------------------------------*/
  31. /*  Saisie du nombre de la periode  */
  32. /*----------------------------------*/
  33. do
  34. {
  35.      cout << "Vous souhaitez partir en : " << endl ;
  36.      cout << "Basse saison (B)" << endl ;
  37.      cout << "Haute saison (H)" << endl ;
  38.      cin >> periode ;
  39.      periode = toupper (periode) ;
  40.      cout << "Vous avez saisi : " << periode << endl ;
  41. } while ( ( periode != 'H' ) || ( periode != 'B' ) ) ;
  42. /*------------*/
  43. /* Traitement */
  44. /*------------*/
  45. if ( periode == 'B' )
  46. {
  47.      if ( nb_pers < 10 )
  48.      {
  49.          total = pi_bs * nb_pers ;
  50.      }else{
  51.          total = pg_bs * nb_pers ;
  52.      }
  53. }else{
  54.      if ( nb_pers < 10 )
  55.      {
  56.          total = pi_hs * nb_pers ;
  57.      }else{
  58.          total = pg_hs * nb_pers ;
  59.      }
  60. }
  61. /*-------------------------*/
  62. /* Affichage du prix final */
  63. /*-------------------------*/
  64. cout << "Ce voyage vous coutera : " << total << endl ;
  65. }


 
c'est au niveau de la boucle B ou H.
 
je vois pas le pb !!!!!!!
 
HELP ME PLIIIIIIIIIIIIIIIIIIIIIIIIZ  :(


---------------
informatique / jeu vidéo / blog du développeur / Pour les hommes modernes
n°2110
The bible
Profil : Membre
Posté le 04-10-2002 à 21:05:19  profilanswer
 

Slt
voila la soluce
 
periode=' '; /*initialisation de periode */
 
    while (( periode != 'H' ) && ( periode != 'B' )) {
      cout << "Vous souhaitez partir en : " << endl ;
      cout << "Basse saison (B)" << endl ;
      cout << "Haute saison (H)" << endl ;
      cin >> periode ;
      periode = toupper (periode) ;
      cout << "Vous avez saisi : " << periode << endl ;
    }  
 
Alors c'est ta boucle Do While qui deconne la raison : ??
mais d'apres le book:
 
"Le language C++" de Bjarne Stroustup Le créateur du C++ page 152:

Citation :


Nous avons pu constater que l'instruction do constituait une source d'erreur et de confusion importante. son corps est, en effet, tjs executé une fois avt que la condition ne soit evaluée. Cependant, pour que le corps fonctionne correctement, du code trés proche de la condition doit etre exécute au moins une fois. Or, nous avons souvent constaté que la condition ne se comportait pas comme prévu lors de la première création ainsi que lors du test du programme. des variations au niveau du comportement ont egalement été notées longtemps aprés la modification du code la précédant. Par conséquent, nous vous conseillons d'éviter les instructions do.


 
voila
tu vois on peut remplacer ta boucle avec un while dc  fais comme dit ce monsieur qui lui touche en C++  :D  
 
 :jap:

n°2111
Hinou
Possède blague a 2 balle a +10
Profil : Membre
Posté le 04-10-2002 à 21:06:06  profilanswer
 

sa viens de ton "ou" si tu met un 'B' il est quand meme different de 'H' donc il contiuera a boucler sans arret
 
en faite faudrais faire un test du genre
 
 
do  
{  
    bon=false;
    cout << "Vous souhaitez partir en : " << endl ;  
    cout << "Basse saison (B)" << endl ;  
    cout << "Haute saison (H)" << endl ;  
    cin >> periode ;  
    periode = toupper (periode) ;  
    cout << "Vous avez saisi : " << periode << endl ;  
   if ( ( periode == 'H' ) || ( periode == 'B' ) ) {
      bon=true;
   }else{
 
   }
} while ( !bon) ;  


---------------
Administer c'est bien développer c'est mieux
Créateur de l'association des "elfes de la forest" (balançage de troll en tous genre)
Créateur de l'anti-cs team (cs c'est un mod pas un jeux :na:)
n°2112
Nodashi
Silence je dors
Profil : Dinosaure
Posté le 05-10-2002 à 00:53:22  profilanswer
 

The Bible a écrit :

Slt
voila la soluce
 
periode=' '; /*initialisation de periode */
 
    while (( periode != 'H' ) && ( periode != 'B' )) {
      cout << "Vous souhaitez partir en : " << endl ;
      cout << "Basse saison (B)" << endl ;
      cout << "Haute saison (H)" << endl ;
      cin >> periode ;
      periode = toupper (periode) ;
      cout << "Vous avez saisi : " << periode << endl ;
    }  
 
Alors c'est ta boucle Do While qui deconne la raison : ??
mais d'apres le book:
 
"Le language C++" de Bjarne Stroustup Le créateur du C++ page 152:

Citation :


Nous avons pu constater que l'instruction do constituait une source d'erreur et de confusion importante. son corps est, en effet, tjs executé une fois avt que la condition ne soit evaluée. Cependant, pour que le corps fonctionne correctement, du code trés proche de la condition doit etre exécute au moins une fois. Or, nous avons souvent constaté que la condition ne se comportait pas comme prévu lors de la première création ainsi que lors du test du programme. des variations au niveau du comportement ont egalement été notées longtemps aprés la modification du code la précédant. Par conséquent, nous vous conseillons d'éviter les instructions do.


 
voila
tu vois on peut remplacer ta boucle avec un while dc  fais comme dit ce monsieur qui lui touche en C++  :D  
 
 :jap:  




 
ca marche pas mais merci de ta reponse.
 
La je rentre jamais dans ma boucle


---------------
informatique / jeu vidéo / blog du développeur / Pour les hommes modernes
n°2113
The bible
Profil : Membre
Posté le 05-10-2002 à 09:09:09  profilanswer
 

Arghh  :fou:  
que oui ca marche j'ai testé sous linux ton prog et fais la modif que je t'es filée et recompilé et tout est ok
bizarre
 
 :jap:


Message édité par The bible le 05-10-2002 à 09:10:45
n°2114
The bible
Profil : Membre
Posté le 05-10-2002 à 09:28:19  profilanswer
 

Tous le prog est dispo la :
http://perso.wanadoo.fr/thebible/test.C.txt
 
 
 :jap:


Message édité par The bible le 05-10-2002 à 10:54:10
n°2115
Rantanplan
Modo pas rigolo !
Profil : Fossile
Posté le 05-10-2002 à 10:49:06  profilanswer
 

The Bible a écrit :

Tous le prog est dispo la :
http://perso.wanadoo.fr/thebible/test.C.txt
 
 




 
je l'ai testé et ca a marché :) ..... ca coute cher quand meme :D


---------------
[:rantanplan]
n°2116
The bible
Profil : Membre
Posté le 05-10-2002 à 10:53:05  profilanswer
 

Citation :


ca coute cher quand meme :D


 
 :D  
 
 :jap:


Message édité par The bible le 05-10-2002 à 11:04:00
n°2119
Nodashi
Silence je dors
Profil : Dinosaure
Posté le 05-10-2002 à 13:42:05  profilanswer
 

Je vais retester.
 
Mais pas la peine de t'enerver  :jap:


---------------
informatique / jeu vidéo / blog du développeur / Pour les hommes modernes
n°2120
Nodashi
Silence je dors
Profil : Dinosaure
Posté le 05-10-2002 à 13:44:29  profilanswer
 

Effectivement ca marche.
 
Ptete une couille hier j'avais du trop boire.
 
:D
 
merci


---------------
informatique / jeu vidéo / blog du développeur / Pour les hommes modernes
n°2121
The bible
Profil : Membre
Posté le 05-10-2002 à 14:31:22  profilanswer
 

je t'en prie
 
 
 :jap:

n°2123
Rantanplan
Modo pas rigolo !
Profil : Fossile
Posté le 05-10-2002 à 20:55:36  profilanswer
 

The Bible a écrit :

Citation :


ca coute cher quand meme :D


 
 :D  
 
 :jap:




 
:ddr: tas compris maintenant ?  :D


---------------
[:rantanplan]
n°2124
The bible
Profil : Membre
Posté le 05-10-2002 à 21:02:59  profilanswer
 

le marrant  :kaola:  :kaola:  
j'avais pas percuté directement d'ou l'edit
 
 :jap:  

n°2125
Rantanplan
Modo pas rigolo !
Profil : Fossile
Posté le 05-10-2002 à 21:10:02  profilanswer
 

The Bible a écrit :

le marrant  :kaola:  :kaola:  
j'avais pas percuté directement d'ou l'edit
 
 :jap:  
 




 
 :D  
 
(c'etait de l'humour .....)


---------------
[:rantanplan]
n°2126
The bible
Profil : Membre
Posté le 05-10-2002 à 21:20:47  profilanswer
 

par contre la j'avais percuter tous de suite  :D  
 
 :jap:

n°2158
Bashar
Oook. - Terry Pratchett -
Profil : Membre
Posté le 11-10-2002 à 11:42:04  profilanswer
 

Tu sais, j'ai pas tout lu mais je pense qu'il suffisait de changer le || en && dans ton programme initial.


---------------
Between the inhuman and the surhuman I've had little place in which to be human. And I thank you, Hwi, for this little place.
-- Franck Herbert --
n°2167
Nodashi
Silence je dors
Profil : Dinosaure
Posté le 11-10-2002 à 16:34:09  profilanswer
 

Bashar a écrit :

Tu sais, j'ai pas tout lu mais je pense qu'il suffisait de changer le || en && dans ton programme initial.




 
c'est ke j'ai fait.
 
Mon probleme venait de ma logike


---------------
informatique / jeu vidéo / blog du développeur / Pour les hommes modernes

Aller à :
Ajouter une réponse