30 БАЛЛОВ ЛЮДИ ОЧЕНЬ СРОЧНО Дана строка, в которой нет русских букв. Написать...

0 голосов
150 просмотров

30 БАЛЛОВ ЛЮДИ ОЧЕНЬ СРОЧНО
Дана строка, в которой нет русских букв.
Написать подпрограмму для поиска минимального из всех трехзначных чисел в строке (под числом понимается последовательность цифр отделенная пробелами или стоящая в конце или начале строки, все числа целые, не отрицательные). Если в строке нет ни одного трехзначного числа, то подпрограмма должна вернуть 0.
Использовать заголовок:
function CalcMin(s: string): integer;


Информатика (77 баллов) | 150 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Function CalcMin(s: string): integer;
var min,p,n,c:integer; t:string;
begin
t:=s+' ';
min:=1000;
while t<>'' do
 begin
 while t[1]=' ' do delete(t,1,1);
 p:=pos(' ',t);
 if (p=4) then 
  begin
  val(t[1]+t[2]+t[3],n,c);
  if c=0 then if n  end;
 delete(t,1,p);
 end;
if min=1000 then CalcMin:=0 else CalcMin:=min;
end;
begin
writeln(CalcMin('123 jkl    105 45 ncmnn  1591'));
end.

Результат:
105

(194k баллов)
0

Несоответствие баллов за задачу и "30 БАЛЛОВ ЛЮДИ ОЧЕНЬ СРОЧНО" было замечено уже после ответа, к сожалению.

0

спасибо большое, странно, но я ставила в пункте "баллы" 30:)