Kurs maturalny z języka angielskiego!
kurs-maturalny-jezyk-angielski

PROGRAMOWANIE I ALGORYTMY

Zajęcia maturalne z informatyki
Olimpiada Informatyczna Juniorów
    Prowadzący: Marcin Kasprowicz
  • właściciel serwisu algorytm.edu.pl
  • wrzesień 2024 — start zajęć
  • czytaj więcej

Przeciążanie operatora +


Zad1. Napisz program, który przeciąży operator dodawania w taki sposób, aby podane minuty z jednego obiektu i drugiego zamieniały się na godziny i minuty wypisywane przez metodę wypisz(). Stwórz dwie wersje funkcji operatorowej:

  • obiekt + obiekt
  • obiekt + liczba naturalna
#include<iostream>
using namespace std;

class klasa{
      public:
             klasa(int A){min = A;} //konstruktor, który pobiera ilość minut do obkiektu
             
             void operator+(klasa A) // obiekt + obiekt
             {
                  min += A.zwroc();
             }    
             void operator+(int A) // obiekt + liczba
             {
                  min += A;
             }
             
             int zwroc(){return min;} //zwraca ilość minut przechowywanych w zmiennej min
      
             void wypisz()
             {
                  cout<<min/60<<" h "<<min%60<<" min"<<endl;
             }
      private:
            int min;             
}; 
int main()
{
    klasa A(12), B(100); 
    A + B; 
    A.wypisz();
   
    return 0;
}
Out: 1 h 52 min