Zad. 2. Napisz program, który przeciąży operator [ ] w taki sposób, że dla podanej liczby naturalnej jako argumentu tego operatora, funkcja operatorowa zwróci sumę cyfr podanej liczby.
Rozwiązanie
#include<iostream>
using namespace std;
class klasa{
public: //funkcja operatorowa przeciążająca operator [ ]
int operator [ ](int liczba)
{
//wyznaczenie sumy cyfr podanej liczby
int s = 0;
while(liczba!=0)
{
s+=liczba%10;
liczba/=10;
}
return s;
}
};
int main()
{
klasa suma; //stworzenie obiektu
cout<<"Suma cyfr liczby 123 wynosi "<<suma[123]<<endl;
return 0;
}
Out: Suma cyfr liczby 123 wynosi 6 |