Advertisement
Guest User

sample2

a guest
May 31st, 2013
161
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 10.28 KB | None | 0 0
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. using namespace std;
  5.  
  6. double param(){
  7.     double a;
  8.     cout<<"Unesi parametar: ";
  9.     cin>>a;
  10. return a;
  11. }
  12.  
  13. double param2(){
  14.     double b;
  15.     cout<<"Unesi drugi parametar: " && cin>>b;
  16. return b;
  17. }
  18.  
  19. int trig(){
  20.     int izbor8;
  21.     double a, b;
  22.     do {
  23.         cout<<"Izaberi operaciju:\n"\
  24.         " 1.  cos\n"\
  25.         " 2.  sin\n"\
  26.         " 3.  tan\n"\
  27.         " 4.  acos\n"\
  28.         " 5.  asin\n"\
  29.         " 6.  atan\n"\
  30.         " 7.  atan (sa 2 parametra)\n"\
  31.         "-> ";
  32.         cin>>izbor8;
  33.         if (izbor8<1 || izbor8>7){
  34.             cout<<"Nevazeci unos!\n";
  35.         }
  36.     } while (izbor8<1 || izbor8>7);
  37.     switch (izbor8){
  38.         case 1:
  39.             a = param();
  40.             cout<<"cos("<<a<<") = "<<cos(a)<<endl;
  41.             break;
  42.         case 2:
  43.             a = param();
  44.             cout<<"sin("<<a<<") = "<<sin(a)<<endl;
  45.             break;
  46.         case 3:
  47.             a = param();
  48.             cout<<"tan("<<a<<") = "<<tan(a)<<endl;
  49.             break;
  50.         case 4:
  51.             a = param();
  52.             cout<<"acos("<<a<<") = "<<acos(a)<<endl;
  53.             break;
  54.         case 5:
  55.             a = param();
  56.             cout<<"asin("<<a<<") = "<<asin(a)<<endl;
  57.             break;
  58.         case 6:
  59.             a = param();
  60.             cout<<"atan("<<a<<") = "<<atan(a)<<endl;
  61.             break;
  62.         case 7:
  63.             a = param();
  64.             b = param2();
  65.             cout<<"atan("<<a<<", "<<b<<") = "<<atan2(a, b)<<endl;
  66.             break;
  67.     }
  68. return 0;
  69. }
  70.    
  71. int hip(){
  72.     int izbor7;
  73.     double a;
  74.     do {
  75.         cout<<"Izaberi operaciju:\n"\
  76.         " 1.  cosh\n"\
  77.         " 2.  sinh\n"\
  78.         " 3.  tanh\n"\
  79.         " 4.  acosh\n"\
  80.         " 5.  asinh\n"\
  81.         " 6.  atanh\n"\
  82.         "-> ";
  83.         cin>>izbor7;
  84.         if (izbor7<1 || izbor7>6){
  85.             cout<<"Nevazeci unos!\n";
  86.         }
  87.     } while (izbor7<1 || izbor7>6);
  88.     switch (izbor7){
  89.         case 1:
  90.             a = param();
  91.             cout<<"cosh("<<a<<") = "<<cosh(a)<<endl;
  92.             break;
  93.         case 2:
  94.             a = param();
  95.             cout<<"sinh("<<a<<") = "<<sinh(a)<<endl;
  96.             break;
  97.         case 3:
  98.             a = param();
  99.             cout<<"tanh("<<a<<") = "<<tanh(a)<<endl;
  100.             break;
  101.         case 4:
  102.             a = param();
  103.             cout<<"acosh("<<a<<") = "<<acosh(a)<<endl;
  104.             break;
  105.         case 5:
  106.             a = param();
  107.             cout<<"asinh("<<a<<") = "<<asinh(a)<<endl;
  108.             break;
  109.         case 6:
  110.             a = param();
  111.             cout<<"atanh("<<a<<") = "<<atanh(a)<<endl;
  112.             break;
  113.     }
  114. return 0;
  115. }
  116.  
  117. int ex_log(){
  118.     int izbor6, d;
  119.     double a, b, c, rezultat;
  120.     do {
  121.         cout<<"Izaberi funkciju:\n"\
  122.         " 1.  exp\n"\
  123.         " 2.  frexp\n"\
  124.         " 3.  ldexp\n"\
  125.         " 4.  log\n"\
  126.         " 5.  log10\n"\
  127.         " 6.  modf\n"\
  128.         " 7.  exp2\n"\
  129.         " 8.  expm1\n"\
  130.         " 9.  ilogb\n"\
  131.         " 10. log1p\n"\
  132.         " 11. log2\n"\
  133.         " 12. logb\n"\
  134.         " 13. scalbn\n"\
  135.         " 14. scalbln\n"\
  136.         "-> ";
  137.         cin>>izbor6;
  138.         if (izbor6<1 || izbor6>14){
  139.             cout<<"Nevazeci unos!";
  140.         }
  141.     } while (izbor6<1 || izbor6>14);
  142.     switch (izbor6){
  143.         case 1:
  144.             a = param();
  145.             cout<<"exp("<<a<<") = "<<exp(a)<<endl;
  146.             break;
  147.         case 2:
  148.             a = param();
  149.             rezultat = frexp(a, &d);
  150.             cout<<"Binarni koeficijent: "<<rezultat<<"\nEksponent: "<<d<<endl;
  151.             break;
  152.         case 3:
  153.             a = param();
  154.             cout<<"Unesi drugi parametar: " && cin>>d;
  155.             c = ldexp(a, d);
  156.             cout<<a<<"*2^"<<d<<" = "<<c<<endl;
  157.             break;
  158.         case 4:
  159.             a = param();
  160.             cout<<"log("<<a<<") = "<<log(a)<<endl;
  161.             break;
  162.         case 5:
  163.             a = param();
  164.             cout<<"log10("<<a<<") = "<<log10(a)<<endl;
  165.             break;
  166.         case 6:
  167.             a = param();
  168.             c = modf(a, &b);
  169.             cout<<"Cijeli dio unesenog broja: "<<c<<"\nFrakcioni dio unesenog broja: "<<b<<endl;
  170.             break;
  171.         case 7:
  172.             a = param();
  173.             cout<<"exp2("<<a<<") = "<<exp2(a);
  174.             break;
  175.         case 8:
  176.             a = param();
  177.             cout<<"expm1("<<a<<") = "<<expm1(a)<<endl;
  178.             break;
  179.         case 9:
  180.             a = param();
  181.             cout<<"ilogb("<<a<<") = "<<ilogb(a)<<endl;
  182.             break;
  183.         case 10:
  184.             a = param();
  185.             cout<<"log1p("<<a<<") = "<<log1p(a)<<endl;
  186.             break;
  187.         case 11:
  188.             a = param();
  189.             cout<<"log2("<<a<<") = "<<log2(a)<<endl;
  190.             break;
  191.         case 12:
  192.             a = param();
  193.             cout<<"logb("<<a<<") = "<<logb(a)<<endl;
  194.             break;
  195.         case 13:
  196.             a = param();
  197.             cout<<"Unesi drugi parametar: " && cin>>d;
  198.             c = scalbn(a, d);
  199.             cout<<a<<"*FLT_RADIX^"<<d<<" = "<<c<<endl;
  200.             break;
  201.         case 14:
  202.             long e;
  203.             a = param();
  204.             cout<<"Unesi drugi parametar: " && cin>>e;
  205.             c = scalbln(a, e);
  206.             cout<<a<<"*FLT_RADIX^"<<e<<" = "<<c<<endl;
  207.             break;
  208.         }
  209. }
  210.  
  211. int pot_kor(){
  212.     int izbor5;
  213.     double a, b;
  214.     do {
  215.         cout<<"Izaberi funkciju:\n"\
  216.         " 1.  pow\n"\
  217.         " 2.  sqrt\n"\
  218.         " 3.  cbrt\n"\
  219.         " 4.  hypot\n"\
  220.         "-> ";
  221.         cin>>izbor5;
  222.         if (izbor5<1 || izbor5>4){
  223.             cout<<"Nevazeci unos!";
  224.         }
  225.     } while (izbor5<1 || izbor5>4);
  226.     switch (izbor5){
  227.         case 1:
  228.             a = param();
  229.             b = param2();
  230.             cout<<a<<"^"<<b<<" = "<<pow(a, b)<<endl;
  231.             break;
  232.         case 2:
  233.             a = param();
  234.             cout<<"sqrt("<<a<<") = "<<sqrt(a)<<endl;
  235.             break;
  236.         case 3:
  237.             a = param();
  238.             cout<<"cbrt("<<a<<") = "<<cbrt(a)<<endl;
  239.             break;
  240.         case 4:
  241.             a = param();
  242.             cout<<"Hipotenuza: "<<hypot(a, b)<<endl;
  243.             break;
  244.     }
  245. }
  246.    
  247. int gr_gam(){
  248.     int izbor4;
  249.     double a;
  250.     do {
  251.         cout<<"Izaberi funkciju:\n"\
  252.         " 1.  erf\n"\
  253.         " 2.  erfc\n"\
  254.         " 3.  tgamma\n"\
  255.         " 4.  lgamma\n"\
  256.         "-> ";
  257.         cin>>izbor4;
  258.         if (izbor4<1 || izbor4>4){
  259.             cout<<"Nevazeci unos!";
  260.         }
  261.     } while (izbor4<1 || izbor4>4);
  262.     switch (izbor4){
  263.         case 1:
  264.             a = param();
  265.             cout<<"erf("<<a<<") = "<<erf(a)<<endl;
  266.             break;
  267.         case 2:
  268.             a = param();
  269.             cout<<"erfc("<<a<<") = "<<erfc(a)<<endl;
  270.             break;
  271.         case 3:
  272.             a = param();
  273.             cout<<"tgamma("<<a<<") = "<<tgamma(a)<<endl;
  274.             break;
  275.         case 4:
  276.             a = param();
  277.             cout<<"lgamma("<<a<<") = "<<lgamma(a)<<endl;
  278.             break;
  279.     }
  280. }
  281.  
  282. int round_rem(){
  283.     int izbor3;
  284.     double a, b;
  285.     do {
  286.         cout<<"Izaberi funkciju:\n"\
  287.         " 1.  ceil\n"\
  288.         " 2.  floor\n"\
  289.         " 3.  fmod\n"\
  290.         " 4.  trunc\n"\
  291.         " 5.  round\n"\
  292.         " 6.  lround\n"\
  293.         " 7.  llround\n"\
  294.         " 8.  rint\n"\
  295.         " 9.  lrint\n"\
  296.         " 10. llrint\n"\
  297.         " 11. nearbyint\n"\
  298.         " 12. remainder\n"\
  299.         " 13. remquo\n"\
  300.         "-> ";
  301.         cin>>izbor3;
  302.         if (izbor3<1 || izbor3>13){
  303.             cout<<"Nevazeci unos!";
  304.         }
  305.     } while (izbor3<1 || izbor3>13);
  306.     switch (izbor3){
  307.         case 1:
  308.             a = param();
  309.             cout<<"ceil("<<a<<") = "<<ceil(a)<<endl;
  310.             break;
  311.         case 2:
  312.             a = param();
  313.             cout<<"floor("<<a<<") = "<<floor(a)<<endl;
  314.             break;
  315.         case 3:
  316.             a = param();
  317.             b = param2();
  318.             cout<<"fmod("<<a<<", "<<b<<") = "<<fmod(a, b)<<endl;
  319.             break;
  320.         case 4:
  321.             a = param();
  322.             cout<<"trunc("<<a<<") = "<<trunc(a)<<endl;
  323.             break;
  324.         case 5:
  325.             a = param();
  326.             cout<<"round("<<a<<") = "<<round(a)<<endl;
  327.             break;
  328.         case 6:
  329.             a = param();
  330.             cout<<"lround("<<a<<") = "<<lround(a)<<endl;
  331.             break;
  332.         case 7:
  333.             a = param();
  334.             cout<<"llround("<<a<<") = "<<llround(a)<<endl;
  335.             break;
  336.         case 8:
  337.             a = param();
  338.             cout<<"rint("<<a<<") = "<<rint(a)<<endl;
  339.             break;
  340.         case 9:
  341.             a = param();
  342.             cout<<"lrint("<<a<<") = "<<lrint(a)<<endl;
  343.             break;
  344.         case 10:
  345.             a = param();
  346.             cout<<"llrint("<<a<<") = "<<llrint(a)<<endl;
  347.             break;
  348.         case 11:
  349.             a = param();
  350.             cout<<"nearbyint("<<a<<") = "<<nearbyint(a)<<endl;
  351.             break;
  352.         case 12:
  353.             a = param();
  354.             b = param2();
  355.             cout<<"remainder("<<a<<", "<<b<<") = "<<remainder(a, b)<<endl;
  356.             break;
  357.         case 13:
  358.             int kvo;
  359.             a = param();
  360.             b = param2();
  361.             cout<<"Ostatak: "<<remquo(a, b, &kvo)<<"\nKvocijent: "<<kvo<<endl;
  362.             break;
  363.     }
  364. }
  365.            
  366. int manipulacija(){
  367.     int izbor2;
  368.     double a, b;
  369.     do {
  370.         cout<<"Izaberi funkciju:\n"\
  371.         " 1.  copysign\n"\
  372.         " 2.  nextafter\n"\
  373.         " 3.  nexttoward\n"\
  374.         "-> ";
  375.         cin>>izbor2;
  376.         if (izbor2<1 || izbor2>3){
  377.             cout<<"Nevazeci unos!";
  378.         }
  379.     } while (izbor2<1 || izbor2>3);
  380.     switch (izbor2){
  381.         case 1:
  382.             cout<<"Unesi broj u koji zelis kopirati predznak: " && cin>>a;
  383.             cout<<"Unesi broj iz kojega zelis kopirati predznak: " && cin>>b;
  384.             cout<<"copysign("<<a<<", "<<b<<") = "<<copysign(a, b)<<endl;
  385.             break;
  386.         case 2:
  387.             a = param();
  388.             cout<<"Unesi broj u kojem smjeru zelis naci broj: " && cin>>b;
  389.             cout<<"nextafter("<<a<<", "<<b<<") = "<<nextafter(a, b)<<endl;
  390.             break;
  391.         case 3:
  392.             a = param();
  393.             cout<<"Unesi broj u kojem smjeru zelis naci broj: " && cin>>b;
  394.             cout<<"nexttoward("<<a<<", "<<b<<") = "<<nexttoward(a, b)<<endl;
  395.             break;
  396.     }
  397. }
  398.  
  399. int min_max(){
  400.     int izbor1;
  401.     double a, b;
  402.     do {
  403.         cout<<"Izaberi funkciju\n"\
  404.         " 1. fdim\n"\
  405.         " 2. fmax\n"\
  406.         " 3. fmin\n"\
  407.         "-> ";
  408.         cin>>izbor1;
  409.         if (izbor1<1 || izbor1>3){
  410.             cout<<"Nevazeci unos!";
  411.         }
  412.     } while (izbor1<1 || izbor1>3);
  413.     switch (izbor1){
  414.         case 1:
  415.             a = param();
  416.             b = param2();
  417.             cout<<"Pozitivna razlika: "<<fdim(a, b)<<endl;
  418.             break;
  419.         case 2:
  420.             a = param();
  421.             b = param2();
  422.             cout<<"Najveci uneseni broj: "<<fmax(a, b)<<endl;
  423.             break;
  424.         case 3:
  425.             a = param();
  426.             b = param2();
  427.             cout<<"Najmanji uneseni broj: "<<fmin(a, b)<<endl;
  428.             break;
  429.     }
  430. }
  431.  
  432. int ostalo(){
  433.     int izbor0;
  434.     double a, b, c;
  435.     cout<<"Izaberi funkciju:\n"\
  436.     " 1. fabs\n"\
  437.     " 2. abs\n"\
  438.     " 3. fma\n"\
  439.     "-> ";
  440.     cin>>izbor0;
  441.     while (izbor0<1 || izbor0>3){
  442.         cout<<"Nevazeci unos!";
  443.         cout<<"Izaberi funkciju:\n"\
  444.         " 1. fabs\n"\
  445.         " 2. abs\n"\
  446.         " 3. fma\n"\
  447.         "-> ";
  448.         cin>>izbor0;
  449.     }
  450.     switch (izbor0){
  451.         case 1:
  452.             a = param();
  453.             cout<<"|"<<a<<"|"<<endl;
  454.             break;
  455.         case 2:
  456.             a = param();
  457.             cout<<"|"<<a<<"|"<<endl;
  458.             break;
  459.         case 3:
  460.             a = param();
  461.             b = param2();
  462.             cout<<"Unesi treci parametar: " && cin>>c;
  463.             cout<<a<<"*"<<b<<"+"<<c<<" = "<<fma(a, b, c)<<endl;
  464.             break;
  465.     }
  466. }
  467.  
  468. int main(){
  469.     int izbor;
  470.     cout<<"Izaberi tip matematicke operacije:\n 1. Trigonometrijske funkcije\n 2. Hiperboline funkcije\n"
  471.         <<" 3. Eksponencijalne i logaritamske funkcije\n 4. Potenciranje i korjenovanje\n"
  472.         <<" 5. Funkcije greske i gama funkcije\n 6. Zaokruzivanje i ostatak\n"
  473.         <<" 7. Manipulacije decimalnom tockom\n 8. Minimalne i Maksimalne vrijednosti\n 9. Ostale funkcije\n-> ";
  474.     cin>>izbor;
  475.     while (izbor<1 || izbor>8){
  476.         cout<<"Nevazeci unos!\n";
  477.         cout<<"Izaberi tip matematicke operacije:\n 1. Trigonometrijske funkcije\n 2. Hiperboline funkcije\n"
  478.             <<" 3. Eksponencijalne i logaritamske funkcije\n 4. Potenciranje i korjenovanje\n"
  479.             <<" 5. Funkcije greske i gama funkcije\n 6. Zaokruzivanje i ostatak\n"
  480.             <<" 7. Manipulacije decimalnom tockom\n 8. Ostale funkcije\n-> ";
  481.         cin>>izbor;
  482.     }
  483.     switch (izbor){
  484.         case 1:
  485.             trig();
  486.             break;
  487.         case 2:
  488.             hip();
  489.             break;
  490.         case 3:
  491.             ex_log();
  492.             break;
  493.         case 4:
  494.             pot_kor();
  495.             break;
  496.         case 5:
  497.             gr_gam();
  498.             break;
  499.         case 6:
  500.             round_rem();
  501.             break;
  502.         case 7:
  503.             manipulacija();
  504.             break;
  505.         case 8:
  506.             min_max();
  507.             break;
  508.         case 9:
  509.             ostalo();
  510.             break;
  511.     }  
  512. return 0;
  513. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement