Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- TP 16/17 (Tutorijal 11, Zadatak 3)
- Autotestove napisao Haris Hasic. Sve primjedbe/zalbe, sugestije
- i pitanja slati na mail: hhasic2@etf.unsa.ba.
- Vrsit ce se provjera na prepisivanje tutorijala (na kraju semestra)
- */
- #include <iostream>
- #include <stdexcept>
- #include <string.h>
- #include <iomanip>
- class Tim{
- char ime_tima[20];
- int broj_odigranih, broj_pobjeda, broj_nerijesenih, broj_poraza, broj_datih;
- int broj_primljenih, broj_poena;
- public:
- Tim(const char ime[]);
- void ObradiUtakmicu(int broj_datih, int broj_primljenih);
- const char *DajImeTima() const
- {
- const char *pocetak = ime_tima;
- return pocetak;
- }
- int DajBrojPoena() const
- {
- return broj_poena;
- }
- int DajGolRazliku() const
- {
- return broj_datih - broj_primljenih;
- }
- void IspisiPodatke() const;
- };
- Tim::Tim(const char ime[])
- {
- int duzina = 0;
- for(int i = 0; i < strlen(ime); i++)
- {
- duzina++;
- }
- if(duzina >= 20) throw std::range_error("Predugacko ime tima");
- for(int i = 0; i < strlen(ime); i++)
- ime_tima[i] = ime[i];
- ime_tima[duzina] = '\0';
- broj_odigranih = 0; broj_pobjeda = 0; broj_nerijesenih = 0; broj_poraza = 0;
- broj_datih = 0;
- broj_primljenih = 0;
- broj_poena = 0;
- }
- void Tim::ObradiUtakmicu(int broj_datih, int broj_primljenih)
- {
- if( broj_datih < 0 || broj_primljenih < 0 ) throw std::range_error("Neispravan broj golova");
- this->broj_datih = this->broj_datih + broj_datih;
- this->broj_primljenih = this->broj_primljenih + broj_primljenih;
- broj_odigranih++;
- if( broj_datih > broj_primljenih)
- {
- this->broj_poena += 3;
- this->broj_pobjeda++;
- }
- else if( broj_datih == broj_primljenih)
- {
- this->broj_poena += 1;
- this->broj_nerijesenih++;
- }
- else
- {
- broj_poraza++;
- }
- }
- void Tim::IspisiPodatke() const
- {
- std:: cout << std::setw(20) << std::left << DajImeTima();
- std:: cout << std::setw(4) << std::right << broj_odigranih;
- std:: cout << std::setw(4) << std::right << broj_pobjeda;
- std:: cout << std::setw(4) << std::right << broj_nerijesenih;
- std:: cout << std::setw(4) << std::right << broj_poraza;
- std:: cout << std::setw(4) << std::right << broj_datih;
- std:: cout << std::setw(4) << std::right << broj_primljenih;
- std:: cout << std::setw(4) << std::right << broj_poena << std::endl;
- }
- int main ()
- {
- Tim t1("NK Zeljo");
- t1.ObradiUtakmicu(1,0);
- t1.ObradiUtakmicu(2,1);
- t1.IspisiPodatke();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement