Pozdrav svima,
imam problem sa zadatkom koji ne znam koliko je za pocetnike, ali ja jesam pocetnik pa imam nekih nejasnoca i nemam rutinu, pa ovako. Ovde imam prilozen dropbox folder sa dva fajla,
1. potraznja zadatka,
2. c++ fajl
ali da ne bih nagomilavao pusticu kod
Pitanja:
1.zadatak trazi da tipovi budu definisani kao string, ja sam stavio char, kako definisem string, ili ga koristim kao i char. malo mi nejasno.
2.zadatak trazi da se uradi u tri fajla, znaci klasa treba da bude "*.h" heder, ali ako stavim tako ne prepoznaje mi biblioteke "E:\Documents\Desktop\Simpozijum\1.h iostream: No such file or directory. " sta uraditi?
3.imam problem sa apstraktnom klasom i virtuelnom funkciom iz 29 linije, koja se odnosi i na 66 liniju ili je to tako dobro?
4. da li je 62 linija dobra (float P1, float P2)
bice ovde jos neko pitanje samo ako bude bilo kandidata za pomoc
imam problem sa zadatkom koji ne znam koliko je za pocetnike, ali ja jesam pocetnik pa imam nekih nejasnoca i nemam rutinu, pa ovako. Ovde imam prilozen dropbox folder sa dva fajla,
1. potraznja zadatka,
2. c++ fajl
ali da ne bih nagomilavao pusticu kod
Pitanja:
1.zadatak trazi da tipovi budu definisani kao string, ja sam stavio char, kako definisem string, ili ga koristim kao i char. malo mi nejasno.
2.zadatak trazi da se uradi u tri fajla, znaci klasa treba da bude "*.h" heder, ali ako stavim tako ne prepoznaje mi biblioteke "E:\Documents\Desktop\Simpozijum\1.h iostream: No such file or directory. " sta uraditi?
3.imam problem sa apstraktnom klasom i virtuelnom funkciom iz 29 linije, koja se odnosi i na 66 liniju ili je to tako dobro?
4. da li je 62 linija dobra (float P1, float P2)
bice ovde jos neko pitanje samo ako bude bilo kandidata za pomoc
Code:
#include <iostream>
#include <cstdlib>
using namespace std;
class kSimpozijum
{
private:
//float pKotizacija;
public:
float pKotizacija; //pKotizacija - visina kotizacije |float|, privatni atribut
float tPrevoz;
float tSmestaj;
char pNaziv; // pNaziv - naziv simpozijuma |string|. javni atribut
char pMesto; //pMesto - naziv mesta gde se simpozijum odrzava |string|, javni atribut
kSimpozijum() //Konstruktor - koji upisuje vrednosti koje korisnik unese u atribute.
{
cout<<"\nUnesi naziv Simpozijuma: "; cin>>pNaziv;
cout<<"\nUnesi naziv grada gde se simpozijum odrzava: "; cin>>pMesto;
cout<<"\nUnesi visinu kotizacije: "; cin>>pKotizacija;
}
void fIspis() //funkcija koja ispisuje atribute na ekran(ne prima parametre, ne vraca rezultat)
{
cout<<"\nOvo je Simpozijum "<<pNaziv<<", a odrzava se u "<<pMesto<<"."<<endl;
};
float fDohvatiKot() {return pKotizacija;}
//- fDohvatiKot - funkcija koja vraca vrednost atributa pKotizacija (ne prima parametre, ne vraca rezultat)
virtual float fUcesce( float pKotizacija, float tPrevoz, float tSmestaj)
{return tPrevoz + tSmestaj;}
// fUcesce - cista virtualna funkcija koja izracunava cenu ucesca na simpozijumu, sa troskovima smestaja
// i prevoza, pri cemu se vrednost za troskove smestaja i prevoza prima iz glavnog programa (prima 2 parametra i vraca rezultat)
~kSimpozijum(){} //destruktor
};
class kUcesnik //Kreira klasu kUcesnik
{
public: //javni atributi
char pIme; //- pIme - ime i prezime ucesnika u simpozijumu |string|,
char pUstanova; //- pUstanova - naziv ustanove u kojoj je ucesnik zaposlen |string|
//javne metode
kUcesnik() //- Konstruktor - koji upisuje vrednosti koje korisnik unese u atribute
{
cout<<"\nUnesi Ime i prezime ucesnika simpozijuma: "; cin>>pIme;
cout<<"\nUnesi naziv ustanove u kojoj je ucesnik zaposlen: "; cin>>pUstanova;
}
void fPisiUcesnika() //- fPisiUcesnika - funkcija koja ispisuje vrednosti atributa na ekran
//(ne prima parametre, ne vraca rezultat)
{
cout<<"\nUcesnik simpozijuma "<<pIme<<", je iz ustanove"<<pUstanova<<".";
};
~kUcesnik(){} // destruktor
};
class iStrucniRad:public kSimpozijum, public kUcesnik // Kreira klasu iStrucniRad koja nasledjuje klasu kSimpozijum i kUcesnik
{
public:
char pNazRada; //- pNazRada - naziv rada |string|
int pBrAutora; //- pBrAutora - broj autora knjige |int|
int pPovez; //- pPovez - tip poveza (1- tvrdi povez, 2- meki povez) |int|
//Konstruktor - upisuje vrednosti koje korisnik unese u atribute i nadogradjuje konstruktore klasa kSimpozijum i kUcesnik
iStrucniRad():kSimpozijum(), kUcesnik()
{
cout<<"\nUnesi naziv rada: "; cin>>pNazRada;
cout<<"\nUnesi broj autora: "; cin>>pBrAutora;
cout<<"\nUnesi tip poveza(1-tvrdi, 2-meki): "; cin>>pPovez;
}
void fIspis(float P1, float P2)
//- fIspis - funkcija koja ispituje vrednosti atributa na ekran i poziva funkcije
// - fPisiUcesnika klase kUcesnik
// - fIspis i fUcesce klase kSimpozijum
// (prima 2 parametra, ne vraca rezultat)
{
kUcesnik::fPisiUcesnika();
kSimpozijum::fIspis();
kSimpozijum::fUcesce( pKotizacija, tPrevoz, tSmestaj);
cout<<"\nNaziv rada je "<<pNazRada<<", broj autora je "<<pBrAutora<<", a tip poveza je "<<pPovez<<"."<<endl;
}
virtual float fUcesce()
// fUcesce - cista virtualna funkcija koja izracunava cenu ucesca na simpozijumu, sa troskovima smestaja
// i prevoza, pri cemu se vrednost za troskove smestaja i prevoza prima iz glavnog program
{
float cu=0;
if (pBrAutora<3)
{
cu+=(pKotizacija+tPrevoz+tSmestaj)*pBrAutora;
return cu;
}
else
{
cu+=(0.7*pKotizacija+tPrevoz+tSmestaj)*pBrAutora;
return cu;
}
}
~iStrucniRad(){
}
};
#include <iostream>
#include <cstdlib>
using namespace std;
class kSimpozijum
{
private:
//float pKotizacija;
public:
float pKotizacija; //pKotizacija - visina kotizacije |float|, privatni atribut
float tPrevoz;
float tSmestaj;
char pNaziv; // pNaziv - naziv simpozijuma |string|. javni atribut
char pMesto; //pMesto - naziv mesta gde se simpozijum odrzava |string|, javni atribut
kSimpozijum() //Konstruktor - koji upisuje vrednosti koje korisnik unese u atribute.
{
cout<<"\nUnesi naziv Simpozijuma: "; cin>>pNaziv;
cout<<"\nUnesi naziv grada gde se simpozijum odrzava: "; cin>>pMesto;
cout<<"\nUnesi visinu kotizacije: "; cin>>pKotizacija;
}
void fIspis() //funkcija koja ispisuje atribute na ekran(ne prima parametre, ne vraca rezultat)
{
cout<<"\nOvo je Simpozijum "<<pNaziv<<", a odrzava se u "<<pMesto<<"."<<endl;
};
float fDohvatiKot() {return pKotizacija;}
//- fDohvatiKot - funkcija koja vraca vrednost atributa pKotizacija (ne prima parametre, ne vraca rezultat)
virtual float fUcesce( float pKotizacija, float tPrevoz, float tSmestaj)
{return tPrevoz + tSmestaj;}
// fUcesce - cista virtualna funkcija koja izracunava cenu ucesca na simpozijumu, sa troskovima smestaja
// i prevoza, pri cemu se vrednost za troskove smestaja i prevoza prima iz glavnog programa (prima 2 parametra i vraca rezultat)
~kSimpozijum(){} //destruktor
};
class kUcesnik //Kreira klasu kUcesnik
{
public: //javni atributi
char pIme; //- pIme - ime i prezime ucesnika u simpozijumu |string|,
char pUstanova; //- pUstanova - naziv ustanove u kojoj je ucesnik zaposlen |string|
//javne metode
kUcesnik() //- Konstruktor - koji upisuje vrednosti koje korisnik unese u atribute
{
cout<<"\nUnesi Ime i prezime ucesnika simpozijuma: "; cin>>pIme;
cout<<"\nUnesi naziv ustanove u kojoj je ucesnik zaposlen: "; cin>>pUstanova;
}
void fPisiUcesnika() //- fPisiUcesnika - funkcija koja ispisuje vrednosti atributa na ekran
//(ne prima parametre, ne vraca rezultat)
{
cout<<"\nUcesnik simpozijuma "<<pIme<<", je iz ustanove"<<pUstanova<<".";
};
~kUcesnik(){} // destruktor
};
class iStrucniRad:public kSimpozijum, public kUcesnik // Kreira klasu iStrucniRad koja nasledjuje klasu kSimpozijum i kUcesnik
{
public:
char pNazRada; //- pNazRada - naziv rada |string|
int pBrAutora; //- pBrAutora - broj autora knjige |int|
int pPovez; //- pPovez - tip poveza (1- tvrdi povez, 2- meki povez) |int|
//Konstruktor - upisuje vrednosti koje korisnik unese u atribute i nadogradjuje konstruktore klasa kSimpozijum i kUcesnik
iStrucniRad():kSimpozijum(), kUcesnik()
{
cout<<"\nUnesi naziv rada: "; cin>>pNazRada;
cout<<"\nUnesi broj autora: "; cin>>pBrAutora;
cout<<"\nUnesi tip poveza(1-tvrdi, 2-meki): "; cin>>pPovez;
}
void fIspis(float P1, float P2)
//- fIspis - funkcija koja ispituje vrednosti atributa na ekran i poziva funkcije
// - fPisiUcesnika klase kUcesnik
// - fIspis i fUcesce klase kSimpozijum
// (prima 2 parametra, ne vraca rezultat)
{
kUcesnik::fPisiUcesnika();
kSimpozijum::fIspis();
kSimpozijum::fUcesce( pKotizacija, tPrevoz, tSmestaj);
cout<<"\nNaziv rada je "<<pNazRada<<", broj autora je "<<pBrAutora<<", a tip poveza je "<<pPovez<<"."<<endl;
}
virtual float fUcesce()
// fUcesce - cista virtualna funkcija koja izracunava cenu ucesca na simpozijumu, sa troskovima smestaja
// i prevoza, pri cemu se vrednost za troskove smestaja i prevoza prima iz glavnog program
{
float cu=0;
if (pBrAutora<3)
{
cu+=(pKotizacija+tPrevoz+tSmestaj)*pBrAutora;
return cu;
}
else
{
cu+=(0.7*pKotizacija+tPrevoz+tSmestaj)*pBrAutora;
return cu;
}
}
~iStrucniRad(){
}
};