Sos probleme de compilation de l'algorithme
Fermé
F2 electronique
-
Modifié par baladur13 le 30/04/2016 à 16:30
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 30 avril 2016 à 17:30
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 - 30 avril 2016 à 17:30
A voir également:
- Sos probleme de compilation de l'algorithme
- Logiciel algorithme gratuit - Télécharger - Édition & Programmation
- Logiciel algorithme euromillion - Télécharger - Loisirs créatifs
- Ecrire un algorithme qui calcule le produit de deux nombres - Forum Programmation
- Breach compilation - Guide
- Code ascii algorithme - Guide
2 réponses
KX
Messages postés
16752
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
31 août 2024
3 018
30 avril 2016 à 17:04
30 avril 2016 à 17:04
Bonjour,
- Il manque la première ligne :
program NomDeTonProgramme;
- Ligne 25/26 tu as mis
end; else
or le;
marque la fin d'un if sans else, donc il ne sait pas à quoi sert le else... Il faut enlever ce point-virgule.
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
30 avril 2016 à 17:30
30 avril 2016 à 17:30
Ceci est déjà mieux, mais il y a plein d'améliorations à effectuer. Voir commentaires.
Avec p2c sous linux:
var coeff_a, coeff_b, coeff_c, delta, solutionx1, solutionx2 : real ; (* Instructions *) begin (* Saisie des variables a introduire *) writeln; (*saut de ligne*) writeln; (*saut de ligne*) writeln('Saisir les coefficients') ; writeln; (*saut de ligne*) writeln('coeff_a =') ; readln(coeff_a); writeln('coeff_b =') ; readln(coeff_b); writeln('coeff_c =') ; readln(coeff_c); (*il faudra tester si a =0 ou (a = 0 et b =0).....*) writeln; (*saut de ligne*) writeln; (*saut de ligne*) (* Formules des variables intermidiaires et/ou de sortie *) delta := coeff_b * coeff_b - 4 * coeff_a * coeff_c ; writeln("delta= ", delta); if delta < 0 then begin writeln ('Delta et négatif l''équation n''a pas de solution'); writeln;(*saut de ligne*) writeln;(*saut de ligne*) end else (* il faudra tester si delta = 0 *) begin writeln("HERE"); solutionx1 := (- coeff_b + sqrt(delta)) / (2 * coeff_a) ; solutionx2 := (- coeff_b - sqrt(delta)) / (2 * coeff_a) ; (* Affichages des résultats *) writeln('Les coefficients entrés'); writeln;(*saut de ligne*) writeln('coeff_a =',coeff_a) ; writeln('coeff_b =',coeff_b) ; writeln('coeff_c =',coeff_c) ; writeln;(*saut de ligne*) writeln;(*saut de ligne*) writeln('Delta et les solutions xi') ; writeln;(*saut de ligne*) writeln('Delta =',delta) ; writeln('solutionx1 =',solutionx1) ; writeln('solutionx2 =',solutionx2) ; writeln;(*saut de ligne*) writeln;(*saut de ligne*) end; end.
Avec p2c sous linux:
johand@bata:~/src/CCM/PASCAL$ p2cc -lm -osecond second.pas
second..c:9:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
main(int argc, Char *argv[])
^
johand@bata:~/src/CCM/PASCAL$ echo -e "1\n2\n-8" | ./second
Saisir les coefficients
coeff_a =
coeff_b =
coeff_c =
delta= 3.60000E+01
HERE
Les coefficients entrés
coeff_a = 1.00000E+00
coeff_b = 2.00000E+00
coeff_c =-8.00000E+00
Delta et les solutions xi
Delta = 3.60000E+01
solutionx1 = 2.00000E+00
solutionx2 =-4.00000E+00