Если в строке, размещенной в динамической памяти, нет символа +, то оставить текст без изменения - Pascal

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

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

Если в строке,размещенной в динамической памяти,нет символа +,то оставить текст без изменения, иначе каждую из цифр, предшествующую первому вхождению символа + заменить символом -.помогите сделать на PASCAL

Решение задачи: «Если в строке, размещенной в динамической памяти, нет символа +, то оставить текст без изменения»

textual
Листинг программы
var
  s: ^string;
  i: byte;
 
begin
  New(s);
  WriteLn('Введите строку:');
  ReadLn(s^);
  for i := 1 to Pos('+', s^) do
    if s^[i] in ['0'..'9'] then
      s^[i] := '-';
  WriteLn('Полученная строка:');
  WriteLn(s^);
  Dispose(s);
  ReadLn
end.

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

  1. Объявляется переменная s типа ^string, которая указывает на строку, размещенную в динамической памяти.
  2. Вводится строка с помощью функции ReadLn(s^).
  3. Переменная i инициализируется значением 1.
  4. В цикле for i := 1 to Pos('+', s^) выполняется поиск всех вхождений символа + в строке s.
  5. Если найденный символ является числом (принадлежит диапазону ['0'..'9']), то он заменяется на символ -.
  6. Выводится полученная строка с помощью функции WriteLn(s^).
  7. Выполняется освобождение памяти, выделенной под строку, с помощью функции Dispose(s).
  8. Ввод пользователя подтверждается с помощью функции ReadLn.

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

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