Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
MyNameO1eg
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 64
1

Ошибка при компиляции функции

21.09.2017, 22:20. Просмотров 690. Ответов 7
Метки нет (Все метки)

Суть задачи написать рекурсивную функцию вычисляющую факториал вот я вроде бы написал всё верно
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>
using namespace std;
int factorail(int number);
 
int result=1;
 
int main()
{
    int num;
    cin>>num;
    return factorail(num);
}
 
int factrial(int number)
{
    if((number==1)||(number==0))
        {
            return result;
        }
    else
        {
            result=result*factorail(number);
            number--;
        }
    return result;
}
Вот собственно что он пишет -
C:\Users\TAF\AppData\Local\Temp\ccd40zvR.o dev-cpp-rus.cpp.text+0x26): undefined reference to `factorail(int)'
C:\Users\TAF\AppData\Local\Temp\ccd40zvR.o dev-cpp-rus.cpp.text+0x53): undefined reference to `factorail(int)'
C:\Users\TAF\Desktop\Proooga8\CombAlg\HomeWork\collect2.exe [Error] ld returned 1 exit status
прежде чем писать ответ плз уедитесь что прога работает тобишь скомпильте у себя а то я как только не переставлял
C++
1
return result;
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.09.2017, 22:20
Ответы с готовыми решениями:

Ошибка при компиляции виртуальные функции
error LNK2001: неразрешенный внешний символ &quot;&quot;public: virtual float_thiscall...

Ошибка компиляции при вызове виртуальной функции
Здравствуйте. Сильно не плюйтесь, в С я не силен. Пишу на джаве, но попал в...

Ошибка компиляции при неправильных входных параметрах функции
Доброго времени суток, уважаемые форумчане! Возник следующий вопрос. Пусть...

При вызове метода функционального объекта в шаблонной функции ошибка компиляции C2039
Объект класса Entry - это запись в журнале экзаменационной сессии: номер...

Ошибка при компиляции. Где ошибка? (Работа с классом)
Уважаемые форумчане! При компиляции проекта возникает ошибка &quot; undefined...

7
likehood
966 / 815 / 390
Регистрация: 25.12.2016
Сообщений: 2,691
Завершенные тесты: 3
21.09.2017, 22:22 2
В 14 строке опечатка, factrial вместо factorial.
0
MyNameO1eg
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 64
21.09.2017, 22:24  [ТС] 3
Исправил всё равно та же ошибка
0
likehood
966 / 815 / 390
Регистрация: 25.12.2016
Сообщений: 2,691
Завершенные тесты: 3
21.09.2017, 22:25 4
Может проект надо пересобрать.
0
MyNameO1eg
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 64
21.09.2017, 22:28  [ТС] 5
я пишу в dev-cpp
0
likehood
966 / 815 / 390
Регистрация: 25.12.2016
Сообщений: 2,691
Завершенные тесты: 3
21.09.2017, 22:33 6
Лучший ответ Сообщение было отмечено MyNameO1eg как решение

Решение

Так же проблема: в одном месте factorial, в другом factorail.
0
MyNameO1eg
0 / 0 / 0
Регистрация: 21.05.2013
Сообщений: 64
21.09.2017, 22:53  [ТС] 7
Я поянял в чём ошбка у меня функция не может перстать вызывать саму сябя т.к. number Не меняеться

Добавлено через 8 минут
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
#include <iostream>
using namespace std;
int f(int number);
 
int result=1;
 
int main()
{
    int num;
    cin>>num;
    return f(num);
}
 
int f(int number)
{
    if((number==1)||(number==0))
        {
            return result;
        }
    else
        {
            number--;
            result=result*f(number++);
            return result;  
        }
 
}
вот я исправил ошибка исчезла но теперь что то у меня вычисляет не верно но это уже другая история ...
0
likehood
966 / 815 / 390
Регистрация: 25.12.2016
Сообщений: 2,691
Завершенные тесты: 3
21.09.2017, 22:54 8
C++
1
2
3
int factorial(int n) {
    return n > 1 ? n*factorial(n-1) : 1;
}
0
21.09.2017, 22:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.09.2017, 22:54

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

Не является внутренней или внешней командой - ошибка не при компиляции а при работе программы
В VS скомпилировал код #include &lt;iostream&gt; using namespace std; int main()...

Использование шаблонов при наследовании, ошибка при компиляции
При изучении списков написал шаблон протестировал, все работает. После написал...


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

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

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