Задача 3 урок 18

Задача 3 урок 18

Пользователь вводит произвольную строку, посчитайте количество чисел в ней - тех, что больше 125. Например, в строке:

123ret34#2145esrt5

такое число только одно и это:

2145

(сначала выделите эти числа из строки и запишите их в массив (of integer), а затем уже посчитайте число тех, что больше 125)

Решение

program task_3_lesson18;
var
  s, s1: string;
  v, k, i, code: integer;
begin
  //readln(s);
  s := '232ret349#2145esrt5';
  s1 := '';  //строка в которую будем перезаписывать каждое новое число
  code := 1;
  k := 0;
  for i := 1 to length(s) do
    begin
      if (s[i] >= '0') and (s[i] <= '9') then
        s1 := s1 + s[i]
      else
      begin
        val(s1, v, code);   // преобразуем число которое нашли
        if v > 125 then
          k += 1;
        s1 := '';  // после того как наткнулись на символ строку сбросили
      end;
    end;
  writeln(k);
  readln
end. 

Консоль

232ret349#2145esrt5
3
vedro-compota's picture

засчитано

_____________
матфак вгу и остальная классика =)