Racine carrée en C

[Résolu/Fermé]
Signaler
Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
-
Messages postés
178
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 !
A voir également:

14 réponses

Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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
4
Merci

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

CCM 65492 internautes nous ont dit merci ce mois-ci

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

http://www.linux-france.org/article/man-fr/man3/sqrt-3.html
Messages postés
400
Date d'inscription
vendredi 2 octobre 2009
Statut
Membre
Dernière intervention
23 décembre 2009
66
#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
66
bonjour,

Dans la lib math.h tu as la fonction sqrt(); (squareroot = racine carrée)
Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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 " ???
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);
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
66
Tu peux faire :

 bc = sqrt((ab*ab)+(ac*ac));
Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
Ok bon ba ça marche merci mec !!
Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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
66
Faux
AB = 8
AC = 6

8*8+6*6 = 100
2 * ( 6 + 8 ) = 28
Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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
66
ab*ab + ac*ac = ab² + ac² et non 2ab + 2ac :P
Messages postés
178
Date d'inscription
mardi 1 septembre 2009
Statut
Membre
Dernière intervention
26 décembre 2009
34
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