我有一个任务是用Pascal编写一个程序。当我运行该程序时,结果是退出代码 201。
我不知道如何解决此错误。
program convertTime;
uses crt;
Type
Jam = record
hh:integer ;
mm:integer ;
ss:integer;
end;
var
J : Jam;
P,totaldetik,sisa : integer;
begin
J.hh:= 16;
J.mm:= 10;
J.ss:= 34;
write('masukkan waktu(menit): ');read(p);
totaldetik:= (J.hh*3600) + (J.mm*60) + J.ss + (p*60);
J.hh:= totaldetik div 3600;
sisa:= totaldetik mod 3600 ;
J.mm:= sisa div 60;
J.ss:= sisa mod 60;
writeln('total the time: ',J.hh,' Hour ',J.mm,' Minute ',J.ss,' second');
readln;
end.
如其他问题所示,错误代码 201 是范围检查错误。简而言之,一个值试图存储在不适合的地方。
如果,如在链接的问题中,您使用的是免费 Pascal 编译器,integer
变量是 16 位值 – 它们不能高于32,767.
您的totaldetik
变量看起来通常高于integer
值的限制,因此您需要一个更大的变量来存储它。尝试将totaldetik
设为longint
。