- •Лабораторная работа №1 ввод и редактирование программ в интегрированной среде free паскаля
- •1. Этапы разработки программ
- •2. Файл и связанные с ним понятия
- •3. Краткие сведения об интегрированной среде
- •4. Ввод и редактирование текста программы
- •4.1. Ис Free Паскаля и окна.
- •4.2. Работа с исходными файлами в окне редактирования
- •4.2.1. Возможные режимы редактирования
- •4.2.2. Приемы работы с клавиатурой
- •4.3. Работа с блоками
- •4.4. Поиск и замена фрагментов текста
- •5. Работа с файлами
- •5.1. Создание нового исходного файла
- •5.2. Загрузка существующего файла
- •5.3. Сохранение файла
- •5.4. Перезапись файла
- •6. Интерактивная помощь.
- •7. Выполнение работы
- •1.1. Команда Compile
- •1.2. Команда избирательной компиляции Make
- •1.3. Команда общей компиляции Build
- •1.4. Команда назначения первого файла Primary file
- •2.2. Определение места ошибки в программе
- •2.3. Определение причины ошибки
- •3. Порядок выполнения работы
- •4. Контрольные вопросы
- •Лабораторная работа №3 выполнение программ в среде free-паскаль
- •Структура простейших линейных программ
- •Экраны и окна, поддерживаемые ис
- •Режимы выполнения программ в ис и курсор выполнения
- •Команды ис для выполнения программ
- •Дополнительные возможности по прерыванию выполнения программы
- •Использование точек останова
- •Использование клавиш Ctrl-Break
- •Правила ввода исходных данных
- •Порядок выполнения работы
- •Исходный текст программы lab3.Pas
- •Контрольные вопросы.
- •Лабораторная работа № 4 линейные алгоритмы
- •Возведение в степень , соответственно На Паскале: exp(a*ln(X)). Лабораторная работа № 5 работа с двоичными масками
- •I. Требования к выполнению заданий
- •II. Варианты заданий
- •Лабораторная работа № 6 работа со строками
- •I. Требования к выполнению заданий
- •II. Варианты заданий
- •Лабораторная работа № 7 исследование особенностей операций ввода-вывода в паскале
- •7. И сследование различий в работе операторов Read и Readln
- •8. Вывод вещественных значений
- •10. Записать операторы ввода-вывода:
- •Лабораторная работа № 8 оператор выбора. Разветвляющиеся вычислительные процессы
- •1. Теоретический материал
- •If выражение then оператор;
- •2 Порядок выполнения лабораторной работы
- •Вариант 2
- •Вариант 3
- •Вариант 4
- •Вариант 5
- •Вариант 6
- •Вариант 7
- •Вариант 8
- •Вариант 9
- •Вариант 10
- •Лабораторная работа №10 последовательности
- •Лабораторная работа № 11 обобщенная формула
- •I. Требования к выполнению заданий
- •II. Варианты заданий
- •Лабораторная работа №13 работа с одномерным массивом
- •Лабораторная работа №14 работа с двухмерными массивами Задания по теме «Двумерные массивы»
- •Лабораторная работа № 15 изучение механизма передачи данных в процудуры
- •I. Требования к выполнения заданий
- •II. Варианты заданий
- •Лабораторная работа № 16 работа с множествами
- •Варианты заданий
- •Лабораторная работа № 17 работа с записями
- •Лабораторная работа №1 работа с файломи
- •Лабораторная работа № 2 указатели и динамические переменные
- •Лабораторная работа № 3 списки
Возведение в степень , соответственно На Паскале: exp(a*ln(X)). Лабораторная работа № 5 работа с двоичными масками
Цель работы
Получение навыков формирования и применения двоичных масок при работе с целыми числами.
I. Требования к выполнению заданий
1. Нельзя использовать циклы.
2. Нельзя использовать условные операторы.
3. Нельзя использовать операторы ввода-вывода (надо использовать операторы присваивания).
4. Не допускаются функции Hi, Lo, Swap. То, что эти функции выполняют, надо реализовать самим с помощью поразрядных операций и масок.
5. В итоге надо записать все действия по решению задачи в виде одного оператора присваивания.
II. Варианты заданий
1. В значении типа Longint поменять местами 1-й и 4-й байты, причет 4-й байт надо перенести в новое место с инверсией.
2. Из четырех однобайтовых переменных собрать значение для 4-байтовой переменной типа Longint. Сборку выполнить так, чтобы значение первой переменной попало в старший (4-й) байт, значение второй переменной - в 3-й байт, третьей - во второй и четвертой переменной - в младший (1-й) байт переменной типа Longint.
3. В двухбайтовом значении переставить местами младший и старший байты, в каждом из которых предварительно надо поменять местами порядок следования битов.
4. Обычно при циклическом сдвиге "выдвигаемые" (за границу числа) разряды "задвигаются" в сдвигаемое значение со стороны, противоположной направлению сдвига:
реализовать циклический сдвиг двухбайтового числа вправо на 4 разряда;
реализовать циклический сдвиг двухбайтового числа влево на 4 разряда.
5. Переставить в обратном порядке все биты в однобайтовом числе.
6. В двухбайтовом числе все нули в старшей тетраде поменять на единицы, а в младшей тетраде поменять все единицы на нули.
7. В младшей тетраде двухбайтового числа побитно поменять все нули на единицы, а единицы - на нули.
8. В двухбайтовом числе
в 1-ю тетраду записать код, равный сумме значений 1-й и 2-й тетрад;
во 2-ю тетраду записать код, равный разности значений 2-й и 4-й тетрад;
в 3-ю тетраду записать код, равный сумме значений 3-й и 4-й тетрад;
в 4-ю тетраду записать код, равный разности значений 2-й и 3-й тетрад.
9. Подсчитать число единиц в однобайтовом числе.
10. Подсчитать число нулей в однобайтовом числе.
Лабораторная работа № 6 работа со строками
Цель работы
1. Получение навыков применения процедур и функций работы со строками.
2. Получение навыков написания линейных программ (без циклов и условных операторов).
I. Требования к выполнению заданий
1. Нельзя использовать циклы.
2. Нельзя использовать оператор IF.
3. Нельзя использовать операторы ввода-вывода (надо использовать операторы присваивания).
4. Из всего множества подпрограмм языка Паскаль надо использовать только функции и процедуры для работы со строками.
5. В итоге надо записать все действия по решению задачи в виде одного оператора присваивания.
II. Варианты заданий
1. Написать программу, которая:
выводит на экран одну строку длиной 80 символов;
при каждом нажатии клавиши «Enter» (10 раз) «раздвигает» эту строку относительно центра.
2. Написать программу, которая «переворачивает» заданную строку (последний символ переставляется на место первого, предпоследний – на место второго и т.д.).
3. Написать программу, которая выполняет следующие действия:
объявляет строку длиной 20 символов;
заполняет эту строку 16-ю одинаковыми символами;
в центре введенных 16 символов выводит 8 пробелов;
в центре введенных 8 пробелов помещает 4 цифры, соответствующие текущему году, взяв это значение из переменной типа Word.
4. Задана строка длиной до 255 символов. Известно, что в ней содержится не более 7 запятых. Каждый фрагмент, заключенный между соседними запятыми, переписать в отдельную строковую переменную.
5. Заданы две строки S1 и S2 максимальной длиной 10 символов. Все символы строки S2, которые также содержатся в строке S1, заменить на пробелы. Символы в S1 и S2 не повторяются.
6. В строке цифр длиной до 20 символов все вхождения четырех цифр, образующих номер текущего года, обработать следующим образом:
вычесть из текущего года год своего рождения;
полученную разность поместить в поле шириной из 4 символов;
поместить сформированное поле в конец исходной строки;
удалить полученные 4 цифры из всех других мест новой строки.
7. В строке длиной до 20 символов обработать каждое вхождение заданного символа следующим образом:
в левой половине строки относительно каждого найденного символа поменять местами тетрады;
в правой половине строки удалить каждый встретившийся заданный символ.
8. Задана строка длиной до 12 символов. Подсчитать, сколько раз в эту строку входит подстрока из 3-х символов. В месте каждого вхождения подстроки заменить порядок следования символов на обратный.
9. Заданная строка состоит из последовательности следующих конструкций:
, где и - числа. Вычислить результат каждого сложения и подставить его в строку вместо знака вопроса.
10. Заданы две строки S1 и S2. В S1 содержится последовательность следующих конструкций: a1 and ? = ?; a2 and ? = ?; ...., где а1, а2, ... - целые числа. Строка S2 состоит только из целых чисел, разделенных запятыми. Выполнить последовательность операций and в строке S1, используя в качестве недостающих операндов соответствующее по порядку целое число из строки S2. Результат операции поместить в строке S1 вместо знака вопроса.
11. В строке длиной до 10 символов найти все вхождения заданной подстроки. В начале и в конце каждого вхождения добавить символ подчеркивания.
12. Заданы две строки S1 и S2. В строке S1 имеется заданное число «пустых» комментариев . Строка S2 состоит из слов, разделенных пробелами. Число слов должно быть числу комментариев. Перенести слова из строки S2 в строку S1 внутрь комментариев.
13. Заданная строка состоит из последовательности четырех символьных номеров текущего года, разделенных пробелами. Изменить порядок следования цифр в полях года. Оставить от номера года только 3 последние цифры.