SHARE
TWEET

Untitled

a guest Jun 20th, 2019 74 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //Header
  2. #define delta(A,B,C) (B)*(B)-4*(A)*(C)
  3.  
  4. extern float dodawanie(float a,float b);
  5. extern float odejmowanie(float a,float b);
  6. extern float mnozenie(float a,float b);
  7. extern float dzielenie(float a,float b);
  8. extern float potegowanie(float a,float b);
  9.  
  10. //extern float x1(float a,float b,delta);
  11. extern float x0(float a,float b);
  12.  
  13.  
  14. extern void(*pola_figur)(float,float);
  15.  
  16. extern void pole_trojkata(float a,float h);
  17. extern void pole_prostokata(float a,float b);
  18. extern void pole_stozka(float r, float h);
  19. extern void pole_walca(float R, float h);
  20. extern void pole_ostroslupa_prawidlowego_czworokatnego(float a,float h);
  21. //Funkcje
  22. #include <stdlib.h>
  23. #include <stdio.h>
  24. #include <math.h>
  25. #include "naglowek.h"
  26.  
  27.  
  28. float dodawanie(float a,float b){
  29.     float suma;
  30.     suma=a+b;
  31.     printf("%g + %g = %g\n\n",a,b,suma);
  32. }
  33.  
  34. float odejmowanie(float a,float b){
  35.     float roznica;
  36.     roznica=a-b;
  37.     printf("%g - %g = %g\n\n",a,b,roznica);
  38. }
  39.  
  40. float mnozenie(float a, float b){
  41.     float iloczyn;
  42.     iloczyn=a*b;
  43.     printf("%g * %g = %g\n\n",a,b,iloczyn);
  44. }
  45.  
  46. float dzielenie(float a, float b){
  47.     float iloraz;
  48.     iloraz=a/b;
  49.     if(b==0){
  50.         printf("Nie wolno dzielic przez 0!\n");
  51.     }else{
  52.         printf("%g : %g = %g\n\n",a,b,iloraz);
  53.     }
  54.    
  55. }
  56.  
  57. float potegowanie(float a, float b){
  58.     float potega;
  59.     potega=pow(a,b);
  60.     printf("%g ^ %g = %g\n\n",a,b,potega);
  61. }
  62.  
  63. void (*pola_figur)(float,float);
  64.  
  65. void pole_prostokata(float a,float b){
  66.     float Pc=(a)*(b);
  67.     if(a<0||b<0){
  68.         printf("Wymiary figury nie moga byc mniejsze od zera!\n");
  69.     }else{
  70.         printf("Pole prostokata wynosi %g\n\n",Pc);
  71.     }
  72. }
  73.  
  74. void pole_trojkata(float a,float h){
  75.     float Pc=((a)*(h))/2;
  76.     if(a<0||h<0){
  77.         printf("Wymiary figury nie moga byc mniejsze od zera!\n");
  78.     }else{
  79.         printf("Pole trojkata wynosi %g\n\n",Pc);
  80.     }
  81. }
  82.  
  83. void pole_stozka(float r, float H){
  84.     float pi=3.14;
  85.     float l=sqrt(pow(H,2)+pow(r,2));
  86.     float Pc=pi*pow(r,2)+(pi*r*l);
  87.     if(r<0||H<0){
  88.         printf("Wymiary figury nie moga byc mniejsze od zera!\n");
  89.     }else{
  90.         printf("Pole stozka wynosi %g\n\n",Pc);
  91.     }
  92. }
  93.  
  94. void pole_walca(float r, float H){
  95.     float pi=3.14;
  96.     float Pp=pow(r,2)*pi;
  97.     float Pb=2*pi*r*H;
  98.     float Pc=2*Pp+Pb;
  99.     if(r<0||H<0){
  100.         printf("Wymiary figury nie moga byc mniejsze od zera!\n");
  101.     }else{
  102.         printf("Pole walca wynosi %g\n\n",Pc);
  103.     }
  104. }
  105.  
  106. void pole_ostroslupa_prawidlowego_czworokatnego(float a,float h){
  107.     float Pp=pow(a,2);
  108.     float Psb=1/2*a*h;
  109.     float Pc=(Pp+(4*Psb));
  110.     if(a<0||h<0){
  111.         printf("Wymiary figury nie moga byc mniejsze od zera!\n");
  112.     }else{
  113.         printf("Pole ostroslupa prawidlowego wynosi %g\n\n",Pc);
  114.     }
  115. }
  116. //Main
  117. #include <stdio.h>
  118. #include <stdlib.h>
  119. #include "naglowek.h"
  120.  
  121.  
  122.  
  123. int main(void) {
  124.     int wybor;
  125.     char opcja,opcja2;
  126.     printf("*******EGZAMIN*********\n\n");
  127.     printf("Kalkulator\n\n");
  128.    
  129.     printf("1. Proste operacje arytmetyczne\n");
  130.     printf("2. Funkcja kwadratowa\n");
  131.     printf("3. Obliczanie pola wybranych figur\n");
  132.     printf("9. Wyjscie\n");
  133.    
  134.     scanf("%d",&wybor);
  135.     fflush(stdin);
  136.    
  137.     switch(wybor){
  138.         case 1:
  139.             system("cls");
  140.             printf("*****  Kalkulator wykonuje obliczenia jedynie dla 2 liczb  *****\n*****  Miedzy ktorymi znajduje sie znak zadanej operacji!  *****\n\n\n");
  141.             system("pause");
  142.             do{
  143.                    
  144.                
  145.                 system("cls");
  146.                 printf("1. Wykonywanie obliczen\n");
  147.                 printf("2. Dostepne operacje arytmetyczne\n");
  148.                 printf("3. Powrot\n");
  149.                 printf("0. Wyjscie\n");
  150.                 float m,n;
  151.                 char znak,opcja1;
  152.                 int wybor2;
  153.                 scanf("%d",&wybor2);
  154.                 fflush(stdin);
  155.                 switch(wybor2){
  156.                     case 1:
  157.                        
  158.                         do{
  159.                             system("cls");
  160.                             printf("Wykonaj dzialanie w formacie: <a><znak_dzialania><b> \n\n");
  161.                             scanf("%f%c%f",&m,&znak,&n);
  162.                             fflush(stdin);
  163.                             if(znak=='+'){
  164.                                 dodawanie(m,n);
  165.                             }else if(znak=='-'){
  166.                                 odejmowanie(m,n);
  167.                             }else if(znak=='*'){
  168.                                 mnozenie(m,n);
  169.                             }else if(znak=='/'){
  170.                                 dzielenie(m,n);
  171.                             }else if(znak=='^'){
  172.                                 potegowanie(m,n);
  173.                             }else{
  174.                                 printf("Wybrano nieprawidlowy znak dzialania!\nSprawdz dostepne operacje.\n\n");
  175.                                 system("pause");
  176.                                 system("cls");
  177.                                 return main();
  178.                             }
  179.                             printf("Kontynuowac?\n(t/n)\n");
  180.                             scanf("%c",&opcja1);
  181.                             fflush(stdin);
  182.                         }while(opcja1=='t');
  183.                         system("cls");
  184.                         break;
  185.                        
  186.                     case 2:
  187.                         system("cls");
  188.                         printf("Dodawanie '+'\n");
  189.                         printf("Odejmowanie '-'\n");
  190.                         printf("Mnozenie '*'\n");
  191.                         printf("Dzielenie '/'\n");
  192.                         printf("Potegowanie '^'\n\n");
  193.                         break;
  194.                     case 3:
  195.                         system("cls");
  196.                         return main();
  197.                     case 0:
  198.                         system("cls");
  199.                         printf("Koniec pracy programu!");
  200.                         return 0;
  201.                     default :
  202.                         printf("Wybrano nieprawidlowy numer!\n");
  203.                         break; 
  204.                 }
  205.                 printf("Nacisnij t, aby powrocic do menu obliczen.\n");
  206.                 printf("Nacisnij dowolny klawisz, aby powrocic do glownego menu\n");
  207.                 scanf("%c",&opcja);
  208.                 fflush(stdin);
  209.             }while(opcja=='t');
  210.             system("cls");
  211.             return main();
  212.             break; 
  213.         case 2:
  214.        
  215.             break;
  216.            
  217.         case 3:
  218.             do{
  219.                    
  220.                
  221.                 system("cls");
  222.                 int wybor4;
  223.                 float a,b,h,r,H;
  224.                 printf("1. Obliczanie pola prostokata\n");
  225.                 printf("2. Obliczanie pola trojkata\n");
  226.                 printf("3. Obliczanie pola stozka\n");
  227.                 printf("4. Obliczanie pola walca\n");
  228.                 printf("5. Obliczanie pola ostroslupa prawidlowego\n");
  229.                 printf("6. Powrot do menu\n");
  230.                 printf("0. Wyjscie\n");
  231.                 scanf("%d",&wybor4);
  232.                 fflush(stdin);
  233.                 switch(wybor4){
  234.                     case 1:
  235.                         system("cls");
  236.                         pola_figur=&pole_prostokata;
  237.            
  238.                         printf("Podaj dlugosc boku a prostokata: \n");
  239.                         scanf("%f",&a);
  240.                         fflush(stdin);
  241.                         printf("Podaj dlugosc boku b prostokata: \n");
  242.                         scanf("%f",&b);
  243.                         fflush(stdin);
  244.                        
  245.                         (*pola_figur)(a,b);
  246.                         break;
  247.                     case 2:
  248.                         system("cls");
  249.                         pola_figur=&pole_trojkata;
  250.            
  251.                         printf("Podaj dlugosc boku a trojkata: \n");
  252.                         scanf("%f",&a);
  253.                         fflush(stdin);
  254.                         printf("Podaj wysokosc h trojkata: \n");
  255.                         scanf("%f",&h);
  256.                         fflush(stdin);
  257.                        
  258.                         (*pola_figur)(a,h);
  259.                         break;
  260.                     case 3:
  261.                         system("cls");
  262.                         pola_figur=&pole_stozka;
  263.            
  264.                         printf("Podaj promien podstawy r stozka: \n");
  265.                         scanf("%f",&r);
  266.                         fflush(stdin);
  267.                         printf("Podaj wysokosc H stozka: \n");
  268.                         scanf("%f",&H);
  269.                         fflush(stdin);
  270.                        
  271.                         (*pola_figur)(r,H);
  272.                         break;
  273.                     case 4:
  274.                         system("cls");
  275.                         pola_figur=&pole_walca;
  276.            
  277.                         printf("Podaj promien podstawy r walca: \n");
  278.                         scanf("%f",&r);
  279.                         fflush(stdin);
  280.                         printf("Podaj wysokosc H walca: \n");
  281.                         scanf("%f",&H);
  282.                         fflush(stdin);
  283.                        
  284.                         (*pola_figur)(r,H);
  285.                         break;
  286.                     case 5:
  287.                         system("cls");
  288.                         pola_figur=&pole_ostroslupa_prawidlowego_czworokatnego;
  289.            
  290.                         printf("Podaj dlugosc boku podstawy a ostroslupa prawidlowego trojkatnego: \n");
  291.                         scanf("%f",&a);
  292.                         fflush(stdin);
  293.                         printf("Podaj wysokosc sciany bocznej h ostroslupa prawidlowego trojkatnego: \n");
  294.                         scanf("%f",&h);
  295.                         fflush(stdin);
  296.                        
  297.                         (*pola_figur)(a,h);
  298.                         break;     
  299.                     case 6:
  300.                         system("cls");
  301.                         return main();
  302.                         break;
  303.                     case 0:
  304.                         system("cls");
  305.                         printf("Koniec pracy programu!");
  306.                         return 0;      
  307.                 }
  308.                 printf("Nacisnij t, aby powrocic do menu obliczania pol.\n");
  309.                 printf("Nacisnij dowolny klawisz, aby powrocic do glownego menu\n");
  310.                 scanf("%c",&opcja2);
  311.                 fflush(stdin);
  312.             }while(opcja2=='t');
  313.             system("cls");
  314.             return main();
  315.             break; 
  316.         case 9:
  317.             system("cls");
  318.             printf("Koniec pracy programu!");
  319.             return 0;  
  320.         default :
  321.             system("cls");
  322.             printf("Wybrano nieprawidlowa opcje!\n");
  323.             system("pause");
  324.             system("cls");
  325.             return main();     
  326.     }
  327.    
  328.     return 0;
  329. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top