Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Александр1270
0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 17
#1

Кто может объяснить алгоритм прораммы.Как она работает? - C++

24.02.2014, 17:27. Просмотров 275. Ответов 2
Метки нет (Все метки)

Кто может объяснить алгоритм прораммы.Как она работает?по пунктам.сначала то, потом то...

/*вычислить с точностью Е площадь криволинейной трапеции ограниченной осью , Ох, прямыми х=а х=B , и кривой
y=f(x)=(1-0,25sin^2tx)^1\2 . параметр "t"- корень уравнения t^3-0,39t^2-10,5t+11=0,
принад. отрезку [c, d] и отрезку с точ. Е

исх данные:
a=0 b=П\2
с=1
d=2
E=0,001

#include <iostream>
#include <cmath>
#define _PI 3.1415926535897932384626433832795
using std::cin;
using std::cout;
using std::endl;



// уравнение трапеции(интегрируем)
// вход:
// X-координата по оси абцисс
// T-параметр является корнем уравнения f0
// выход:
// значение уравнения
float f1(float x, float t);


// уравнение (ищем корень
// вход:
// T-переменная
// выход:
// значение уравнения в точке t
float f0(float t);

// ПРЯМОУГОЛЬНИКИ (правые) - интегрирование
// вход:
// a-начало интервала интегрирования
// б-конец интервала интегрирования
// h-точность интегрирования(совпадает с шагом интегрирования
// t-параметр из решения уравнения
// выход:
// интеграл функции f1 сточностью h на интервале [a,b]
float rectangle(float a,float b,float h,float t);


// ПОЛОВИННОЕ ДЕЛЕНИЕ - поиск корня
// вход:
// a-начало интервала поиска
// б-конец интервала поиска
// h-точность поиска
// выход:
// интеграл функции f0 сточностью h на интервале [a,b]
// если корня нет то значение не попадающее в интервал поиска
float separ(float a,float b,float e);


// главная функция
// вход:
// выход:
// 0-нет ошибок
// 1-ошибка нет корня уравнения fo

int main(){
float a,b,c,d,e,tmp;
//a=0,b=_PI/2.,c=1,d=2,e=0.001;
//cout<<rectangle(a,b,e,separ(c,d,e));
cout<<"a: "; cin>>a;
cout<<"b: "; cin>>b;
cout<<"c: "; cin>>c;
cout<<"d: "; cin>>d;
cout<<"e: "; cin>>e;
if((tmp=separ(c,d,e))<c)
return 1;
cout<<rectangle(a,b,e,tmp)<<endl;
system("pause");
return 0;
}


// уравнение трапеции(интегрируем)
// вход:
// X-координата по оси абцисс
// T-параметр является корнем уравнения f0
// выход:
// значение уравнения

float f1(float x, float t){
return sqrt((1-0.25*sin(t*x)*sin(t*x)));
}


// уравнение (ищем корень)
// вход:
// T-переменная
// выход:
// значение уравнения в точке t
float f0(float t){
return t*t*t-0.39*t*t-10.5*t+11;
}


// ПРЯМОУГОЛЬНИКИ (правые) - интегрирование
// вход:
// a-начало интервала интегрирования
// б-конец интервала интегрирования
// h-точность интегрирования(совпадает с шагом интегрирования
// t-параметр из решения уравнения
// выход:
// интеграл функции f1 сточностью h на интервале [a,b]
float rectangle(float a,float b,float h,float t){
float s,x1,x2;
for(s=0,x1=a,x2=b;x1<x2;x1+=h) //площадь=0,x1=начало интервала,х2=конец,пока х1 < х2
s+=f1(x1,t); //увеличиваем х1 на величину шага и к площади прибавляем значение
//функции в точке x1
return s*h; //чтобы из суммызначений функции получить площадь умножим на величину шага
}

// ПОЛОВИННОЕ ДЕЛЕНИЕ - поиск корня
// вход:
// a-начало интервала поиска
// б-конец интервала поиска
// h-точность поиска
// выход:
// интеграл функции f0 сточностью h на интервале [a,b]
// если корня нет то значение не попадающее в интервал поиска
float separ(float a,float b,float e){
float x1=a;
float x2=b;
float x;
if(f0(a)*f0(b)>0) //функция не пересекает ось X
return a-1; //если корня нет то возвращаем значение не попадающее в интервал поиска
do{
x=(x1+x2)/2; //находим середину интервала поиска
if(f0(x1)*f0(x)>0) //если значения начала интервала и середины имеют разные знаки
x1=x; //теперь середина интервала будет являться началом интервала поиска
else //иначе корень на второй половине
x2=x; //теперь середина интервала будет являться концом интервала поиска
}while(fabs(f0(x))>e);
return x;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.02.2014, 17:27     Кто может объяснить алгоритм прораммы.Как она работает?
Посмотрите здесь:

Кто может объяснить алгоритм программы? Как она работает? - C++
Нужно позарез. Реально помогите кто что знает. Рисую алгоритмы нужно разобраться, плс. коменты написать хотя бы // LB3.cpp : Defines the...

можете привести пример программы со структурой данных, и объяснить как она работает - C++
можете привести пример программы со структурой данных, и объяснить как она работает. Добавлено через 23 минуты или опишу часть...

Кто может объяснить? - C++
Кто может объяснить как это делать? Задание 1. В оперативной памяти вектор int X расположен, начиная с адреса B7F0. Какие значения примут...

Кто может объяснить a = a + b? - C++
Сейчас разбирал функцию for. Но суть не в этом. Меня застопорило такое уравнение: sum = sum + i. Я совершенно не могу понять его смысла и...

кто может объяснить синтаксис - C++
кто может объяснить синтаксис при встрече в Барнауле, могу подъехать в любое время пм icq: 554091043

Указатели и адреса: может кто-нибудь нормально по-человечески эту тему объяснить? - C++
Добрый вечер. Читаю вот книгу по Липманну и ничего не понимаю из этих слов, может кто нормально по-человечески объяснить? Спасибо. ...

Кто нибуть мне дураку может объяснить причину segmenantiob fault в моём коде? - C++
Вот есть функция: QVariantList DocumentManager::getNextsDesc(QString path) { QMutexLocker locker(&amp;descMutex); ...

кто может составить алгоритм к программе? - C++
кто сможет составить алгоритм к данной программе?;) вот задание: В клетки квадрата размером n х n вписаны произвольно n2 первых чисел...

Может кто словами описать алгоритм многопутевого слияния? - C++
Может кто словами описать алгоритм многопутевого слияния? В виде: 1-й шаг: делаем то 2-й шаг: делаем это и т. д. В гугле...

Нужна формула к этой задаче или кто сможет объяснить как решать эту задачу? - C++
Есть два сосуда А и В. В сосуде А содержится 1 л молока, а в сосуде В - 1 л чая. Пользователь вводит емкость стакана (в миллилитрах, не...

Объяснить как работает задача - C++
#include &lt;stdio.h&gt; int main(){ int s,l;//S-расстояние км,L-расход топлива в литрах на км. int v,p;//V- соответственно объём...

Может кто разъяснить как выполнить? - C++
Напишите программу, рассчитывающую сумму денег, которые вы получи- те при вложении начальной суммы с фиксированной процентной ставкой...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Тамика
Котовчанин
870 / 450 / 143
Регистрация: 16.02.2010
Сообщений: 2,954
Записей в блоге: 27
24.02.2014, 19:37     Кто может объяснить алгоритм прораммы.Как она работает? #2
Это какая-то шутка? Здесь же всё описано.
Александр1270
0 / 0 / 0
Регистрация: 13.11.2012
Сообщений: 17
24.02.2014, 20:05  [ТС]     Кто может объяснить алгоритм прораммы.Как она работает? #3
ну описано, то описано.но нужно это все связать в 5-7 предложений, чтоб было все ясно
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru