
- •Министерство образования Российской Федерации
- •К.Ю. Круценюк Информатика
- •Часть I Норильск 2002
- •Введение
- •Задание к работе
- •Пример выполнения работы Задание 1
- •Задание 2
- •Контрольные вопросы
- •Задание к работе
- •Пример выполнения работы Задание 1
- •Задание 2
- •Контрольные вопросы
- •Задание к работе
- •Пример выполнения работы Задание 1
- •Задание 2
- •Контрольные вопросы
- •Задание к работе
- •Пример выполнения работы
- •Лабораторная работа №5 «Обработка одномерных массивов»
- •Задание к работе
- •Пример выполнения работы
- •Контрольные вопросы
- •Задание к работе
- •Пример выполнения работы Задание 1
- •Задание 2
- •Контрольные вопросы
- •Лабораторная работа №7 «Обработка матриц»
- •Задание к работе
- •Пример выполнения работы
- •Контрольные вопросы
- •Лабораторная работа №8 «Программирование с использованием подпрограмм пользователя»
- •Задание к работе
- •Пример выполнения работы Задание 1
- •Задание 2
- •Контрольные вопросы
- •Список использованных источников
- •Содержание
Пример выполнения работы
Условие:
Вычислить методом итераций значение
интеграла
для а=0; b=;
k=0,5, разбивая отрезок интегрирования
на 60 частей. Для контроля вычислить
точное значение интеграла и оценить
относительную погрешность метода.
Вычислить
точное значение интеграла. Для |k|0,9
.
Программа:
{Лабораторная работа №4}
{Программирование алгоритмов циклической структуры}
{с заданным числом повторений}
{Выполнена Ф.И.О.}
{Группа }
program lab4;
uses crt;
var a,b,k,x,za,zb,z,zt,dz,dx:real;
n,i:integer;
begin
clrscr;
writeln('Введите значение левого конца интервала’);
write(’интегрирования a=');
readln(a);
writeln('Введите значение правого конца интервала’);
write(’интегрирования b=');
readln(b);
writeln('Введите число разбиений отрезка’);
write(’интегрирования n=');
readln(n);
k:=0.5;
za:=sqr(sin(a))/(1+2*k*cos(a)+k*k);
zb:=sqr(sin(b))/(1+2*k*cos(b)+k*k);
z:=(za+zb)/2;
dx:=(b-a)/n;
x:=a;
for i:=1 to n-1 do
begin
x:=x+dx;
z:=z+sqr(sin(x))/(1+2*k*cos(x)+k*k);
end;
z:=z*dx;
zt:=pi/2;
dz:=abs(zt-z)*100;
writeln;
writeln('Приближенное значение интеграла
z=',z:9:5);
writeln('Точное значение интеграла zt=',zt:9:5);
writeln('Относительная погрешность dz=',dz:9:5);
end.
Результат выполнения программы:
Введите значение левого конца интервала
интегрирования a=0
Введите значение правого конца интервала
интегрирования b=3.14
Введите число разбиений отрезка
интегрирования n=60
Приближенное значение интеграла z= 1.57079
Точное значение интеграла zt= 1.57080
Относительная погрешность dz= 0.00029
Контрольные вопросы
Указать отличия в организации циклов с заданным числом повторений и итерационных.
Какие средства языка целесообразно использовать для организации циклов с заданным числом повторений?
Почему при программировании формулы трапеций т прямоугольников индексированные переменные xi и f(xi) можно заменить простыми переменными?
Почему начальное значение суммы по формуле трапеции принимается не равное нулю, а по формуле прямоугольников – равное нулю?
Указать, какие операторы составляют тело цикла.
В чем состоят преимущества использования операторов цикла в программах?
Лабораторная работа №5 «Обработка одномерных массивов»
Цель работы – овладение практическими навыками работы с массивами, особенностями их ввода и вывода, приобретение дальнейших навыков по организации программ циклической структуры с использованием приемов программирования.
Задание к работе
Обработать массив в соответствии с вариантом задания, указанного в табл.7.
Таблица 7
Вариант задания |
Массив |
Действия |
Условия и ограничения |
1 |
X(100) |
Вычислить сумму и количество положительных элементов массива Х |
0xi1 |
2 |
A(80) |
Вычислить среднее арифметическое значение элементов массива А |
ai>0 |
3 |
X(70) |
Переписать элементы массива Х в массив Y и подсчитать количество положительных элементов |
-1xi1 |
4 |
B(50) |
Определить максимальный элемент массива В и его порядковый номер |
xi>0 |
5 |
C(40) |
Определить минимальный элемент массива С и его порядковый номер |
xi<0 |
6 |
D(80) |
Найти максимальный и минимальный элементы массива D и поменять их местами |
- |
7 |
Y(20) |
Вычислить среднее геометрическое элементов массива Y |
yi>0 |
8 |
Z(30) |
Расположить в массиве R сначала положительные, а затем отрицательные элементы массива Z |
- |
9 |
N(50) |
Определить сумму элементов массива N, кратных трем |
ni/3*3=ni |
10 |
X(N) |
Вычислить сумму и количество четных элементов массива Х |
xi>0, N30 |
11 |
A(N) |
Найти среднее геометрическое элементов массива А |
ai>0, N50 |
12 |
X(N) |
Переписать в массив Y подряд положительные элементы массива Х |
xi>0, N40 |
13 |
X(N) |
Переписать подряд в массив Y положительные, а в массив Z отрицательные элементы массива Х |
N40 |
14 |
B(K) |
Определить максимальный элемент массива В и его порядковый номер |
xi<0, K40 |
15 |
C(K) |
Определить минимальный элемент массива С и его порядковый номер |
-1xi1, K20 |