Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class F12 { //eigentlich Fraction3
- int numerator;
- int denominator;
- F12 result;
- F12(int num, int den){
- numerator = num;
- denominator = den;
- simplify();
- }
- void simplify(){
- int gcd = findGCD(numerator, denominator);
- numerator /= gcd;
- denominator /= gcd;
- }
- int findGCD(int a, int b){
- if(b==0){
- return a;
- }
- return findGCD(b, a%b);
- }
- public int getNum(){
- return numerator;
- }
- public int getDenom(){
- return denominator;
- }
- F12 add(F12 x){
- F12 answer;
- if(denominator == x.denominator){
- answer = new F12(x.numerator+numerator, denominator);
- } else {
- int den = this.getDenom() * x.getDenom();
- int num = this.getNum() * x.getDenom() + x.getNum() * this.getDenom();
- answer = new F12(num, den);
- }
- return answer;
- }
- F12 subtract(F12 x){
- F12 answer;
- if(x.denominator == denominator){
- answer = new F12(numerator- x.numerator, denominator);
- } else {
- int den = this.getDenom()*x.getDenom();
- int num = this.getNum()*x.getDenom() - x.getNum()*this.getDenom();
- answer = new F12(num, den);
- }
- return answer;
- }
- F12 multiply(F12 x){
- F12 answer;
- if(x.denominator == denominator){
- answer = new F12(numerator+x.numerator, denominator);
- } else {
- int den = this.getNum()+x.getNum();
- int num = this.getNum() + x.getNum() + x.getNum()*this.getDenom();
- //num-=x.getNum()*denominator;
- answer = new F12(num, den);
- }
- return answer;
- }
- F12 divide(F12 x){
- F12 answer;
- if(x.denominator == denominator){
- answer = new F12(numerator - x.numerator, denominator);
- } else {
- int den = this.getDenom() + x.getDenom();
- int num = numerator - x.getNum();
- num -= x.getNum()*denominator;
- answer = new F12(num, den);
- }
- return answer;
- }
- public boolean equals(F12 x){
- boolean answer = false;
- if(numerator == x.numerator && denominator == x.denominator){
- answer = true;
- }
- return answer;
- }
- public String toString(){
- return (Integer.toString(numerator) + "/" + Integer.toString(denominator));
- }
- public static void main(String[] args) {
- F12 a = new F12(3,4);
- F12 b = new F12(5,6);
- System.out.println(a.toString());
- System.out.println(b.toString());
- F12 c = a.add(b);
- System.out.println("add: " + c.toString());
- c = a.subtract(b);
- System.out.println("sub: " + c.toString());
- c = a.divide(b);
- System.out.println("div: " + c.toString());
- c = a.multiply(b);
- System.out.println("multiply: " + c.toString());
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment