Witam, jestem tu nowy więc na wejściu proszę o zrozumienię. Jestem po drugim odcinku programowania obiektowego, chciałem stworzyć prosty kalkulator. I mam problem. Wiem że poprzez funkcję void funkcja nie zwróci mi nic, ale nie mam pomysłu jak wyświetlić wynik, tak aby w main.cpp nie dodawać zbędnego kodu. Próbuję się trzymać jak najmocniej obiektówki.
kalk.cpp
#include <iostream>
#include <cstdlib>
#include "kal.h"
using namespace std;
void Kalkulator::wczytaj ()
{
cout<<"Wczytaj dwie liczby "<<endl;
cin>>a;
cin>>b;
}
void Kalkulator::dodawanie()
{
cout<<"Wynik dodawania to:"<<a+b<<endl;
}
void Kalkulator::odejmowanie()
{
cout<<"Wynik odejmowania to:"<<a-b<<endl;
}
void Kalkulator::dzielenie()
{
if (b!=0)
{
cout<<"Wynik dzielenia to:"<<a/b<<endl;
}
else
{
exit(0);
}
}
void Kalkulator::mnozenie()
{
cout<<"Wynik mnozenia to:"<<a*b<<endl;
}
kal.h
#include <iostream>
using namespace std;
class Kalkulator
{
public:
int a,b;
void wczytaj();
void dodawanie ();
void odejmowanie();
void dzielenie();
void mnozenie();
void wynik();
};
I main.cpp
#include <iostream>
#include "kal.h"
using namespace std;
int main()
{
int a;
Kalkulator k1;
k1.wczytaj();
cout<<"Wybierz rodzaj dzialania matematycznego: "<<endl;
cout<<"1. DODAWANIE"<<endl;
cout<<"2. ODEJMOWANIE"<<endl;
cout<<"3. DZIELENIE"<<endl;
cout<<"4. MNOZENIE"<<endl;
switch(a)
{
case 1: k1.dodawanie(); break;
case 2: k1.odejmowanie(); break;
case 3: k1.dzielenie(); break;
case 4: k1.mnozenie(); break;
}
return 0;
}
Skończyły mi się totalnie pomysły. Chyba że jest coś w kursie dalej na ten temat o czym jeszcze nie wiem. Ale znając życie rozwiązanie jest banalne.