TURBO PASCAL:Учебное пособие. Терёхин В.В. - 77 стр.

UptoLike

Составители: 

77
С клавиатуры вводится строка символов, в которой не-
которая подстрока заключена в круглые скобки (например:
'ABC(DEFG)HUK' или 'мама (мыла) раму' ). Требуется отде-
лить фрагмент в скобках и вывести его на экран.
program р26;
var
S: String;
nl, n2: integer;
begin
Writeln('Введите строку');
Readln(S) ;
{находим позицию первого вхождения '(' }
nl:= pos( '(', S);
{- находим позицию первого вхождения ')'}
n2:= роз( ')', S);
{по двум позициям определяем длину
фрагмента - n2 - nl - 1}
S: = copy (S, nl + 1, n2 - nl - 1} ;
{и вырезаем фрагмент}
Writeln('S= ', S);
end.
Задача:
Решить предыдущую задачу при условии, что данный
фрагмент заключен между двумя восклицательными
знаками (например: 'ABC!DEFG!HIJK' или мама !мыла!
раму' ).
program p2 7;
var
S: String;
begin
{На первый взгляд задача кажется сложней, чем
предыдущая: функция Pos позволяет определить
только позицию первого вхождения. Но мы решим
данную задачу используя процедуру Delete}
        С клавиатуры вводится строка символов, в которой не-
которая подстрока заключена в круглые скобки (например:
'ABC(DEFG)HUK' или 'мама (мыла) раму' ). Требуется отде-
лить фрагмент в скобках и вывести его на экран.
program р26;
var
   S: String;
   nl, n2: integer;
begin
   Writeln('Введите строку');
   Readln(S) ;
   {находим позицию первого вхождения '(' }
   nl:= pos( '(', S);
   {- находим позицию первого вхождения ')'}
   n2:= роз( ')', S);
   {по двум позициям определяем длину
      фрагмента - n2 - nl - 1}
   S: = copy (S, nl + 1, n2 - nl - 1} ;
   {и вырезаем фрагмент}
   Writeln('S= ', S);
end.

       Задача:
       Решить предыдущую задачу при условии, что данный
фрагмент заключен между двумя восклицательными
знаками (например: 'ABC!DEFG!HIJK' или ‘мама !мыла!
раму' ).
program p2 7;
var
   S: String;
begin
{На первый взгляд задача кажется сложней, чем
предыдущая: функция Pos позволяет определить
только позицию первого вхождения. Но мы решим
данную задачу используя процедуру Delete}
                                                           77