Advertisement
Guest User

Untitled

a guest
May 21st, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.91 KB | None | 0 0
  1.  
  2. #include <iostream>
  3. #include <cstdlib>
  4.  
  5. using namespace std;
  6.  
  7. void sto(int x);
  8. void tysiac(int x, int y);
  9. void jeden(int x, int y);
  10. void dziesiec(int x, int y);
  11. void grosze(int x,int y);
  12. void zlote(int x, int y);
  13.  
  14.  
  15. int main()
  16. {
  17.       double kwota;
  18.       int z1,z2,z3,z4,z5,z6,g1,g2;
  19.       cout << "Podaj kwotę (jako separator użyj kropki): ";
  20.       cin >> kwota;
  21.       string str_kwota = to_string(kwota);
  22.       str_kwota.erase ( str_kwota.find_last_not_of('0') + 1, string::npos );
  23.       cout << endl << str_kwota <<endl;
  24.  
  25.          z6=kwota/100000;
  26.          z5=(kwota-(z6*100000))/10000;
  27.          z4=(kwota-(z6*100000)-(z5*10000))/1000;
  28.          z3=(kwota-(z6*100000)-(z5*10000)-(z4*1000))/100;
  29.          z2=(kwota-(z6*100000)-(z5*10000)-(z4*1000)-(z3*100))/10;
  30.          z1=(kwota-(z6*100000)-(z5*10000)-(z4*1000)-(z3*100)-(z2*10));
  31.          g1=(kwota-(z6*100000)-(z5*10000)-(z4*1000)-(z3*100)-(z2*10)-z1)*10;
  32.          g2=(kwota-(z6*100000)-(z5*10000)-(z4*1000)-(z3*100)-(z2*10)-z1-(g1/10.0))*100;
  33.          
  34.         if (kwota == 0) cout << "zero złotych";
  35.         if (kwota == 100000) cout << "milion złotych";
  36.          
  37.          sto(z6);
  38.          dziesiec(z5,z4);
  39.          jeden(z4,z5);
  40.          if(z6!=0 || z5!=0 || z4!=0)
  41.            tysiac(z4,z5);
  42.          
  43.          
  44.          sto(z3);
  45.          dziesiec(z2,z1);
  46.          jeden(z1,z2);
  47.          if(z1!=0 || z2!=0 || z3!=0 || z4!=0 || z5!=0 || z6!=0)
  48.             zlote(z1,z2);
  49.              
  50.     if(g1!=0 || g2!=0)
  51.     {
  52.          cout << ", ";  
  53.          dziesiec(g1,g2);
  54.          jeden(g2,g1);
  55.          grosze(g2,g1);
  56.     }
  57.             cout<< endl;
  58.      
  59.       return 0;
  60. }
  61.  
  62. void sto(int x)
  63. {
  64.      switch(x)
  65.         {
  66.             case 1: cout << "sto ";
  67.             break;
  68.             case 2: cout << "dwieście ";
  69.             break;
  70.             case 3: cout << "trzysta ";
  71.             break;
  72.             case 4: cout << "czterysta ";
  73.             break;
  74.             case 5: cout << "pięćset ";
  75.             break;
  76.             case 6: cout << "sześćset ";
  77.             break;
  78.             case 7: cout << "siedemset ";
  79.             break;
  80.             case 8: cout << "osiemset ";
  81.             break;
  82.             case 9: cout << "dziewięćset ";
  83.             break;
  84.             case 0: break;
  85.         }
  86. }
  87. void dziesiec(int x, int y)
  88. {
  89.      switch(x)
  90.         {
  91.             case 1:
  92.                  switch(y)
  93.                  {
  94.                     case 1: cout << "jedenaście ";
  95.                     break;
  96.                     case 2: cout << "dwanaście ";
  97.                     break;
  98.                     case 3: cout << "trzynaście ";
  99.                     break;
  100.                     case 4: cout << "czternaście ";
  101.                     break;
  102.                     case 5: cout << "piętnaście ";
  103.                     break;
  104.                     case 6: cout << "szesnaście ";
  105.                     break;
  106.                     case 7: cout << "siedemnaście ";
  107.                     break;
  108.                     case 8: cout << "osiemnaście ";
  109.                     break;
  110.                     case 9: cout << "dziewiętnaście ";
  111.                     case 0: cout << "dziesięć ";
  112.                     break;
  113.                  }
  114.             break;
  115.             case 2: cout << "dwadzieścia ";
  116.             break;
  117.             case 3: cout << "trzydzieści ";
  118.             break;
  119.             case 4: cout << "czterdzieści ";
  120.             break;
  121.             case 5: cout << "pięćdziesiąt ";
  122.             break;
  123.             case 6: cout << "sześćdziesiąt ";
  124.             break;
  125.             case 7: cout << "siedemdziesiąt ";
  126.             break;
  127.             case 8: cout << "osiemdziesiąt ";
  128.             break;
  129.             case 9: cout << "dziewięćdziesiąt ";
  130.             break;
  131.             case 0: break;
  132.         }
  133. }
  134.  
  135. void jeden(int x,int y)
  136. {
  137.      if(y==1);
  138.      else
  139.      {
  140.      switch(x)
  141.         {
  142.             case 1: cout << "jeden ";
  143.             break;
  144.             case 2: cout << "dwa ";
  145.             break;
  146.             case 3: cout << "trzy ";
  147.             break;
  148.             case 4: cout << "cztery ";
  149.             break;
  150.             case 5: cout << "pięć ";
  151.             break;
  152.             case 6: cout << "sześć ";
  153.             break;
  154.             case 7: cout << "siedem ";
  155.             break;
  156.             case 8: cout << "osiem ";
  157.             break;
  158.             case 9: cout << "dziewięc ";
  159.             break;
  160.             case 0: break;
  161.         }
  162.      }
  163. }
  164.  
  165. void tysiac(int x, int y)
  166. {    
  167.      if(x==1 && y==0)
  168.      cout << "tysiąc ";
  169.      else
  170.      {
  171.       switch(x)
  172.       {
  173.         case 2:
  174.         case 3:
  175.         case 4:
  176.            if(y==1)
  177.            cout << "tysięcy ";
  178.            else
  179.            cout << "tysiące ";
  180.            break;
  181.         case 0:
  182.         case 1:
  183.         case 5:
  184.         case 6:
  185.         case 7:
  186.         case 8:
  187.         case 9:
  188.            cout << "tysięcy ";
  189.            break;
  190.       }
  191.      }
  192. }
  193.  
  194. void zlote(int x, int y)
  195. {    
  196.      if(x==1 && y==0)
  197.      cout << "złoty ";
  198.      else
  199.      {
  200.       switch(x)
  201.       {
  202.         case 2:
  203.         case 3:
  204.         case 4:
  205.            if(y==1)
  206.            cout << "złotych ";
  207.            else
  208.            cout << "złote ";
  209.            break;
  210.         case 0:
  211.         case 1:
  212.         case 5:
  213.         case 6:
  214.         case 7:
  215.         case 8:
  216.         case 9:
  217.            cout << "złotych ";
  218.            break;
  219.       }
  220.      }
  221. }
  222.  
  223. void grosze(int x, int y)
  224. {    
  225.      if(x==1 )
  226.      cout << "grosz ";
  227.      else
  228.      {
  229.       switch(x)
  230.       {
  231.         case 2:
  232.         case 3:
  233.         case 4:
  234.            if(y==1)
  235.            cout << "groszy ";
  236.            else
  237.            cout << "grosze ";
  238.            break;
  239.         case 0:
  240.         case 1:
  241.         case 5:
  242.         case 6:
  243.         case 7:
  244.         case 8:
  245.         case 9:
  246.            cout << "groszy ";
  247.            break;
  248.       }
  249.      }
  250. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement