Racine carrée en C++ - C++ - Programmation
Marsh Posté le 07-12-2004 à 14:05:23
hypotenuse = double sqrt(double Cote1)
T'as pas l'impression qu'il y a comme un problème ?
Marsh Posté le 07-12-2004 à 14:06:42
boulax a écrit : hypotenuse = double sqrt(double Cote1) |
Héééé bennnn non
En fait je suis un n00b faut pas m'en vouloir
EDIT : Le ; ?
Marsh Posté le 07-12-2004 à 14:13:16
enleves les "double"
ils servent a declarer le type de variables
si tu veux faire un cast ( passer d'un type a un autre) il faut mettre (double) au lieu de double
Marsh Posté le 07-12-2004 à 14:14:28
oui aussi, mais l'a tu veux utiliser la fonction, et là tu l'ecris comme tu l'a vue dans la doc... avec sa définition...
donc:
hypotenuse = sqrt(Cote1)
avec hypotenuse et Cote1 des Double (comme le mentionne la signature de la fonction sqrt)
Marsh Posté le 07-12-2004 à 14:16:23
ReplyMarsh Posté le 07-12-2004 à 14:17:15
ReplyMarsh Posté le 07-12-2004 à 14:22:14
Ok merci a tous vous etes vriament fort !
J'ai essayé ca :
Citation : Compilateur: Default compiler |
Marsh Posté le 07-12-2004 à 14:28:03
Citation : CDownloads/SansNom1.cpp:19: error: `sqtr' undeclared (first use this |
Oui bon lis les messages d'erreur stp.
Marsh Posté le 07-12-2004 à 14:30:42
euh... c'est du C ou du C++ ton truc là
parceque les cout cin en C hein...
Marsh Posté le 07-12-2004 à 14:35:29
Oui j'ai vu après que j'avais mal tapé !!! :/
Voila, plus qu'une erreur :
Citation : |
Marsh Posté le 07-12-2004 à 14:36:19
moktar1er a écrit : euh... c'est du C ou du C++ ton truc là |
Du C++ tu as vu juste, je déplace
Marsh Posté le 07-12-2004 à 14:37:12
boulax a écrit : reposte ton code stp. |
Voila :
Code :
|
Marsh Posté le 07-12-2004 à 14:38:46
sqrt demande du double en paramètre et sort du double...
tu lui files un int et t'essaies de mettre le résultat dans un int, tu penses pas que tu risques d'avoir un léger problème?
(et je crois qu'il veut un retour à la ligne après la fin du main, ton compilo)
Marsh Posté le 07-12-2004 à 14:39:25
boulax a écrit : un ";" qui manque |
Oui, a priori mon compilateur rejette mon code s'il manque des ;
Nouveaux mess. d'erreur avec la commande sqrt :
Citation : Compilateur: Default compiler |
Marsh Posté le 07-12-2004 à 14:40:20
ReplyMarsh Posté le 07-12-2004 à 14:46:48
Mais vous apprenez quoi en écolé maintenant ???
Code :
|
Marsh Posté le 07-12-2004 à 14:56:14
et il manque pas un "using std::sqrt;" ?
Enfin bref, c'est vraiment un forum de noobs ici.
Marsh Posté le 07-12-2004 à 15:05:30
Lam's a écrit : et il manque pas un "using std::sqrt;" ? |
ben il use le namespace std là non
Marsh Posté le 07-12-2004 à 15:07:27
Ah merde, faux que j'aille me chercher un café moi. A force de trainer ici, je devient un noob.
Marsh Posté le 07-12-2004 à 15:11:01
ReplyMarsh Posté le 07-12-2004 à 15:13:03
Déja, vu qu'il utilise pas les arguments de la ligne de commande, un "int main( )" s'impose.
A+,
Marsh Posté le 07-12-2004 à 15:15:46
Ensuite, a la lecture de son programme, la ligne
cin >> hypotenuse;
n'a manifestement rien a foutre là, et provient d'un copier-coller du sans doute a un reflexe crispatoire muloïde.
A+,
Marsh Posté le 07-12-2004 à 15:16:08
Lam's a écrit : Ah merde, faux que j'aille me chercher un café moi. A force de trainer ici, je devient un noob. |
Joel F a écrit : quelle erreur ligne 6 o_O ? |
Il veut sûrement que tu ajoutes argc et argv (c'est optionnel?)
gilou a écrit : Déja, vu qu'il utilise pas les arguments de la ligne de commande, un "int main( )" s'impose. |
remplacer int main(int argc, char ** argv)
par int main()?
Marsh Posté le 07-12-2004 à 15:17:23
Citation : remplacer int main(int argc, char ** argv) |
Tout a fait.
Si on ne se sert pas des arguments de la ligne de commande, c'est pas la peine de les introduires.
A+,
Marsh Posté le 07-12-2004 à 15:19:13
gilou a écrit :
|
Tous les compilos acceptent?
Marsh Posté le 07-12-2004 à 15:20:20
Masklinn a écrit : Tous les compilos acceptent? |
seulement ceux qui exigent des ";" à la fin de chaque instruction
Marsh Posté le 07-12-2004 à 15:21:55
boulax a écrit : seulement ceux qui exigent des ";" à la fin de chaque instruction |
C'est int main(int argc, char *argv[], char *envp[]) qui n'est pas necessairement accepté je crois.
Mais int main() et int main(int argc, char *argv[]) devraient etre acceptes par tout compilo C++ il me semble.
A+,
Marsh Posté le 07-12-2004 à 15:22:50
Masklinn a écrit : Tous les compilos acceptent? |
bein oui pq il accepterait pas ? on peut aussi déclarer plein d'autres choses qui ne servent à rien dans le même genre si tu veux
Marsh Posté le 07-12-2004 à 15:23:10
gilou a écrit : |
ok
je dois avouer que j'ai du mal à voir l'intérêt profond de ne pas les mettre (sauf une ultraoptimisation mémoire pour gagner quelques octets de ram bien sûr), mais merci
push a écrit : bein oui pq il accepterait pas ? on peut aussi déclarer plein d'autres choses qui ne servent à rien dans le même genre si tu veux |
Sauf que là le principe est de ne pas déclarer les trucs qui ne servent à rien
(et il pourrait ne pas accepter parce que le proto de la fonction main serait unique )
PS: merci pour le enpv gilou, encore appris un truc moi
Marsh Posté le 07-12-2004 à 15:25:06
Masklinn a écrit : ok |
L'interet c'est de ne pas introduire inutilement de variables inutilisées.
A+,
Marsh Posté le 07-12-2004 à 15:31:48
int main(int,char**) est une prototype de main valide en C++
Marsh Posté le 07-12-2004 à 14:01:17
J'ai essayé de faire un programme pouvant calculer la taille de l'hypoténuse a partir de deux cotés de l'angle droit (Théorème de Pythagore)
J'ai fait qques recherches pour utiliser la fonction racine carrée mais ca ne marche pas.Code source :
L'erreur se trouve a la ligne 23 :
Compilateur: Default compiler
Exécution de g++.exe...
g++.exe "C:\ Downloads\SansNom1.cpp" -o "C:\Downloads\SansNom1.exe" -I"C:\Dev-Cpp\include\c++\3.3.1" -I"C:\Dev-Cpp\include\c++\3.3.1\mingw32" -I"C:\Dev-Cpp\include\c++\3.3.1\backward" -I"C:\Dev-Cpp\lib\gcc-lib\mingw32\3.3.1\include" -I"C:\Dev-Cpp\include" -L"C:\Dev-Cpp\lib"
C: /Downloads/SansNom1.cpp: In function `int main(int, char**)':
C: /Downloads/SansNom1.cpp:23: error: syntax error before `(' token
C: /Downloads/SansNom1.cpp:33:2: warning: no newline at end of file
Exécution terminée
Qui est la commande racine carrée trouvé sur le net :
int hypotenuse;
hypotenuse = double sqrt(double Cote1)
Voila si vs avez des idées...
Merci d'avance
Message édité par Infosactualite le 07-12-2004 à 14:36:31