简单的C ++脚本 - 因子 - 错误

时间:2014-01-07 01:55:48

标签: c++ factorial

我正在学习C ++。这是一个代码计数阶乘(silnia)。 Liczba意味着数字。

#include <iostream>

using namespace std;

int _main() 
{
    int silnia;
    int n;
    if (n == 0) return 1;
    else;
    return n * silnia(n-1);

    int liczba;
    cout << "Podaj liczbe: ";
    cin >> liczba;
    cout << liczba << "! = " << silnia(liczba) << endl;
    return 0;
}

但是我仍然会收到错误消息:

main.cpp: In function 'int _main()':
main.cpp:9:20: error: 'silnia' cannot be used as a function
 return n*silnia(n-1);
                    ^
main.cpp:14:42: error: 'silnia' cannot be used as a function
 cout << liczba << "! = " << silnia(liczba) << endl

可能是什么问题?

2 个答案:

答案 0 :(得分:1)

从您的主要部分删除此部分:

 int silnia;
 int n;
 if (n == 0) return 1;
 else;
 return n * silnia(n-1); 

将此功能置于主要功能

之外
 int silnia(int a)
{
 if(a==0) return 1;
 else return silnia(a-1)*a;
}

答案 1 :(得分:0)

silnia(liczba)

看起来你正试图“调用”整数silnia。正是您的错误消息所说的。我不确定你在那条线上做了什么。