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

Найти среди первых чисел Фибоначчи хотя бы одно, делящееся на m - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Найти НОД(GCD)(U[m],u[n]), где u[m] и u[n] — числа Фибоначчи, используя формулу GCD(u[m],u[n]) = u[GCD(m,n)] http://www.cyberforum.ru/cpp-beginners/thread696617.html
Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 3. Найти НОД(GCD)(U,u), где u и u — числа Фибоначчи, используя формулу GCD(u,u) = u. Заранее спасибо
C++ Построить массив p[1]=2, p[2],...,p[n], где p[1]=2, p[2]=3, ...,p[n] - n-е простое число Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 4. Построить массив p=2, p,...,p, где p=2, p=3, ...,p - n-е простое число. Заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread696615.html
Найти число Фибоначчи, обладающее несколькими собственными делителями C++
Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 5. Найти число Фибоначчи, обладающее несколькими собственными делителями. Например, для u такими делителями будут числа 37 и 113, для u — числа 53 и 109 и т.д. Заранее спасибо
Найти все элементы массива, делящиеся на 3 C++
Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 6. Задан целочисленный массив A. Найти все элементы, делящиеся на 3. Заранее спасибо
C++ найти среди первых чисел Фибоначчи хотя бы одно, делящееся на m http://www.cyberforum.ru/cpp-beginners/thread696606.html
Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 1. Целое неотрицательное число М задано массивом своих двоичных цифр a,a,...,a, т.е. , где a = 0 или a = 1, i = 0,1,2,...,n-1. Напечатать массив двоичных цифр числа М+1. Указание. Будем просматривать числа a, a,..., заменяя единицы на нули до первого нуля — его заменим...
C++ С++ из char[] в *char Совсем забыл с++ ... char *token = "Слово"; char *one_char; //Нужно сделать массив состоящий из первого символа token, как это сделать?) подробнее

Показать сообщение отдельно
Roof
 Аватар для Roof
154 / 154 / 10
Регистрация: 03.11.2010
Сообщений: 393
13.11.2012, 21:48     Найти среди первых чисел Фибоначчи хотя бы одно, делящееся на m
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
#include <iostream>
#include <climits>
using namespace std;
 
typedef unsigned long long ull;
 
// функция возвращает n-е число Фибоначчи
// или 0, если n-e число больше чем ULLONG_MAX
ull fib_n( ull n ) {
    if ( n <= 2 )
        return 1;
    ull x = 1; //F(n-2)
    ull y = 1; //F(n-1)
    ull ans = 0; //F(n)
 
    for ( ull i = 3; i <= n; ++i ) {
        if ( ( x + y ) < ans ) // на случай переполнения
            return 0;
 
        ans = x + y;
        x = y;
        y = ans;
    }
    return ans;
}
 
int main() {
 
    ull m, value = 0, number = 1;
    cout << "Введите m" << endl;
    cin >> m;
 
    while ( true ) {
        if ( ( value = fib_n( number ) ) % m == 0 || value == 0 )
            break;
        ++number;
    }
 
    if ( value == 0 )
        cout << "Не удалось найти такое число Фибоначчи, которое нацело делится на " << m << " кроме 0" << endl;
    else
        cout << "Нацело делится на " << m << " число Фибоначчи " << value << ", которое имеет номер " << number << endl;
    return 0;
}
Кликните здесь для просмотра всего текста
Консоль 1
Введите m
119
Нацело делится на 119 число Фибоначчи 498454011879264, которое имеет номер 72
Консоль 2
Введите m
100
Не удалось найти такое число Фибоначчи, которое нацело делится на 100 кроме 0
 
Текущее время: 07:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru