## 2 Parametrillisen muodostimen rakentaminen **Tehtävä:** Luvun toisessa tehtävässä sinun tulee kirjoittaa jo aiemmin tutuksi tulleeseen luokkaan "Piste" parametrillisen muodostimen toteutus. Tämä muodostin on esitelty luokan määrittelyssä seuraavasti: Piste:Piste(int x, int y); Muodostin sijoittaa parametrina saadut arvot jäsenmuuttujiin "x_" ja "y_". Kirjoittamaasi muodostinta testataan seuraavalla pääohjelmalla: ``` int main() { int x, y; cout << "Anna muodostettavan olion x-koordinaatti: "; cin >> x; cout << "Anna muodostettavan olio y-koordinaatti: "; cin >> y; Piste pisteolio(x, y); pisteolio.TulostaPiste(); return 0; } ``` Pääohjelma kysyy käyttäjältä muodostettavan olion koordinaatit ja muodostaa automaattisen olion kutsuen sen parametrillista muodostinta. Example output: ``` Anna muodostettavan olion x-koordinaatti: 2 Anna muodostettavan olio y-koordinaatti: 1 Pisteen x-koordinaatti: 2 Pisteen y-koordinaatti: 1 ``` **Vastaus:** ``` //** Pre-defined code in the assignment **// #include using namespace std; class Piste { public: Piste(int x, int y); void TulostaPiste(); void AsetaPiste(int x, int y); private: int x_; int y_; }; void Piste::TulostaPiste() { cout << "Pisteen x-koordinaatti: " << x_ << endl; cout << "Pisteen y-koordinaatti: " << y_ << endl; } void Piste::AsetaPiste(int x, int y) { x_ = x; y_ = y; } //** ---------- ---------- ---------- **// Piste::Piste(int x, int y) : x_(x), y_(y) { } //** Pre-defined code in the assignment **// int main() { int x, y; cout << "Anna muodostettavan olion x-koordinaatti: "; cin >> x; cout << "Anna muodostettavan olio y-koordinaatti: "; cin >> y; Piste pisteolio(x, y); pisteolio.TulostaPiste(); return 0; } //** ---------- ---------- ---------- **// ```