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

Фибоначиев поиск - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Определить минимальное значение n>0, для которого очередное слагаемое по модулю не превышает eps http://www.cyberforum.ru/cpp-beginners/thread369769.html
Формулировка задания: "Определить минимальное значение n>0, для которого очередное слагаемое по модулю не превышает eps>0 при нахождении результата согласно формуле" P.S.: формула на картинке во вложениях Еще бы хотелось, если это возможно, поподробнее узнать про математическую постановку задачи. Заранее спасибо!
C++ Параллелограм, окружность, синусоиду изобразить графически Здравствуйте господа программисты, посоветуйте учебник или какой либо материал почитать о графических возможностях C++. необходимо простейшие функции - параллелограм, окружность, синусоиду изобразить графически. какие заголовочные файлы подключать и тп. спасибо. http://www.cyberforum.ru/cpp-beginners/thread369766.html
C++ Вычислить значение выражения
Здравствуйте.. Нужна помощь в решении уравнения на c++ До этого решал простые( самые простые ).Буду благодарен за помощь. Файл уравнения я приложил.
C++ Прерывания asm
Не могу использовать прерывания(int) в встроенном ассемблере. Вылезает ошибка доступа. Помогите пожалуйста помогите.
C++ Считывание из файла. http://www.cyberforum.ru/cpp-beginners/thread369744.html
Считывание из файла. Подскажите пожалуйста!!!! Очень надо!!!!!! Как из файла считать только определенную матрицу (фрагмент) и записать в массив? Например их текстового файла с содержимым 1 1 1 1 3 3
C++ Обработка звуковых файлов Товарищи, с помощью каких библиотек, заголовочных файлов, структур, классов и т.д. можно обработать звуковые файлы (например WAV). Если немного конкретнее, то мне нужно работать с цифровым сигналом: получить зависимость частот от времени и т.п. В дальнейшем придётся Фурье-преобразовывать, но это уже математика - сам смогу разобраться (наверное), но сначала необходимо получить доступ к самому... подробнее

Показать сообщение отдельно
Stas12
0 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 102
21.10.2011, 06:52  [ТС]     Фибоначиев поиск
Цитата Сообщение от S.L.I.M. Посмотреть сообщение
а поискать и почитать алгоритмы?

http://www.matmetod.ru/fibonacci_algorithm
http://www.matmetod.ru/fibonacci_program

это искал?
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
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
#include "stdafx.h"
 
#include "iostream"
 
#include "math.h"
 
using namespace std;
 
 
double Fi(double);
 
double f(double);
 
int _tmain(int argc, _TCHAR* argv[])
 
{
 
int d,k=-1,p=0;
 
double L0,l,a=-2.0,b=0.0,eps,x,y,N=-1,kk=1.0;
 
cout<<"enter eps ";
 
cin>>eps ;
 
cout<<"enter l ";
 
cin>>l;
 
 
L0=b-a;
 
do{N++;}
 
while (Fi(N)<(abs(L0)/l));
 
 
x=a+(Fi(N-2)/Fi(N))*(b-a);
 
 
y=a+(Fi(N-1)/Fi(N))*(b-a);
 
do{
 
k++;
 
if (f(x)<=f(y))
 
{b=y;
 
y=x;
 
x=a+(Fi(N-k-3)/Fi(N-k-1))*(b-a);
 
};
 
 
 
if (f(x)>f(y))
 
{a=x;
 
x=y;
 
y=a+(Fi(N-k-2)/Fi(N-k-1))*(b-a);
 
};
 
}while(k!=N-3);
 
 
 
y=x+eps;
 
if (f(x)<=f(y))
 
{
 
b=y;
 
};
 
 
 
if (f(x)>f(y))
 
{a=x;
 
};
 
 
cout<<"x="<<(b+a)/2<<" k="<<k<<endl;
 
cin>>d;
 
return 0;
 
};
 
 
double Fi(double n){
 
double f0,fk,p;
 
f0=1;
 
fk=1;
 
for(int i=2;i<=n;i++){
 
p=fk;
 
fk=fk+f0;
 
f0=p;
 
};
 
if (n<2){fk=1;};
 
return fk;
 
};
 
double f(double x)
 
{
 
return 2*x*x+5*x-20;
 
} ;
 Комментарий модератора 
Используйте теги форматирования кода!


да спасибо, вот только не совсем понятно что в проге делается, можно откомментировать ее чуток?)))
 
Текущее время: 16:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru