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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.80
KattyAlex
0 / 0 / 0
Регистрация: 02.01.2013
Сообщений: 26
#1

Вывод чисел Фибоначчи - C++

17.01.2013, 16:21. Просмотров 3371. Ответов 11
Метки нет (Все метки)

Понимаю, что тема старая, но вопрос касается кода. Программа после ввода числа с клавиатуры вылетает. В чём ошибка?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
int main()
{
   int n;
   cout<<"Vvedite n: ";
   cin>>n;
 
   for(int i=0; i<n; ++i)
   {
   if(n==0||n==1)
      return 1;
   else
      return (n-1)+(n-2);}
 
   return 0;
}
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.01.2013, 16:21
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вывод чисел Фибоначчи (C++):

Вывод чисел Фибоначчи - C++
Программа выводит на экран первые N чисел ФИБОНАЧИ. но дело совсем не в этом, при выводе массива на экран - первый его элемент оказывается...

Вывод чисел Фибоначчи до 100 (не выводит 89) - C++
Помогите понять, почему когда пишу вывод чисел Фибоначчи до 100, он не выводит 89 #include &lt;iostream&gt; #include &lt;clocale&gt; #include...

Набрать с чисел Фибоначчи в интервале от 1 до 100, только просто числа, а также их порядковые номера в ряду Фибоначчи - C++
Помогите с задачкой Набрать с чисел Фибоначчи в интервале от 1 до 100, только просто числа, а также их порядковые номера в ряду...

Определить в заданной последовательности целых чисел количество чисел Фибоначчи - C++
Выполнить задания, если задана последовательность целых чисел длиной n. Определить в заданной последовательности целых чисел количество...

Сформировать n чисел Фибоначчи - C++
Помогите пожалуйста Сформировать n чисел Фибоначчи (a1=1, a2=1,ai=ai-1+ai-2).

Количество чисел Фибоначчи - C++
#include&lt;iostream&gt; #include&lt;cmath&gt; #include&lt;cstdio&gt; #include&lt;cstring&gt; #include&lt;string&gt; #include&lt;set&gt; #include&lt;algorithm&gt; ...

11
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 16:29 #2
поставь перед return 0; system("pause");
0
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
17.01.2013, 16:30 #3
вывод результата где?
0
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 16:35 #4
поставь перед return 0; system("pause");
вместо return (n-1)+(n-2); нужно cout<<(n-1)+(n-2)<<" ";
а вместо return 1; нужно {cout<<1;break;}
0
Ev[G]eN
iOS/Android Developer
Эксперт С++
5097 / 1535 / 381
Регистрация: 23.01.2011
Сообщений: 3,148
17.01.2013, 16:36 #5
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream>
 
int fibonacciNumbers (int number);
 
int main ()
{
    int num = 0;
    std::cin >> num;
    
    for (int i = 1; i <= num; i++)
        std::cout << fibonacciNumbers(i) << " ";
    std::cout << std::endl;
    
    system("pause");
    return 0;
}
 
int fibonacciNumbers (int number)
{
    if (number < 3)
       return 1;
    else
        return (fibonacciNumbers(number - 1) + fibonacciNumbers(number - 2));
}
0
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
17.01.2013, 16:50 #6
вариант без функций
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main()
{ int a1=1, a2=1, a,n;
    cout<<"input n ";
    cin>>n;
        cout<<"a1\t"<<a1<<"\n"<<"a2\t"<<a2<<"\n";
            for(int i=3; i<=n; i++)
            { 
              a=a1+a2;
              cout<<"a"<<i<<"\t"<<a<<"\n";
              a1=a2;
              a2=a; 
            }
   return 0;
}
0
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 16:57 #7
а если ввести 0 или 1 ? ) и ряд чисел фибоначчи начинается с 0
0
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
17.01.2013, 17:06 #8
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
using namespace std;
 
int main()
{ int a0=0, a1=1, a2=1, a,n;
    cout<<"input n ";
    cin>>n;
        cout<<"a0\t"<<a0<<"a1\t"<<a1<<"\n"<<"a2\t"<<a2<<"\n";
            for(int i=3; i<=n; i++)
            { 
              a=a1+a2;
              cout<<"a"<<i<<"\t"<<a<<"\n";
              a1=a2;
              a2=a; 
            }
   return 0;
}
Добавлено через 2 минуты
что касается ввода 0 или 1 то выведутся те что перед циклом
1
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 17:08 #9
я собсно про это и написал
0
KattyAlex
0 / 0 / 0
Регистрация: 02.01.2013
Сообщений: 26
17.01.2013, 18:33  [ТС] #10
Добавлено через 1 минуту
Цитата Сообщение от Stanis Посмотреть сообщение
поставь перед return 0; system("pause");
вместо return (n-1)+(n-2); нужно cout<<(n-1)+(n-2)<<" ";
а вместо return 1; нужно {cout<<1;break;}
всё равно выдаёт ошибку

Добавлено через 4 минуты

8-мая и 12-ая строка непонятны.. вы не могли бы разъяснить? a2<<"\n"- зачем слэш? мы просто такое не брали..
0
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
17.01.2013, 18:44 #11
"\n" это табуляция, или endl. "\t" это тоже табуляция, или несколько пробелов

Добавлено через 52 секунды
C++
1
 cout<<"a"<<i<<"\t"<<a<<"\n";//вывод буквы, вывод номера слагаемого, несколько пробелов, результат вычисления, переход на новую строку
0
Искринний
2 / 2 / 0
Регистрация: 02.02.2012
Сообщений: 36
17.01.2013, 19:06 #12
"\n"-перевод курсора на следуюющую строку
"\t"-стандартная табуляция
1
17.01.2013, 19:06
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2013, 19:06
Привет! Вот еще темы с ответами:

Сумма чисел Фибоначчи - C++
Надо сделать программу: вводится число с клавиатуры, это число должно быть ровно, как бы, количеству чисел Фибоначчи (это числа, начиная с...

Поиск чисел Фибоначчи - C++
Доброго времени суток! Написал программку, которая находит значение n-элемента в последовательности Фибоначчи. Изначально в ней...

Сумма чисел Фибоначчи - C++
Найти сумму чисел фибоначчи больше m или меньше n где m и n заданные натуральные числа 1&lt;m&lt;n. Нужно сделать это с помощью массива...

Сформировать n чисел Фибоначчи (a1=1, a2=1,ai=ai-1+ai-2) - C++
помогите пожалуйста


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

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

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