Je cherche le rayon d'une sphere ou le volume est donner
Fermé
hassine
-
5 nov. 2013 à 01:18
Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 - 6 nov. 2013 à 19:47
Yoan Messages postés 11795 Date d'inscription mardi 1 février 2005 Statut Modérateur Dernière intervention 10 décembre 2023 - 6 nov. 2013 à 19:47
A voir également:
- Je cherche le rayon d'une sphere ou le volume est donner
- Mélangeur de volume - Guide
- Comment réduire le volume d'un fichier pdf - Guide
- Volume autoradio bloqué - Forum Autoradio
- Excel donner une valeur à un mot - Forum Excel
- L'url suivante, censée aboutir à un article, donne lieu à une redirection indiquant que la page n'a pas été trouvée. retrouvez la page recherchée. reportez le titre de l’article et son auteur. - Forum Microsoft Edge / Internet Explorer
1 réponse
Yoan
Messages postés
11795
Date d'inscription
mardi 1 février 2005
Statut
Modérateur
Dernière intervention
10 décembre 2023
2 330
Modifié par Yoan le 5/11/2013 à 02:36
Modifié par Yoan le 5/11/2013 à 02:36
Bonjour,
Il y a plein de (gros) problèmes.
Déjà parlons uniquement de la fonction hassine sans même regarder le code à l'intérieur.
Déjà rien que le nom de tes variables suggère que tu n'as pas compris l'appel de fonctions en C. Alors reprenons du début. Telle qu'elle est déclarée
Ensuite regardons le code à l'intérieur de la fonction hassine :
La première instruction est une déclaration de variable. Ca sert à prévenir le compilateur que l'on va prochainement utiliser une variable nommée
Ensuite pow(a, 1/3 ) permet effectivement de calculer la racine cubique de
Mais surtout ne pas faire
Il y a des erreurs dans le main aussi, erreurs qui montrent quelle partie de ton cours de C tu n'as pas assez révisé : la portée des variables. Avant de vouloir corriger ton code je te suggère de revoir absolument ton cours 'ou n'importe quel cours sur Internet) sur la portée des variables en C. Ce que tu as écrit ressemble (ou ressemblote) à la manière dont sont déclarées les variables dans certains langages fonctionnels mais pas en C.
Rien ne sert d'aller plus loin maintenant il faut que tu relises cette partie du cours et que tu corriges la fonction hassine pour le reste on verra après ...
Sinon j'ajoute que le découpage en fonction devrait avoir un sens et apporter quelque-chose d'intéressant. Dans l'immédiat, en admettant qu'elle soit juste ta fonction hassine ne fait rien d'autre que calculer la racine cubique, ce qui est déjà le rôle de la fonction pow donc ça n'a aucun intérêt. Par contre tu pourrais inclure dans cette fonction le calcul (3*v )/ (4*PI) en plus du calcul de la racine cubique. Maintenant ça devient beaucoup plus intéressant car ta fonction hassine (que tu as nommée ainsi probablement car tu ne connaissais pas vraiment son rôle) a maintenant un rôle de calculer un rayon à partir d'un volume. Tu pourrais donc l'appeler
L'urgent est fait, l'impossible est en cours,
Pour les miracles, prévoir un délai ...
Il y a plein de (gros) problèmes.
Déjà parlons uniquement de la fonction hassine sans même regarder le code à l'intérieur.
Déjà rien que le nom de tes variables suggère que tu n'as pas compris l'appel de fonctions en C. Alors reprenons du début. Telle qu'elle est déclarée
float rsignifie que cette fonction prend en paramètre un flottant nommé
ret le
floatdevant le nom de la fonction signifie qu'elle renvoie un flottant, mais cette valeur de retour n'est pas nommée, on ne peut obtenir cette valeur qu'en faisant un appel à la fonction hassine(5.0) par exemple. Dans ce contexte le float
rest une entrée de la fonction et le float non nommé est une sortie. Tu ne devrais donc déjà pas nommer
rde cette façon car je suppose que tu pense que c'est le rayon mais pas du tout, car l'entrée de ta fonction c'est le volume. Le rayon est une sortie mais la sortie n'est pas nommée en C (elle l'est dans certains autres langages). Conclusion : hassine devrait prendre un paramètre qui s'appelle plutôt
vque
r, et ce
vne devra jamais être affecté car
vest une valeur de sortie (jamais de
v = quelque-chosedans cette fonction).
Ensuite regardons le code à l'intérieur de la fonction hassine :
La première instruction est une déclaration de variable. Ca sert à prévenir le compilateur que l'on va prochainement utiliser une variable nommée
amais ça ne lui donne aucune valeur. Ou bien pour être plus correct la valeur par défaut de cette variable est une valeur complètement aléatoire. A la fin de cette déclaration, a a par exemple pour valeur -68428.87450 (par exemple).
Ensuite pow(a, 1/3 ) permet effectivement de calculer la racine cubique de
a. Sauf que
aa la valeur complètement hallucinante de -68428.87450 donc le résultat escompté n'est forcément pas bon. Lorsque tu calcules pow() il faut donc opérer sur l'entrée de la fonction (que tu as appelé
ret que je te suggère d'appeler
v).
Mais surtout ne pas faire
r = quelque-chosecar cette valeur de sortie sera perdue.
Il y a des erreurs dans le main aussi, erreurs qui montrent quelle partie de ton cours de C tu n'as pas assez révisé : la portée des variables. Avant de vouloir corriger ton code je te suggère de revoir absolument ton cours 'ou n'importe quel cours sur Internet) sur la portée des variables en C. Ce que tu as écrit ressemble (ou ressemblote) à la manière dont sont déclarées les variables dans certains langages fonctionnels mais pas en C.
Rien ne sert d'aller plus loin maintenant il faut que tu relises cette partie du cours et que tu corriges la fonction hassine pour le reste on verra après ...
Sinon j'ajoute que le découpage en fonction devrait avoir un sens et apporter quelque-chose d'intéressant. Dans l'immédiat, en admettant qu'elle soit juste ta fonction hassine ne fait rien d'autre que calculer la racine cubique, ce qui est déjà le rôle de la fonction pow donc ça n'a aucun intérêt. Par contre tu pourrais inclure dans cette fonction le calcul (3*v )/ (4*PI) en plus du calcul de la racine cubique. Maintenant ça devient beaucoup plus intéressant car ta fonction hassine (que tu as nommée ainsi probablement car tu ne connaissais pas vraiment son rôle) a maintenant un rôle de calculer un rayon à partir d'un volume. Tu pourrais donc l'appeler
float calcul_rayon(float v)
L'urgent est fait, l'impossible est en cours,
Pour les miracles, prévoir un délai ...
5 nov. 2013 à 14:44
Dal
5 nov. 2013 à 15:39
Modifié par blux le 5/11/2013 à 15:44
Je confirme que les maths et toi, ça fait (au moins) 3 ;-)
La formule du volume est , donc on ne cherchera pas une racine carrée, mais plutôt une racine cubique...
Modifié par [Dal] le 5/11/2013 à 15:59
(musique du générique des Envahisseurs, David Vincent, sort de ce corps !!! :-D)
5 nov. 2013 à 16:01
Dal