Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/15: Рейтинг темы: голосов - 15, средняя оценка - 5.00
103 / 90 / 75
Регистрация: 04.11.2011
Сообщений: 1,820

Найти целое число k-порядковый номер числа фибоначчи

23.04.2013, 15:58. Показов 3564. Ответов 17
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано целое число N(>1), являющееся числом Фибоначчи: N=Fk(число Фибоначчи Fk определяется следующим образом: F1=1 f2=1 Fk=Fk-2+Fk-1, K=3, 4 ..). Найти целое число k-порядковый номер числа фибоначчи.
Просьба написать через printf и scanf и по возможности написать пояснение для каждой строки.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.04.2013, 15:58
Ответы с готовыми решениями:

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

Найти первое число последовательности большее, чем X, вывести порядковый номер числа и его величину
Дано число X и последовательность (1,1 + 1/2, 1+1/2+1/3...) , найти первое число этой последовательности большее, чем X, вывести порядковый...

Дано число. Разделить каждую цифру десятичной записи этого числа на его порядковый номер. Полученное число нап
2.Дано число. Разделить каждую цифру десятичной записи этого числа на его порядковый номер. Полученное число напечатать. #include...

17
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
23.04.2013, 16:01
Xo6ut, генерируете последовательность и в ходе выполнения сравниваете его с вашим числом, а так же накапливаете счётчик, при совпадении значений выводите счётчик, если сгенерированное значение больше вашего завершаете итерацию.
0
1 / 1 / 2
Регистрация: 23.09.2012
Сообщений: 91
23.04.2013, 16:08
Пишите обычную функцию для чисел Фибоначчи, и в момент совпадения с искомым числом выводите его на экран. Когда нашли число-выход из программы
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
23.04.2013, 16:11
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
#include <iostream>
 
int get_fib(int n); // [url]https://www.cyberforum.ru/cpp-beginners/thread73752.html[/url]
int get_number_Fibonacci_numbers(int numb);
 
int main()
{
    std::cout << "Enter number: ";
 
    int number;
 
    std::cin >> number;
 
    std::cout << "Serial number: " << get_number_Fibonacci_numbers(number);
 
    return 0;
}
 
int get_fib(int n) 
{ 
     if(n==1) 
         return 1;
 
     if(n==2) 
         return 1;
 
     return get_fib(n-1) + get_fib(n-2);
};
 
int get_number_Fibonacci_numbers(int numb)
{
    for(int i = 1; ; ++i)
        if(get_fib(i) == numb)
            return i;
}
если всё работает, отзыв вот сюда: [ссылка удалена]

