Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции+Pascal.doc
Скачиваний:
31
Добавлен:
02.12.2018
Размер:
647.17 Кб
Скачать

Обнаруживает первое появление в строке St2 подстроки St1. Результат равен номеру той позиции, где находится первый символ подстроки St1.

Значение St

Выражение

Результат

‘абвгде’

Pos(‘вг’,St1)

Pos(‘к’,St1)

3

0

  1. Str(IBR,St)

Преобразовывает числовое значение величины IBR в строковое, и помещает результат в строку St. После IBR может записываться формат, аналогичный формату вывода.

Значение IBR

Выражение

Результат

1500

4800

STR(IBR:6,St)

STR(IBR:10,St)

‘1500’

‘4800’

  1. UpCase(Ch)

Преобразует строчную букву в прописную. Параметр и результат имеют литерный тип. Обрабатывает только буквы латинского алфавита.

Значение Ch

Выражение

Результат

‘a’

‘v’

UpCase(Ch)

UpCase(Ch)

‘A’

‘V’

Процедуры

  1. DELETE(St, Poz, N)

Удаление N символов строки St, начиная с позиции Poz. Например:

St:=’абвгде’;

Delete(St,4,2);

Write(St);

Результат: ‘абве’

  1. INSERT(St1, St2, Poz)

Вставка строки St1 в строку St2, начиная с позиции Poz. Например:

Var

S3:String[30];

S1,S2:String[11];

Begin

S1:=’ Петров’;

S2:=’Ученик ’;

Insert(S1,S2,7);

Write(S2);

End.

Результат: ‘Ученик Петров’

8.3 Примеры решения задач

1.Задачи на подсчет символов.

1. Определить количество букв “а” и ”о” в строке символов.

Var

St: Sring[255];

Ko,Ka: Byte;

I,N: Byte;

Begin

WriteLn(‘Введите строку символов ‘);

ReadLn(St);

N:=Length(St); {Определение длины введенной строки}

Ko:=0; Ka:=0;

For I:=1 To N Do Begin

If (St[I]=’o’) OR (St[I]=’O’) Then Ko:=Ko+1;

If (St[I]=’a’) OR (St[I]=’A’) Then Ka:=Ka+1;

End;

WriteLn(‘Количество букв о =’,Ko);

WriteLn(‘Количество букв а =’,Kа);

End.

2. Подсчитать сколько слов в тексте начинается на букву ‘а’.

Var

St: Sring[255];

I,K: Byte;

Begin

WriteLn(‘Введите текст ‘);

ReadLn(St);

N:=Length(St); {Определение длины введенной строки}

K:=0;

If St[1]=’A’ Then K:=K+1;

For I:=2 To N Do

If (Copy(St,I,2)=’ a’) OR (Copy(St,I,2)=’ A’) Then K:=K+1;

WriteLn(‘Количество слов, начинающихся на букву «а»=’,K);

End.

3. Определить среднюю длину слова в тексте.

USES Crt;

VAR

A: STRING [240]; KS, KB, N, I: INTEGER;

BEGIN

ClrScr;

Write('Введите тест '); ReadLn(A);

N:=Length(A);

KS:=0; KB:=0;

FOR I:=1 TO N DO

IF (A[I]=' ') OR (A[I]=',') OR (A[I]='.') THEN KS:=KS+1 ELSE KB:=KB+1;

IF (A[N]<>' ') AND (A[N]<>'.') AND (A[N]<>',') THEN KS:=KS+1;

WriteLn('Средняя длина слова = ',KB/KS:3:0);

END.

Примеры для самостоятельного решения:

  1. Подсчитать, сколько слов в тексте оканчивается на букву “а”.

  2. Подсчитать, сколько букв “т” в последнем предложении.

  3. Подсчитать, сколько раз встречается в тексте слово “кот”.

  4. В тексте найти количество слов, у которых первый и последний символы совпадают между собой (слова разделены пробелом).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]