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 <iostream>
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;
}
//** ---------- ---------- ---------- **//