Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Pascal - Potete aitarmi con il programma che ho scritto?
Forum - Pascal - Potete aitarmi con il programma che ho scritto?

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
minicuzzu (Normal User)
Newbie


Messaggi: 14
Iscritto: 29/03/2009

Segnala al moderatore
Postato alle 18:21
Domenica, 29/03/2009
Ciao a tutti sono nuovo in questo sito fantastico , ho scritto un programmino con Dev pascal , ma al momento di compilarlo mi da 3 errori , ecco il rpogramma , mi rivolgo a voi esperti a finchè possiate dirmi dove sbagli , grazie a tutti.

Program domande;
uses crt;
var a,b:integer;
parola:string[40];
begin
writeln('seleziona una tra le domanda 1 , 2 o 3');
readln(a);
case a of
1:writeln(' chi ha scritto la Divina commedia ?:');
readln(parola);
if parola='Dante Alighieri' then
writeln('esatto');
else
begin
writeln(' Sbagliato la risposta e" Dante Alighieri ');
2:writeln('quanto fa 1+3 ?:');
readln(b);
if (b=4) then
writeln('esatto')
else
begin
writeln('sbagliato la risposta e" 4');
3:writeln('la capitale della Francia e"?:');
readln(parola);
if parola='Parigi' then
writeln('esatto');
else
begin
writeln('sbagliato la risposta e " Parigi');
end;
end;
end;
readln
end.

PM Quote
Avatar
minicuzzu (Normal User)
Newbie


Messaggi: 14
Iscritto: 29/03/2009

Segnala al moderatore
Postato alle 18:50
Domenica, 29/03/2009
vi prego aiutatemi cmq ho risolto due errori , nella variabile a ho messo byte e in b ho lasciato integer quindi ho uno string un integer e un bity

PM Quote
Avatar
minicuzzu (Normal User)
Newbie


Messaggi: 14
Iscritto: 29/03/2009

Segnala al moderatore
Postato alle 18:51
Domenica, 29/03/2009
nonoooooooooo non ho risolto niente , vi prego sono confusooooooooo

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 18:56
Domenica, 29/03/2009
Prima di tutto devi eliminare tutti i punti e virgola che stanno prima degli else...

poi devi racchiudere tra un begin e end tutte le istruzioni che stanno tra un caso e l'altro del case of..

per esempio

case a of
1: begin
   //tutto quello che vuoi
   end;
2: begin
   //di nuovo tutto quello che vuoi
   end;
end;

ora correggi questo.. poi se ti da ancora errore dimmelo che do una controllatina più approfondita

PM Quote
Avatar
minicuzzu (Normal User)
Newbie


Messaggi: 14
Iscritto: 29/03/2009

Segnala al moderatore
Postato alle 19:08
Domenica, 29/03/2009
Guardo l'ho cambiato in questo modo , ora mi due errori

Program Domande;
uses crt;
var a,b:integer;
parola:string[40];

begin
clrscr;
writeln('seleziona una tra le domanda 1 , 2 o 3');
readln(a);
case a of
1:begin
writeln(' chi ha scritto la divina commedia ?');
readln (parola);
if parola='Dante Alighieri' then
writeln('esatto')
else
begin
writeln(' Sbagliato la risposta e" Dante Alighieri');
end;
end;
2:begin
writeln('quanto fa la somma di uno e tre ?');
readln(b);
if b=(4) then
writeln('esatto')
else
begin
writeln('sbagliato la risposta e 4');
end;
end;
3:begin
writeln('la capitale della Francia e ?');
readln(parola);
if parola='Parigi' then
writeln('esatto')
else
begin
writeln('sbagliato la risposta e " Parigi');
end;
end;
else
begin
a:=>(3);
writeln('non hai scelto nessuna domanda');
end;
readln
end.

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 19:10
Domenica, 29/03/2009
Testo quotato

Postato originariamente da minicuzzu:

begin
a:=>(3);
writeln('non hai scelto nessuna domanda');
end;



quella riga subito dopo il begin non significa niente... è un errore toglilo...

e poi devi aggiungere un altro end alla fine

Ultima modifica effettuata da Anonymous il 29/03/2009 alle 19:11
PM Quote
Avatar
minicuzzu (Normal User)
Newbie


Messaggi: 14
Iscritto: 29/03/2009

Segnala al moderatore
Postato alle 19:11
Domenica, 29/03/2009
ho aggiunto i due punti in if parola:='dante'

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 19:14
Domenica, 29/03/2009
no... nella condizione if then i due punti non ci vogliono

perché se tu metti := significa che fai una assegnazione, invece il costrutto if then fa una valutazione di una condizione.. e la valutazione va fatta solo con l'=

cmq fa come ti ho detto.. togli quella riga alla fine e agigungi un end

PM Quote
Avatar
minicuzzu (Normal User)
Newbie


Messaggi: 14
Iscritto: 29/03/2009

Segnala al moderatore
Postato alle 19:14
Domenica, 29/03/2009
adesso è così e mi da un ultimo errore

Program Domande;
uses crt;
var a,b:integer;
parola:string[40];

begin
clrscr;
writeln('seleziona una tra le domanda 1 , 2 o 3');
readln(a);
case a of
1:begin
writeln(' chi ha scritto la divina commedia ?');
readln(parola);
if parola := 'Dante Alighieri' then
writeln('esatto')
else
begin
writeln(' Sbagliato la risposta e" Dante Alighieri');
end;
end;
2:begin
writeln('quanto fa la somma di uno e tre ?');
readln(b);
if b:=4 then
writeln('esatto')
else
begin
writeln('sbagliato la risposta e 4');
end;
end;
3:begin
writeln('la capitale della Francia e ?');
readln(parola);
if parola='Parigi' then
writeln('esatto')
else
begin
writeln('sbagliato la risposta e " Parigi');
end;
end;
end;
readln
end.

PM Quote
Pagine: [ 1 2 3 ] Precedente | Prossimo