- •Раздел 3 Программирование
- •1 Структура программы на языке Pascal
- •2 Операторы языка Pascal
- •2.1 Оператор присваивания
- •2.2 Операторы ввода данных
- •2.3 Операторы вывода данных
- •3 Стандартные функции Pascal
- •3.1 Примеры составления линейной программы
- •4 Контрольные вопросы
- •5 Задание
- •Содержание отчета
- •1 Условный оператор if
- •2 Оператор варианта case
- •3 Контрольные вопросы
- •4 Задание
- •4.1 Задание по условному оператору
- •4.2 Задание по оператору варианта
- •5 Содержание отчета
- •1 Оператор цикла с постусловием
- •2 Оператор цикла с предусловием
- •3 Оператор цикла с параметром
- •4 Контрольные вопросы
- •5 Задание
- •6 Содержание отчета
- •1 Итерационные циклы
- •2 Программа итерационного цикла
- •3 Контрольные вопросы
- •4 Задание
- •5 Содержание отчета
- •1 Краткая теория
- •1 Программа "цикл в цикле"
- •2 Программа "цикл и ветвление"
- •3 Программа "цикл в цикле и ветвление"
- •4 Контрольные вопросы
- •5 Задания
- •6 Содержание отчета
- •1 Одномерные и многомерные массивы
- •2 Обработка массивов
- •3 Контрольные вопросы
- •4 Задания
- •5 Содержание отчета
- •1 Описание функций
- •2 Параметры функции
- •2.1 Параметры-значения
- •2.2 Параметры-переменные
- •3 Контрольные вопросы
- •4 Задание
- •5 Содержание отчета
- •1 Формат описания процедуры
- •2 Параметры процедуры
- •3 Контрольные вопросы
- •4 Задание
- •5 Содержание отчета
- •1 Средства и методы отладки программ
- •1.1 Понятие отладки
- •1.2 Разновидности ошибок
- •1.2.1 Ошибки этапа компиляции
- •1.2.2 Ошибки этапа выполнения
- •1.2.3 Логические ошибки
- •2 Выполнение программы по шагам и трассировка
- •2.1 Выполнение по шагам и трассировка
- •2.2 Остановка выполнения
- •2.3 Отслеживание и модификация
- •2.4 Понятие отладочного шага
- •2.5 Выполнение программы по шагам
- •2.6 Трассировка программы
- •2.7 Выполнение больших фрагментов
- •3 Отладочные выражения, точки останова
- •3.1 Понятие отладочного выражения
- •3.2 Просмотр выражений
- •3.2.1 Добавление просматриваемого выражения
- •3.2.2 Редактирование просматриваемых выражений
- •3.3 Вычисление и модификация
- •3.3.1 Вычисление выражений
- •3.3.2 Модификация переменных
- •3.4 Использование точек останова
- •3.5 Задание точек останова
- •3.6 Отмена точки останова
- •3.7 Модификация точек останова
- •3.8 Создание условной точки останова
- •5.2 Установка точек останова
- •6 Содержание отчета
4 Задание
Вычислить сумму членов ряда с точностью Е=10-2
при заданном х=0.75
№ варианта |
Выражение |
1 |
2 |
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
, Е=103 |
12 |
, Е=102 |
13 |
|
14 |
|
15 |
|
16 |
147
1 |
2 |
17 |
|
18 |
, Е=102 |
19 |
|
20 |
5 Содержание отчета
1 Название работы.
2 Цель работы.
3 Содержание работы
4 Задание и программа для своего варианта.
5 Результаты расчёта итерационной суммы
6 Письменные ответы на контрольные вопросы.
7 Выводы по работе.
148
Лабораторная работа № 5
Сложные алгоритмы
Цель работы: разработка программ, реализующих циклические и ветвя-
щиеся вычислительные процессы.
Содержание работы:
1 Программа "цикл в цикле"
2 Программа "цикл и ветвление"
3 Программа "цикл в цикле и ветвление"
1 Краткая теория
При записи программ со структурой вложенных циклов необходимо обращать внимание на правильность размещения внешнего и внутреннего циклов. Одни постановки задач допускают смену мест внешнего и внутреннего циклов, а в других постановках такая система приводит к неправильным результатам.
При записи программ со структурой вложенных циклов зона действия внутреннего цикла должна располагаться в зоне действия охватывающего цикла.
1 Программа "цикл в цикле"
Пример 1
Составить таблицу ступенчатой функции
где y = sin x + cos a + sin ax
при 1<=a<= 3; ∆a=0.5; 0<= x<=2; ∆x =0.2
В программе нужно вычислить у для всех возможных сочетаний а и х, сравнить его с 1 и, если у<1, то вычислить z по первой формуле, если >=1, то по второй.
const
da=0.5;
dx=0.2;
var
a,x,y,z: real;
begin
a:=1;
repeat { цикл по a }
x:=0;
repeat { цикл по x }
149
y:=sin(x)+cos(a)+sin(a*x);
if y<1 then
z:=y+sqr(x)
else
z:=sin(sqr(y+1))+sqr(cos(x));
writeln(' a=',a:4:3,' x=',x:4:3,'
z(x,y)= z(',x:4:3,',', y:4:3,')=',z:4:3);
x:=x+dx;
until x>2;
a:=a+da;
until a>3;
end.
Описание программы
В разделе объявлений задаются константы da и dx, затем вещественные переменные a,x,y,z.
В основном блоке переменной а задаётся начальное значение а=1 и открывается цикл repeat по а, затем задаётся начальное значение х=0 и открывается цикл repeat по х, вложенный в цикл по а. В этом цикле вычисляется значение у и, если оно меньше 1, то вычисляется z=y+x2, в противном случае z вычисляется по формуле z =. Далее выводятся a,x,y,z в формате 4 значащих цифры, из них 3 после запятой.
Затем х получает приращение 0,2, выполняется проверка на достижение им конечного значения 2. Если условие выполняется, то управление передаётся назад, к repeat по х, если нет, то выполняется следующий оператор, где а получает своё приращение 0,5 и проверяется на достижение конечного значения 3. Если условие выполняется, то программа возвращается к repeat по а, если нет, то конец программы.