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

Метод золотого сечения. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Ортограф на C++ http://www.cyberforum.ru/cpp-beginners/thread65448.html
нужно к понедельнику сделать курсач где нужно: "Найти мин. подмножество вершин заданого ортографа от которого достижимы все остальные вершины. вывод: кол/во вершин. матрица...
C++ cтроки и фаилы Написать программу, которая считывает текст из файла и выводит на экран все его предложения в обратном порядке. http://www.cyberforum.ru/cpp-beginners/thread65433.html
TURBO C++ C++
Составить блок-схему алгоритма и программу вычисления количество положительных,отрицательных и нулевых элементов массива B.
C++ Динамические двумерные массивы. Определить суму положительных элементов, которые находятся выше главной диагонали...
Ввести матрицу размером NxM. Память для массива выделить динамически.Определить суму положительных элементов, которые находятся выше главной диагонали. Вывести на экран исходные данные и полученный...
C++ Упражнения,написать программу с классом http://www.cyberforum.ru/cpp-beginners/thread65419.html
я как вы поняли не до конца понял этот параграф,и теперь ваш ответ тут для меня много значит...надо написать 1.напишите программу которая объявляет класс с именем Employe,с такими...
C++ Обращение к полю элемента std::vector'a Здравстуйте! :) Несильно знаком с STL пока, возникла проблемка. Есть класс: class DataBase { public: char Surname; int Age; }; подробнее

Показать сообщение отдельно
Choopa
17 / 17 / 0
Регистрация: 03.04.2011
Сообщений: 89
03.04.2011, 16:59
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
/*
 Метод Золотого сечения (отношения)
 Программу сделал Сеченов Слава
Разработана на Borland C++
Если вы прогите в другой програмулине, 
то удалите строки где в коментах написании // Borland C++
   Удачи.
 */
#include <vcl.h>// Borland C++
#pragma hdrstop// Borland C++
    #include <math>
   #include <iostream>
#define M_E 2.71828182845904523536 //в Borland и без этой строки работает
   using namespace std;
 
double f(double x)
{return  pow(M_E,x)*sin(x*x-2*x+11);} //Здесь ваша формула
 
//---------------------------------------------------------------------------
 double ab(double i)
 {if(i<0)return -i;else return i;}   //это модуль
 
//---------------------------------------------------------------------------
 
#pragma argsused// Borland C++
void main()
{
 double a, b, g, h, fu1, fu2,eps=0.000001;
 
 
        for(int i=-1;i<=1;i+=2)//Сначало ищем минимум, затем максимум
        {
 
        cin>>a>>b; //Вводим начальную координату и конечную
 
    g = a+(b-a)*(0.38);
    h = b-0.38*(b-a);
    fu1 = i*f(g);
    fu2 = i*f(h);
 
    do{
 
        if( fu1<=fu2 )
        {
            b = h;
            h = g;
            fu2 = fu1;
            g = a+(b-a)*(0.38);  //Основная формула
            fu1 = i*f(g);
        }
        else
        {
            a = g;
            g = h;
            fu1 = fu2;
            h = b-0.38*(b-a);  //Основная формула
            fu2 = i*f(h);
        }
    }
    while(ab(a-b)>eps); //Условие выхода
    i==-1? cout<<"Minimum ":cout<<"Maximum ";
        cout<<"OTBET "<<(fu1-fu2)/2+fu2<<" v tochke "<<h<<endl;
 
 }
 
system ("PAUSE"); //Консольная команда паузы проги
 
 
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru