Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ИТиУвТС / ОАИП 2 вариант (1 курс 1 семестр) ИТИУТС.docx
Скачиваний:
30
Добавлен:
01.04.2014
Размер:
334.46 Кб
Скачать

Индивидуальные задания № 1

Создать программу вычисления указанной величины. Результат проверить при заданных исходных значениях.

2. .

При x = –4.5, y = 0.7510-4,

z = 0.845102u = –55.6848.

Решение:

Код:

// Зание № 1.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

#include <math.h>

#include <iostream>

#include <string.h>

#include <stdio.h>

#include <io.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

double u1=0,u2=0,u3=0,u=0,x=0,y=0,z=0;

cout<<"Vvedite znacheniya peremennix"<<endl;

cout<<"x: ";

cin>>x;

cout<<endl<<"y: ";

cin>>y;

cout<<endl<<"z: ";

cin>>z;

u1=pow((8+pow((double)abs(x-y),(double)2)+1),(double)(1/3))/(pow(x,(double)2)+pow(y,(double)2)+2);

u2=pow((double)(pow(tan(z),(double)2)+1),x);

u3=exp(abs(x-y));

u=u1-u2*u3;

cout<<"Result u = "<<u<<" pri x = "<<x<<", pri y = "<<y<<", pri z = "<<z<<endl;

return 0;

}

Скриншот:

Индивидуальные задания № 2

Составить программу для вычисления значения rez в зависимости от поставленного условия.

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

2. rez =

Решение:

Код:

// Задание № 2.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

#include <math.h>

#include <iostream>

#include <string.h>

#include <stdio.h>

#include <io.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

double fi=0,Q=0,rez=0;

cout<<"Vvedite znacheniya peremennix"<<endl;

cout<<"fi: ";

cin>>fi;

cout<<endl<<"Q: ";

cin>>Q;

if (abs(fi)<(5*abs(Q)))

{

rez=log(abs(2*fi-3*exp((double)2)*Q));

cout<<"Proshli cherez verhnuu vetv'! rez = "<<rez;

}

else if (abs(fi)<=(7.5*Q) && abs(fi)>(5*abs(Q)))

{

rez=log(abs(2*pow(fi,(double)2)-3*Q));

cout<<"Proshli cherez nijnuu vetv'! rez = "<<rez;

}

else { cout<<"Fi and Q ne podhodyat!";}

return 0;

}

Скриншот:

Индивидуальные задания № 3

Для каждого x, изменяющегося от a до b с шагом h, найти значения функции Y(x), суммы S(x) и |Y(x)–S(x)| и вывести в виде таблицы. Значения a, b, h и n вводятся с клавиатуры. Так как значение S(x) является рядом разложения функции Y(x), при правильном решении значения S и Y для заданного аргумента x (для тестовых значений исходных данных) должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки.

Работу программы проверить для a = 0,1; b = 1,0; h = 0,1; значение параметра n выбрать в зависимости от задания.

2. .

Решение:

Код:

// Задание № 3.cpp : Defines the entry point for the console application.

//

#include "stdafx.h"

#include <math.h>

#include <iostream>

#include <string.h>

#include <stdio.h>

#include <io.h>

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

double a=0,b=0,h=0,n=0,S=0,Y=0,x;

cout<<"Vvedite znacheniya peremennix"<<endl;

cout<<"a: ";

cin>>a;

cout<<endl<<"b: ";

cin>>b;

cout<<endl<<"h: ";

cin>>h;

cout<<endl<<"n: ";

cin>>n;

x=a;

int i=1;

while (x<=b)

{

Y=x*atan(x)-log(sqrt(1+pow(x,(double)2)));

S+=pow(double(-1),(i+1))*(pow(x,2*i))/(2*i*(2*i-1));

cout<<"x = "<<x<<" S = "<<S<<" Y = "<<Y<<" |Y(x)-S(x)| = "<<abs(Y-S)<<endl;

x+=h;

i++;

}

return 0;

}

Скриншот: