Inscription / Connexion Nouveau Sujet
Niveau terminale
Partager :

probleme dans mon program calculatrice seul faute

Posté par
amin10
10-11-14 à 14:17

j'ai un program pascal (program calculatrice) mais le temp que je compiler j'apercus qu'il y a une faute svp aider moi
c'est mon program de calculatrice :
Program calculatrice ;
Uses crt ;
Var a,b :integer ;
       C :real ;
        Sign :char ;
Begin
Writeln(‘ecrire a=') ;
Readln(a) ;
Writeln(‘ecrire sign :') ;
Readln(sign) ;
Writeln(‘ecrire b=') ;
Readln(b) ;
If sign : ‘+' then
C := a+b else
If sign : ‘-‘ then
C := a-b else
If sign : ‘*' then
C := a*b else
If sign : ‘/' and b<>0 then
C := a/b else
Writeln(‘pas de solution')
End ;
Writeln(‘resulta=',c) ;
End.
et c'est le message de faute
syntax error, ‘'THEN'' expected but ‘' :'' found

Posté par
fm_31
re : probleme dans mon program calculatrice seul faute 10-11-14 à 15:17

Bonjour ,

je pense que l'erreur est sur   "If sign : '+' then "
Je mettrais plutôt  If sign = '+' then

Cordialement

Posté par
amin10
re : probleme dans mon program calculatrice seul faute 11-11-14 à 23:15

merci mon ami mais aussi sign = '+' et pas correcte car on ne peut pas utiliser signe '=' avec char

Posté par
fm_31
re : probleme dans mon program calculatrice seul faute 12-11-14 à 08:56

Oui car l'opérateur d'égalité est  ==  et pas =

Posté par
amin10
re : probleme dans mon program calculatrice seul faute 16-11-14 à 11:44

bon mon frere je faire comme tu dit et pas de solution et le faute " incompatible types : got "char" expected "real"

Posté par
fm_31
re : probleme dans mon program calculatrice seul faute 16-11-14 à 18:18

Je pense que  readln (sign)  retourne un entier qu'il te faut comparer avec l'équivalent entier du code ascii de tes caractères .
Il serait plus simple que tu utilises des chaines de 1 caractère (string) et gets pour la lecture . Ainsi tu n'as pas besoin de conversion .

Posté par
fm_31
re : probleme dans mon program calculatrice seul faute 16-11-14 à 20:39

Sur mon pc (j'ai pas de calculatrice) voila ce que j'ai fait


probleme dans mon program calculatrice seul faute

Posté par
amin10
re : probleme dans mon program calculatrice seul faute 17-11-14 à 00:21

cool mon amie merci bcp il ça marche bien you are the best mais il faut faire des modification pour améliorer ton programme comme éviter la puissance comme 1.40000000000000E+000 et aussi la division /0 impossible il faut que le programme affiche cette message en tout cas merci bcp

Posté par
amin10
re : probleme dans mon program calculatrice seul faute 17-11-14 à 01:01

ecrire aprés (resultat =,c :5:2)
aussi avant (resultat=,c)
if (signe='/') and (b<>0) then c:=a/b
if (signe='/') and (b=0) then writeln(' devision par 0 impossible)

Posté par
fm_31
re : probleme dans mon program calculatrice seul faute 17-11-14 à 08:36

Citation :
mais il faut faire des modification pour améliorer
C'est sûr . Je n'ai codé qu'un exemple d'entrées/sorties se rapprochant de ton exercice . Je pense que tu vas arriver à faire le programme complet .
Tu peux utiliser  else  quand c'est judicieux . Par exemple

if ((signe='/') and (b=0)) then writeln ('Division par 0 impossible') ;
else writeln ('Resultat = ' , c:5:2) ;

Posté par
amin10
re : probleme dans mon program calculatrice seul faute 22-11-14 à 14:11

bien mon frere



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1742 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !