n° 219
Novembre 2017
Dicembre 12, 2017, 09:34:32 *
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Accesso con nome utente, password e durata della sessione
Notizia:
 
   Indice   Linux Windows Techassistance Gameassistance videogame hardware Aiuto Ricerca Agenda Downloads Accedi Registrati  


* Messaggi recenti
Messaggi recenti
Pagine: [1]   Vai gi¨
  Stampa  
Autore Discussione: calcolatrice in pascal  (Letto 6546 volte)
0 utenti e 1 Utente non registrato stanno visualizzando questa discussione.
Tommy97
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 22


tommy.pocho97@hotmail.it
Mostra profilo E-mail
« inserita:: Agosto 31, 2012, 05:23:47 »

Salve
stavo creando una calcolatrice in pascal utilizzando il compilatore free pascal
il codice Ŕ il seguente:

Codice:
program calcolatrice;
uses crt;
var s:char;
     a,b,ra,rs,rm,rd:real;
begin
clrscr;
writeln('Inserisci un numero intero');
read(a);
writeln('Inserisci il segno');
read(s);
writeln('Inserisci un altro numero intero');
read(b);
if s=('+') then
  begin
  ra:=(a+b);
  writeln(ra);
  end;
  else if s('-') then
    begin
    rs:=(a-b);
    writeln(rs);
    end;
    else if s('*') then
      begin
      rm:=(a*b);
      writeln(rm);
      end;
      else if s('/') then
        begin
        rd:=(a/b);
        writeln(rd);
        end;
repeat until keypressed
end.

il programma viene compilato,per˛ quando lo apro mi fainserire solo il primo e il secondo
numero ma non mi fa inserire il segno
aiutatemi
grazie in anticipo
Registrato
alino74
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 25


Mostra profilo E-mail
« Risposta #1 inserita:: Settembre 25, 2012, 10:47:51 »

1) devi sostituire 'read' con 'readln';
2) devi aggiungere '=' nei controlli if;
3) devi togliere ';' dopo gli 'end' che vengono prima degli 'else';
4) devi togliere ';' prima di ogni 'end'

Quindi il codice diventa questo:

program calcolatrice;
uses crt;
var s:char;
     a,b,ra,rs,rm,rd:real;
begin
clrscr;
writeln('Inserisci un numero intero');
readln(a);
writeln('Inserisci il segno');
readln(s);
writeln('Inserisci un altro numero intero');
readln(b);
if s=('+') then
  begin
  ra:=(a+b);
  writeln(ra)
  end
else if s=('-') then
    begin
    rs:=(a-b);
    writeln(rs)
    end
else if s=('*') then
      begin
      rm:=(a*b);
      writeln(rm);
      end
      else if s=('/') then
        begin
        rd:=(a/b);
        writeln(rd)
        end;
repeat until keypressed
end.
Registrato
Tommy97
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 22


tommy.pocho97@hotmail.it
Mostra profilo E-mail
« Risposta #2 inserita:: Settembre 25, 2012, 12:37:30 »

l' ho provato ma non funziona grazie comunque
Registrato
alino74
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 25


Mostra profilo E-mail
« Risposta #3 inserita:: Settembre 25, 2012, 01:42:28 »

compilato ed eseguito con free pascal: funziona!
Legge primo nr, segno, secondo numero, esegue operazione e attende pressione tasto...

ti riporta qualche err?
Registrato
Tommy97
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 22


tommy.pocho97@hotmail.it
Mostra profilo E-mail
« Risposta #4 inserita:: Settembre 26, 2012, 04:02:06 »

si  dice Fatal sintax error: ";" expected but ":" found   
lo indica all'ultima riga dove scrivo end.
comunque uso anche io free pascal
Registrato
NelloRizzo
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 15


Mostra profilo E-mail
« Risposta #5 inserita:: Ottobre 02, 2012, 06:12:24 »

Hai messo un ; dopo keypressed?
Registrato
alino74
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 25


Mostra profilo E-mail
« Risposta #6 inserita:: Ottobre 02, 2012, 10:36:30 »

non Ŕ possibile....
fai un copia e incolla del listato che ho riportato sopra ....e riprova....
Registrato
gigisoft
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 4


Mostra profilo
« Risposta #7 inserita:: Ottobre 19, 2012, 03:42:35 »

si  dice Fatal sintax error: ";" expected but ":" found   
lo indica all'ultima riga dove scrivo end.
comunque uso anche io free pascal

e allora ti ha detto esplicitamente quale errore ha trovato, semplicemente per un errore di digitazione hai messo un ":" al posto di un ";"

Ciao.
Registrato
Tommy97
Newbie
*

Karma: +0/-0
Scollegato Scollegato

Messaggi: 22


tommy.pocho97@hotmail.it
Mostra profilo E-mail
« Risposta #8 inserita:: Ottobre 20, 2012, 02:07:12 »

ho sbagliato a scrivere l'errore
in realtÓ Ŕ expected but "." found
 
Registrato
Pagine: [1]   Vai su
  Stampa  
 
Vai a:  

Copyright © 2017 Edizioni Master SpA. p.iva : 02105820787

Tutti i diritti di proprietà letteraria e artistica riservati. - Privacy



powered by Simple Machines