Forum » Programiranje » C++ : Urejanje nizov
C++ : Urejanje nizov
RiNC ::
Program prejme podatke za 6 oseb, potem pa naj bi vrnil osebe urejene po abecedi (glede na hobije).
Po mojem bi moglo to delat, kar sem si zamislil, pa ne dela.
Nevem zakaj!?
Prevajalnik ne javi nobene napake, niti opozorila, ko pa zazenem exe file, ne dela.
Evo tu je koda:
Verjetno je nekaj narobaj s funkcijo Uredi, samo kaj?
Prosim pomagajte!!!
Po mojem bi moglo to delat, kar sem si zamislil, pa ne dela.
Nevem zakaj!?
Prevajalnik ne javi nobene napake, niti opozorila, ko pa zazenem exe file, ne dela.
Evo tu je koda:
//PROGRAM ZA DELO S PODATKI O SESTIH OSEBAH
#include
#include
const int st_oseb = 6 ;
struct datum
{
int dan;
int mesec;
int leto;
};
struct oseba
{
char ime[20];
char priimek[20];
datum datumr;
char hobi[100];
};
void IzpisOseb(oseba a[])
{
for (int i = 0; i < st_oseb; i++)
{
cout << "Oseba st." << i+1 << " : " ;
cout << a[i].ime << " " ;
cout << a[i].priimek << ", " ;
cout << a[i].datumr.dan << "." ;
cout << a[i].datumr.mesec << "." ;
cout << a[i].datumr.leto << "," ;
cout << a[i].hobi << endl ;
}
}
void Uredi(oseba a[])
{
for (int i = 0; i < st_oseb; i++)
{
for (int j = 0; i < st_oseb-1; j++)
{
if (strcmp(a[i].hobi, a[j].hobi) < 0)
{
oseba temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
int main()
{
oseba nekdo[st_oseb];
cout << endl ;
cout << "Vnesi podatke za " << st_oseb << " oseb (ime, priimek, datum rojstva, hobi): " << endl ;
for (int i = 0; i < st_oseb; i++)
{
cout << "Oseba st." << i+1 << " : " ;
cin >> nekdo[i].ime;
cin >> nekdo[i].priimek;
cin >> nekdo[i].datumr.dan;
cin >> nekdo[i].datumr.mesec;
cin >> nekdo[i].datumr.leto;
cin.getline(nekdo[i].hobi, 100, '\n');
}
cout << "------------------------------------------------------------" << endl ;
Uredi(nekdo);
cout << "OSEBE UREJENE PO HOBIJU (po abecedi): " << endl ;
IzpisOseb(nekdo);
cout << "------------------------------------------------------------" << endl ;
return 0;
}
Verjetno je nekaj narobaj s funkcijo Uredi, samo kaj?
Prosim pomagajte!!!
- spremenil: Gandalfar ()
napsy ::
void Uredi(oseba a[])
{
for (int i = 0; i < st_oseb; i++)
{
for (int j = 0; i < st_oseb-1; j++)
{
if (strcmp(a[i].hobi, a[j].hobi) < 0)
{
oseba temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
pri drugi for zanki: a si prepričan, da je pogoj "i < st_oseb-1" in ne "j < st_oseb-1".
Forum admin: se bi dalo narediti kak tag za kode?
{
for (int i = 0; i < st_oseb; i++)
{
for (int j = 0; i < st_oseb-1; j++)
{
if (strcmp(a[i].hobi, a[j].hobi) < 0)
{
oseba temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
}
pri drugi for zanki: a si prepričan, da je pogoj "i < st_oseb-1" in ne "j < st_oseb-1".
Forum admin: se bi dalo narediti kak tag za kode?
"If you die, you die. But when you live you live. There is no time to waste."
RiNC ::
pol pa ni cudno da ne dela!
Se zgodi, samo jaz sem bulo 1 uro v kodo, pa nisem opazo.
Hvala!
Se zgodi, samo jaz sem bulo 1 uro v kodo, pa nisem opazo.
Hvala!
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | c problem pri zaključevanju programaOddelek: Programiranje | 1142 (967) | BigWhale |
» | [C] čuden izpis iz txt dat. na zaslonOddelek: Programiranje | 1665 (1402) | l0g1t3ch |
» | c++ datotekeOddelek: Programiranje | 4044 (3533) | Vesoljc |
» | Problem s structurami v c++!!!Oddelek: Programiranje | 917 (815) | BigWhale |
» | C problemčekOddelek: Programiranje | 1062 (865) | OwcA |