Вопрос по информатике:
Нужна программа на языке Паскаль, задание: Дан список из n фамилий. Определить, содержится ли в списке указанная фамилия; если да, то указать номер, под которым она встречается в списке первый раз, если же такой фамилии нет, то добавить ее к первоначальному списку.
Исходный список неупорядочен. Новую фамилию внести в список после самой длинной фамилии.
Трудности с пониманием предмета? Готовишься к экзаменам, ОГЭ или ЕГЭ?
Воспользуйся формой подбора репетитора и занимайся онлайн. Пробный урок - бесплатно!
- 06.03.2017 15:39
- Информатика
- remove_red_eye 5569
- thumb_up 14
Ответы и объяснения 1
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadlnInteger('Количество фамилий:');
var L:=ReadSeqString('Вводите фамилии построчно:',n).ToList;
var f:=ReadlnString('Искать фамилию:');
var i:=L.FindIndex(w->w=f);
if i>=0 then Writeln('Номер в списке- ', i+1)
else begin
i:=L.Select(w->w.Length).ToArray.IndexMax;
L.Insert(i+1,f);
Writeln('Вставлена после фамилии ',L[i]);
L.Println
end
end.
Примеры
Количество фамилий: 6
Вводите фамилии построчно: Иванов
Петрова
Сидоров
Сидорчук
Ножкина
Жук
Искать фамилию: Ножкина
Номер в списке- 5
Количество фамилий: 6
Вводите фамилии построчно: Иванов
Петрова
Сидоров
Сидорчук
Ножкина
Жук
Искать фамилию: Ложкина
Вставлена после фамилии Сидорчук
Иванов Петрова Сидоров Сидорчук Ложкина Ножкина Жук
- 07.03.2017 02:02
- thumb_up 35
Знаете ответ? Поделитесь им!
Есть сомнения?
Не нашли подходящего ответа на вопрос или ответ отсутствует? Воспользуйтесь поиском по сайту, чтобы найти все ответы на похожие вопросы в разделе Информатика.
Трудности с домашними заданиями? Не стесняйтесь попросить о помощи - смело задавайте вопросы!
Информатика — наука о методах и процессах сбора, хранения, обработки, передачи, анализа и оценки информации с применением компьютерных технологий, обеспечивающих возможность её использования для принятия решений.