[C++] programowanie obiektowe, punkty-odcinek-kwadrat

agggnes
Użytkownik
Użytkownik
Posty: 87
Rejestracja: 21 gru 2011, o 21:27
Płeć: Kobieta
Podziękował: 18 razy

[C++] programowanie obiektowe, punkty-odcinek-kwadrat

Post autor: agggnes »

Prosiłabym o podpowiedź, jak rozwiązać takie zadanie:

napisz program, który pobierze współrzędne x,y dwóch punktów, obliczy dlugość odcinka (wykorzystując klasę w programowaniu obiektowym), a następnie -w programie głównym- policzy pole kwadratu o boku równym długości tego odcinka.
bartek118
Użytkownik
Użytkownik
Posty: 5974
Rejestracja: 28 lut 2010, o 19:45
Płeć: Mężczyzna
Lokalizacja: Toruń
Podziękował: 15 razy
Pomógł: 1251 razy

[C++] programowanie obiektowe, punkty-odcinek-kwadrat

Post autor: bartek118 »

Masz klasę:

Kod: Zaznacz cały

class Punkt
{
double x,y;
unsigned double distance(Punkt A); // odleglosc od punktu aktualnego do A
}
Potem tworzysz klasę

Kod: Zaznacz cały

class Kwadrat
{
unsigned double length; //dlugosc boku
unsigned double Area(); // pole
}
I program wygląda mniej więcej tak:

Kod: Zaznacz cały

int main()
{
scanf(Punkt A, Punkt B);
double b = A.distance(B);
Kwadrat K = Kwadrat(b);
printf(K.Area());
}
agggnes
Użytkownik
Użytkownik
Posty: 87
Rejestracja: 21 gru 2011, o 21:27
Płeć: Kobieta
Podziękował: 18 razy

[C++] programowanie obiektowe, punkty-odcinek-kwadrat

Post autor: agggnes »

Dziękuję za pomoc, tylko że my takich rzeczy nie używaliśmy jeszcze... Nie da się tego jakoś zrobić bez używania np 'distance', 'scanf', 'printf'?
bartek118
Użytkownik
Użytkownik
Posty: 5974
Rejestracja: 28 lut 2010, o 19:45
Płeć: Mężczyzna
Lokalizacja: Toruń
Podziękował: 15 razy
Pomógł: 1251 razy

[C++] programowanie obiektowe, punkty-odcinek-kwadrat

Post autor: bartek118 »

distance - podałem tylko szkielet, musisz sama napisać metodę, tak samo w klasie kwadrat

Odnośnie printf i scanf, to zamiast tego można używać strumieni: odpowiednio cout i cin
Awatar użytkownika
Althorion
Użytkownik
Użytkownik
Posty: 4541
Rejestracja: 5 kwie 2009, o 18:54
Płeć: Mężczyzna
Lokalizacja: Wrocław
Podziękował: 9 razy
Pomógł: 662 razy

[C++] programowanie obiektowe, punkty-odcinek-kwadrat

Post autor: Althorion »

O ile dobrze zrozumiałem, to odcinek ma być klasą, cała reszta liczona na żywca, jakoś tak:

Klasa Odcinek:
cztery prywatne zmienne liczbowe typu zmiennoprzecinkowego, przechowujące współrzędne początku i końca (można opakować parami w strukturę jeśli chcesz);
publiczna metoda ustawiająca początek, druga dla końca;
publiczna metoda odczytująca początek, druga dla końca;
publiczna metoda licząca długość odcinka;
konstruktor itp. zabawy

Sam program pobiera od użytkownika wymagane dane, tworzy odcinek, zwraca kwadrat długości odcinka (uzyskaną przez wywołanie odp. metody).
kkk
Użytkownik
Użytkownik
Posty: 578
Rejestracja: 2 paź 2007, o 19:48
Płeć: Mężczyzna
Lokalizacja: ww
Podziękował: 59 razy
Pomógł: 35 razy

[C++] programowanie obiektowe, punkty-odcinek-kwadrat

Post autor: kkk »

Nawet powinno używać się 'cin' i 'cout' skoro już w C++ to ma być.

Oczywiście trzeba pamiętać o kontruktorach i destruktorze.

Funkcje składowe można nawet jako inline napisać.

Ja bym zrobił klasę odcinek i klasę kwadrat (która może zawierać ten odcinek - w ogólniejszym przypadku klasa prostokąt i posiada dwa odcinki).
ODPOWIEDZ