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 - Prob until repeat
Forum - Pascal - Prob until repeat

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


Messaggi: 6
Iscritto: 03/09/2006

Segnala al moderatore
Postato alle 22:55
Domenica, 03/09/2006
program prova;
Uses newdelay,crt;
var a:string[40];
begin clrscr;
writeln ('come ti chiami?');
readln (a);
textcolor (2);
if a ='dario' then writeln ('Giusto!) else
begin
textcolor (4);
writeln ('Sbagliato!');
end;readln;end.

-------------
questo è un programma fatto da me ma come mai nn posso fare
Program prova;
Uses newdelay,crt;
var a,x:string[40];
begin
clrscr;
repeat
writeln ('Come ti chiami?');
readln (a);
textcolor (2);
if a='Dario ' then writeln ('Giusto!') else
begin textcolor (4);
writeln ('sbagliato!');
end;
readln(x);
until x=0
end.
-------------------
Mi da"Error 26: Type mismatch.
Ho capito ke il prob è causato da repeat ed until....ke devo fare?...
Come faccio a fare ripetere la domanda=?:-?

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 23:09
Domenica, 03/09/2006
Semplice, perchè la variabile x a cui stai cercandi di assegnargli il valore intero 0 è di tripo string... quindi invece di ... until x=0 devi mettere until x='0' ok?

PM Quote
Avatar
benigno41 (Normal User)
Newbie


Messaggi: 6
Iscritto: 03/09/2006

Segnala al moderatore
Postato alle 9:20
Lunedì, 04/09/2006
Grazie 1000 ora funzione ...un ultima domanda ...xkè quando scrivo Dario apposto di dario mi dice che è sbagliato=???????

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 12:12
Lunedì, 04/09/2006
Perchè non devi dimenticarti del "case-sensitive", se vuoi che il programma ti accetti anche dario devi mettere
if (a='Dario') or (a='dario') then
....
else
...
La 'D' e la 'd' sembrano uguali, ma per la macchina sono diversi come la 'a' e la 'z' mi capisci?:k:

PM Quote
Avatar
benigno41 (Normal User)
Newbie


Messaggi: 6
Iscritto: 03/09/2006

Segnala al moderatore
Postato alle 16:50
Lunedì, 04/09/2006
Grazie ancora!Ora va bene,....:)

PM Quote
Avatar
Anonymous (Member)
Guru


Messaggi: 1059
Iscritto: 30/07/2006

Segnala al moderatore
Postato alle 17:56
Lunedì, 04/09/2006
Bene...8-) e sempre a disposizione:)

PM Quote
Avatar
benigno41 (Normal User)
Newbie


Messaggi: 6
Iscritto: 03/09/2006

Segnala al moderatore
Postato alle 0:04
Domenica, 29/10/2006
ciao...ho un altro prob cn questo problema...
(questo è un prog su un sistema di 2 equazioni)..
voglio sapere xke quando m viene indeterminato o impossibile al posto d dirmelo esce direttamente a causa dell'errore division by zero.... ecco il prog..(delta sta per determinante)---
--------
program sistema;
uses newdelay,crt;
var a,b,c,d,e,f,x,y,delta,deltax,deltay,u:real;
begin
repeat
clrscr;
textcolor(7);
writeln ('questo programma risolve sistemi di tipo ax+by=c');
textcolor(9);
write ('a= '); readln (a);
write ('b= '); readln (b);
write ('c= '); readln (c);
write ('d= '); readln (d);
write ('e= '); readln (e);
write ('e= '); readln (f);
delta:= (a*e)-(b*d);
deltax:=(c*e)-(b*f);
deltay:=(a*f)-(c*d);
x:=deltax/delta;
y:=deltay/delta;
textcolor (8);
writeln ('');
writeln ('il valore della x è',x);
writeln ('');
writeln ('il valore della y è',y);
writeln ('');
if delta<>0
then
writeln ('il sistema è determinato')
else
begin
writeln ('');
writeln ('il sistema è indeterminato o impossibile);readln;
end;
writeln ('');textcolor (23);
writeln ('scrivi 0 per uscire o un altro numero per eseguire un altro sistema');
readln (u); until u=0
end.
--------------
spero ke qualcuno riesca a comprendere il problema e di essere stato chiaro....grazie a chiunque m dia una mano...STO IMPAZZENDO!!!!!!!

PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 9:29
Domenica, 29/10/2006
Semplice: tu hai calcolato e diviso per delta uguale a 0) prima di controllare che esso fosse effettivamente 0. :k:

PM Quote
Avatar
benigno41 (Normal User)
Newbie


Messaggi: 6
Iscritto: 03/09/2006

Segnala al moderatore
Postato alle 13:16
Domenica, 29/10/2006
nn ho capito....c'è forse un comando ke m puo fare evitare questo errore...magari ke riconosce lo 0?(scusa sn ancora un novellino)

Ultima modifica effettuata da benigno41 il 29/10/2006 alle 13:17
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo