Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Министерство образования и науки РФ
Южно-Уральский государственный университет
Кафедра БИС
ОТЧЕТ
по практической работе № 12
СОСТАВИЛ
студент группы ПС-130
Якивчук В.А.
«___» _____ 2013 г.
Челябинск
2013
Задание:
Составить программу, которая вычисляет значение функции трех переменных R(x,y,z) указанной в варианте задания (см. табл. 1) для заданных значениях параметров. Функция:
F(x,y,z) = D7(x)-L2(H4(y))L9(z) при x=0.5 y=0.1 z=0.4
Ожидаемый результат:
F(x,y,z) = 6,42221
Правила вычисления:
Ход работы:
Код:
// Якивчук В.А.
// Группа: П-130
// Тема: Функции
#include "stdafx.h"
#include <iostream>
#include <math.h>
double D(int n_d, double x);
double H(int n_h, double y);
double L(int n_l2, double z);
int main()
{
double x,y,z,f_d,f_l1, f_h,f_l2, F;
int n_d=7, n_l1=2, n_h=4, n_l2=9;
printf("Input x=");
scanf("%lf",&x);
printf("Input y=");
scanf("%lf", &y);
printf("Input z=");
scanf("%lf",&z);
f_d=D(n_d,x);
f_h=H(n_h,y);
f_l1=L(n_l1,H(n_h,y));
f_l2=L(n_l2,z);
F=f_d-f_l1*f_l2;
printf("F(x,y,z) = %lf\n",F);
system("pause");
}
double D(int n_d, double x){
double d1,d2,d3;
int i;
d2=x;
d3=x*x;
switch(n_d){
case 1:return d2;
case 2:return d3;
default:
for(i=2; i<=n_d-1; i++){
d1=d2;
d2=d3;
d3=((2*i+1-x)*d2)/i - (i*d1)/(i*i+1);
}
return d3;
}
}
double H(int n_h, double y){
double h3,h1,h2;
int o;
h2=y;
h3=y*y-1;
switch(n_h){
case 1:return h2;
case 2:return h3;
default:
for(o=2; o<=n_h-1; o++){
h1=h2;
h2=h3;
h3=2*y*h2-o*y*y*h1;
}
return h3;
}
}
double L(int n_l2, double z){
double l1,l2,l3;
int p;
l2=1;
l3=z+1;
switch(n_l2){
case 1:return l2;
case 2:return l3;
default:
for(p=2; p<=n_l2-1; p++){
l1=l2;
l2=l3;
l3=z*l2-(p*l1)/(p+1);
}
return l3;
}
}
Результат работы:
Тесты:
№ |
Переменная |
Номер n |
Функция |
Ожидаемый/полученный результат |
1 |
x=0.5 |
7 |
D7=((2*i+1-x)*d6)/i - (i*d5)/(i*i+1); |
5.715897 |
y=0.1 |
4 |
H4=2*y*h3-o*y*y*h2; |
-0.0103 |
|
z=0.4 |
9 |
L9=z*l8-(p*l7)/(p+1); |
-0.713659 |
№ |
D7(x) |
H4(y) |
L9(z) |
Функция |
Ожидаемый/полученный результат |
1 |
5.715897 |
-0.0103 |
-0.713659 |
F= D7(x)- L2(H4(y))* L9(z); |
6.422205 |
Таблица переменных:
Наименование |
Имя объекта в мат. постановке задачи |
Тип |
Значение |
Математический смысл |
Ограничение |
D |
D(x) |
double |
Внутренняя |
Функция\пос-ть D(x) |
- |
H |
H(y) |
double |
Внутренняя |
Функция\пос-ть D(y) |
- |
L |
L(z) |
double |
Внутренняя |
Функция\пос-ть L(z) |
- |
x |
x |
double |
Входная |
Аргумент функции |
- |
y |
y |
double |
Входная |
Аргумент функции |
- |
z |
z |
double |
Входная |
Аргумент функции |
- |
F |
F(x,y,z) |
double |
Внутренняя |
Функция F(x,y,z) |
- |
n_d |
n |
integer |
Внутренняя |
Номер члена последовательности ф-ии D(x) |
n>=1 |
n_h |
n |
integer |
Внутренняя |
Номер члена последовательности ф-ии H(y) |
n>=1 |
n_l2 |
n |
integer |
Внутренняя |
Номер члена последовательности ф-ии L(z) |
n>=1 |
n_l1 |
- |
integer |
Внутренняя |
Номер ф-ии L(H(y)) |
n>=1 |
d1 |
- |
double |
Внутренняя |
Член пос-ти D(x) |
- |
d2 |
- |
double |
Внутренняя |
Член пос-ти D(x) |
- |
d3 |
- |
double |
Внутренняя |
Член пос-ти D(x) |
- |
h1 |
- |
double |
Внутренняя |
Член пос-ти H(y) |
- |
h2 |
- |
double |
Внутренняя |
Член пос-ти H(y) |
- |
h3 |
- |
double |
Внутренняя |
Член пос-ти H(y) |
- |
l1 |
- |
double |
Внутренняя |
Член пос-ти L(z) |
- |
l2 |
- |
double |
Внутренняя |
Член пос-ти L(z) |
- |
l3 |
- |
double |
Внутренняя |
Член пос-ти L(z) |
- |
i |
- |
integer |
Счетчик |
Номер члена пос-ти |
- |
o |
- |
integer |
Счетчик |
Номер члена пос-ти |
- |
p |
- |
integer |
Счетчик |
Номер члена пос-ти |
- |