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

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

Войти
Регистрация
Восстановить пароль
 
Stas12
0 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 102
#1

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

20.10.2011, 21:00. Просмотров 757. Ответов 2
Метки нет (Все метки)

Дано множество из N=18 элементов.Найти элемент(ключ) к=33.
Элементы массива вводить с клавиатуры по возрастанию.
как это сделать с помощью Фибоначиева поиска??
Ребят кто знает?Просто вообще не ясно, что делать..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.10.2011, 21:00
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Фибоначиев поиск (C++):

Поиск символа не могу переделать под поиск сочетания символов - C++
Есть код программы на поиск и замену по одному символу.Не могу понять, как сделать код на поиск сочетания символов. Чтобы найдя в введённой...

Реализовать поиск заданного файла в древе каталогов и поиск указанной информации в этом файле - C++
Имеется много папок в каждой папке есть файл proc.txt, как можно по всем этим папкам пройтись и из каждой папки в этом файле достать...

Поиск циклов в графе. Поиск центра взвешенного графа - C++
В интернете, к сожалению, по этим вопросам не так уж много нашел. Можете посоветовать статью/пособие, где было бы подробно об этом написано?

Поиск числа в двумерном массиве (бинарный поиск) - C++
Произвожу поиск элемента в массиве двумя способами: линейным(последовательным) поиском и бинарным(двоичным). Первый работает на ура. Второй...

Поиск пикселя и поиск изображения на экране - C++
Переписываю код из clickermann для запуска его на C++. Мне нужны две функции которые выполняли бы сканирование экрана и поиск пикселя...

Фибоначиев поиск - Delphi
сортировка, чтение из файла все работает, но при выполнении алгоритма всегда выдает само число, а не его индекс. пробовал уже разные...

2
S.L.I.M.
15 / 12 / 2
Регистрация: 03.02.2011
Сообщений: 96
21.10.2011, 00:50 #2
а поискать и почитать алгоритмы?

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

это искал?
0
Stas12
0 / 0 / 0
Регистрация: 20.10.2011
Сообщений: 102
21.10.2011, 06:52  [ТС] #3
Цитата Сообщение от 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;
 
} ;
 Комментарий модератора 
Используйте теги форматирования кода!


да спасибо, вот только не совсем понятно что в проге делается, можно откомментировать ее чуток?)))
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.10.2011, 06:52
Привет! Вот еще темы с ответами:

поиск по сайту. не могу разобраться как делать поиск по нескольким полям - PHP БД
поиск по одному полу осуществляется вот так: SELECT * from tablepart WHERE `marka` LIKE '%&quot; . $search . &quot;%' or `model` LIKE '%&quot; . $search...

QRegExp поиск всех строк которые соответствуют шаблону и поиск их длины - C++ Qt
//поиск строк типа ] QRegExp reg(&quot;\\\\]&quot;); QString text = &quot;test ] bla ]&quot;; int pos = reg.indexIn(text); //здесь ошибка....

Поиск максимальных компонент в виде подрограмм, поиск значения функции - Pascal
Очень нужна помощь, срочно. Хотя бы просто помогите с алгоритмом, код написать мб сам справлюсь. Задачи 2 и 3. Предельно благодарен.

Поиск символа в строке. Как осуществить поиск в обратном направлении - Pascal
Всем доброго времени суток. Вопрос такой: как осуществить поиск в обратном направлении, т.е. я в строке (a(bc)) нахожу первую закрытую...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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