- •Лабораторная работа № 1 Работа с двоичными масками
- •I. Требования к выполнению заданий
- •II. Варианты заданий
- •Лабораторная работа № 2 Работа со строками
- •I. Требования к выполнению заданий
- •1. Нельзя использовать циклы.
- •3. Нельзя использовать операторы ввода-вывода (надо использовать операторы присваивания).
- •5. В итоге надо записать все действия по решению задачи в виде одного оператора присваивания.
- •II. Варианты заданий
- •Лабораторная работа № 3 Исследование особенностей операций ввода-вывода в Паскале
- •I. Требования к выполнению заданий
- •II. Варианты заданий
- •7 . Исследование различий в работе операторов Read и Readln
- •8. Вывод вещественных значений
- •10. Записать операторы ввода-вывода:
- •Лабораторная работа № 4 Разработка циклов с известным числом повторений
- •I. Требования к выполнению заданий
- •II. Варианты заданий
- •Лабораторная работа № 5 Изучение условных операторов в Турбо Паскале
- •I. Требования к выполнению работ
- •II. Задания
- •1. Оператор Case
- •2. Вложенные операторы if
- •3. Составной оператор в операторе if
- •Последовательность операторов if
- •Лабораторная работа № 6 Создание и обработка массивов
- •I. Требования к выполнению задания:
- •II. Варианты заданий
- •Лабораторная работа № 7 Использование множеств
- •Варианты заданий
- •Лабораторная работа № 8 Использование записей и файлов
- •1 Часть (записи)
- •2 Часть (файлы)
- •Лабораторная работа № 9 Изучение механизма передачи данных в процедуры
- •I. Требования к выполнения заданий
- •II. Варианты заданий
- •Лабораторная работа № 10 Указатели и динамические переменные
- •Часть 1. Простые ссылочные типы
- •Часть 2. Стеки и списки
- •Библиографический список
- •Языки программирования
- •390005, Рязань, ул. Гагарина, 59/1.
3755
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ
РЯЗАНСКАЯ ГОСУДАРСТВЕННАЯ РАДИОТЕХНИЧЕСКАЯ АКАДЕМИЯ
ЯЗЫКИ ПРОГРАММИРОВАНИЯ
Методические указания к лабораторным работам
Рязань 2005
УДК 681.3.06
Языки программирования : Методические указания к лабораторным работам / Рязан. гос. радиотехн. акад.; Сост.: Ю.М. Кузьмин, С.И. Елесина, Н.Н. Гринченко. Рязань, 2005. 52 с.
Содержит материал для проведения лабораторных работ и упражнений по дисциплине «Языки программирования» на базе языка программирования Турбо Паскаль. Предназначены для студентов специальности 075200 «Компьютерная безопасность».
Библиогр.: 3 назв.
Программирование, Паскаль, двоичные маски, строки, ввод-вывод, условные операторы, циклы, записи, файлы, множества, указатели, динамические переменные, процедуры
Печатается по решению методического совета Рязанской государственной радиотехнической академии.
Рецензент: кафедра электронных вычислительных машин РГРТА (зав. кафедрой проф. В.К. Злобин).
Лабораторная работа № 1 Работа с двоичными масками
Цель работы
Получение навыков формирования и применения двоичных масок при работе с целыми числами.
I. Требования к выполнению заданий
Нельзя использовать циклы.
Нельзя использовать условные операторы.
Нельзя использовать операторы ввода-вывода (надо использовать операторы присваивания).
Не допускаются функции Hi, Lo, Swap. То, что эти функции выполняют, надо реализовать самим с помощью поразрядных операций и масок.
В итоге надо записать все действия по решению задачи в виде одного оператора присваивания.
II. Варианты заданий
В значении типа Longint поменять местами 1-й и 4-й байты, причет 4-й байт надо перенести в новое место с инверсией.
Из четырех однобайтовых переменных собрать значение для 4-байтовой переменной типа Longint. Сборку выполнить так, чтобы значение первой переменной попало в старший (4-й) байт, значение второй переменной - в 3-й байт, третьей - во второй и четвертой переменной - в младший (1-й) байт переменной типа Longint.
В двухбайтовом значении переставить местами младший и старший байты, в каждом из которых предварительно надо поменять местами порядок следования битов.
Обычно при циклическом сдвиге "выдвигаемые" (за границу числа) разряды "задвигаются" в сдвигаемое значение со стороны, противоположной направлению сдвига:
реализовать циклический сдвиг двухбайтового числа вправо на 4 разряда;
реализовать циклический сдвиг двухбайтового числа влево на 4 разряда.
Переставить в обратном порядке все биты в однобайтовом числе.
В двухбайтовом числе все нули в старшей тетраде поменять на единицы, а в младшей тетраде поменять все единицы на нули.
В младшей тетраде двухбайтового числа побитно поменять все нули на единицы, а единицы - на нули.
В двухбайтовом числе
в 1-ю тетраду записать код, равный сумме значений 1-й и 2-й тетрад;
во 2-ю тетраду записать код, равный разности значений 2-й и 4-й тетрад;
в 3-ю тетраду записать код, равный сумме значений 3-й и 4-й тетрад;
в 4-ю тетраду записать код, равный разности значений 2-й и 3-й тетрад.
Подсчитать число единиц в однобайтовом числе.