2015-10-13 64 views
-11
public static void main(String[] args) 
{ 
    Scanner x=new Scanner(System.in); 
    int n=0;int g=0; int term=0;int temp=0; 
    int sum=0; int factor=1; 
    System.out.print("Input N:"); 

    n=x.nextInt(); 
    g=n; 
    if (n<=0) 
    { 
     System.out.println("Please enter a positive integer"); 
     System.exit(0); 
    } 

    if (n>0) 
    { 
     System.out.print("The factors are:"); 

     while (factor<n) 
     { 
      if (n%factor==0) 
      { 
       System.out.print(factor+","); 
      } 
      factor++; 
     } 
    } 
} 

如果我输入数字8,因素是1,2和4.我试图实现的是添加8和1,2的因子,这将是结果为7.添加一个数字的因子

+0

问题是怎么回事? :) –

+3

看起来像做得很差的作业给我。 – duffymo

回答

0
import java.util.Scanner; 

public class Demo { 
public static void main(String[] args) 
{ 
    Scanner x=new Scanner(System.in); 
    int n=0;int g=0; int term=0;int temp=0; 
    int sum=0; int factor=1; 
    System.out.print("Input N:"); 

    n=x.nextInt(); 
    g=n; 
    int number = 0; 
    if (n<=0) 
    { 
     System.out.println("Please enter a positive integer"); 
     System.exit(0); 
    } 

    if (n>0) 
    { 
     System.out.print("The factors are:"); 

     while (factor<n) 
     { 
      if (n%factor==0) 
      { 
       System.out.println(factor+","); 
       number+=factor; 
      } 
      factor++; 
     } 
    } 
    System.out.println("Sum = "+number); 
} 
} 
+0

非常感谢, –

+0

@Nic Gon:如果它是正确的,你接受然后PLZ标记为接受或投票 –

+0

我是新来的,我已经按了上按钮。再次感谢。 –