Klasy c++

Odpowiedz Nowy wątek
2020-03-26 23:16

Rejestracja: 1 tydzień temu

Ostatnio: 18 godzin temu

0

Witam, sprawdzi mi ktoś czy dobrze rozwiązałem te zadania? I podpunkty g i h do pomocy.

class A { double a; };

a) Dopisz do klasy konstruktor bezargumentowy, który zainicjalizuje wartość pola danych wybraną wartością.

A::A(){ a=2;};

b) Utwórz dwa obiekty klasy A. Jeden z obiektów należy utworzyć jako obiekt wartościowy, a drugi jako obiekt dynamiczny

A jeden('x'); A *wsk_dwa = new A('z');

c) Dopisz do klasy metodę, która zmieni wartość pola danych na wartość argumentu tej metody.

void funkcja(double b) {b=a};

d) Wywołaj dla każdego z utworzonych obiektów zdefiniowaną metodę.

A::funkcja(22); jeden.zmien(11); wsk_dwa->funkcja(10);

e) Dopisz do klasy metodę, która obliczy potrójna wartość pola danych i zwróci wynik jako wynik działania metody.

void fun(double x) {return x*x*x};

f) Wywołaj dla każdego z utworzonych obiektów zdefiniowaną metodę i wyświetl wynik operacji na konsoli.

wynik = nowy.fun(nowy.b); cout << wynik;

g) Przeładuj dla operator " * " jako operator dwuargumentowy. Operator należy przedefiniować w taki sposób, żę będzie on obliczał iloczyn wartości pól danych obu dodawanych obiektów, Przeładowanie operatora należy realizować w postaci funkcji.

h) Wykorzystaj przeładowaną metodę do wykonania działania na obydwu utworzonych obiektach. Wynik działania wyświetl na konsoli.

edytowany 7x, ostatnio: kq, 2020-03-29 17:00
Hej! Twój post prawdopodobnie zawiera niesformatowany kod. Użyj znaczników ``` aby oznaczyć, co jest kodem, będzie łatwiej czytać. (jestem botem, ta akcja została wykonana automatycznie, prawdopodobieństwo 0.9995831) - Tasmanian Devil 2020-03-26 23:26

Pozostało 580 znaków

2020-03-27 00:31

Rejestracja: 6 lat temu

Ostatnio: 4 godziny temu

Lokalizacja: Kraków

1

Zacząłem pisać odpowiedzi odnośnie punktów ale to bez sensu. Zrób to po bożemu, stwórz sobie klasę i dla każdego punktu ją modyfikuj. Co trzeba to wywołaj w main i sprawdź.
Masz teraz takie bzdurne błędy jak void w funkcji która ma coś zwracać albo przypisywanie czegoś do argumentu funkcji.

Pozostało 580 znaków

2020-03-27 09:56

Rejestracja: 1 rok temu

Ostatnio: 3 godziny temu

0
brave10 napisał(a):

Witam, sprawdzi mi ktoś czy dobrze rozwiązałem te zadania? I podpunkty g i h do pomocy.
b) Utwórz dwa obiekty klasy A. Jeden z obiektów należy utworzyć jako obiekt wartościowy, a drugi jako obiekt dynamiczny

A jeden('x'); A *wsk_dwa = new A('z');

skoro masz konstruktor bezargumentowy to dlaczego tworzysz obiekt używając argument typu char?

c) Dopisz do klasy metodę, która zmieni wartość pola danych na wartość argumentu tej metody.

void funkcja(double b) {b=a};

b=a? bez sensu, teraz zastanów się dlaczego. Nazwa funkcja niewiele też mówi co ona robi, lepiej by było np. zmodyfikuj_pole_a albo cokolwiek innego

e) Dopisz do klasy metodę, która obliczy potrójna wartość pola danych i zwróci wynik jako wynik działania metody.
void fun(double x) {return x*x*x};

potrójna to chyba 3*x a nie x^3

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0