С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.74/92: Рейтинг темы: голосов - 92, средняя оценка - 4.74
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 87

Вывод первых n чисел Фибоначчи

25.12.2011, 19:46. Показов 19001. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дано целое число N (> 1). Последовательность чисел Фибоначчи FK
(целого типа) определяется следующим образом:
F1 = 1, F2 = 1, FK = FK–2 + FK–1, K = 3, 4, … .
Вывести элементы F1, F2, ..., FN.
Умоляю помогите!!(зачет завтра, for эт единственное что сделать никак не могу(Через for нужно(
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.12.2011, 19:46
Ответы с готовыми решениями:

Составить программу поиска первых n четных чисел (n - с клавы), в последовательности чисел Фибоначчи
Нужно составить программу используя do while. У меня не получается, это всё что смог написать. int main() { int n; int i, i1 =...

Сумма n первых чисел Фибоначчи
Сами числа Фибоначчи есть, #include <iostream.h> int main() { int n; int i,i1=1,i2=1; cout <<...

вывести на экран n первых чисел Фибоначчи
Помогите написать программу в Visual Studio 2008. Вывести на экран n первых чисел Фибоначчи. Для вычисления n-го числа использовать...

14
1406 / 648 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
25.12.2011, 20:01
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()
{
    int a=1,b=1,c,n;
    std:: cin >> n;
 
    for (int i=3; i<=n; ++i)
    {
        c = a;
        a += b;
        b = c;
    }
 
    std:: cout << a << "\n";
    system ("pause");
    return 0;
}
1
277 / 150 / 25
Регистрация: 05.11.2011
Сообщений: 429
Записей в блоге: 1
25.12.2011, 20:02
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <cstdio>
using namespace std;
 
int main()
{
        int N, F1 = 1, F2 = 1, F3;
        cout << "Enter N:";
        cin >> N;
        cout << F1 << " " << F2 << " ";
        for (int k = 3; k <= N; k++)
        {
                F3 = F2 + F1;
                F1 = F2;
                F2 = F3;
                cout << F3 << " ";
        }
        cout << "\n";
        getchar();
        return 0;
}
1
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 87
25.12.2011, 20:12  [ТС]
это насколько поняла в Visual studio?В борланде это так же будет выглядеть?)и если можно небольшое разъяснение ПОЖАЛУЙСТА!))
0
277 / 150 / 25
Регистрация: 05.11.2011
Сообщений: 429
Записей в блоге: 1
25.12.2011, 20:15
Цитата Сообщение от Ri Посмотреть сообщение
это насколько поняла в Visual studio?В борланде это так же будет выглядеть?)и если можно небольшое разъяснение ПОЖАЛУЙСТА!))
Должно работать там и там. От среды не зависит, только от компилятора поддерживающего стандарты. Какие именно пояснения нужно?
0
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 87
25.12.2011, 20:19  [ТС]
ну вот например параметр к..обычно же параметр i пишется)или это просто вы так обозначили?это ведь никак не связано с к-м номером числа?

Добавлено через 56 секунд
и почему заканчивается на 3?чисел то N штук должно быть
0
 Аватар для Вася1q
21 / 21 / 3
Регистрация: 13.09.2011
Сообщений: 314
25.12.2011, 20:21
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream> //поток ввода- вывода
#include <cstdio>
using namespace std;//присвоение значейний переменным
 
int main()//главная функция
{
        int N, F1 = 1, F2 = 1, F3;
        cout << "Enter N:";//вывод на экран сообщения Введите N
        cin >> N;//ввод N с клавиатуры
        cout << F1 << " " << F2 << " ";//вывод на экран сообщений F1 F2
        for (int k = 3; k <= N; k++)//цикл со счетчиком вместо i тут k
        {
                F3 = F2 + F1;
                F1 = F2;
                F2 = F3;
                cout << F3 << " ";
        }
        cout << "\n";//пропуск строки
        getchar();//пауза
        return 0;//выход
}
1
277 / 150 / 25
Регистрация: 05.11.2011
Сообщений: 429
Записей в блоге: 1
25.12.2011, 20:25
Цитата Сообщение от Ri Посмотреть сообщение
и почему заканчивается на 3?чисел то N штук должно быть
Цикл заканчивается на N. Он начинается с 3, потому что первые два элементы уже известны, они выводятся в строке 10. Тем самым число выводимых элементов будет N.
Цитата Сообщение от Ri Посмотреть сообщение
ну вот например параметр к..обычно же параметр i пишется)или это просто вы так обозначили?это ведь никак не связано с к-м номером числа?
Можно обозвать символом i. В моем коде k обозначил как по заданию
Цитата Сообщение от Ri Посмотреть сообщение
FK = FK–2 + FK–1, K = 3, 4, … .
1
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 87
25.12.2011, 20:26  [ТС]
Большое всем спасибо)вроде более менее уже понятно)Просто сама тема для меня почему то не совсем простая,хотя все остальное всегда на ура было)вот поэтому и обратилась)
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
25.12.2011, 20:27
Цитата Сообщение от Xind Посмотреть сообщение
Должно работать там и там.
Если я не ошибаюсь, в BC 3.1
C++
1
#include <iostream.h>
1
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 87
25.12.2011, 20:30  [ТС]
да,там так.
C++
1
2
3
4
#include <iostream.h>
#include <conio.h>
#include <math.h>
int main(void)
0
277 / 150 / 25
Регистрация: 05.11.2011
Сообщений: 429
Записей в блоге: 1
25.12.2011, 20:32
Цитата Сообщение от Вася1q Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream> //поток ввода- вывода
#include <cstdio>
using namespace std;//присвоение значейний переменным
 