Заранее Спасибо .
2
103 / 90 / 75
Регистрация: 04.11.2011
Сообщений: 1,820
23.04.2013, 16:14  [ТС]
Cпасибо конечно за проделанную работу, но я же просил через printf и scanf(
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
23.04.2013, 16:16
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
#include <iostream>
 
int get_fib(int n); // [url]https://www.cyberforum.ru/cpp-beginners/thread73752.html[/url]
int get_number_Fibonacci_numbers(int numb);
 
int main()
{
    std::cout << "Enter number: ";
 
    int number;
 
    scanf("%d",&number);
 
    printf("Serial number: %d", get_number_Fibonacci_numbers(number));
 
    return 0;
}
 
int get_fib(int n) 
{ 
     if(n==1) 
         return 1;
 
     if(n==2) 
         return 1;
 
     return get_fib(n-1) + get_fib(n-2);
};
 
int get_number_Fibonacci_numbers(int numb)
{
    for(int i = 1; ; ++i)
        if(get_fib(i) == numb)
            return i;
}
0
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
23.04.2013, 16:17
Xo6ut,
C++
1
std::cout << "Serial number: " << get_number_Fibonacci_numbers(number);
to
C++
1
printf("Serial number:  %d", get_number_Fibonacci_numbers(number));
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
23.04.2013, 16:18
проверти правильность работы алгоритма, если есть замечания напишите с примерами.
0
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
23.04.2013, 16:22
А проще всего воспользоваться формулой:
C++
1
nF = floor(log(F*sqrt(5.)+0.5) / log(((1. + sqrt(5.)/2.))));
вроде так. Если что - формула из вики.
2
 Аватар для Ternsip
670 / 198 / 29
Регистрация: 10.05.2012
Сообщений: 595
23.04.2013, 16:24
nonedark2008, забавно, не знал, отдельное спасибо
0
103 / 90 / 75
Регистрация: 04.11.2011
Сообщений: 1,820
23.04.2013, 16:29  [ТС]
Цитата Сообщение от nonedark2008 Посмотреть сообщение
А проще всего воспользоваться формулой:nF = floor(log(F*sqrt(5.)+0.5) / log(((1. + sqrt(5.)/2.))));
вроде так. Если что - формула из вики.
Т.е можно просто формулу ввести и не придется все это писать?
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
23.04.2013, 16:36
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <cmath>
#include <math.h>
 
int main()
{
    std::cout << "Enter number: ";
 
    int number;
 
    scanf("%d",&number);
 
    printf("Serial number: %f", floor( log(number * sqrt(5.)+0.5) / log( (1. + sqrt(5.) ) / 2.) ));
 
    return 0;
}
1
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
23.04.2013, 16:37
Да, немного в формуле ошибся.
Будет так:
C++
1
nF = floor( log(F * sqrt(5.)+0.5) / log( (1. + sqrt(5.) ) / 2.) )
1
23.04.2013, 16:38

Не по теме:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <cmath>
#include <math.h>
 
int main()
{
    std::cout << "Enter number: ";
 
    int number;
 
    scanf("%d",&number);
 
    printf("Serial number: %f", floor( log(number * sqrt(5.)+0.5) / log( (1. + sqrt(5.) ) / 2.) ));
 
    return 0;
}

1
103 / 90 / 75
Регистрация: 04.11.2011
Сообщений: 1,820
23.04.2013, 16:40  [ТС]
А можно вместо:
C++
1
2
3
#include <iostream>
#include <cmath>
#include <math.h>
ввести:
C++
1
2
#include <stdio.h>
#include <conio.h>
?
0
 Аватар для GetVariable
164 / 120 / 46
Регистрация: 17.03.2013
Сообщений: 284
23.04.2013, 16:41
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <stdio.h>
#include <conio.h>
#include <cmath>
 
int main()
{
    printf("Enter number: ");
 
    int number;
 
    scanf("%d",&number);
 
    printf("Serial number: %f", floor( log(number * sqrt(5.)+0.5) / log( (1. + sqrt(5.) ) / 2.) ));
 
    return 0;
}
1
103 / 90 / 75
Регистрация: 04.11.2011
Сообщений: 1,820
23.04.2013, 16:48  [ТС]
И последний вопрос(надеюсь) за что отвечает #include <cmath>?
0
 Аватар для edw1n
7 / 7 / 2
Регистрация: 12.11.2012
Сообщений: 114
23.04.2013, 17:11
Цитата Сообщение от Xo6ut Посмотреть сообщение
И последний вопрос(надеюсь) за что отвечает #include <cmath>?
Математическая библиотека.
Пользуйтесь гуглом !
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.04.2013, 17:11
Помогаю со студенческими работами здесь

Дано число. Разделить каждую цифру числа на его порядковый номер
Как записать именно деление каждого числа на порядковые номера. могут быть ведь как, например, 111, так и 18473457645874... #include...

Дано целое число (N>0) найти наибольшее целое числа k, квадрат которого не превосходит N:k^2<=N
Помогите пожалуйста сделать задачу. Нужно сделать на С++. Вот условие: Дано целое число (N&gt;0) найти наибольшее целое числа k,...

Найти порядковый номер числа
помогите решить задачу Дано 10 целых чисел.Найти порядковый номер второго положительного числа

Найти максимальное двузначное число и его порядковый номер
Задача 4: Найти максимальное двузначное число и его порядковый номер, в случае отсутствия двузначных чисел сообщить об этом #include...

Найти порядковый номер наибольшего по значению числа
Помогите пожалуйста. Нужно написать программу на C++ в программе Borland C++ или C-Free. Сделать нужно очень срочно. Задание: Найти...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru