begin process at 2012 05 30 14:08:40
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Programme en C. Calcule de racines


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Programme en C. Calcule de racines

lundi 1 août 2005 à 02:22:05 | Programme en C. Calcule de racines

juancho2786

bonsoir a tous...

J'ai voulu créer un programme en C qui demande trois nombres (a,b,c) a l'utilisateur tel que
ax² + bx + c = 0 pour ensuite calculer les racines. Mais aparemment j'ai un problème.
Pouvez vous m'aidez SVP. Quelles modifications faire? Comment alléger le code?

Merci d'avance

Voici le code :

#include <stdio.h>
#include <math.h>
main()
{
 short a,b,c,rho;
 float tmp;
 printf("Entrez un nombre a, un nombre b et un nombre c tel que ax² + bx + c = 0");
 printf("\n\na = ? , b = ? , c = ? :");
 scanf("%hd  %hd  %hd",&a, &b, &c);
 printf("\n %hdx² + %hdx + %hd = 0", a,b,c);
 rho=b*b-4*a*c ;
 tmp= sqrt(b*b-4*a*c);
 if (rho >0)
    printf("\n\nLes racines sont : %f et %f", (-b+ temp)/(2*a),(-b - temp)/(2*a));
 else if   (rho == 0)
    printf ("\n\nLa racine est : %.hd ", (-b)/(2*a));
 else
    printf("\n\nIl n'y a pas de racines");
}

lundi 1 août 2005 à 08:47:04 | Re : Programme en C. Calcule de racines

vecchio56

Administrateur CodeS-SourceS
tmp= sqrt(b*b-4*a*c); Tu viens de calculer ca dans tho, pourquoi ne pas réutiliser cette variable? Peut être penser a vérifier si rho est négatif avant de calculer sa racine carrée?
lundi 1 août 2005 à 12:53:18 | Re : Programme en C. Calcule de racines

juancho2786

Mais le probleme vient quand y a pas de racine.J'ai ce message : sqrt:_DOMAIN error
Aidez moi SVP...

#include <stdio.h>
#include <math.h>
main()
{
 short a,b,c,rho;
 float temp;
 printf("Entrez un nombre a, un nombre b et un nombre c tel que ax² + bx + c = 0");
 printf("\n\na = ? , b = ? , c = ? :");
 scanf("%hd %hd %hd",&a, &b, &c);
 printf("\n%hdx² + %hdx + %hd = 0", a,b,c);
 rho=b*b-4*a*c ;
 temp= sqrt(rho);
 if (rho >0)
    printf("\n\nLes racines sont : %f et %f", (-b+ temp)/(2*a),(-b - temp)/(2*a));
 else if   (rho == 0)
    printf ("\n\nLa racine est : %.hd ", (-b)/(2*a));
 else
    printf("\n\nIl n'y a pas de racines");
}
lundi 1 août 2005 à 15:24:18 | Re : Programme en C. Calcule de racines

vinc1008881


domain error moi sa me fait penser à erreur dans l'ensemnle de def (c a d quand tu demande a ta casio de faire racine(-5), elle fait la guelle .

(1)==> met ensemble les 2 premier printf (); pour gagner de la place
(2)==>inutile d'utiliser un 'h' devant le d, en car si je mamuse a entrer c = 256 c est overflow et "K C le processus" lol, surtout s tu est sous windows .
(3)==> moi je ferrais sa a ta place

