|
Trovare gli errori del seguente sorgente:
01 unit Unità;
02
03 uses crt;
04
05 interface
06 implementation
07 type
08 Status=(acceso,spento,standby)
09 end;
10
11 procedure ChangeStatus(var e:status;s:status):void;
12 begin
13 e:=s;
14 end
15
16 function ReturnCode(s:status):string;
17 begin
18 case s of
19 acceso: returncode:='11';
20 spento: returncode:='00';
21 standby: returncode:='01';
22 end;
23
24 const Numero=89;
25
26 function GetTriple(d:real):longint;
27 begin
28 var t,e:real;
29 t:=2*d;
30 e:=3*t;
31 t:=t+d*e;
32 getrand:=e*d-t;
33 end;
34 end.
Soluzioni:
riga 01: non si possono usare caratteri speciali (lettere accentate, spazi, segni aritmetici) nelle dichiarazioni dei nomi delle unità;
riga 03: la dichiarazione delle libreriava solo dopo implementation;
riga 09: l'end non ci deve essere dopo una dichiarazione singola di un enumeratore;
riga 11: la procedura non può ritornare un valore;
riga 11: tipo void inesistente nel Pascal;
riga 14: manca il ; dopo end;
riga 21: manca end; del ciclo case...of;
riga 24: non è specifictato il tipo della variabile;
riga 28: le variabili temporanee devono essere specificate prima di begin;
riga 32: getrand è un nome non specificato; |
|