Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Люди помогите с информатикой пожалуйста pascal abc

Артур Жовнерик Ученик (28), на голосовании 3 дня назад
Написать программу, которая определит количество символов 'к' в строке 'сказка в сказке о сказке', а затем удалит все слоги 'ка' из строки и выведет новую (pascal abc)
Голосование за лучший ответ
биба Профи (844) 1 месяц назад
program CountAndRemoveSyllable;

var
originalString: string;
countK: integer;
modifiedString: string;
i: integer;

begin
originalString := 'сказка в сказке о сказке';
countK := 0;
modifiedString := '';


for i := 1 to Length(originalString) do
begin
if originalString[i] = 'к' then
countK := countK + 1;
end;


i := 1;
while i <= Length(originalString) do
begin

if (i < Length(originalString)) and (originalString[i] = 'к') and (originalString[i + 1] = 'а') then
begin
Inc(i, 2); // Пропускаем слог 'ка'
end
else
begin
modifiedString := modifiedString + originalString[i]; // Добавляем символ, если он не часть 'ка'
Inc(i);
end;
end;


WriteLn('Количество символов ''к'': ', countK);
WriteLn('Новая строка без слогов ''ка'': ', modifiedString);
end.program CountAndRemoveSyllable;

var
originalString: string;
countK: integer;
modifiedString: string;
i: integer;

begin
originalString := 'сказка в сказке о сказке';
countK := 0;
modifiedString := '';


for i := 1 to Length(originalString) do
begin
if originalString[i] = 'к' then
countK := countK + 1;
end;


i := 1;
while i <= Length(originalString) do
begin

if (i < Length(originalString)) and (originalString[i] = 'к') and (originalString[i + 1] = 'а') then
begin
Inc(i, 2); // Пропускаем слог 'ка'
end
else
begin
modifiedString := modifiedString + originalString[i]; // Добавляем символ, если он не часть 'ка'
Inc(i);
end;
end;


WriteLn('Количество символов ''к'': ', countK);
WriteLn('Новая строка без слогов ''ка'': ', modifiedString);
end.
Артур ЖовнерикУченик (28) 1 месяц назад
Чё так много
бибаПрофи (844) 1 месяц назад
ну потому что код такой
Артур ЖовнерикУченик (28) 1 месяц назад
Я в 9 классе
бибаПрофи (844) 1 месяц назад
и?
Жарь Птицев Гуру (3297) 1 месяц назад
 begin 
var s := 'сказка в сказке о сказке';
PrintLn(s.CountOf('к'));
PrintLn(s.Replace('ка', ''));
end.
Professional Professional Мудрец (15983) 1 месяц назад
Вот пример программы на Pascal ABC, выполняющей заданные действия:

program CountAndRemove;

var
inputStr, newStr: string;
countK, i: integer;

begin
// Исходная строка
inputStr := 'сказка в сказке о сказке';

// Считаем количество символов 'к'
countK := 0;
for i := 1 to Length(inputStr) do
if inputStr[i] = 'к' then
countK := countK + 1;

// Удаляем все слоги 'ка'
newStr := StringReplace(inputStr, 'ка', '', [rfReplaceAll]);

// Выводим результаты
writeln('Количество символов "к": ', countK);
writeln('Новая строка: ', newStr);
end.

Объяснение кода:

1. Подсчёт символов 'к':

Используем цикл for, чтобы пройтись по каждому символу строки inputStr.

Если текущий символ равен 'к', увеличиваем счётчик countK.



2. Удаление слогов 'ка':

Используется функция StringReplace для замены всех вхождений 'ка' на пустую строку.



3. Вывод результата:

Печатаем количество символов 'к' и новую строку без слогов 'ка'.




Если есть вопросы или нужно что-то доработать, напишите!
Похожие вопросы