if (!(rho = b*b-4(a*c))) {/* rho = 0, on a une solution double*/}
if (rho>0){/*on a 2 racine réelle*/}else {/*on a 2 racine imaginaire voir cour terminal S)
(4)==>degage la librairie math.h et fai ta propre fonction racine !

voila, @+, vinc1008881


lundi 1 août 2005 à 16:53:58 | Re : Programme en C. Calcule de racines

buno

Administrateur CodeS-SourceS
Pourquoi ne pas utiliser math.h?? C'est bête de ré-inventer la roue à chaque programme, non?

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
lundi 1 août 2005 à 19:01:45 | Re : Programme en C. Calcule de racines

juancho2786

Merci pour toutes vos réponses.
Mais comment on crée une fonction? par exemple la fonction racine carré...
Merci d'avance

lundi 1 août 2005 à 19:50:33 | Re : Programme en C. Calcule de racines

juancho2786

Ahh voilà je n'ai plus ce message.
J'ai fais quelques modifications. Mais je comprends pas pourquoi j'avais ce message d'erreur avant... Pouvez vous m'expliquer SVP???

#include <stdio.h>
#include <math.h>
main()
{
 short a,b,c,rho;
 printf("Entrez un nombre a, un nombre b et un nombre c tel que ax² + bx + c = 0");
 printf("\n\na = ? , b = ? , c = ? :");
 scanf("%hd %hd %hd",&a, &b, &c);
 printf("\n%hdx² + %hdx + %hd = 0", a,b,c);
 rho=b*b-4*a*c ;
 if (rho < 0)
    printf("\n\nIl n'y a pas de racines");
 else if   (rho == 0)
    printf ("\n\nLa racine est : %hd ", (-b)/(2*a));
 else
    printf("\n\nLes racines sont : %.2f et %.2f", (-b+ sqrt(rho))/(2*a),(-b - sqrt(rho))/(2*a));
}    

mardi 2 août 2005 à 11:15:30 | Re : Programme en C. Calcule de racines

cosmobob

salut,
t'avais cette erreur car tu calculais a chaque fois la racine carré de rho, meme quand il était négatif, ce qui explique le message sqrt:_DOMAIN error
la fonction sqrt est définie sur l'ensemble des nombre réels positifs et pas sur tout R ...

a+

mardi 2 août 2005 à 11:21:57 | Re : Programme en C. Calcule de racines

Joky

Membre Club
Ouai c'est vrai ça
Comment calculer une racine carré mais à base des opérations mathématiques traditionnelles
Genre on oublie les puissance 1/2 pour les malins lol
Vous me rédigerez d'après votre propre expérience et vos seules connaissances, un rapport qui démontrera dans un premier temps que la question pose un vrai problème et vous vous dépecherez de résoudre cette énigme :)

void Aurevoir( void ); //Bonne journée

mardi 2 août 2005 à 17:49:35 | Re : Programme en C. Calcule de racines

vecchio56

Administrateur CodeS-SourceS
Avec l'algo de Newton

1 2

Cette discussion est classée dans : programme, printf, hd, racines, rho


Répondre à ce message

Sujets en rapport avec ce message

Un ptit pb en C, Debutant 2 . [ par Tkaos ] Voila encore un probleme, apres avoir appris a me servir du "if" j'ai fait ce petit programme :#include #include #include int main(void) { char szname Pb debutant "C" 2 [ par Tkaos ] Voila encore un probleme, apres avoir appris a me servir du "if" j'ai fait ce petit programme :#include #include #include int main(void){char szname[1 pb programme très très simple [ par surfeurnet ] voila il s'agit d'un programme très simple qui ne fait pas d'erreurs à la compilation avec dev-cpp mais qui plante quand je l'exécute :#include char n envoyer une commande à l'intérieure du programme sous forme de string [ par oudkaramla ] bonjour tout le monde j'ai un programme qui demande à l'utilisateur d'entrer une commande sur la fenêtre consolesauf que moi je veux le faire à l'inté aide pour mon premier programme merci [ par newbieratus ] je debute ca fait une semaine que j'ai commencer le C et g creer un petit programme mais il ne marche pas !! quelqu' un pourrait t'il m'aider et me di Programme sur le calcul des racines reels ou complexes de polynomes:suites de sturm!!!!!!!! [ par prince83 ] Salut a tous !J'ai un petit probleme, c pour ca que j'ai recours a votre aide il faut que je trouve un programme en Ocaml sur ce theme: le calcul des nombre trop grand ? [ par pandakill ] Bonjour à tous,Voila j'ai récemment fait le programme suivant en C pour résoudre une solution, et malgré tous mes efforts je ne comprends pas pourquoi Problème avec scanf() insovlable ?! [ par nollyflip ] Bonjour,J'ai un souci plutôt embêtant avec scanf()Je programme sous XP et devcppDès que j'appel scanf(), la console se ferme (ca plante quoi)J'ai fait aide moi sur ce petit programme [ par salim_samir ] salut a tous j'ai essayé d'executer ce petit programme sur le port// il s'execute mais il ne commande pas les sorties de port qui ce qu'il manque svp: probleme d'erreur dans un programme [ par jekburn ] Bonjour,Mon programme qui est un répertoire téléphonique, avec recherche de fiche par "nom"comet une erreur, mais je ne sais pas d'ou elle viensMerci


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales