⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 program.java

📁 Java Class, which implements Rational Numbers. Includes a simple test.
💻 JAVA
字号:
package dada;public class program{	public static void main(String [] args){		Rational r = new Rational(2.5);		System.out.println("r1= " + r.toString());		Rational r2 = new Rational(42,10);		System.out.println("r2= " + r2.toString());		System.out.println("r2= " + r2.doubleValue());		System.out.println("r2 invertiert= " + r2.invert().toString());		System.out.println("r2 negiert= " + r2.negate().toString());		System.out.println("r2 + r= " + r2.add(r).toString());		System.out.println("r2 * r= " + r2.multiply(r).toString());		System.out.println("r2 / r= " +r2.divide(r).toString());		System.out.println("r2 - r= " +r2.subtract(r).toString());	}}class Rational{	private long zaehler;	private long nenner;	public Rational(){		this.zaehler =0;		this.nenner = 1;	}	public Rational(long z, long n){		norm(z,n);		//this.zaehler = z;		//this.nenner = n;	}	public Rational(long a){		this(a,1);	}	public Rational(double a){		this((long)(a*100000000),100000000);		//this.nenner =            100000000;	}	public String toString(){		return "(" + this.zaehler + ")/(" + this.nenner + ")";	}	public double doubleValue(){		return ((double)this.zaehler/(double)this.nenner);	}	public Rational negate(){		return new Rational(-this.zaehler,this.nenner);	}	public Rational invert(){		return new Rational(this.nenner,this.zaehler);	}	public double getNumerator(){		return this.zaehler;	}	public double getDenominator(){		return this.nenner;	}	private long gcd(long a, long b){		if(b==0){			return a;		}else{			return gcd(b, a%b);		}	}	private void norm(long z, long n){		long dada = gcd(z, n);		//this(z/dada, n/dada);		this.zaehler= z/dada;		this.nenner = n/dada;	}	public Rational multiply (Rational z){		return new Rational((long)(this.zaehler * z.getNumerator()),(long)(this.nenner * z.getDenominator()));	}	public Rational add (Rational z){		return new Rational((long)(this.zaehler*z.getDenominator() + z.getNumerator()*this.nenner),(long)(this.nenner * z.getDenominator()));	}	public Rational subtract (Rational z){		return add(z.negate());	}	public Rational divide (Rational z){		return multiply(z.invert());	}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -