C++ fundamentals through coding exercises
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

71 lines
1.4 KiB

4 years ago
  1. ## 1 Oletusmuodostimen rakentaminen
  2. **Tehtävä:**
  3. Tässä tehtävässä sinun tulee kirjoittaa oletusmuodostimen toteutus luokalle "Piste", joka sisältää kokonaislukutyypin jäsenmuuttujat "x_" ja "y_".
  4. Luokan "Piste" toteutus on olemassa - sinun tarvitsee siis kirjoittaa vain ja ainoastaan siihen liitettävä oletusmuodostin,
  5. joka alustaa jäsenmuuttujan "x_" arvolla 1 ja jäsenmuuttujan "y_" arvolla 1. Oletusmuodostin on esitelty valmiiksi luokan määrittelyssä.
  6. Luokkaa ja sen oletusmuodostinta testataan seuraavassa esitetyllä pääohjelmalla (älä kopioi pääohjelmaa vastaukseesi):
  7. ```
  8. int main()
  9. {
  10. Piste pisteolio;
  11. pisteolio.TulostaPiste();
  12. return 0;
  13. }
  14. ```
  15. Example output:
  16. ```
  17. Pisteen x-koordinaatti: 1
  18. Pisteen y-koordinaatti: 1
  19. ```
  20. **Vastaus:**
  21. ```
  22. //** Pre-defined code in the assignment **//
  23. #include<iostream>
  24. using namespace std;
  25. class Piste
  26. {
  27. public:
  28. Piste();
  29. void TulostaPiste();
  30. void AsetaPiste(int x, int y);
  31. private:
  32. int x_;
  33. int y_;
  34. };
  35. void Piste::TulostaPiste()
  36. {
  37. cout << "Pisteen x-koordinaatti: " << x_ << endl;
  38. cout << "Pisteen y-koordinaatti: " << y_ << endl;
  39. }
  40. void Piste::AsetaPiste(int x, int y)
  41. {
  42. x_ = x;
  43. y_ = y;
  44. }
  45. //** ---------- ---------- ---------- **//
  46. Piste::Piste() : x_(1), y_(1)
  47. {
  48. }
  49. //** Pre-defined code in the assignment **//
  50. int main()
  51. {
  52. Piste pisteolio;
  53. pisteolio.TulostaPiste();
  54. return 0;
  55. }
  56. //** ---------- ---------- ---------- **//
  57. ```