CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  J2SE / 基础类

那位大虾帮帮忙!

楼主wangyu_hn(我相对你说)2003-06-01 15:49:06 在 Java / J2SE / 基础类 提问

编写一个程序,接收用户输入的自然数并判断它是不是素数,如果是素数,把它加到JtextArea中。如果不是素数,在Jlabel中显示它的质因子。素数的因子只有1和它本身。不是素数的数有惟一的质因子分解。例如,98的质因子是2,7,7,这几个因子的乘积为98,98的质因子输出应该是2和7。 问题点数:20、回复次数:4Top

1 楼andytu(高守)回复于 2003-06-01 17:28:25 得分 5

我就写一个求素数的函数  
  void   getPrimerNum(int   num,JLabel   label,JTextArea   textArea)  
  {  
    String   s=new   String();  
    m=Math.sqrt(num);  
    for(int   i=2,i<=m;i++){  
          if(num%i==0)  
                 
                num=num/i;  
                s=s+i;  
            }      
          if(s.equals(""))  
                textArea.setText(Interge.toString(num));  
          else  
                label.setText(s);  
  }  
  不知行否,水平有限。Top

2 楼amjn(神雕过儿)回复于 2003-06-01 17:39:10 得分 5

package   test52;  
   
  import   java.util.*;  
  import   java.io.*;  
  import   java.text.*;  
  import   java.math.*;  
   
  class   Test52   {  
   
                    public   static   void   main(String[]   args){  
                        try   {  
                            BufferedReader   bufferIn   =   new   BufferedReader(new   InputStreamReader(System.in));  
                            String   message   =   bufferIn.readLine();  
                            while   (!message.trim().equals("quit"))   {  
                                String   wux=Calculate.getResult(Integer.parseInt(message.trim()));  
                                if(wux.equals(message+"*")){  
                                    System.out.println(message.trim()+"   is   素数");  
                                }  
                                else{  
                                    System.out.println(message.trim()+":"+wux.substring(0,wux.length()-1));  
                                }  
                                message   =   bufferIn.readLine();  
                            }  
                        }  
                        catch(IOException   e){  
                            e.printStackTrace();  
                        }  
   
                    }  
      }  
   
      class   Calculate{  
          public   static   String   getResult(int   num){  
              String   result="";  
              for(int   i=2;i<=num;i++){  
                  if(num%i==0){  
                      result=result+String.valueOf(i)+"*"+getResult(num/i);  
                      return   result;  
                  }  
              }  
              return   result;  
          }  
      }Top

3 楼Hodex(小何才露尖尖角)回复于 2003-06-01 18:43:15 得分 5

public   class   Temp{  
   
  public   static   void   main(String[]   args){  
  for(int   x=2;x<100;x++){  
  System.out.println(x);  
  for(int   i=1;i<x;i++){  
  if(x%i==0){  
  if(check(i)){  
  System.out.print("   "+i+"   ");  
  }  
  }  
  }  
  System.out.println();  
  }  
  }  
  static   boolean   check(int   a){  
  for(int   i=1;i<a;){  
  if(a==2)return   true;  
  i++;  
  if(a%i==0){  
  return   false;  
  }  
  if(i>=a-1){  
  return   true;  
  }  
  }  
  return   false;  
  }  
  }  
  Top

4 楼ytdmm(相忘于江湖)回复于 2003-06-01 21:02:45 得分 5

判断素数就用那个老办法,稍微改改就可以求质因子了。Top

相关问题

  • 那位高手知道?
  • 那位有 3DMAX 的 SDK ?
  • 那位写过VCL构件?
  • 那位帮我快上手!
  • 那位知道WINDOWS系统?
  • 那位老大来帮忙
  • 那位有Together5.5的license
  • 那位玩过盟军II?
  • 那位用过socksonline代理?
  • 那位大虾知道????

关键词

  • 素数
  • 质因子
  • 因子
  • jtextarea
  • jlabel
  • 判断
  • num

得分解答快速导航

  • 帖主:wangyu_hn
  • andytu
  • amjn
  • Hodex
  • ytdmm

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo