Guest User

Untitled

a guest
Jan 21st, 2019
88
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.43 KB | None | 0 0
  1. //lab2_z2_ostroslup.cpp [3 pkt]
  2. /*
  3. Napisać program, który dla ostroslupa o podstawie wielokata foremnego oblicza :
  4. objetosc ostroslupa V,
  5. pole powierzchni calkowitej ostroslupa Pp,
  6. katy podstawy w stopniach Kp,
  7. kat ( w stopniach) miedzy krawedzia boczna a podstawa ostroslupa Kb.
  8. Dane wejciowe : n - ilosc scian bocznych ostroslupa (n>=3);
  9. r - promien okregu opisanego na podstawie (r>0.0);
  10. h - wysokosc ostroslupa (h>0.0);
  11. Jesli dane wejsciowe są niepoprawne, zakoncz program komunikatem: "ZLE DANE".
  12. Wyniki podaj w formacie wykladniczym ( 6 cyfr znaczacych).
  13.  
  14. Przykladowe dane wejsciowe: [ 3 1e6 1e6 ], [8 2.5e-4 5e-4 ]
  15. Wyniki: V= 4.33013s+017 , 2.94628e-011
  16. Pp= 4.20378e+012 , 5.98317e-007
  17. Kp= 6.00000e+001 , 1.35000e+002
  18. Kb= 4.50000E+001 , 6.34349e+001
  19.  
  20. */
  21.  
  22. #include <conio.h>
  23. #include <iostream>
  24. using namespace std;
  25. #include <iomanip>
  26. #include <cmath> // biblioteka z funkcjami matematycznymi
  27.  
  28. int main()
  29. {
  30. double r,h,Kp,Kb,Pp,V ; // definiuj zmienne
  31. int n ;
  32. //-----------------------------------------------wczytaj dane---
  33. cout << "Podaj ilosc scian bocznych ostroslupa, promien okregu opisanego na podstawie i wysokosc ostroslupa:" << endl;
  34. cin >> n >> r >> h ;
  35.  
  36.  
  37. //---------------------sprawdz poprawnosc danych wejsciowych i wykonaj obliczenia--------
  38. if (n>=3 && r>0.0 && h>0.0)
  39. {
  40. M_PI/n=Kp; //oblicz kolejno: szukane katy w radianach ,
  41. h/r=tan(Kb) ; // dlugosc boku podstawy, pola trojkatow składajacych sie
  42. //na podstawe ,wysokosc sciany bocznej i jej pole,
  43. sin(Kp)*r*n=Pp; // pole powirzchni i objetosc ostroslupa,
  44. Kp*180/M_PI=Kp ; // katy w radianach zamien
  45. //na katy w stopniach ; ustaw format, wyprowadz wyniki
  46.  
  47.  
  48.  
  49. cout << scientific << setprecision(5);
  50. cout << "V = " << V << endl;
  51. cout << "Pp = " << Pp << endl;
  52. cout << "Kp = " << Kp << endl;
  53. cout << "Kb = " << Kb << endl;
  54. }
  55. else {cout << "ZLE DANE" << endl;} //wypisz komunikat
  56. //----------------------------------------------------------------------------------------------------
  57. getch();
  58. //system("PAUSE");
  59. return 0;
  60. }
Add Comment
Please, Sign In to add comment