Предмет: Информатика,
автор: SAOD
Программа на Паскале
Дан текстовый файл f, каждая строка которого состоит из слов, разделённых одним и более пробелами. Записать все строки, в которых количество слов минимально, но больше нуля, в новый файл g.
Можно не писать прогу, но объяснить, что, откуда и зачем. И написать как взаимодействовать с файлами.
Ответы
Автор ответа:
0
// PascalABC.NET 3.2, сборка 1417 от 28.03.2017
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadAllLines('Pushkin.txt');
Writeln('*** Текст в файле ***',NewLine);
a.Println(NewLine);
var n:=a.Select(s->s.ToWords.Count).Where(k->k>0).Min;
a:=ReadLines('Pushkin.txt').Where(s->s.ToWords.Count=n).ToArray;
WriteLines('Result.txt',a);
Writeln(NewLine,'*** Новый файл ***',NewLine);
ReadLines('Result.txt').Println(NewLine)
end.
Пример:
*** Текст в файле ***
Если жизнь тебя обманет,
Не печалься, не сердись!
В день уныния смирись:
День веселья, верь, настанет.
Сердце в будущем живет;
Настоящее уныло:
Всё мгновенно, всё пройдет;
Что пройдет, то будет мило.
(А.С. Пушкин, 1825)
*** Новый файл ***
Настоящее уныло:
// Внимание! Если программа не работает, обновите версию!
begin
var a:=ReadAllLines('Pushkin.txt');
Writeln('*** Текст в файле ***',NewLine);
a.Println(NewLine);
var n:=a.Select(s->s.ToWords.Count).Where(k->k>0).Min;
a:=ReadLines('Pushkin.txt').Where(s->s.ToWords.Count=n).ToArray;
WriteLines('Result.txt',a);
Writeln(NewLine,'*** Новый файл ***',NewLine);
ReadLines('Result.txt').Println(NewLine)
end.
Пример:
*** Текст в файле ***
Если жизнь тебя обманет,
Не печалься, не сердись!
В день уныния смирись:
День веселья, верь, настанет.
Сердце в будущем живет;
Настоящее уныло:
Всё мгновенно, всё пройдет;
Что пройдет, то будет мило.
(А.С. Пушкин, 1825)
*** Новый файл ***
Настоящее уныло:
Приложения:
Похожие вопросы
Предмет: География,
автор: MarcoBits
Предмет: Литература,
автор: kozakoleg0808
Предмет: Русский язык,
автор: orshokdugovratmir
Предмет: Математика,
автор: natanikulina20
Предмет: Литература,
автор: Kate2015111