PROGRAMOWANIE I ALGORYTMY

szkoła fraktal
Zapraszamy na zajęcia z programowania

Serwis algorytm.edu.pl zaprasza na zajęcia z programowania

wakacje 2022, rok szkolny 2022/2023

więcej informacji pod adresem szkola-fraktal.pl

Przeciążanie operatora [ ]


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