Aide pour un algorithme

Fermé
gaki - 26 févr. 2008 à 19:52
 amigo - 26 févr. 2008 à 21:34
Bonjour, je débute en informatique et mon professeur d'informatique nous a demander d'écrire un programme en langage c qui permet de trouver les racines réelles d'un polynome du second ordre .
J'ai essayé d'ecrire un programme et j'aimerais le executer pour voir s'il marche mais je n'y arrive pas .
Est-ce que quelqu'un pourrai me dire comment lancer programme et me dire si mon algorithme peutmarcher ou s'il y a des fautes dedans ?

#include<stdio.h>
Int main(){
float a,b,c
scanf("%f%f%f",&a,&b,&c);
float delta=b*b-4.a*c
if (abs(delta)<1.e-5){
float x=-b/2./a
printf("une racine reelle: %f",x);
} else if (delta>0){
float x1=(-b+sqrt(delta))/2./a
float x2=(-b-sqrt(delta))/2./a
printf("deux racine reelle: %f%f",x1,x2);
}else{
printf("pas de racine relle")
}
return 0;
}
A voir également:

1 réponse

bonjour,

pour executer ton programme, il te faut un compilateur (Turbo C, Dev-c,...)

pour ton prog voici les erreurs que j'ai pu relever:

#include<stdio.h>
Int main(){
float a,b,c //manque( ; ) en fin de ligne

scanf("%f%f%f",&a,&b,&c);
//déclarer float delta dans la partie déclaration
//ecrire plutot delta = (b*b)-(4*a*c) c'est plus clair 4.a*c n'est pas autorisé
float delta=b*b-4.a*c // manque (;)

//si delta=0 solution double x1=x2
//incorect abs(delta) est toujours positif ou nul
//if (delta==0) {
if (abs(delta)<1.e-5){

//declarer x1 et x2 dans la partie déclaration
//x1=-b/(2*a); ou x1=-b/2/a;
float x=-b/2./a

//printf("une racine reelle double x1=x2=%f",x1);
printf("une racine reelle: %f",x);
}

else if (delta>0){
//x1=(-b+sqrt(delta))/(2*a);
float x1=(-b+sqrt(delta))/2./a

//x2=(-b-sqrt(delta))/(2*a);
float x2=(-b-sqrt(delta))/2./a

//printf("deux racines reelles: x1=%f x2=%f",x1,x2);
printf("deux racine reelle: %f%f",x1,x2);

}else{
// manque (;) en fin de ligne
printf("pas de racine relle")
}
return 0;
}
0