黑马程序员技术交流社区

标题: 求解 这个问题不对的原因 谢谢 [打印本页]

作者: wangyuyus    时间: 2013-11-2 21:25
标题: 求解 这个问题不对的原因 谢谢
/*
        请把一个正整数分解质因数,例如输入90,打印出90=2*3*3*5。
*/
import java.util.*;
class yishu
{
        public static void main(String[] args)
        {
                Scanner s = new Scanner(System.in);
                System.out.print("请输入一个正整数");
                int n = s.nextInt();
                int k= 2;
                System.out.print(n+"=");
                while(k<=n)
                {
                        if(k==n)
                        {
                                System.out.print(n);
                                break;
                        }else if(n/k==0)
                        {
                                System.out.print(k+"*");
                                n=n/k;
                        }else k++;

               
                }
        }
}

作者: 高梦晓    时间: 2013-11-2 22:02
  1. import java.util.*;
  2. class Test{
  3.         public static void main(String args[]){
  4.                  Scanner s = new Scanner(System.in);
  5.                 System.out.print("请输入一个正整数");
  6.                 int n = s.nextInt();
  7.                 int k= 2;
  8.                 System.out.print(n+"=");
  9.                 while(k<=n)
  10.                 {
  11.                         if(k==n)
  12.                         {
  13.                                 System.out.print(n);
  14.                                 break;
  15.                         }else if(n%k==0)   // 这里出错了, 应该是要n%k 求余  不是要n/k求商
  16.                         {
  17.                                 System.out.print(k+"*");
  18.                                 n=n/k;
  19.                         }else k++;
  20.                                
  21.                
  22.                 }
  23.         }
  24. }
复制代码





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2