Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Сончев систем Problem 6 (0 / 0)
- Креирајте класа Planeta која во себе содржи:
- ime (низа од максимум 30 знаци);
- dijametar (целобројна вредност);
- oddalechenost (целобројна вредност);
- masa (децимален број).
- За оваа класа да се креираат default конструктор, конструктор со аргументи и copy конструктор. Да се имплементираат потребните get и set методи, како и следната метода:
- pechati() - ги печати името и дијаметарот на планетата, во формат: "[ime] so dijametar [dijametar]km.\n"
- Креирајте класа SonchevSistem која содржи:
- najbliskaPlaneta (објект од класата Planeta)
- planeti[50] (низа од планети)
- brojPlaneti (целобројна вредност)
- Во класата креирајте го потребниот конструктор и имплементирајте ги следните методи:
- pechatiPlaneti() најпрво ги печати сите планети, а потоа ја печати најблиската планета во формат: "Najbliska planeta е [ime] so dijametar [dijametar]km.\n";
- pechatiSoMasa(float masa) ги печати сите планети со маса поголема од дадената во аргументот (float masa).
- При печатењето треба да ја искористите методата pechati() од Planeta. Најблиска планета до сонцето е онаа чија oddalechenost е најмала.
- Главната функција не ја менувајте.
- #include<iostream>
- #include<cstring>
- using namespace std;
- class Planeta{
- private:
- char ime[30];
- int dijametar;
- int oddalecenost;
- float masa;
- public:
- Planeta(){}
- Planeta(char *ime, int dijametar, int oddalecenost, float masa){
- strcpy(this -> ime, ime);
- this -> dijametar = dijametar;
- this -> oddalecenost = oddalecenost;
- this -> masa = masa;
- }
- Planeta(const Planeta &p){
- strcpy(this -> ime, p.ime);
- this -> dijametar = p.dijametar;
- this -> oddalecenost = p.oddalecenost;
- this -> masa = p.masa;
- }
- void set_ime(char *ime){
- strcpy(this -> ime, ime);
- }
- void set_dijametar(int dijametar){
- this -> dijametar = dijametar;
- }
- void set_oddalechenost(int oddalecenost){
- this -> oddalecenost = oddalecenost;
- }
- void set_masa(float masa){
- this -> masa = masa;
- }
- char *get_ime(){
- return ime;
- }
- int get_dijametar(){
- return dijametar;
- }
- int get_oddalechenost(){
- return oddalecenost;
- }
- float get_masa(){
- return masa;
- }
- void pechati(){
- cout<<ime<<" so dijametar"<<dijametar<<" km"<<endl;
- }
- };
- class SonchevSistem{
- private:
- Planeta najbliskaPlaneta;
- char planeti[50];
- int brojPlaneti;
- public:
- SonchevSistem(){}
- SonchevSistem(Planeta pl, char *planeti, int brojPlaneti){
- this -> najbliskaPlaneta = pl;
- strcpy(this -> planeti, planeti);
- this -> brojPlaneti = brojPlaneti;
- }
- SonchevSistem(const SonchevSistem &ss){
- this -> Planeta = ss.najbliskaPlaneta;
- strcpy(this -> planeti, ss.planeti);
- this -> brojPlaneti = ss.brojPlaneti;
- }
- };
- int main() {
- Planeta planeti[100];
- int n;
- cin >> n;
- for (int i = 0; i < n; i++) {
- char ime[100];
- int dijametar;
- int oddalechenost;
- float masa;
- cin >> ime >> dijametar >> oddalechenost >> masa;
- Planeta p(ime, dijametar, oddalechenost, masa);
- planeti[i] = p;
- }
- SonchevSistem ss(planeti, n);
- float masa;
- cin >> masa;
- cout << "Site planeti:"<<endl;
- ss.pechatiPlaneti();
- cout<<endl;
- cout << "Planeti so masa pogolema od " << masa << "kg:"<<endl;
- ss.pechatiSoMasa(masa);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement