Поменять местами слово, начинающееся на 'a', со словом, оканчивающимся на 'я' - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

задание: Поменять местами слово, начинающееся на 'a', со словом, оканчивающимся на 'я', при условии, что такие слова существуют и являются единственными Исходные данные - строка слов, разделенных пробелом, результат - массив слов, длина слова - [4-9] символов, количество слов 8 помогите плииз

Решение задачи: «Поменять местами слово, начинающееся на 'a', со словом, оканчивающимся на 'я'»

textual
Листинг программы
uses crt;
const n=10;
var X:array[1..n] of string[10];
    i,i1,i2,k:byte;
    s:string[10];
begin
clrscr;
writeln('Программа обработки данных строкового типа');
writeln('Введите ', n,' слов из 4-10 руских букв');
For i:=1 to n do
 begin
  write(i, '-e слово ');
  readln(x[i]);
 end;
k:=0;i1:=0;
For i:=1 to n do
if x[i][1]='а'then
 begin
  k:=k+1;
  i1:=i;
 end;
if k=0 then
 begin
  write('Слова на букву а нет, работа программы завершена!');
  readln;
  exit;
 end;
if k>1 then
 begin
  write('Слова на букву а несколько, работа программы завершена!');
  readln;
  exit;
 end;
k:=0;i2:=0;
For i:=1 to n do
if x[i][length(x[i])]='я'then
 begin
  k:=k+1;
  i2:=i;
 end;
if k=0 then
 begin
  write('Слова, оканчивающегося на букву я нет, работа программы завершена!');
  readln;
  exit;
 end;
if k>1 then
 begin
  write('Слов,оканчивающегося на букву я несколько, работа программы завершена!');
  readln;
  exit;
 end;
s:=x[i1]; x[i1]:=x[i2]; x[i2]:=s;
writeln('Обмен слов:');
For i:=1 to n do
write(' ',x[i]);
readln
end.

Объяснение кода листинга программы

  1. Создается переменная n, которая представляет собой число от 1 до 10.
  2. Создается массив X типа string[10], который будет использоваться для хранения введенных слов.
  3. Создаются три переменные i, i1 и i2, которые будут использоваться для цикла.
  4. Создается переменная k, которая будет использоваться для отслеживания количества слов на букву а.
  5. Создается переменная s, которая будет использоваться для временного хранения слова.
  6. Запускается цикл for, который выполняется n раз. В каждой итерации цикла пользователю предлагается ввести слово из 4-10 русских букв.
  7. Внутри цикла if проверяется, начинается ли введенное слово с буквы а. Если это так, то увеличивается значение переменной k на единицу и значения переменных i и i1 меняются местами.
  8. Если после выполнения всех итераций цикла k равно нулю, то выводится сообщение о том, что слов на букву а нет.
  9. Если после выполнения всех итераций цикла k больше единицы, то выводится сообщение о том, что слов на букву а несколько.
  10. Аналогично предыдущему пункту, происходит проверка на окончание слова на букву я. Если это так, то увеличивается значение переменной k на единицу и значения переменных i и i2 меняются местами.
  11. Если после выполнения всех итераций цикла k равно нулю, то выводится сообщение о том, что слов, оканчивающихся на букву я, нет.
  12. Если после выполнения всех итераций цикла k больше единицы, то выводится сообщение о том, что слов, оканчивающихся на букву я, несколько.
  13. Внутри цикла for происходит обмен словами, хранящимися в массиве X. Для этого значения переменных i1 и i2 меняются местами.
  14. Выводится сообщение с обменом слов.
  15. Программа завершается и пользователь может выйти из нее с помощью команды readln.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.667 из 5
Похожие ответы