Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные работы - Паскаль.doc
Скачиваний:
7
Добавлен:
04.11.2018
Размер:
4.84 Mб
Скачать

ИРКУТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ПУТЕЙ СООБЩЕНИЯ

КАФЕДРА “ИНФОРМАТИКА”

ПРОГРАММИРОВАНИЕ НА АЛГОРИТМИЧЕСКОМ ЯЗЫКЕ ВЫСОКОГО УРОВНЯ.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ ПО ВЫПОЛНЕНИЮ ЛАБОРАТОРНЫХ РАБОТ

Автор: старший преподаватель Лучников В.А.

Иркутск

2011

Лучников В.А. Программирование на языке высокого уровня. Методические указания по выполнению лабораторных работ: Учебное пособие – Иркутск: ИрГУПС, 2011.-90 с.

Учебное пособие предназначено для студентов специальностей “Информационные системы и технологии”, “Программная инженерия” и “Информационная безопасность”. Оно может быть также полезно для студентов других специальностей, изучающих программирование и использующих его в прикладных задачах при выполнении расчетно-графических и курсовых работ по специальным дисциплинам.

Учебное пособие представляет собой описание 9 лабораторных работ по основным разделам программирования на алгоритмическом языке Паскаль. В каждой лабораторной работе приведена методика ее выполнения, начиная с постановки задачи и заканчивая получением результата. Все лабораторные работы имеют по 15-20 вариантов заданий.

Учебное пособие является дополнением к учебнику автора “Программирование на алгоритмическом языке высокого уровня”.

Содержание

Лабораторная работа №1. Выражения и операторы присваивания . . . . . . . . . . . . . . . .4

Лабораторная работа №2. Ветвления . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .9

Лабораторная работа №3. Циклы, управляемые условиями . . . . . . . . . . . . . . . . . . . . 17

Лабораторная работа №4. Циклы с параметром . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

Лабораторная работа №5. Строки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .31

Лабораторная работа №6. Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Лабораторная работа №7. Подпрограммы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .61

Лабораторная работа №8. Файлы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

Лабораторная работа №9. Рекурсия . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83

Лабораторная работа № 1

Выражения и операторы присваивания

Тема: Порядок составления программ на языке Паскаль. Программирование алгоритмов линейной структуры. Программирование ввода и вывода данных.

Цель работы: Освоить структуру программы на языке Паскаль, порядок записи выражений, операторы ввода и вывода.

Задание на лабораторную работу

  1. Получить задание в соответствии с номером своего варианта.

  2. Составить схему алгоритма решения задачи.

  3. Написать код программы на языке Паскаль в среде Borland Pascal for Windows.

  4. Осуществить компиляцию, отладку и тестирование программы.

  5. Получить результат.

  6. Оформить отчет по лабораторной работе.

Пример оформления работы

  1. Составить алгоритм и написать код программы, вычисляющей значения переменных S и R по следующим формулам:

где

Значение переменной x ввести с консоли.

  1. Схема алгоритма решения задачи:

  1. Код программы:

Program Variant_0;

Uses WinCRT;

Const a=3.25e-5;

B=2.0*Pi/3.0;

Var x, r, s: Real;

Begin

WriteLn(‘Лабораторная работа №1’);

WriteLn(‘Вариант №0’);

WriteLn(‘ИС-11-1’);

WriteLn(‘Пупкин Василий’);

WriteLn;

Write(‘x=’); {ввод исходных данных}

ReadLn(x);

s:= Sqrt(x*b*b/a + Cos((x+b)*(x+b))* Cos((x+b)*(x+b)));

r:= x*x*(x+s)/(a*b) – Sqr(Sin(Exp(a*Ln(x))));

WriteLn(‘s=’, s:5:3); {вывод результата}

WriteLn(‘r=’, r:5:3);

End.

  1. Компиляция, отладка, тестирование и получение результата:

Задания на лабораторную работу №1

Вариант 1

Ввести с консоли значения переменных x, y, z. Определить значения переменных a, b, c:

Вариант 2

Ввести с консоли значение переменной x. Определить значения переменных y, z:

где a=3,2×10-5

b=0,314159265×10-7

Вариант 3

Ввести с консоли значение переменной x. Определить значения переменных y, z:

где a=1,5×10-3

b=0,314159265×10-5

Вариант 4

Ввести с консоли значения переменных x, y, z. Определить значения переменных a, b, c:

Вариант 5

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 6

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 7

Ввести с консоли значения переменных x, y, z. Определить значения переменных a, b, c:

Вариант 8

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 9

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 10

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 11

Ввести с консоли значение переменной x. Определить значения переменных y, z:

где a=3,2×10-5

b=0,314159265×10-7

Вариант 12

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 13

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Вариант 14

Определить значения переменных a, b, c:

Вариант 15

Ввести с консоли значение переменной x. Определить значения переменных a, b, c:

Лабораторная работа № 2

Ветвления

Тема: Программирование алгоритмов с двумя формами ветвлений – альтернативой и переключателем.

Цель работы: Освоить программирование алгоритмов, включающих альтернативу и переключатель.

Задание на лабораторную работу

  1. Получить задание в соответствии с номером своего варианта.

  2. Составить схему алгоритма решения задачи.

  3. Написать код программы на языке Паскаль в среде Borland Pascal for Windows.

  4. Осуществить компиляцию, отладку и тестирование программы.

  5. Получить результат.

  6. Оформить отчет по лабораторной работе.

Пример оформления работы

  1. Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

  1. Схема алгоритма решения задачи:

  1. Код программы:

Program Variant_0;

Uses WinCRT;

Var x, y: Real;

Begin

WriteLn(‘Лабораторная работа №2’);

WriteLn(‘Вариант №0’);

WriteLn(‘ИС-11-1’);

WriteLn(‘Пупкин Василий’);

WriteLn;

Write(‘x=’); {ввод исходных данных}

ReadLn(x);

If (Odd(Trunc(x)))

Then y:=-1.0

Else y:=1.0;

WriteLn(‘y=’, y:3:1); {вывод результата}

End.

  1. Компиляция, отладка, тестирование и получение результата:

Задания на лабораторную работу №2

Вариант 1

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 2

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 3

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 4

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 5

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 6

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 7

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 8

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 9

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 10

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 11

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 12

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 13

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 14

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 15

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 16

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 17

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 18

Составить алгоритм и написать код программы, вычисляющей длину линии вертикального разреза фигуры y_razrez, значения площадей фигуры слева и справа от линии разреза s_left, s_right, по значениям аргумента x, введенным с консоли:

Вариант 19

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Вариант 20

Составить алгоритм и написать код программы, вычисляющей значения функции y, заданной графически, по значениям аргумента x, введенным с консоли:

Лабораторная работа № 3

Циклы, управляемые условиями

Тема: Программирование алгоритмов циклической структуры.

Цель работы: Освоить программирование циклических алгоритмов с циклами, управляемыми условиями: циклами с предусловиями и циклами с постусловиями. Освоить программирование циклических алгоритмов с вложенными циклами.

Задание на лабораторную работу

  1. Получить задание в соответствии с номером своего варианта.

  2. Вывести рекуррентную формулу вычисления суммы ряда.

  3. Определить общее слагаемое суммы и выразить его через предыдущее, использовав переходной коэффициент (для удаления факториалов из формулы).

  4. Составить схему алгоритма решения задачи.

  5. Написать код программы на языке Паскаль в среде Borland Pascal for Windows.

  6. Осуществить компиляцию, отладку и тестирование программы.

  7. Получить результат.

  8. Оформить отчет по лабораторной работе.