PROGRAM PRG4_4;
VAR STR: STRING; L, I, J: INTEGER; M: SET OF CHAR; BEGIN M;= ['.',',','!',':',';','?','-']; WRITELN('BBEДИTE ТЕКСТ'); READLN(STR); L:= LENGTH (STR); FOR I:= 1 TO L DO IF NOT(STR[I] IN M) THEN WRITE(STR[I]) ELSE BREAK; FOR J:=l+1 TO L DO WRITE(STR[J]); WRITELN END. Для решения задачи: - формируем тело программы и описываем переменные; - задаем значение множества М - множества знаков препинания; - цикл FOR I:= 1 ТО L DO осуществляет вывод строки до первого знака препинания; - цикл FOR J:= 1+1 ТО L DO выводит строку после первого знака препинания; - после вывода закрываем строку оператором WRITELN. Переменные: I, J - переменные циклов; L - длина строки; STR - строка текста; М - множество знаков препинания.
ВВЕДИТЕ ТЕКСТ ABC DFG, GH,,,,,, ЕЕ. ABC DFG GH,,,,,, ЕЕ.
ВВЕДИТЕ ТЕКСТ ; ABC DFG GH,,,,,, ЕЕ. ABC DFG GH,,,,,, EE.
Рис. 4.1. Результат работы PRG4_4 Задача 4.5 Дана строка символов. Удалить из нее все знаки препинания. PROGRAM PRG4_5; VAR STR: STRING; L, I: INTEGER; M: SET OF CHAR; BEGIN M:= ['.', ',', '!', ':',';', '?'.'-']; WRITELN('BBEДИTE ТЕКСТ'); READLN(STR); L:= LENGTH(STR); WRITELN('ПPEOBPA3OBAHHblЙ ТЕКСТ'); FOR I:= 1 TO L DO IF NOT(STR[I] IN M) THEN WRITE(STR[I]); WRITELN END. Для решения задачи: - формируем тело программы и описываем переменные; - задаем значение множества М - множества знаков препинания; - цикл FOR I:= 1 ТО L DO осуществляет вывод строки без знаков препинания; - после вывода закрываем строку оператором WRITELN. Переменные: I - переменная цикла; L - длина строки; STR - строка текста; М - множество знаков препинания. Задача 4.6 Дана строка символов. Заменить в ней все восклицательные знаки на точки. Данная программа представляет собой примитивный транслятор, который транслирует все символы в строке как они есть, а восклицательные знаки транслирует в точки.
|