约分java代码 约分编程

谁能帮帮我,JAVA如何约分结果

要先写一个gcd的方法,greatest common divisor,即最大公约数。你拿到了最大公约数,拿需要约分的两个数除以最大公约数就行。

创新互联公司致力于成都网站建设、网站建设,成都网站设计,集团网站建设等服务标准化,推过标准化降低中小企业的建站的成本,并持续提升建站的定制化服务水平进行质量交付,让企业网站从市场竞争中脱颖而出。 选择创新互联公司,就选择了安全、稳定、美观的网站建设服务!

public int GCD(int a, int b) {

if (b==0) return a;

return GCD(b,a%b);

}

关于JAVA的一道程序题,大概是约分

根据题意可得如下代码:

public class Fraction {

private int numerator;

private int denominator;

public Fraction(int x, int y){

this.numerator = x;

this.denominator = y;

}

public Fraction(){

}

public String toString(){

return this.numerator+"/"+this.denominator;

}

public void Simple(){

int i = this.numerator;

if (i  this.denominator){

i = this.denominator;

}

for (; i = 1; --i){

if (this.numerator%i == 0  this.denominator%i == 0)break;

}

this.numerator /= i;

this.denominator /= i;

}

public static void main(String[] args) {

// TODO Auto-generated method stub

Fraction f = new Fraction(48, 72);

f.Simple();

System.out.println(f.toString());

}

}

(java) 对一个分数进行约分(分子分母同时除以最大公约数)。

;

实现辗转相除法()的代码可以很简洁(如下)。

应当一提的是,下面的 最大公约数( ) 函数的实现若改成以下这一句会更简洁更高效:

return b == 0 ? a : 最大公约数( b, a % b );

还有,java 标准库里的 BigInteger 类有提供求最大公约数的方法。

import java.math.*;

class C {

static int 最大公约数( int a, int b ) {

return a % b == 0 ? b : 最大公约数( b, a % b );

}

public static void main( String[ ] args ) {

int 分子 = 123456,

分母 = 7890;

System.out.println( "分数:" + 分子 + "/" + 分母 );

System.out.print( "约分后的结果是 " );

int gcd = 最大公约数( 分子, 分母 );

System.out.println( 分子 / gcd + "/" + 分母 / gcd );

////////////////////////////////////////////////////////////////////////

System.out.print( "利用 BigInteger 的 gcd( ) 求出的结果也是 " );

BigInteger fz = BigInteger.valueOf( 分子 ),

fm = BigInteger.valueOf( 分母 ),

BIgcd = fz.gcd( fm );

System.out.println( fz.divide( BIgcd ) + "/" + fm.divide( BIgcd ) );

}

}

java如何将分数快速约分

根据题意可得如下代码: public class Fraction { private int numerator; private int denominator; public Fraction(int x, int y){ this.numerator = x; this.denominator = y; } public Fraction(){ } public String toString(){ return this.numerator+"/"+this.denominator; } public void Simple(){ int i = this.numerator; if (i this.denominator){ i = this.denominator; } for (; i = 1; --i){ if (this.numerator%i == 0 this.denominator%i == 0)break; } this.numerator /= i; this.denominator /= i; } public static void main(String[] args) { // TODO Auto-generated method stub Fraction f = new Fraction(48, 72); f.Simple(); System.out.println(f.toString()); }}


文章名称:约分java代码 约分编程
转载来源:http://scjbc.cn/article/dojiios.html

其他资讯