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

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

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.80
KattyAlex
 Аватар для KattyAlex
0 / 0 / 0
Регистрация: 02.01.2013
Сообщений: 26
17.01.2013, 16:21     Вывод чисел Фибоначчи #1
Понимаю, что тема старая, но вопрос касается кода. Программа после ввода числа с клавиатуры вылетает. В чём ошибка?

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;
}
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 16:29     Вывод чисел Фибоначчи #2
поставь перед return 0; system("pause");
Дмитрий 93
74 / 59 / 5
Регистрация: 03.06.2011
Сообщений: 309
17.01.2013, 16:30     Вывод чисел Фибоначчи #3
вывод результата где?
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;}
Ev[G]eN
Эксперт С++
 Аватар для Ev[G]eN
5093 / 1531 / 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));
}
Дмитрий 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;
}
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 16:57     Вывод чисел Фибоначчи #7
а если ввести 0 или 1 ? ) и ряд чисел фибоначчи начинается с 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 то выведутся те что перед циклом
Stanis
52 / 41 / 8
Регистрация: 16.12.2012
Сообщений: 144
17.01.2013, 17:08     Вывод чисел Фибоначчи #9
я собсно про это и написал
KattyAlex
 Аватар для 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"- зачем слэш? мы просто такое не брали..
Дмитрий 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";//вывод буквы, вывод номера слагаемого, несколько пробелов, результат вычисления, переход на новую строку
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.01.2013, 19:06     Вывод чисел Фибоначчи
Еще ссылки по теме:

Сумма чисел Фибоначчи C++
Сумма чисел Фибоначчи C++
C++ Определить в заданной последовательности целых чисел количество чисел Фибоначчи

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

Или воспользуйтесь поиском по форуму:
Искринний
 Аватар для Искринний
2 / 2 / 0
Регистрация: 02.02.2012
Сообщений: 36
17.01.2013, 19:06     Вывод чисел Фибоначчи #12
"\n"-перевод курсора на следуюющую строку
"\t"-стандартная табуляция
Yandex
Объявления
17.01.2013, 19:06     Вывод чисел Фибоначчи
Ответ Создать тему
Опции темы

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