Поиск самой длинной строки в массиве

Задача

Ввести массив строк и найти в нем максимальную по длине строку.
1) Не учитывать случай, когда таких строк несколько
2) Если строка с максимальной длиной не одна, вывести все.

Решение

 

Описание переменных: 

ss - массив строк;
ind - индекс самой длинной строки в массиве.

Алгоритм решения задачи: 

1)

  1. Считываем строки, введенные пользователем, и помещаем их в массив.
  2. Присваиваем переменной ind значение 1. Тем самым предполагаем, что самая длиная строка - это первая сторока в массиве.
  3. Перебираем элементы массива (строки), начиная со второго.
  4. Если длина очередной строки больше, чем длина строки, индекс которой присвоен ind, то меняем значение ind на индекс текущей строки.
  5. Выводим на экран строку, индекс которой содержится в ind.

2)
Добавляется цикл перебора массива и сравнение длины очередной строки с длиной строки, индекс которой содержится в ind.

Программа на языке Паскаль: 

1)

const N = 5;
var
    ss: array[1..N] of string;
    i,ind: byte;
begin
    for i:=1 to N do
        readln(ss[i]);
 
    ind:=1;
    for i:=2 to N do 
        if length(ss[i]) > length(ss[ind]) then
            ind := i;
 
    writeln(ss[ind]);
readln;
end.

 

2)

for i:=1 to N do
        if length(ss[i]) = length(ss[ind]) then
            writeln(ss[i]);

 

Тема

Строки

Уровень

Комбинированные задачи