Вводятся строки. Определить самую длинную строку и вывести её номер ** экран.Паскаль ABC,...

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

Вводятся строки. Определить самую длинную строку и вывести её номер на экран.Паскаль ABC, без массива.​


Информатика (16 баллов) | 63 просмотров
0

и каким образом завершить ввод?

0

writeln

0

end.

Дан 1 ответ
0 голосов

Программа написана на PascalABC.NET 3.4.2, сборка 1979 (16.02.2019), но компилироваться должна и на обычном Pascal

не указано, как именно завершать ввод, поэтому сделал завершение словом exit

Код

  1. program task31784852;
  2. var
  3.  number, maxLength, maxNumber: integer;
  4.  inputIsTrue: boolean;
  5.  inputString, maxLengthString: string;
  6. begin
  7.  inputIsTrue := false;
  8.  maxLength := 0;
  9.  
  10.  Writeln('Напишите exit, чтобы завершить ввод и получить результат');
  11.  
  12.  while inputIsTrue = false do
  13.    begin
  14.      Readln(inputString);
  15.      if Length(inputString) = 0 then
  16.        continue;
  17.      if inputString = 'exit' then
  18.        break;
  19.      number := number + 1;
  20.      if Length(inputString) > maxLength then
  21.        begin
  22.          maxLength := Length(inputString);
  23.          maxLengthString := inputString;
  24.          maxNumber := number;
  25.        end;
  26.    end;
  27.  Writeln('Самая длинная строка с номером ', number, ': ', maxLengthString);
  28. end.

Проверка

Напишите exit, чтобы завершить ввод и получить результат

a

aa

aaa

aaaaaalsd

pwpefowpeofkpwef

................

...................

123462048201180301313031

znanija.com/task/31784852

exit

Самая длинная строка с номером 9: znanija.com/task/31784852

(542 баллов)
0

в проверке сайт немного урезал ссылку (там должно быть https://), а не просто znanija.com, так что там всё правильно