Topic: 求助 编程分子分母

  Print this page

1.求助 编程分子分母 Copy to clipboard
Posted by: xummsdgs
Posted on: 2006-05-10 10:24

我是新手,求教一个关于分子分母化简的程序,请高手帮帮忙,谢谢CoolCool

2.Re:求助 编程分子分母 [Re: xummsdgs] Copy to clipboard
Posted by: sunjavaduke
Posted on: 2006-05-10 19:15

什么意思?
判断两个数是否有最大公约数吧

3.Re:求助 编程分子分母 [Re: xummsdgs] Copy to clipboard
Posted by: sunjavaduke
Posted on: 2006-05-10 20:04

帮你简要写了写
可以运行,一般情况就可以这样处理了
如果你可以的话,把附加的判断加进来
没有时间帮你弄仔细,因为要把逻辑情况考虑完全太费时间
我又没有那么多的时间
import java.awt.*;
import javax.swing.*;
public class SimpleDemo
{
  public static void main(String[] args)
  {
    String num1,num2,result;
    int number1,number2;

    num1=JOptionPane.showInputDialog(null,"输入分子","请输入分子(整数)",JOptionPane.PLAIN_MESSAGE);
    number1=Integer.parseInt(num1);
    num2=JOptionPane.showInputDialog(null,"输入分母","请输入分母(整数)",JOptionPane.PLAIN_MESSAGE);
    number2=Integer.parseInt(num2);
    while(number2==0)
    {
      num2=JOptionPane.showInputDialog(null,"输入分母","分母不能为0,请重新输入分母(整数)",JOptionPane.ERROR_MESSAGE);
      number2=Integer.parseInt(num2);
    }
    if(number1==0)
    {
      JOptionPane.showMessageDialog(null,num1+"/"+num2+" 化简的结果为:0","化简结果",JOptionPane.INFORMATION_MESSAGE);  
    }
    else
    {
      result=treatProcess(number1,number2);
      JOptionPane.showMessageDialog(null,num1+"/"+num2+" 化简的结果为:"+result,"化简结果",JOptionPane.INFORMATION_MESSAGE);
    }
  }
  public static String treatProcess(int num,int denum)
  {
    String result;
    int number1=0,number2=0;
    int flag=(int)(num/denum);
    if(flag==0)
    {
      for(int i=1;i<=num;i++)
      {
        if((num%i==0)&&(denum%i==0))
        {
          number1=num/i;
          number2=denum/i;
        }
      }
    }
    else
    {
      for(int i=1;i<=denum;i++)
      {
        if((num%i==0)&&(denum%i==0))
        {
          number1=num/i;
          number2=denum/i;
        }
      }
    }
    result=number1+"/"+number2;
    return result;
  }
}
//还可以添加一下处理当在输入对话框中未输入数直接点确定或者取消时的情况
//这里没有帮你添加,可以直接写一个判断String对象是否为null
//还有如果输入的整数大过int范围时的情况


   Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent
Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1
客服电话 18559299278    客服信箱 714923@qq.com    客服QQ 714923