Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ При обращении к структуре из класса возникает исключение:нарушение прав доступа при записи. Почему? Структура Test описана в классе ABC: class ABC{ struct Test { int get_i() { return i; } void put_i(int j) { i = j;} private: int i; }; public: https://www.cyberforum.ru/ cpp-beginners/ thread1179294.html C++ Перевод из pascal в c++ (мигающие кружки)
Здрасте, помогите переписать из паскаля в С++. Там где рисуеться можно псевдографикой, спасибо Uses crt, graph; _ Const N=50; M=50; jj=1; Var i,j,k,l,u, Gd, Gm : integer; p: real;...
C++ Как переопределить дружественную функцию ввода для класса наследника https://www.cyberforum.ru/ cpp-beginners/ thread1179275.html
Есть класс предок, который имеет такую вот дружественную функцию ввода: friend ifstream & operator >>(ifstream & inf, Tovar & obj) //Дружественная перегрузка оператора ввода { inf >>...
C++ Переделать из файлового вывода в консольный https://www.cyberforum.ru/ cpp-beginners/ thread1179257.html
Помогите пожалуйста! У меня есть задача готовая, но там файловый ввод-вывод. Но мне очень нужно переделать все это в обычный вид, через cout, чтобы все вводить в компиляторе. #include...
C++ Найти в каждом числе количество четных и нечетных цифр
Вводится последовательность из N целых чисел. Найти в каждом числе количество четных и нечетных цифр (функциями оформить определение количества четных и нечетных цифр числа).В 17 и 19 строчке...
C++ Вычисление суммы членов ряда https://www.cyberforum.ru/ cpp-beginners/ thread1179217.html
Сложность вызывает сама математика ибо вообщем не представляю решения данного примера. Было где-то, но... http://floomby.ru/s1/gWjaZR и это получается также? http://floomby.ru/s1/8WjYgw
C++ Очистить динамическую память, выделенную под член структуры https://www.cyberforum.ru/ cpp-beginners/ thread1179207.html
Объявление и инициализация объекта: pupil B = Constructor("MyName", 18, 50); Сама структура: struct pupil{ public: char *name = new char; int age; float rating; }; Нужно в отдельной...
C++ Работа с базой данных, содержащей записи со сведениями о студентах
#include "stdafx.h" #include <ctime> #include <stdlib.h> #include <fstream> #include <iostream> using namespace std; struct stud {
C++ Из положительных элементов массива A(n) (n<=14) сформировать массив B https://www.cyberforum.ru/ cpp-beginners/ thread1179199.html
Из положительных элементов массива A(n) (n<=14) сформировать массив B. Распечатать созданный массив и посчитать количество элементов в нём.
C++ Присвоить ссылку на функцию, по ссылке на объект:) https://www.cyberforum.ru/ cpp-beginners/ thread1179197.html
Добрый вечер! Имеются классы: class A {virtual double f1() = 0; virtual double f2()=0;} class B : A class C : A Создаю ссылочки: A *p;
Предупреждение при перегрузке оператора C++
Есть вот такой код для созданный для обучения #include <iostream> using namespace std; class complex{ private: double _re; double _im;
C++ Drawing operation was attemted when there was no current window Написал программу, которая строит один из трех графиков по выбору пользователя (1, 2 или 3). Если пользователь выбирает номер графика, не предусмотренного в программе (например нажимает цифру 4), то... https://www.cyberforum.ru/ cpp-beginners/ thread1179160.html
0 / 0 / 0
Регистрация: 18.05.2014
Сообщений: 7
19.05.2014, 20:58  [ТС] 0

Найти минимум функции методом кубической параболы - C++ - Ответ 6189547

19.05.2014, 20:58. Показов 1857. Ответов 4
Метки (Все метки)

Ответ

Недоделанный код (не объявлял переменные, не проверял на ошибки):
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
#include <iostream>
#include <math.h>
#include <stdlib.h>
 
using namespace std;
 
double  a=1,  h=1, eps1 = 0.01, eps2 = 0.03, xl;
 
double f(double);
double fp(double);
double kit(double);
 
 
int main()
{
    
 
    xl = mp3();
    cout << "Minimum = " << xl << endl;
    system("pause");
    return 0;
}
 
double f(double x)
{
    return x*cos(x)-x;
}
 
double fp(double x)
{
    return (-x)*sin(x)+cos(x)-1;
}
double kip(double x1, double x2) // кубический интерполяционный полином
{
    double w, z, nu;
    z = (3 * (f(x1) - f(x2))) / x2 - x1 + fp(x1) + fp(x2);
 
 
    if (x1 < x2)
        w = pow((pow(z, 2) - fp(x1)*fp(x2)), 1 / 2.);
    else w = -pow((pow(z, 2) - fp(x1)*fp(x2)), 1 / 2.);
 
    nu = (fp(x2) + w - z) / (fp(x2) - fp(x2) + 2 * w);
 
    if (nu < 0) xl = x2;
    if (nu >= 0 && nu <= 1) xl = x2 - nu*(x2 - x1);
    if (nu>1) xl = 1;
 
    if (f(xl) >= f(x1)) xl = xl - 1 / 2.*(xl - x1);
    do {
        xl = xl - 1 / 2.*(xl - x1);
    } while (f(xl) <= f(x1));
    return xl;
}
double x1( double h)
{
    double x0, x, x1, x2, xk_p_1, xm, xm_m_1;
    int k = 0, m = 0;
    x0 = a;
    x = x0 + 1;
    if (fp(x0)<0)
    do {
        xk_p_1 = pow(x, k + 1);
        xk_p_1 = pow(x, k) + pow(2, k)*h;
 
        k++;
        m++;
        xm = pow(x, m);
        xm_m_1 = pow(x, m + 1);
    } while (fp(xm_m_1)*fp(xm)<=0);
    else
    do {
        xk_p_1 = pow(x, k + 1);
        xk_p_1 = pow(x, k) - pow(2, k)*h;
    
        k++;
        m++;
        xm = pow(x, m);
        xm_m_1 = pow(x, m + 1);
 
 
    } while (fp(xm_m_1)*fp(xm)<=0);
    x1 = pow(x, m - 1);
    return x1;
}
double x2(double h)
{
    double x0, x, x1, x2, xk_p_1, xm, xm_m_1;
    int k = 0, m = 0;
    x0 = a;
    x = x0 + 1;
    if (fp(x0)<0)
    do {
        xk_p_1 = pow(x, k + 1);
        xk_p_1 = pow(x, k) + pow(2, k)*h;
 
        k++;
        m++;
        xm = pow(x, m);
        xm_m_1 = pow(x, m + 1);
    } while (fp(xm_m_1)*fp(xm) <= 0);
    else
    do {
        xk_p_1 = pow(x, k + 1);
        xk_p_1 = pow(x, k) - pow(2, k)*h;
 
        k++;
        m++;
        xm = pow(x, m);
        xm_m_1 = pow(x, m + 1);
 
 
    } while (fp(xm_m_1)*fp(xm) <= 0);
    x2 = pow(x, m);
    return x2;
}
Есть две идеи:
1. х1 и х2 объединить в одну функцию и возвращать от туда структуру.
2. Менять значение иксов в этой структуре и отправлять в функцию, где считается полином.

Добавлено через 5 часов 42 минуты
Помогите пожалуйста, совсем не понимаю как это сделать

Добавлено через 1 час 53 минуты
А можно ли менять значение x1 и x2, например в меине (xl=x1, x1=x2 и тд) и отправлять их в функцию kip?

Добавлено через 21 час 49 минут
Никто не может помочь? :'(

Вернуться к обсуждению:
Найти минимум функции методом кубической параболы C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.05.2014, 20:58
Готовые ответы и решения:

Нахождение минимума функции одной переменной методом кубической параболы
Допущена ошибка в коде.Предполагаю,что неверно выбран x1 в самой функции метода.Также возможна...

Пересечение кубической параболы и окружности
Задание звучит так: с клавиатуры вводятся коэффициенты, которые определяют полином третьего...

Найти минимум функции методом золотого сечения.
Помогите пожалуйста!... Нужно найти минимум функции у=х*х-sinх методом золотого сечения. в СИ....

Создать титульный лист и построить график кубической параболы
Создать титульный лист и построить график кубической параболы

4
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.05.2014, 20:58

Для каждой параболы вывести уравнение, найти эктремумы; выяснить совпадают или пересекаются эти параболы
Вот само задание: http://i.**********/ZOUVXmQ.jpg П.5.18.Правил Запрещено размещать задания и...

найти методом золотого сечения минимум
просто нужно взять любое линейное уравнение и найти методом золотого сечения минимум. и на с++ всё...

Как задать криволинейный замкнутый контур по точкам методом кубической интерполяции?
В с++ я новичок, полазив по форумам, я нашел некотрые коды, но они либо не работают, либо выдают не...

Найти минимум функции
Доброго времени суток. Нужно минимизировать функцию f(x,y)=(1-x)^2+100*(y-x*x)^2; используя...

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