Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.18 KB | None | 0 0
  1. Сончев систем Problem 6 (0 / 0)
  2. Креирајте класа Planeta која во себе содржи:
  3.  
  4. ime (низа од максимум 30 знаци);
  5. dijametar (целобројна вредност);
  6. oddalechenost (целобројна вредност);
  7. masa (децимален број).
  8. За оваа класа да се креираат default конструктор, конструктор со аргументи и copy конструктор. Да се имплементираат потребните get и set методи, како и следната метода:
  9.  
  10. pechati() - ги печати името и дијаметарот на планетата, во формат: "[ime] so dijametar [dijametar]km.\n"
  11. Креирајте класа SonchevSistem која содржи:
  12.  
  13. najbliskaPlaneta (објект од класата Planeta)
  14. planeti[50] (низа од планети)
  15. brojPlaneti (целобројна вредност)
  16. Во класата креирајте го потребниот конструктор и имплементирајте ги следните методи:
  17.  
  18. pechatiPlaneti() најпрво ги печати сите планети, а потоа ја печати најблиската планета во формат: "Najbliska planeta е [ime] so dijametar [dijametar]km.\n";
  19. pechatiSoMasa(float masa) ги печати сите планети со маса поголема од дадената во аргументот (float masa).
  20. При печатењето треба да ја искористите методата pechati() од Planeta. Најблиска планета до сонцето е онаа чија oddalechenost е најмала.
  21.  
  22. Главната функција не ја менувајте.
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29. #include<iostream>
  30. #include<cstring>
  31.  
  32. using namespace std;
  33.  
  34. class Planeta{
  35. private:
  36. char ime[30];
  37. int dijametar;
  38. int oddalecenost;
  39. float masa;
  40. public:
  41. Planeta(){}
  42. Planeta(char *ime, int dijametar, int oddalecenost, float masa){
  43. strcpy(this -> ime, ime);
  44. this -> dijametar = dijametar;
  45. this -> oddalecenost = oddalecenost;
  46. this -> masa = masa;
  47.  
  48. }
  49. Planeta(const Planeta &p){
  50. strcpy(this -> ime, p.ime);
  51. this -> dijametar = p.dijametar;
  52. this -> oddalecenost = p.oddalecenost;
  53. this -> masa = p.masa;
  54.  
  55. }
  56. void set_ime(char *ime){
  57. strcpy(this -> ime, ime);
  58. }
  59. void set_dijametar(int dijametar){
  60. this -> dijametar = dijametar;
  61. }
  62. void set_oddalechenost(int oddalecenost){
  63. this -> oddalecenost = oddalecenost;
  64. }
  65. void set_masa(float masa){
  66. this -> masa = masa;
  67. }
  68. char *get_ime(){
  69. return ime;
  70. }
  71. int get_dijametar(){
  72. return dijametar;
  73. }
  74. int get_oddalechenost(){
  75. return oddalecenost;
  76. }
  77. float get_masa(){
  78. return masa;
  79. }
  80. void pechati(){
  81. cout<<ime<<" so dijametar"<<dijametar<<" km"<<endl;
  82. }
  83. };
  84. class SonchevSistem{
  85. private:
  86. Planeta najbliskaPlaneta;
  87. char planeti[50];
  88. int brojPlaneti;
  89. public:
  90. SonchevSistem(){}
  91. SonchevSistem(Planeta pl, char *planeti, int brojPlaneti){
  92. this -> najbliskaPlaneta = pl;
  93. strcpy(this -> planeti, planeti);
  94. this -> brojPlaneti = brojPlaneti;
  95. }
  96. SonchevSistem(const SonchevSistem &ss){
  97. this -> Planeta = ss.najbliskaPlaneta;
  98. strcpy(this -> planeti, ss.planeti);
  99. this -> brojPlaneti = ss.brojPlaneti;
  100. }
  101.  
  102.  
  103. };
  104.  
  105.  
  106.  
  107. int main() {
  108. Planeta planeti[100];
  109. int n;
  110. cin >> n;
  111. for (int i = 0; i < n; i++) {
  112. char ime[100];
  113. int dijametar;
  114. int oddalechenost;
  115. float masa;
  116. cin >> ime >> dijametar >> oddalechenost >> masa;
  117. Planeta p(ime, dijametar, oddalechenost, masa);
  118. planeti[i] = p;
  119. }
  120. SonchevSistem ss(planeti, n);
  121. float masa;
  122. cin >> masa;
  123.  
  124. cout << "Site planeti:"<<endl;
  125. ss.pechatiPlaneti();
  126. cout<<endl;
  127. cout << "Planeti so masa pogolema od " << masa << "kg:"<<endl;
  128. ss.pechatiSoMasa(masa);
  129.  
  130. return 0;
  131. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement