Tehtävä:
Luvun viimeisessä ohjelmointitehtävässä tehtävänäsi on laatia pääohjelma, joka käyttää Piste-luokan palveluita. Laatimasi pääohjelman tulee kysyä kaksi kokonaislukua (x- ja y-koordinaatit), muodostaa olio luokasta "Piste", asettaa saadut koordinaatit olioon ja lopulta tulostaa koordinaatit hyödyntäen luokan palvelua "KerroPaikka".
Pääohjelman käyttäjä syöttää koordinaatit näppäimistöltä ja ne voidaan ottaa vastaan cin-oliolla. Tarkastelemalla tehtävän esimerkkitulostusta näet, millaisia tulosteita pääohjelman on muodostettava.
Huomaa, että sinun tulee kirjoittaa vain pääohjelma, joka alkaa merkinnällä "int main()" ja päättyy sulkevaan aaltosulkeeseen.
Omasta nurkasta voit tarkastella edellisiä tehtäviä palauttaaksesi mieleen, kuinka Piste-luokka on toteutettu.
Example output:
Syötä x-koordinaatti:39
Syötä y-koordinaatti:23
Pisteolio muodostettu ja koordinaatit asetettu.
Pisteen x-koordinaatti: 39
Pisteen y-koordinaatti: 23
Vastaus:
//** Pre-defined code in the assignment **//
#include<iostream>
using namespace std;
class Piste
{
public:
void KerroPaikka();
void AsetaX(int x);
void AsetaY(int y);
void Siirra(int x, int y);
private:
int x_;
int y_;
};
void Piste::AsetaX(int x)
{
x_ = x;
}
void Piste::AsetaY(int y)
{
y_ = y;
}
void Piste::Siirra(int x, int y)
{
x_ = x_ + x;
y_ = y_ + y;
}
void Piste::KerroPaikka()
{
cout << "Pisteen x-koordinaatti: " << x_ << endl;
cout << "Pisteen y-koordinaatti: " << y_ << endl;
}
//** ---------- ---------- ---------- **//
int main()
{
Piste taso;
int xk, yk;
cout << "Syötä x-koordinaatti:";
cin >> xk;
if (cin.fail()) exit(1);
cout << "Syötä y-koordinaatti:";
cin >> yk;
if (cin.fail()) exit(1);
taso.AsetaX(xk);
taso.AsetaY(yk);
cout << "Pisteolio muodostettu ja koordinaatit asetettu." << endl;
taso.KerroPaikka();
return 0;
}