Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
1

Динамический массив

07.09.2018, 17:39. Показов 973. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте, форумчане. Пытаюсь создать динамический массив, при решении задачи нахождения чисел Фиббоначи. Помогите, пожалуйста.
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
#include <iostream>
#include <cassert>
 
using namespace std;
 
int fibonacci(int n) {
 
    int *F = new int [n];
    F[0]=0;
    F[1]=1;
    for (int i=2; i<n; i++)
    {
        F[i]=F[i-1]*i;
    }
    return F[n];
}
 
 
 
int main() {
    int n = 0;
    cin >> n;
 
    cout<<fibonacci<< '\n';
    return 0;
}
Добавлено через 45 минут
Немного неправильно написал формулу в цикле, она должна быть такой:
C++
1
2
3
4
    for (int i=2; i<n; i++)
    {
        F[i]=F[i-1]*i;
    }
Проблема в том, что метод fibonacci (int n) возвращает 0, при любом n.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.09.2018, 17:39
Ответы с готовыми решениями:

Динамический массив при наследовании, элементами которого являются объекты класса наследника динамический массив
Попробовал создать динамический массив, у которого элементы - объекты класса динамический массив,...

Динамический массив ,элементами которого являются объекты класса динамический массив
Доброго времени суток, захотел создать динамический массив ,элементами которого являются объекты...

Создать динамический класс Book, содержащей динамический массив Authors
всем привет. может кто-то набросать код для такой вот задачи: Создать динамический класс Book,...

Создать динамический класс Book, содержащий динамический массив Authors
Мне нужно написать программу,а я не знаю как ее написать. Знаю, тут люди за кого-то не делают,...

5
186 / 171 / 93
Регистрация: 13.06.2018
Сообщений: 708
07.09.2018, 17:55 2
Цитата Сообщение от griboyedov Посмотреть сообщение
cout<<fibonacci(??)<< '\n';
Цитата Сообщение от griboyedov Посмотреть сообщение
return F[n-1];
вроде так
1
0 / 0 / 0
Регистрация: 28.12.2013
Сообщений: 144
07.09.2018, 18:03  [ТС] 3
Всё, я понял свою ошибку. Должно быть так:
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
#include <iostream>
#include <cassert>
 
using namespace std;
 
int fibonacci(int n) {
 
    int *F = new int [n];
    F[0]=0;
    F[1]=1;
    for (int i=2; i<n+1; i++)
    {
        F[i]=F[i-1]+F[i-2];
    }
    return F[n];
}
 
 
 
int main() {
    int n = 0;
    cin >> n;
 
    cout<<fibonacci(n)<< '\n';
    return 0;
}
0
Неэпический
17870 / 10635 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
07.09.2018, 18:16 4
Цитата Сообщение от griboyedov Посмотреть сообщение
Всё, я понял свою ошибку.
Главная ошибка здесь в том, что для решения этой задачи выделять дополнительную память вообще не надо.
0
672 / 475 / 215
Регистрация: 06.09.2013
Сообщений: 1,306
07.09.2018, 18:17 5
griboyedov, а удалять массив кто будет?
да и зачем вам массив если вы возвращаете только одно число из него?
Достаточно двух переменных.
0
15 / 13 / 4
Регистрация: 16.08.2018
Сообщений: 125
08.09.2018, 15:57 6
Чувак, просто изпользуй векторы.
#include <vector>
Это библиотека для динамических массивов.
Он НАМНОГО лучше стандартных дин. массивов
Краткая инфа о командах:
[вектор находиться в std, поэтому я указывать std:: не буду.]

Создание вектора:
vector<'тип данных вектора'> 'название вектора' 'инициализация вектора, необязательно'

Очищение вектора:
'название вектора'.clear()

Удаление нужной части вектора:
'название вектора'.erase('индекс части вектора')

Возвращает индекс последней части вектора:
'название вектора'.end()

Возвращает индекс первой части вектора:
'название вектора'.begin()

Возвращает кол-во частей в векторе(Нужно для циклов):
'название вектора'.size()

Остальное можешь узнать в гугле
0
08.09.2018, 15:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.09.2018, 15:57
Помогаю со студенческими работами здесь

Скопировать динамический массив в другой массив только с положительными элементами из первого
Пользователь вводит размер массива и сам массив. Программа копирует в другой массив только...

Можно ли в классе создавать массив переменной длинны. Например динамический массив?
Динамические массивы привлекают больше. :)

Заполнить динамический массив из файла и записать массив обратно в файл
Подскажите пожалуйста функцию которая будет заполнять Динамический массив из файла и обратную...

Написать функцию принимающую массив и возвращающую указатель на динамический массив
Написать функцию принимающую массив и возвращающую указатель на динамический массив содержащий...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru