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

[C++] besoin d'aide pour un exercice

DocZeta
DocZeta
Niveau 10
05 juillet 2005 à 09:21:18

voilà, l´exercice me demande de taper le code suivant

using namespace std;
int main ( )
{
int age ; / * mise en place de la variable " age" */
cout < < " quel age avez-vous?" < < endl ; / * écris : " quel age avez vous?"*/
cin > > age ; / * attend que l´utilisateur donne son age pour l´entrer dans la variable " age"*/
cout < <"vous avez " < < age < < " ans" < < endl ; /* donne l´age de l´utilisateur*/
system("PAUSE"); / * attend que l´utilisateur appuie sur une touche*/
return 0 ; / * renvoie un 0 au windows*/
}

aprés plusieurs tests, on me demande de taper des lettres a la place des chiffres quand on me demande d´entrer une variable age... Ensuite, le programme me dit " vous avez 2 ans"; seulement, quand je regarde la solution,elle me dis que le programme attendant un entier, vas mettre la valeur de la variable à 0.
où est le probléme?
je sais que j´ai du mal a écrire des phrases sompréhensibles; la langue française n´a jamais été mon fort... Mais pouvez vous m´aider SVP?

Lococodil
Lococodil
Niveau 10
05 juillet 2005 à 09:48:47

essaye d´initialiser directement ta variable en la déclarant:
int age=0;

DocZeta
DocZeta
Niveau 10
05 juillet 2005 à 09:54:05

ouai, ça marche maintenant! :ok: merci

Lococodil
Lococodil
Niveau 10
05 juillet 2005 à 10:05:58

bah nikel, de rien

dnob700
dnob700
Niveau 10
05 juillet 2005 à 14:14:27

mouais, normallement, tu n´a pas besoin d´initialiser ta variable si tu le fait après avec cin.

Ce qu´on te demande de faire, d´après moi n´est pas du tout une norme et on ne peut pas garantir comment vas réagir le programme si tu lui done des lettres là où il attend des chiffres.

Si tu initialise ton truc différenment ( genre age=5) est-ce qu´à la fin il te dit que tu a 5 ans ? ou 0 ans ?

Lococodil
Lococodil
Niveau 10
05 juillet 2005 à 14:30:41

bah si tu fais un cin par dessu tu ecrasera la valeur
sinon à la fin ça t´affichera se que tu a initialisé, ici 0

dnob700
dnob700
Niveau 10
05 juillet 2005 à 14:38:47

ben non, justement, car il fait un cin donc normallement il n´y a pas besoin d´initialiser sa variable.

Lococodil
Lococodil
Niveau 10
05 juillet 2005 à 14:51:44

wai je sais bien m´enfin kes tu veux...

Mouuh
Mouuh
Niveau 6
05 juillet 2005 à 20:35:02

Je pense que l´exercice devait démontrer qu´une variable non initialisé par le programmeur, se faisait initialiser à 0 par le compilateur.

Mais est-ce que en C++, le cout renvoie la valeur ascii de la lettre comme le fait ce printf("%d", ´a´);

lag-it
lag-it
Niveau 10
05 juillet 2005 à 22:52:21

" Je pense que l´exercice devait démontrer qu´une variable non initialisé par le programmeur, se faisait initialiser à 0 par le compilateur."

Bin non : une variable non initialisée explicitement par le programmeur contient une valeur fantaisiste correspondant à tout ou partie d´une variable se trouvant précédement à cet emplacement mémoire...

Mouuh
Mouuh
Niveau 6
05 juillet 2005 à 23:26:40

lag-it > Son exercice me semble un peu foireux ou mal formulé. Mais je n´ai en effet pas fait gaffe à son code. Sa variable est déclarée dans la fonction main donc oui, sa valeure peut être n´importe quoi. Par contre une variable globale non initialisée par le programmeur, est initialisée à 0 par le compilateur. Peut-être que l´exercice parlait donc de variables globales.(Mais bon c´est pas bien de toutes façon d´utiliser des variables globales et encore moins de ne pas les initialiser).

MrGoTo
MrGoTo
Niveau 8
06 juillet 2005 à 01:06:36

Toute façon on s´en fiche que la variable soit initialisée car le cin après change OBLIGATOIREMENT q

MrGoTo
MrGoTo
Niveau 8
06 juillet 2005 à 01:07:21

argh saleté de clavier !

. . sa valeur donc pas besoin de chipoter.

dnob700
dnob700
Niveau 10
06 juillet 2005 à 02:01:45

Mouuh : c´est les variables static qui sont initialisé par le compilo à 0, pas les variables globales.

Mouuh
Mouuh
Niveau 6
06 juillet 2005 à 02:48:28

dnob700 > Ces sont les variables de classe static ET les variables globales qui sont initialisées à zéro. D´ailleur les variables globales sont justement considérées comme faisant partie de la classe static.

Mouuh
Mouuh
Niveau 6
06 juillet 2005 à 02:56:42

Euuuh pour la dernière phrase je suis plus sûr du tout là...mais pour les globales je maintiens qu´elles sont initialiséesà zéro.

Mouuh
Mouuh
Niveau 6
06 juillet 2005 à 03:16:53

A propos de globales, je viens de lire ques les jeux développé en C en utilisaient beaucoup.

Quelqu´un peu affirmer ou infirmer ?

Lococodil
Lococodil
Niveau 10
06 juillet 2005 à 08:56:40

bah wai j´imagine que ça doit être bourré de fonctions en tout genre et que de se faire chier à passer 2000 paramètres c´est plus prtaique une globale. pis la fonction ne retourne qu´une seule variable, si tu veux changer d´autre variable ya les passage par references m´enfin ça reste des paramètres pas tout lke temps faciles à gérer...
je ne sais plus qui a dit que les globales c´était nul mais je pense que si tu t´en sers bine ça peut être bien pratique.

gollumkawder
gollumkawder
Niveau 10
06 juillet 2005 à 10:31:26

et bah LGV il confirme aussi, et il dit de regarder les src de quake pour se donner un exemple

dnob700
dnob700
Niveau 10
06 juillet 2005 à 13:27:40

Mouuh, désolé, effectivement t´as raison, je viens de tester.
En fait c´est logique qu´elle soit statique car on ne rentre ou ne sort jamais d´un fichier, donc les valeurs doivent rester.

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