Заменить в последовательности каждую группу слов 'МУХА' группой слов 'СЛОН' - Free Pascal
Формулировка задачи:
Даны натуральное число N, последовательность символов s1,s2,s3,...,sN. Заменить в этой последовательности каждую группу слов 'МУХА' группой слов 'СЛОН'.
P.S. я не понял, что за группы СЛОН м МУХА?
Решение задачи: «Заменить в последовательности каждую группу слов 'МУХА' группой слов 'СЛОН'»
textual
Листинг программы
Var S:array[1..1000] of char;
i,n:integer;
Begin
write('Введите n: ');readln(n);
For i:=1 to n do
Begin
write(i,'-ый символ: ');readln(S[i]);
End;
For i:=1 to n-3 do
Begin
if (S[i]='М')and(S[i+1]='У')and(S[i+2]='Х')and(S[i+3]='А') then
Begin
S[i]:='C';
S[i+1]:='Л';
S[i+2]:='О';
S[i+3]:='Н';
End;
End;
For i:=1 to n do
write(S[i]);
readln;
End.
Объяснение кода листинга программы
- Введенные данные:
- n — количество слов в последовательности
- S — массив символов, в который считываются слова последовательности
- Задачи, выполняемые кодом:
- Считывание количества слов в последовательности
- Считывание слов последовательности в массив S
- Замена каждой группы слов 'МУХА' на 'СЛОН'
- Алгоритм решения:
- Считывание количества слов в последовательности (первое вхождение в цикл)
- Считывание слов последовательности в массив S (первое вхождение в цикл)
- Замена каждой группы слов 'МУХА' на 'СЛОН' (внутри цикла, проверяется каждое 4-е слово)
- Вывод слов последовательности (последнее вхождение в цикл)
- Временная сложность алгоритма:
- Сложность считывания данных из стандартного ввода — O(n)
- Сложность замены подстрок в строке — O(n)
- Сложность вывода данных на стандартный вывод — O(n)
- Общая временная сложность — O(n)
- Код не содержит ошибок и будет работать при условии, что вводится корректное количество слов и сами слова последовательности не содержат других групп слов 'МУХА'