Паскаль в примерах. Иринчеев А.А - 57 стр.

UptoLike

57
C,I,J,F,K:INTEGER;
CH:CHAR;
BEGIN
C:=0; I:=0; J:=0; F:=0; K:=0;
WRITELN('Введите строку символов ');
WHILE NOT EOLN DO
BEGIN
READ(CH);
IF CH<> '/' THEN C:=C+1;
IF (I=0) AND (CH='A') THEN I:=1 ELSE
IF (I=1) AND (CH='B') THEN I:=2 ELSE
IF (I=2) AND (CH='A') THEN
BEGIN
F:=F+1;
I:=0
END
ELSE
IF (I=2) AND (CH='C') THEN
BEGIN
K:=K+1;
I:=0
END;
END;
IF C=0 THEN WRITELN(' ошибка: ввод пустой строки ')
ELSE
BEGIN
WRITELN(' Количество сочетаний "ABA" равно ',F:3);
WRITELN(' Количество сочетаний "ABC" равно ',K:3);
END
END.
Пример 39. Дана строка символов, среди которых есть двоеточие. Получить все симво-
лы, расположенные между первым и вторым двоеточиями. Если второго двоеточия нет, то
получить все символы, расположенные после единственного имеющегося двоеточия.
PROGRAM PR39;
VAR
C:CHAR;
BEGIN
REPEAT
READ(C);
IF C=
':' THEN
REPEAT
READ(C);
WRITE(C);
UNTIL EOLN OR (C=
':')
UNTIL EOLN
END.
Пример 40. Удалить из введенной последовательности символьности символ *.
PROGRAM PR40;
VAR
 C,I,J,F,K:INTEGER;
 CH:CHAR;
BEGIN
C:=0; I:=0; J:=0; F:=0; K:=0;
 WRITELN('Введите строку символов ');
   WHILE NOT EOLN DO
BEGIN
 READ(CH);
 IF CH<> '/' THEN C:=C+1;
   IF (I=0) AND (CH='A') THEN I:=1 ELSE
    IF (I=1) AND (CH='B') THEN I:=2 ELSE
               IF (I=2) AND (CH='A') THEN
        BEGIN
         F:=F+1;
          I:=0
         END
                                     ELSE
   IF (I=2) AND (CH='C') THEN
     BEGIN
      K:=K+1;
       I:=0
     END;
END;
IF C=0 THEN WRITELN(' ошибка: ввод пустой строки ')
         ELSE
           BEGIN
WRITELN(' Количество сочетаний "ABA" равно ',F:3);
WRITELN(' Количество сочетаний "ABC" равно ',K:3);
            END
END.

     Пример 39. Дана строка символов, среди которых есть двоеточие. Получить все симво-
лы, расположенные между первым и вторым двоеточиями. Если второго двоеточия нет, то
получить все символы, расположенные после единственного имеющегося двоеточия.

PROGRAM PR39;
VAR
 C:CHAR;
  BEGIN
  REPEAT
READ(C);
 IF C=':' THEN
  REPEAT
   READ(C);
   WRITE(C);
  UNTIL EOLN OR (C=':')
  UNTIL EOLN
END.

Пример 40. Удалить из введенной последовательности символьности символ *.
PROGRAM PR40;
VAR

                                                                                     57