Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Problemi sa klasom

[es] :: C/C++ programiranje :: Problemi sa klasom

[ Pregleda: 2297 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

nemanjamil

Član broj: 19217
Poruke: 47
77.46.186.*



Profil

icon Problemi sa klasom04.05.2008. u 22:07 - pre 194 meseci
EDIT: X Files : Molim Vas da zbog preglednosti, kod upisujete između tag-ova predviđenih za to:

[code]
int main ( int argc, char *argv[] )
{
// ...
return 0;
}
[/code]

Code:

 class PrijavljivanjeIspita
{
public:
    int unesiIme()
{
char UI[100];
    int x;
    int p;
    do
    {
        cout <<"Ime i prezime studenta:\t";
        cin.getline(UI,100);
        x=0;
        p=1;
        while (UI[x]!='\0')
        {
            if (isdigit(UI[x]))
            {
                p=0;
            }
            x=x+1;
            return 0;
    }
    }
    while (p==0);

    
}
    public: NazivPredmeta()
    {
char Predmet[150];
    int x;
    int p;
    do
    {
        cout <<"Naziv Predmeta:\t";
        cin.getline(Predmet,150);
        x=0;
        p=1;
        while (Predmet[x]!='\0')
        {
            if (isalnum(Predmet[x]))
            {
                p=0;
            }
            x=x+1;
    }
    }
    while (p!=0);

        return 0;
}

kada ih pozovem u main-u to izgleda ovako
naravno i ostale funcije su definisane

PrijavljivanjeIspita a;

a.unesiIme();
a.NazivPredmeta();
a.unesiImeP();
a.BrIndexa();
a.unesiDatum();
a.unesiOcenu();

Sve to funkcionise kako treba osim toga sto mi prve dve funcije koje god bile uvek napise ovako u istom redu.
Unesite ime: Unesite naziv predmeta:
i samim tim mi daje mogucnost da unesem samo naziv predmeta a funcija unesiIme kao da je vec izvrsena. Pomozite :(





[Ovu poruku je menjao X Files dana 05.05.2008. u 07:27 GMT+1]
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p6-15.bvcom.net.



+1064 Profil

icon Re: Problemi sa klasom05.05.2008. u 06:12 - pre 194 meseci
Pretpostavljam da ovo nije kod koji stvarno koristis posto nigde ne
pamtis sta je uneto a i onaj return 0 u unesiIme strci.
Elem, pre nego sto ispises sa cout, prvo uradi cin.ignore(xxx) da ocistis
bilo sta sto je ostalo iz input bufera.
E sad mogao bi da proveris i cin.fail() nakon cin.getline te da uradis cin.clear() po potrebi,
tj da resetujes stanje inace ce svaki sledeci getline da failuje.

Pozzzzzzzzzzzz!
 
Odgovor na temu

nemanjamil

Član broj: 19217
Poruke: 47
*.com
Via: [es] mailing liste



Profil

icon Re: Problemi sa klasom05.05.2008. u 10:24 - pre 194 meseci
</PRE><PRE>Hvala sto si pokusao da mi pomognes ali ja sam zbunjen jos vise. Na zalost ovo mi je pravi kod. Kako mogu da pamtim? Ipak sam pocetnik u ovome.</PRE></BLOCKQUOTE></td></tr></table><br>

Be a better friend, newshound, and
know-it-all with Yahoo! Mobile. Try it now.
 
Odgovor na temu

Branimir Maksimovic

Član broj: 64947
Poruke: 5534
c-bg-d-p6-15.bvcom.net.



+1064 Profil

icon Re: Problemi sa klasom05.05.2008. u 13:12 - pre 194 meseci
Ako bas ne moras preporucio bih ti da objektno programiranje ucis
u javi ili C# ili nekom laksem jeziku.

Pozzzzzzzzzzz!
 
Odgovor na temu

nemanjamil

Član broj: 19217
Poruke: 47
77.46.186.*



Profil

icon Re: Problemi sa klasom05.05.2008. u 14:20 - pre 194 meseci
Na zalost moram i to bas ovaj primer!

[Ovu poruku je menjao nemanjamil dana 05.05.2008. u 21:57 GMT+1]
 
Odgovor na temu

karas

Član broj: 5574
Poruke: 482
*.dynamic.sbb.rs.



+1 Profil

icon Re: Problemi sa klasom06.05.2008. u 08:24 - pre 194 meseci
Ti si ovaj kod iskompajlirao?
Sveti Avgustin: "Dobar hrišćanin treba da se kloni matematičara i svih onih koji daju lažna proročanstva. Postoji opasnost da su matematičari već sklopili pakt sa Đavolom, da pomrače čovekov um i da ga okuju okovima pakla."
 
Odgovor na temu

nemanjamil

Član broj: 19217
Poruke: 47
79.101.83.*



Profil

icon Re: Problemi sa klasom06.05.2008. u 10:01 - pre 194 meseci
Da, bez problema
 
Odgovor na temu

karas

Član broj: 5574
Poruke: 482
*.dynamic.sbb.rs.



+1 Profil

icon Re: Problemi sa klasom06.05.2008. u 11:34 - pre 194 meseci
Kako kad npr. velika zagrada koja završava klasu nema tačku-zarez i metoda NazivPredmeta() nema povratnu vrednost? Gcc odbija da prevede, ajde pokušaj da središ takve greške pre traženja glavnog problema i okači ceo kod lepo nazubljen.
Sveti Avgustin: "Dobar hrišćanin treba da se kloni matematičara i svih onih koji daju lažna proročanstva. Postoji opasnost da su matematičari već sklopili pakt sa Đavolom, da pomrače čovekov um i da ga okuju okovima pakla."
 
Odgovor na temu

nemanjamil

Član broj: 19217
Poruke: 47
79.101.221.*



Profil

icon Re: Problemi sa klasom06.05.2008. u 15:42 - pre 194 meseci
Pa problem je u tome sto mi ovo treba za fakultet i ne mogu ceo primer da okacim na forumu. Ovo su samo prve dve funcije a u prvoj klasi ih ima oko 10. Program ima oko 500-600 linija koda. U pravu si u kodu sam zaboravio da napisem }; a koliko ja znam funcija NazivPredmeta() ima return 0 jer nije void.
 
Odgovor na temu

karas

Član broj: 5574
Poruke: 482
*.dynamic.sbb.rs.



+1 Profil

icon Re: Problemi sa klasom06.05.2008. u 19:23 - pre 194 meseci
Code:

int NazivPredmeta()

bi trebalo da stoji.
Inače, meni sledeći kod (samo sam popravio te dve greške) dozvoljava da unesem ime i prezime i naziv predmeta (nisam se udubljivao šta radi sa unesenim vrednostima):

Code:

#include <iostream>

using namespace std;


class PrijavljivanjeIspita
{
public:
    int unesiIme()
{
char UI[100];
    int x;
    int p;
    do
    {
        cout <<"Ime i prezime studenta:\t";
        cin.getline(UI,100);
        x=0;
        p=1;
        while (UI[x]!='\0')
        {
            if (isdigit(UI[x]))
            {
                p=0;
            }
            x=x+1;
            return 0;
    }
    }
    while (p==0);

    
}
    public: 
    int NazivPredmeta()
    {
char Predmet[150];
    int x;
    int p;
    do
    {
        cout <<"Naziv Predmeta:\t";
        cin.getline(Predmet,150);
        x=0;
        p=1;
        while (Predmet[x]!='\0')
        {
            if (isalnum(Predmet[x]))
            {
                p=0;
            }
            x=x+1;
    }
    }
    while (p!=0);

        return 0;

};


int main()
{
    PrijavljivanjeIspita pi;
    pi.unesiIme();
    pi.NazivPredmeta();
    
    return 0;
}


Sveti Avgustin: "Dobar hrišćanin treba da se kloni matematičara i svih onih koji daju lažna proročanstva. Postoji opasnost da su matematičari već sklopili pakt sa Đavolom, da pomrače čovekov um i da ga okuju okovima pakla."
 
Odgovor na temu

nemanjamil

Član broj: 19217
Poruke: 47
91.150.111.*



Profil

icon Re: Problemi sa klasom08.05.2008. u 09:39 - pre 194 meseci
Uspeo sam da resim problem. Ako neko bude imao isti ili slican problem resio sam ga ovako:
liniju cin.getline(UI,100); sam ponovio dva puta i to samo prvu funkciju koju pozivam. Vise se ne pojavljuje greska. Problem je bio u tome sto se u main() funkciji odabiralo koja klasa treba da se izvrsava. Pritiskom na recimo 1 izrsavala bi se i prva funkcija.


[Ovu poruku je menjao nemanjamil dana 08.05.2008. u 11:49 GMT+1]
 
Odgovor na temu

[es] :: C/C++ programiranje :: Problemi sa klasom

[ Pregleda: 2297 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.