Racine carrée en C [Résolu/Fermé]

Signaler
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
-
jason-live
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
-
Bonjour, voici mon code :
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
    float bc =0;
    float ab =0;
    float ac =0;
    printf("Soit un triangle rectangle ABC.\n");
    printf ("Rentrez un nombre pour AB :\n");
    scanf ("%f", &ab);
    printf ("AB = %f \n", ab);
    printf ("Rentrez un nombre pour AC :\n");
    scanf ("%f", &ac);
    printf ("AC = %f \n", ac);
    bc = (ab*ab)+(ac*ac);
    printf ("BC = %f \n", bc);


    return 0;
}

Je voudrais savoir comment calculer la racine carrée, j'ai bien trouvé pour calculer le carrée mais la racine carrée je ne sais pas en C merci de m'aider !

14 réponses

Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
56
Quelle racine carrée veux tu calculer dans ton code ?

http://www.linux-france.org/article/man-fr/man3/sqrt-3.html
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 80357 internautes nous ont dit merci ce mois-ci

Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Je suis débutant en C et je ne comprend pas ton site et je ne veux pas le comprendre.
En faite je veux calculer l'hypoténuse de BC AUTOMATIQUEMENT j'entre un nombre AB j'en entre un autre AC et donc dans mon code y a (ab*ab)+(ac*ac) car pour trouver l'hypoténuse je mets au carrée et ensuite c'est la racine carrée.
j'ai trouvé la formule (si on appelle ça une formule) pour mettre au carrée mais je n'ai pas trouvé celle pour mettre une racine carrée.
Fais moi un exemple stp en me montrant avec un SQRT
Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
56
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
double plop;
double pouet;

plop = 36;
pouet = sqrt(plop);
printf("La racine carrée de %f est %f", plop, pouet);
return (0);
}


J'ai pas de compilateur sous la main mais ca devrait marcher.
Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
56
bonjour,

Dans la lib math.h tu as la fonction sqrt(); (squareroot = racine carrée)
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Oui j'ai vu cette fonction sur google mais je ne sais pas comment elle fonctionne, ni où la placer.
Aides moi sur mon code stp :D
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
je te remercie t'es un Dieu !!!
Donc ça donne ça :
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
    double bc =0;
    double ab =0;
    double ac =0;
    printf("Soit un triangle rectangle ABC.\n");
    printf ("Rentrez un nombre pour AB :\n");
    scanf ("%lf", &ab);
    printf ("AB = %lf \n", ab);
    printf ("Rentrez un nombre pour AC :\n");
    scanf ("%lf", &ac);
    printf ("AC = %lf \n", ac);
    bc = (ab*ab)+(ac*ac);
    bc = sqrt (bc);
    printf ("BC = %lf \n", bc);


    return 0;
}


Ca marche très très bien mais je ne sais pas pour la syntaxe et tout si c'est bien;
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Pour la syntaxe , du fait que je fais :
 bc = (ab*ab)+(ac*ac);
    bc = sqrt (bc);

je répète 2 fois bc c'est "moche " ???
FrenchFigraro
Messages postés
108
Date d'inscription
jeudi 15 octobre 2009
Statut
Membre
Dernière intervention
22 décembre 2009
23
tu peux utiliser une variable intermédiaire mais ça t'oblige à rajouter une variable supplémentaire dans tes déclarations en début de fonction/programme

BCcarr = ( ab * ab ) + ( ac * ac );
bc = sqrt(BCcarr);
Mr_Hooligan
Messages postés
15
Date d'inscription
dimanche 8 novembre 2009
Statut
Membre
Dernière intervention
20 novembre 2009

Pour prendre la racine carré d'un nombre ( n ) tu peux également faire :

n exposant 1/2 ( fonction pow dans math.h )
Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
56
Tu peux faire :

 bc = sqrt((ab*ab)+(ac*ac));
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Ok bon ba ça marche merci mec !!
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Et même au lieu de faire ça :
bc = sqrt ((ab*ab)+(ac*ac));

Je peux faire ça pour simplifier :
bc = sqrt ((ab+ac)*2);
Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
56
Faux
AB = 8
AC = 6

8*8+6*6 = 100
2 * ( 6 + 8 ) = 28
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Oui tu a raison.
Merci.
Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
56
ab*ab + ac*ac = ab² + ac² et non 2ab + 2ac :P
Messages postés
180
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
25
Oui Oui je viens de marquer sur une feuille et j'ai vu que j'avais pas bon.
Puis même la logique pour trouver l'hypoténuse c'est ça : (ab*ab)+(ac*ac) ce qui donne ça :ab² + ac². :P