Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_ОАиП.doc
Скачиваний:
8
Добавлен:
01.04.2025
Размер:
5.06 Mб
Скачать

Раздел 7. Символы и строки. Процедуры и функции работы со строками.

Тема 7.1. Символьный тип данных. Функции работы с символами.

Цели:

  1. закрепить понятие “тип данных”;

  2. рассмотреть символьный тип данных;

  3. сформировать умение составлять программы с использованием символьного типа данных;

  4. закрепить знания о файлах, предназначенных для работы с данными порядкового типа.

План:

  1. Организационный момент.

  2. Повторение.

  3. Новая тема.

  4. Практическая работа.

  5. Домашнее задание.

  6. Итоги занятия.

  1. План занятия. Цели урока.

  2. 1. Что такое данные?

  1. 2. Каким образом объявляется тип данных? (var, const).

3.Что такое порядковые типы данных? Перечислить их.

4. Перечислить функции для порядкового типа данных (ord, pred, succ).

5. Какие значения могут принимать данные символьного типа?

  1. 6. Как в программе описать символ const, var

3. В большинстве применений компьютера алфавитно-цифровая информация используется наряду с числовой информацией. Прежде чем мы сможем написать программу, которая манипулирует алфавитно-цифровыми знаками (литерами), нам потребуется тип данных для их представления. для этих целей в языке Паскаль предусмотрен тип данных char.

Так же, как переменная типа integer может хранить одно целое число, переменная типа char может хранить один символ.

Например,

Var

Alpha : char;

Begin

Alpha :=‘p’

Alpha :=‘+’

Alpha :=‘3’

Alpha :=‘ ‘

Alpha :=‘‘‘‘

Все символы упорядочены, т.к. имеют свой личный номер. Важно, что соблюдаются следующие отношения:

‘A’ < ‘B’ < ‘C’ < ... < ‘X’ < ‘Y’ < ‘Z’ ‘0’ < ‘1’ < ‘2’ < ... < ‘7’ < ‘8’ < ‘9’

Для проверки равенства или неравенства переменных типа char могут использоваться операторы булевого сравнения.

4. Задача. Написать программу, которая считывает две литеры и печатает больше, равна или меньше первая литера второй.

Program Sravnenie;

Var

First, Second : char;

Begin

write (‘Введите две литеры через пробел ‘);

readln (First, Second);

write (‘Первая литера ‘);

if First > Second

then

write (‘больше второй. ‘);

else

if First = Second

then

write (‘равна второй. ‘);

else

write (‘меньше второй. ‘);

Еnd.

Так как char – порядковый тип, то к его значениям применимы следующие функции.

Succ – возвращает следующий символ литерного множества;

Pred – возвращает предыдущий символ литерного множества;

Ord – возвращает значение кода литеры;

Chr – возвращает значение литеры, является обратной по отношению к функции Ord.

4. Домашнее задание.

1. Вывести в одну строку АаБбВвГг.

2. Запросите у пользователя символ и выведите на экран 5 символов, следующих за ним в таблице американских стандартных кодов обмена информацией. Проверьте, есть ли среди них знаки препинания.

3. Запросите у пользователя символ и выведите на экран 5 символов, предшествующих данному в таблице американских стандартных кодов обмена информацией. Проверьте, есть ли среди них знаки простейших математических действий.

4. Определите выведите на экран коды русских заглавных букв и латинских прописных.

5. Определите и выведите на экран коды русских прописных букв и латинских заглавных.

6. Вывести в одну строку ZYY...AA...A.

7. Составьте программу, проверяющую, является ли введенный символ буквой латинского алфавита или скобкой (учесть круглые, фигурные и квадратные скобки)

8. Запросите у пользователя несколько символов и выведите на экран их коды. Проверьте, являются ли они буквами.

9. Вывести в одну строку ABBCCCDDDD...ZZ...Z.

10. Вывести треугольник

Аяяяяяяяя…я

Бюююю…ю

Вээээээ…э

. . .

Эввв

Юбб

Яа.

11. Вывести треугольник

A B C ...Y Z

B C …Y Z

C ...Y Z