int main()//главная функция
{
        int N, F1 = 1, F2 = 1, F3;
        cout << "Enter N:";//вывод на экран сообщения Введите N
        cin >> N;//ввод N с клавиатуры
        cout << F1 << " " << F2 << " ";//вывод на экран сообщений F1 F2
        for (int k = 3; k <= N; k++)//цикл со счетчиком вместо i тут k
        {
                F3 = F2 + F1;
                F1 = F2;
                F2 = F3;
                cout << F3 << " ";
        }
        cout << "\n";//пропуск строки
        getchar();//пауза
        return 0;//выход
}
С комментариями в 3 и 19 строчке я бы не согласился.

Поправка:
В 3 строке происходит установка, что в данном исходнике будут использоваться имена из пространства std
В 19 строке функция ожидает ввода какого-либо символа.

Добавлено через 2 минуты
Цитата Сообщение от Ri Посмотреть сообщение
#include <conio.h>
в таком случае Вы может использовать вместо getchar(); функцию getch();
1
Ri
 Аватар для Ri
48 / 11 / 1
Регистрация: 15.09.2011
Сообщений: 87
25.12.2011, 20:33  [ТС]
да да)это я знаю)исправила)
0
0 / 0 / 0
Регистрация: 17.05.2016
Сообщений: 58
13.09.2017, 20:31
Всем здравствуйте! По поводу Фибоначчи, но вопрос по записи кода.
Прохожу курс по алгоритмам и там дают мудрёную форму для записи кода, а именно:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <cassert>
#include <iostream>
 
class Fibonacci final {
 public:
  static int get(int n) {
    assert(n >= 0);
    // put your code here
    return n;
  }
};
 
int main(void) {
  int n;
  std::cin >> n;
  std::cout << Fibonacci::get(n) << std::endl;
  return 0;
}
мне туда надо втиснуть :
C++
1
2
3
4
5
6
7
8
    int i;
    vector <int> F(n);
    F[0] = 0;
    F[1] = 1;
    for (i = 2; i <= n; i++){
        F[i] = F[i - 1] + F[i - 2];
    }
    return F[n];
Втискиваю так:

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 <cassert>
#include <iostream>
#include <vector>
class Fibonacci final {
 public:
  static int get(int n) {      
    assert(n >= 0);
      int i;
      vector <int> F(n);
      F[0] = 0;
      F[1] = 1;
      for (i = 2; i <=n; i++){
          F[i] = F[i - 1] + F[i - 2];
      }
      return F[n];    
  }
};
 
int main(void) {
  int n;
  std::cin >> n;
  std::cout << Fibonacci::get(n) << std::endl;
  return 0;
}
Скажите пожалуйста, где я неправ.
0
 Аватар для Новичок
1682 / 1098 / 489
Регистрация: 17.07.2012
Сообщений: 5,360
14.09.2017, 15:43
Qitelery, вектор нужен на n + 1 элементов. В следующий раз задавайте свои вопросы в отдельно созданной теме.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
14.09.2017, 15:43
Помогаю со студенческими работами здесь

Вычислить суммы первых K чисел Фибоначчи для K=1 … N
Вычислить суммы первых K чисел Фибоначчи для K=1 … N. a)Не храним промежуточные значения вычислений. b)Храним промежуточные значения...

Найти среди первых чисел Фибоначчи хотя бы одно, делящееся на m
Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 2. Для...

Найти среди первых чисел Фибоначчи хотя бы одно, делящееся на m
Друзья! Прошу помощи с задачками, кто чем может. А то препод сказал НАДО. А меня даже чайником назвать нельзя( Вот эти задачи. 1. Целое...

Вычислить N первых чисел Фибоначчи, которые определяются из рекуррентных соотношений:
Вычислить N первых чисел Фибоначчи, которые определяются из рекуррентных соотношений: f(1)=f(2)=1, f(n)=f(n-1)+f(n-2) , n&gt;=2,...

Частое от деления любого из первых 10 чисел Фибоначчи на предшествующее стремится к золотому сечению
Посчитать первые 10 чисел Фибоначчи и показать что частое от деления любого числа последовательности на предшествующее число стремится к...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru