Автор работы: Пользователь скрыл имя, 08 Марта 2011 в 18:23, курсовая работа
В данной курсовой работе будет рассмотрено решение задач из ряда высшей математике, это: вычисление определенного интеграла, логарифма
1. Программирование нестандартных функций --------------------------------------------------- 5
1.1. Постановка задачи -------------------------------------------------------------------------- 5
1.2. Результат машинного и ручного счета -------------------------------------------------- 6
1.3. Вывод ------------------------------------------------------------------------------------------- 6
2.Программирование нестандартных функций --------------------------------------- 7
2.1. Постановка задачи --------------------------------------------------------------------------- 7
2.2. Метод решения ------------------------------------------------------------------------------- 7
2.3.Описание программы ------------------------------------------------------------------------- 8
2.4.Результат машинного и ручного расчета ------------------------------------------------- 9
2.5. Вывод ------------------------------------------------------------------------------------------- 9
3.Операции над матрицами -------------------------------------------------------------------------- 10
3.1. Постановка задачи ---------------------------------------------------------------------------- 10
3.2. Метод решения -------------------------------------------------------------------------------- 10
3.3. Описание программы ------------------------------------------------------------------------ 12
3.4. Результат машинного и ручного расчета ---------------------------------------------- 14
3.5. Вывод ------------------------------------------------------------------------------------------ 15
4. Вычисление определенного интеграла --------------------------------------------------------- 16
4.1. Постановка задачи ----------------------------------------------------------------------------- 16
4.2. Метод решения ------------------------------------------------------------------------------- 16
4.3. Описание программы ------------------------------------------------------------------------ 16
4.4. Результат машинного и ручного расчета ------------------------------------------------ 17
4.5. Вывод ------------------------------------------------------------------------------------------- 18
5. Нахождение максимального и минимального значения функции ----------------------- 19
5.1. Постановка задачи ---------------------------------------------------------------------------- 19
5.2. Метод решения -------------------------------------------------------------------------------- 19
5.3. Описание программы ------------------------------------------------------------------------ 20
5.4. Результат машинного и ручного расчета ----------------------------------------------- 21
5.5. Вывод --------------------------------------------------------------------------------- 21
Заключение ------------------------------------------------------------------------------------ 22 Список литературы ------------------------------------------------------------------------------- 23
2. Программирование
нестандартных функций
Рис.2- Блок схема программы
(а-д).
program functions;
var x,y:real;
var n,m:integer;
s:text;
function sh(q:real):real;
begin
sh:=(exp(q)-exp(-q))/2;
end;
function ch(q:real):real;
begin
ch:=(exp(q)+exp(-q))/2;
end;
function th(q:real):real;
begin
th:=sh(q)/ch(q);
end;
function fact(k:integer):integer;
var i,f:integer;
begin
f:=1;
for i:=1 to k do f:=f*i;
fact:=f;
end;
begin
assign (s,'A:\Факториал.txt');
rewrite(s);
Writeln ('Разроботал студент гр.ТМДу-21 Кондратьев В.В.');
Writeln ('Составить алгоритм и программу вычисления функции сиспользованием нестандартных функций');
Writeln
(s,'Разроботал студент гр.
Writeln
(s,'Составить алгоритм и
writeln ('Введите константы:');
write ('n:');
readln (n);
write
('m:');
readln (m);
writeln ('Введите переменную x');
readln (x);
y:=fact(n)*ln(sh(x)+ch(x))-th(
writeln ('x=',x:5:2,', y=',y:8:3);
writeln (s,'x=',x:5:2,', y=',y:8:3);
readln;
close(s);
end.
3. Операции
над матрицами
Операции над матрицами и векторами определяются следующим образом:[7.1], [7.2], [7.3].:
Все перечисленные
операции, а так же ввод данных и
вывод результата опишем отдельными
процедурами.
Блок-схема
программы
Рис. 3- Блок- схема
программы MATRIX.
Программа MATRIX предназначена для выполнения операций над матрицами: .
В начале работы программы необходимо задать значения констант , , , определяющих размерности матриц A, B, C и D.
Затем вводим
значения элементов матриц A, B, C и D.
Для определенности
примем:
;
;
;
Текст программы:
program matrix;
const Ni=2;
Nj=3;
Nk=5;
type matr=array[1..Nk,1..Nk] of real;
var A,At,B,Bt,C,Ct,D,Dt,AtBt,CtDt,
i,j,k:integer;
s:text;
procedure multi(var m:matr; p,l:matr);
var i1,j1,k1:integer;
begin
for i1:=1 to Nk do
for k1:=1 to Nk do
begin
m[i1,k1]:=0;
for j1:=1 to Nk do
m[i1,k1]:=m[i1,k1]+p[i1,j1]*l[
end;
end;
procedure vvod(var m:matr;t:char; Ni1,Nj1:integer);
{ввод матрицы}
var i1,j1:integer;
begin
assign (s,'A:\Факториал.txt');
rewrite(s);
Writeln ('Разроботал студент гр.ТМДу-21 Кондратьев В.В.');
Writeln ('Составить алгоритм и программу вычисления функции сиспользованием нестандартных функций');
Writeln
(s,'Разроботал студент гр.
Writeln
(s,'Составить алгоритм и
writeln('Ввод матрицы ',t);
for i1:=1 to Ni1 do
for j1:=1 to Nj1 do
begin
write ('Введите ',j1,' -элемент ',i1,' строки:');
readln(m[i1,j1]);
end;
end;
procedure trans(var mt:matr; m:matr; N1:integer);
var i1,j1:integer;
begin
for i1:=1 to N1 do
for j1:=1 to N1 do
mt[i1,j1]:=m[j1,i1];
end;
procedure summ(var m:matr; p,l:matr; Ni1,Nj1:integer);
{сумма матриц}
var i1,j1:integer;
begin
for i1:=1 to Ni1 do
for j1:=1 to Nj1 do m[i1,j1]:=p[i1,j1]+l[i1,j1];
end;
begin
vvod(A,'A',Nj,Ni); {ввод матриц A,B,C,D}
vvod(B,'B',Nk,Nj);
vvod(C,'C',Nj,Nk);
vvod(D,'D',Nj,Nk);
trans(At,A,Nj); {транспонирование матриц}
trans(Bt,B,Nk);
trans(Ct,C,Nk);
trans(Dt,D,Nk);
summ(CtDt,Ct,Dt,Nk,Nj);
multi(AtBt,At,Bt); {умножение матриц}
multi(S,AtBt,CtDt);
writeln ('Результирующая матрица:'); {вывод результата}
for i:=1 to Ni do
begin
for k:=1 to Nj do
write (s,’S[i,k]:7:2,’ );
writeln;
end;
readln;
end.
3.4 Результаты машинного и ручного расчетов.
В результате машинного расчета для выбранных в п.2.3. матриц A, B, C и D получаем матрицу .
Выполним ручной
расчет для тех же данных.
;
;
;
4.
Вычисление определенного
интеграла
Вычислим определенный интеграл по методу левых
прямоугольников [7.3]. Метод состоит в разбиении участка
интегрирования на N равных промежутков и вычислении
площадей прямоугольников ,
где , - значение функции в начале
интервала разбиения i. Таким образом, площадь под
графиком приближенно заменяется суммой
площадей прямоугольников:
.
Блок-схема программы