10 класс Составьте программу, позволяющую проверить правописание "ча" и "ща" в строке s....

0 голосов
49 просмотров

10 класс Составьте программу, позволяющую проверить правописание "ча" и "ща" в строке s. Выведите на экран количество допущенных ошибок и исправленную строку. Пример ввода: чащя, пуща, чящоба, гущя. { строка s } Пример вывода: Количество ошибок = 3 Исправленная строка: чаща, пуща, чащоба, гуща.Паскаль


Информатика (22 баллов) | 49 просмотров
Дан 1 ответ
0 голосов

Как-то так:

//fpc 3.0.0


program HelloWorld;


var

   str, ps1, zm1, ps2, zm2: string;

   errors, i: integer;


begin

// обнуляем ошибки

   errors:= 0;

   

   // просим строку

   writeln('Enter string: ');

   readln(str);

   

   ps1:= 'чя';// ищем в строке

   zm1:= 'ча'; // меням на


   ps2:= 'щя'; // ищем в строке

   zm2:= 'ща'; // меняем на


   // перебираем строку посимвольно

   for i:=length(str) downto 1 do

 

 // если нашли нужную подстроку, которая в ps1

 if copy(str,i,length(ps1))=ps1 then

 begin

 inc(errors);      // увеличиваем счетчик ошибок

 insert(zm1,str,i);      // вставояем перед найденой подстрокой нашу новую подстроку из zm1

 delete(str,i+length(zm1),length(ps1));// удаляем старую подстроку

 end;



// перебираем строку посимвольно

for i:=length(str) downto 1 do

 

 // если нашли нужную подстроку, которая в ps2

 if copy(str,i,length(ps2))=ps2 then

 begin

 inc(errors);      // увеличиваем счетчик ошибок

 insert(zm2,str,i);      // вставояем перед найденой подстрокой нашу новую подстроку из zm2

 delete(str,i+length(zm2),length(ps2));// удаляем старую подстроку

 end;

   

   // выводим

   writeln('Количество ошибок = ', errors);

   writeln('Исправленная строка: ', str);

end.



Результат работы в приложении. Более читабельную версию кода можно посмотреть и проверить тут: https://rextester.com/OWVV92742


image
(130 баллов)
0

Слишком много... Программа за 10 класс, училка сразу поймет, что не мы писали, а списали