problème dans un prog - C++ - Programmation
Marsh Posté le 08-10-2004 à 21:27:15
cout<<"Entrer un Epsilon :" << flush
<cstdlib>
et t'as oublié de fermer ton if
Marsh Posté le 08-10-2004 à 21:31:53
lequel de if?
parce que j'ai essayé de fermer les if dans main, mais ça ne marche pas mieux...
et c'est quoi flush après un cout?
merci de l'aide
Marsh Posté le 08-10-2004 à 21:36:33
alors, autre problème...
quand je mets un chiffre tres grand pour nMax, il plante, et pareil quand je mets un chiffre tres petit dans epsilon...
Marsh Posté le 08-10-2004 à 21:54:14
si nmax est égal au plus grand entier possible, par définition, il n'existe aucun entier tel que
x <= nmax est évalué à faux
Marsh Posté le 08-10-2004 à 22:15:41
ben c'est INT_MAX
Marsh Posté le 08-10-2004 à 23:21:03
Citation : ce qui correspond à un chiffre genre 1*10^5 ? |
Ca correspond à la valeur maximale que peut prendre un nombre de type INT, dans la mesure ou le type int n'est pas standard (il peut varier en fonction du compilateur ou de la plateforme), ben il n'y a pas de valeur fixe à INT_MAX (contrairement aux types char, short, long (et llong?) qui, si je ne m'abuse, sont définis et standardisés sur toutes les implémentations
Marsh Posté le 08-10-2004 à 23:25:12
non, pour tous il n'y a pas de limites. Justes des contraintes de minimum et une relation d'ordre
Marsh Posté le 08-10-2004 à 23:32:22
Taz a écrit : non, pour tous il n'y a pas de limites. Justes des contraintes de minimum et une relation d'ordre |
arf
je pensais que char short long llong étaient fixés à 1 2 4 8 octets
Marsh Posté le 08-10-2004 à 23:34:16
ben non on en a parlé recemment
char est la plus petite entité adressable, donc sur certains systemes ca peut etre autres chose que 8 bits
Marsh Posté le 08-10-2004 à 23:38:23
exemplde contrainte : un signed char doit pouvoir représenter l'inverval [-127; 127]
Marsh Posté le 08-10-2004 à 23:45:38
cris56 a écrit : ben non on en a parlé recemment |
j'ai du rater celui là, link?
Marsh Posté le 08-10-2004 à 23:47:15
juste en dessous
http://forum.hardware.fr/hardwaref [...] 8199-1.htm
Marsh Posté le 08-10-2004 à 23:53:06
Taz a écrit : exemplde contrainte : un signed char doit pouvoir représenter l'inverval [-127; 127] |
-128. C'est du complément à 2.
Marsh Posté le 09-10-2004 à 00:01:25
Lam's a écrit : -128. C'est du complément à 2. |
toi je t'attendais ... non. D'ailleurs si t'avais un peu de culture C, tu saurais que la philosophie du C c'est d'imposer le moins possible de contrainte d'implémentation.
Marsh Posté le 09-10-2004 à 00:10:07
cris56 a écrit : juste en dessous |
Arf je suis arrivé dessus au 3e ou au 4e post et j'y suis jamais retourné, j'aurais du continuer à le consulter
Marsh Posté le 11-10-2004 à 21:11:20
Code :
|
jai fait un nouveau prog, mais là, je ne comprends pas...
à la fin de l'éxécution, il me sort toujours 2.
quand j'enlève l'affectation de P, il me sort un chiffre en 10^-39...
jai essayé pas mal de trucs, mais là, je ne comprends pas
Marsh Posté le 11-10-2004 à 21:20:33
# cout<<"Epsilon?";
# cin>>eps;
->
# cout<<"Epsilon?" << flush;
# cin>>eps;
Marsh Posté le 11-10-2004 à 21:21:40
ok je vais essayer, mais, quelle est la fonction de flush?
Marsh Posté le 11-10-2004 à 21:21:41
Je suis pas sûr, mais il me semble bien que (1/2*n+1), ça vaut 0+1==1. Il faudrait que tu caste l'un de ces opérandes en float, où que n sois du type float, sinon le compilateur effectue l'opération en arithmétique entière.
Marsh Posté le 11-10-2004 à 21:23:15
et ça change pas grand chose...
je pense que le soucis viens des affectations de P et S... mais jai essayé pas mal de choses, et ça ne change rien...
Marsh Posté le 11-10-2004 à 21:23:18
toutsec a écrit : ok je vais essayer, mais, quelle est la fonction de flush? |
elle t'assure que ton invite est affiché AVANT la saisie
Marsh Posté le 11-10-2004 à 21:24:47
Lam's a écrit : Je suis pas sûr, mais il me semble bien que (1/2*n+1), ça vaut 0+1==1. Il faudrait que tu caste l'un de ces opérandes en float, où que n sois du type float, sinon le compilateur effectue l'opération en arithmétique entière. |
exact c'est ça!
bravo
la prochaine fois, je ne mettrai que des types float comme ça, pas de soucis...
merci encore à toi!
Marsh Posté le 11-10-2004 à 21:25:55
ReplyMarsh Posté le 11-10-2004 à 21:26:25
juste écris tes constantes comme il faut.
0.0 // double
0.0f // float
Marsh Posté le 20-11-2004 à 11:41:03
salut à tous!
jai de nouveau un problème...
sauf, que c'est un exercice qui risque de tomber à l'exam de mardi...
et jai beau chercher, je ne vois pas ou se situ l'erreur...
le code est ici, car il est un peu long à quoter dans la réponse...
c'est pas une errreur de compilation, c'est une erreur quand j'execute le prog...
quand le prog affiche les résultats des "calculs" il me sort des résultats exotiques... avec des trucs allant à l'infini etc...
voila, j'ai surment codé comme mes pieds mais bon
merci pour votre aide :]
Marsh Posté le 20-11-2004 à 12:08:32
Maintenant que tu codes un peu, il va te falloir apprendre à utiliser le deuxième outil du développeur : le débogueur.
Et ensuite le 3e outil sera le débogueur mémoire.
Marsh Posté le 20-11-2004 à 12:26:47
el muchacho a écrit : Maintenant que tu codes un peu, il va te falloir apprendre à utiliser le deuxième outil du développeur : le débogueur. |
bah je veux bien apprendre à m'en servir si je savais ou c'est
pi, à la fac, ils nous ont pas dit que ça existait...
(je vais chercher)
Marsh Posté le 08-10-2004 à 21:23:28
bonjour, jai besoin de votre aide... on a fait un programme ce matin en td de c++ et j'essai de le faire fonctionner
il me dit qu'il y a une erreur dans la fonction main. une erreur de syntaxe à la fin de input...
je seche ...