Напишите процедуру на Паскале, которая заменит все цифры в заданной строке на следующие по счету, а цифру 9 заменит

Напишите процедуру на Паскале, которая заменит все цифры в заданной строке на следующие по счету, а цифру 9 заменит на 0. Пример: из строки "u81 910 jj4" должно получиться "u92 021 jj5". Используйте заголовок процедуры: procedure zamena(var stroka: string)
Rys

Rys

Конечно! Вот решение вашей задачи на языке Паскаль:

pascal
procedure zamena(var stroka: string);
var
i: integer;
begin
for i := 1 to Length(stroka) do
begin
if stroka[i] = "9" then
stroka[i] := "0"
else if (stroka[i] >= "0") and (stroka[i] <= "8") then
stroka[i] := Succ(stroka[i]);
end;
end;


Пояснение решения:

1. Объявляем процедуру `zamena`, которая принимает строку `stroka` как параметр и модифицирует ее в процессе выполнения.

2. Объявляем переменную `i`, которую мы будем использовать для итерации по каждому символу в строке.

3. Используем цикл `for` для прохода через каждый символ в строке, начиная с первого (`i := 1`) и до последнего (`Length(stroka)`).

4. Внутри цикла проверяем каждый символ `stroka[i]` на равенство с символом `9`. Если это условие выполняется, то заменяем символ на `0` с помощью операции `stroka[i] := "0"`.

5. Используем условие `else if`, чтобы проверить символ `stroka[i]` на принадлежность к диапазону символов от `"0"` до `"8"`. Если символ находится в этом диапазоне, то мы заменяем его на следующий по счету символ с помощью функции `Succ(stroka[i])`.

Таким образом, данная процедура будет заменять все цифры в заданной строке на следующие по порядку, а цифру 9 заменит на 0.
Знаешь ответ?
Задать вопрос
Привет!
hello