Java程序求n个数的基数^指数,而下一个基数和指数是(n-1)

时间:2013-10-29 02:10:54

标签: java for-loop cycle exponent

我正在尝试用java编写一个程序来显示n个数字及其指数之和的结果,而样本中的下一个数字和指数是(n-1)直到它达到0.我希望我在解释自己。一个例子:

如果我问用户3号,程序必须这样做: 3 ^ 3 + 2 ^ 2 + 1 ^ 1 = 32

我需要使用循环,所以即使它更有效也不能使用任何类型的函数。

这是我到目前为止所做的:

public static void main(String[] args) 
{
    int n,i,j,s=0,exp;

    Scanner r = new Scanner (System.in);

    System.out.println("Value of n: ");
    n = r.nextInt();

    for(i=1;i<=n;i++)
    {
        s = 0;

        for(j=1;j<=i;j++)
        {
            exp = n * n;
            s = s + exp;
        }
    }

    System.out.println("Total: "+s);
}

有关如何使其发挥作用的任何提示?我无法绕过这个。

1 个答案:

答案 0 :(得分:2)

for循环中的逻辑不正确。

以下是使其有效的示例;

外部循环中的变量i用于确定要处理的int值,例如,如果n = 3,则为1,2,3

内部循环用于处理给定i的pow表达式,如您提到的1 ^ 1,2 ^ 2和3 ^ 3。

        for(i=1;i<=n;i++)
        {
            exp = 1;
            for(j=1;j<=i;j++)
            {
                exp *=i;
            }
           s+=exp; 
        }