fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. System.out.println(subtraction(5,3,4,6,5,8,0,0,0,"",0,0,0));
  13. // your code goes here
  14. }
  15.  
  16. public static int gcd(int a, int b) { // it's needed to find the reduced answer of all calculations.
  17. if (b > a) {
  18. a = a + b;
  19. b = a - b;
  20. a = a - b;
  21. }
  22.  
  23. while (b != 0) {
  24. a %= b;
  25. a = a + b;
  26. b = a - b;
  27. a = a - b;
  28. }
  29.  
  30. return a;
  31. }
  32. public static String subtraction(int wholenumber1, int numerator1,int denominator1, int wholenumber2, int numerator2, int denominator2, int wholeResult, int numResult, int denResult, String ResultAnswer, int reminder, int a, int GCD){
  33.  
  34. if (wholenumber1 != 0 ) {
  35. numerator1 = wholenumber1 * denominator1 + numerator1;
  36. }
  37. if (wholenumber2 != 0 ) {
  38. numerator2 = (-wholenumber2) * denominator2 - numerator2;
  39. }
  40. numerator1 = numerator1 * denominator2;
  41. numerator2 = numerator2 * denominator1;
  42. numResult = numerator1 + numerator2;
  43. denResult = denominator1 * denominator2;
  44.  
  45. if (Math.abs(numResult) > Math.abs(denResult)) { //*** find reduced anser
  46. reminder = numResult % denResult;
  47. a = (numResult - reminder) / denResult;
  48. wholeResult = wholeResult + a;
  49. numResult = reminder;
  50. }
  51. GCD = gcd(Math.abs(denResult),Math.abs(numResult));
  52. denResult = denResult / GCD; //*** find reduced answer
  53. numResult = numResult / GCD; //*** find reduced
  54. if ( wholeResult < 0 && numResult < 0 ) {
  55. numResult = -numResult;
  56. }
  57. if (numResult == 0)
  58. ResultAnswer = wholeResult+"";
  59. else if (wholeResult == 0)
  60. ResultAnswer = numResult + "/" + denResult;
  61. else
  62. ResultAnswer = wholeResult + "_" + numResult + "/" + denResult;
  63. return ResultAnswer;
  64. }
  65.  
  66. }
Success #stdin #stdout 0.04s 2184192KB
stdin
Standard input is empty
stdout
-7/8