
Помогите с программой. PascalABC.NET Ввести последовательность от 1 до 30 слов, в каждом слове от
1 до 10 латинских букв. Между соседними словами не менее одного пробела, за последним словом стоит точка. 1) вывести последовательность в обратном порядке слов 2) вывести последовательность, удалив из неё повторное включение слов. Тема новая, плохо разбераюсь. Прошу помощи. Заранее спасибо.

Ответы на вопрос

// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadlnString;
var a:=s.Left(Pos('.',s)-1).ToWords; // все до точки, по словам
a.Reverse.Println; // обратный порядок слов
a.Distinct.Println // без дубликатов
end.
Пример
арбуз барабан арбуз вагон голова дом арбуз. ель
арбуз дом голова вагон арбуз барабан арбуз
арбуз барабан вагон голова дом



Добро пожаловать! Я могу помочь вам с программой на PascalABC.NET. Вам нужно ввести последовательность слов от 1 до 30, где каждое слово содержит от 1 до 10 латинских букв. Между соседними словами должен быть хотя бы один пробел, а после последнего слова должна стоять точка. У вас есть две задачи:
1) Вывести последовательность в обратном порядке слов. 2) Вывести последовательность, удалив из неё повторные включения слов.
Давайте начнем с первой задачи - вывода последовательности в обратном порядке слов. Вот пример кода, который решает эту задачу:
```pascal program ReverseSequence; var sequence: array[1..30] of string; i: integer; begin // Ввод последовательности слов writeln('Введите последовательность слов:'); for i := 1 to 30 do begin readln(sequence[i]); end;
// Вывод последовательности в обратном порядке writeln('Последовательность в обратном порядке:'); for i := 30 downto 1 do begin writeln(sequence[i]); end; end. ```
Теперь перейдем ко второй задаче - выводу последовательности, удалив из неё повторные включения слов. Вот пример кода для этой задачи:
```pascal program RemoveDuplicates; var sequence: array[1..30] of string; uniqueSequence: array[1..30] of string; i, j, uniqueCount: integer; isDuplicate: boolean; begin // Ввод последовательности слов writeln('Введите последовательность слов:'); for i := 1 to 30 do begin readln(sequence[i]); end;
// Удаление повторных включений слов uniqueCount := 0; for i := 1 to 30 do begin isDuplicate := false; for j := 1 to uniqueCount do begin if sequence[i] = uniqueSequence[j] then begin isDuplicate := true; break; end; end; if not isDuplicate then begin uniqueCount := uniqueCount + 1; uniqueSequence[uniqueCount] := sequence[i]; end; end;
// Вывод последовательности без повторных включений writeln('Последовательность без повторных включений:'); for i := 1 to uniqueCount do begin writeln(uniqueSequence[i]); end; end. ```
Надеюсь, эти примеры кода помогут вам решить задачи. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать их!


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili