Advertisement
Holek

Untitled

Jun 5th, 2017
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.27 KB | None | 0 0
  1. #include <iostream>
  2.  
  3. using namespace std;
  4.  
  5. struct Ulamek
  6. {
  7. long long li;
  8. long long mi;
  9. };
  10. void wyswietl_ul(const Ulamek & u) // 1 -> 0
  11. {
  12. cout<<u.li<<"/"<<u.mi<<endl;
  13. }
  14.  
  15. int NWD(long long a, long long b){
  16. do
  17. {
  18. if(a>b) a=a-b;
  19. else b=b-a;
  20. }
  21. while(a!=b);
  22. return a;
  23. }
  24. /*
  25.  
  26. int NWW(long long li, long long mi){
  27. return ((li/NWD(li, mi))* mi);
  28. }
  29. */
  30. Ulamek ulamek_z_calkowitej(long long c){
  31. Ulamek u;
  32. u.li = c;
  33. u.mi =1;
  34. return u;
  35. }
  36. Ulamek ulamek_z_pary(long long licz, long long mi){
  37. Ulamek u;
  38. u.li=licz;
  39. u.mi=mi;
  40. return u;
  41. }
  42. double double_z_ulamka(const Ulamek & u)
  43. {
  44. return u.li/u.mi;
  45. }
  46. void skroc_ul(Ulamek & u){
  47. long long s;
  48. s=NWD(u.li,u.mi);
  49. u.li=u.li/s;
  50. u.mi=u.mi/s;
  51.  
  52. }
  53. Ulamek pobierz_ul(){
  54. Ulamek u;
  55. cin >> u.li;
  56. cin >> u.mi;
  57. return u;
  58. }
  59. Ulamek ul_przeciwny(const Ulamek & u)
  60. {
  61. Ulamek u1;
  62. u1.li=(-1)*u.li;
  63. u1.mi=u.mi;
  64. return u1;
  65.  
  66. }
  67. Ulamek ul_odwrotny(const Ulamek & u)
  68. {
  69. Ulamek u1;
  70. u1.li = u.mi;
  71. u1.mi=u.li;
  72.  
  73. return u1;
  74. }
  75. Ulamek suma_ul(const Ulamek & u1, const Ulamek & u2)
  76. {
  77. Ulamek u;
  78. u.li=(u1.li*u2.mi)+(u2.li*u1.mi);
  79. u.mi=(u1.mi*u2.mi);
  80. return u;
  81. }
  82. Ulamek roznica_ul(const Ulamek & u1, const Ulamek & u2)
  83. {
  84. Ulamek u;
  85. u.li=(u1.li*u2.mi)-(u2.li*u1.mi);
  86. u.mi=(u1.mi*u2.mi);
  87. return u;
  88. }
  89. Ulamek iloczyn_ul(const Ulamek & u1, const Ulamek & u2)
  90. {
  91. Ulamek u;
  92. u.li = u1.li*u2.li;
  93. u.mi = u1.mi*u2.mi;
  94. return u;
  95. }
  96. Ulamek iloraz_ul(const Ulamek & u1, const Ulamek & u2)
  97. {
  98. Ulamek u;
  99. u.li= u1.li *u2.mi;
  100. u.mi = u1.mi *u2.li;
  101. return u;
  102.  
  103. }
  104. int main()
  105. {
  106. Ulamek u1, u2;
  107.  
  108. // u1 = ulamek_z_pary(3, 15);
  109. u2 = ulamek_z_calkowitej(2);
  110. wyswietl_ul(u2);
  111. /* wyswietl_ul(u1); // 1/3
  112. wyswietl_ul(u2); // 2/1
  113. wyswietl_ul(suma_ul(u1, u2)); // 7/3
  114. wyswietl_ul(roznica_ul(u2, u1)); // 5/3
  115. wyswietl_ul(roznica_ul(u1, u2)); // -5/3
  116. wyswietl_ul(ul_przeciwny(u1));
  117. wyswietl_ul(ul_przeciwny(u2));
  118. wyswietl_ul(ul_odwrotny(u1));
  119. wyswietl_ul(ul_odwrotny(u2));
  120. */
  121. return 0;
  122.  
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement