Вот имеем прогу(ниже).
Почему в этой части этой проги:
-----------------------------------------
str[0]:=chr(3);
val(ch+str,t,prosto);
if ((t*10+k)<129)and((t*10+k)>-128 ) then
переменная t не получает никакого значения , что приводит к не выполнению
следущего блока if .. then..
Зарание благодарен.
==========================
program InputShortint;
uses crt;
var k,j,prosto,t:integer;
ch:char;
str:string;
s:shortint;
begin
clrscr;
j:=0;
str:='';
k:=ord(readkey);
if (k=45)or((k>=48)and(k<=57)) then ch:='-' else
begin
inc(j);
str[j]:=chr(k);
write(str[j]);
end;
repeat
k:=ord(readkey);
if ((k>=48)and(k<=57)) then
begin
inc(j);
if j<>3 then
begin
str[j]:=chr(k);
write(str[j]);
end;
if j=3 then
begin
str[0]:=chr(3);
val(ch+str,t,prosto);
if ((t*10+k)<129)and((t*10+k)>-128 ) then
begin
str[j]:=chr(k);
write(str[j]);
end
else writeln('Fuck it all');
end;
end;
until (j=3)or(k=13);
str[0]:=chr(3);
val(ch+str,S,prosto);
writeln;
writeln(s);
readln;
end.
=======================
"Наш путь труден, но
перспективы - светлые !"
Мао Цзедун