Advertisement
Guest User

Untitled

a guest
Nov 14th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.46 KB | None | 0 0
  1. public class NDrob {
  2. private int numerator;
  3. private int denominator = 1;
  4.  
  5. public NDrob(int numerator, int denominator) {
  6. if (denominator == 0) {
  7. System.out.println("Denominator can't be zero. Choose another one.");
  8. return;
  9. }
  10. this.numerator = numerator * (denominator < 0 ? -1 : 1);
  11. this.denominator = Math.abs(denominator);
  12. normalization();
  13. }
  14. public int getNumerator() {
  15. return numerator;
  16. }
  17.  
  18. public int getDenominator() {
  19. return denominator;
  20. }
  21.  
  22. public void setNumerator(int numerator) {
  23. this.numerator = numerator;
  24. }
  25.  
  26. public void setDenominator(int denominator) {
  27. if (denominator == 0) {
  28. System.out.println("Denominator can't be zero. Choose another one.");
  29. return;
  30. }
  31. if (denominator < 0) {
  32. this.numerator *= -1;
  33. }
  34. }
  35.  
  36. private int NOD(int numerator, int denominator) {
  37. while (numerator != 0 && denominator != 0) {
  38. if (numerator > denominator) {
  39. numerator %= denominator;
  40. } else {
  41. denominator %= numerator;
  42. }
  43. }
  44. return numerator + denominator;
  45. }
  46.  
  47. private void normalization() {
  48. int n = NOD(Math.abs(numerator), Math.abs(denominator));
  49. numerator /= n;
  50. denominator /= n;
  51. }
  52.  
  53. public int Celai() {
  54. return (numerator / denominator);
  55. }
  56.  
  57. public NDrob Drobnai() {
  58. return new NDrob(numerator % denominator, denominator);
  59. }
  60.  
  61. void print() {
  62. System.out.println(numerator + "/" + denominator);
  63. }
  64. public NDrob delenie(NDrob odj) {
  65. int numer =numerator* odj.denominator;
  66. int denom = denominator* odj.numerator;
  67. return new NDrob(numer, denom);
  68. }
  69. public NDrob umnoj(NDrob odj) {
  70. int numer =numerator* odj.numerator;
  71. int denom = denominator* odj.denominator;
  72. return new NDrob(numer, denom);
  73. }
  74. public NDrob sum(NDrob odj) {
  75. int numer =numerator*odj.denominator+ odj.numerator*denominator;
  76. int denom = denominator* odj.denominator;
  77. return new NDrob(numer, denom);
  78. }
  79. public NDrob vichitanie(NDrob odj) {
  80. int numer =(numerator*odj.denominator)-(odj.numerator*denominator);
  81. int denom = denominator* odj.denominator;
  82. return new NDrob(numer, denom);
  83. }
  84. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement