用Java编程以列出所有总和为7的四位数字,即列出从0000到9999的数字,得到这四位数字的总和为7。

例如:7171是一个四位数,而这四位数之和为7 + 1 + 7 + 1 = 16,然后是1 + 6 =7。因此,应列出此类数字。

我写了一个代码,但是不起作用。代码如下:

public class Add
{
    double i,s,n=0;
    void method()
    {
        for(i=0000; i<=9999; i++)
        {
            for(n=i;n>0;n/=10)
            {
                s=s+(n%10);

            }
            while(s>9)
            {
                for(n=s;n>0;n/=10)
                {
                    s=s+(n%10);
                }

            }
            if(s==7)
            {
                System.out.println("i");
            }
        }
     }



public static void main(String[] args)
    {
        Add ob=new Add();
        ob.method();
    }

}

最佳答案

这是您想要的程序:

public class SumDigits {
    public static void main(String[] args) {
        for(int i=7; i<=9999; i+=9)
            System.out.printf("%04d\n", i);
    }
}


数字总和为您提供数字除以9的余数。因此,只需从7开始并连续加9,您将获得所有这些数字。

关于java - 用Java编程以列出所有总和为7的四位数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32842759/

10-12 17:04