Aktív témák
-
Panther
HÁZIGAZDA
Ennyi változtatással már ''működőképes''.
printf('' Egyforma evjaratok: '');
int db1=0;
int panther= -1;
lanc *tmb[5];
lanc *egyen;
seged=egyen=fej;
while(egyen!=NULL) {
while(seged!=NULL) {
if(egyen->adat.evj==seged->adat.evj) {
tmb[db1]=seged;
db1++;
}
seged=seged->kov;
}
if(db1>1)
{
for(int i=0;i<db1;i++) {
printf(''%s %6d %6d '',tmb[i]->adat.nev,tmb[i]->adat.evj,tmb[i]->adat.ar);
tmb[i]->adat.evj = panther--;
}
}
seged=fej;
egyen=egyen->kov;
db1=0;
}
[Szerkesztve] -
Panther
HÁZIGAZDA
Csináltam egy saját adatbázist, azzal látom már mi a hiba.
Szóval ha van mondjuk két '95-ös autó (A, B), akkor azt csinálja, hogy:
...
A 1995
B 1995
...
A 1995
B 1995
...
Ugye erre gondolsz?
Ez szimplán azért van, mert kiírja akkor is mindkettőt, amikor az ''egyen'' változó A-nál jár, meg akkor is, amikor B-nél. (A-nak is talál párt, később meg B-nek is. Csak azt nem tudja a program hogy B-nek már nem kéne párt keresni, mertB már ki lett írva egyszer.)
Tényleg jobb lenne rendezett listával, de úgy is megcsinálhatod hogy megjelölöd hogy melyik autókat írtad már ki. (Mondjuk egyszerűen kitörlöd őket a listából, elvégre ezután már úgysem kellenek, a program vége következik. Ezt persze okosan kell, mert kezelned kell hogy a törlés után hova mutasson az ''egyen'' pointer. Csinálhatod azt is, hogy az évszámokat átírod szépen -1, -2, stb-re. Ezen módszerek persze nem lennének jók, ha később még kellene a lista, de jelen esetben már nem kell.)
MOD: Ja, és egyik sem valami szép megoldás... tényleg rendezett listával lenne igazán jó.
[Szerkesztve] -
Panther
HÁZIGAZDA
Na letöltöttem újra amit belinkeltél, belejavítás nélkül egy rakás marhaságot nyomat ki a képernyőre... miért? Neked nem?
Nálam a kép ''enault Chamade''-vel (R nincs az elején!) meg ''Opel Astra''-val van tele, illetve egy csomó ''-13108'' is van. -
Panther
HÁZIGAZDA
Itt valami nem jó... az adatfile nincs összhangban a programmal. Minden adat-egység 36 byte-nyi ha jól látom, azaz a Struct definíciójába 36-2-2=32 hosszú char-tömb kéne. Úgy egyébként már legalább az autók nevei normálisan megjelennek. Ja, ezen tárolási forma esetén int helyett érdemesebb lenne short-ot használni, mert az mindig 2 byte, az int meg platformfüggő (2-4byte közti egész).
-
Panther
HÁZIGAZDA
Nekem elég hasonló feladatot kellett megoldani egy éve, úgyhogy hátha segít... szép struktúrált, talán még átlátható is. (Bár az a kis grafikai izé zavarhat, de akkor azt hagyd a francba.)
[L]http://pantherz.uw.hu/prog/konyvtar.zip[/L]
Ez könyvek adatbázisával dolgozik, és kiadó szerint lehet leválogatást kérni (plusz egy-két apróság). Az adatbázisban az adatok 3 soronként tartoznak össze (1-3, 4-6, 7-9, stb sorok adják egy könyv adatait.)
Aktív témák
- LG UltraGear 32GS85Q-B - 31,5" NANO IPS QHD 180Hz
- CYBERLAB Telefon szerviz kijelzőcsere, akkucsere, javítás Oroszlány
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple iPhone 13 128GB, Kártyafüggetlen, 1 Év Garanciával
- LG UltraGear 32GS95UX-B Monitor 4K-240hz/ Fhd-480hz 2ÉV GYÁRTOI GARANCIA!!!
- 261 - Lenovo LOQ (17IRX10) - Intel Core i7-14700HX, RTX 5070
- AKCIÓ! Apple MacBook Pro 16 M1 Max 32GB RAM 1TB SSD notebook garanciával hibátlan működéssel
- BESZÁMÍTÁS! Asus EX-B365M i5 9600K 16GB DDR4 500GB SSD RX 5500 XT 8GB Zalman T3 Plus 600W
- Dell Precision 7550 i7-10850H 32GB 512GB Nvidia RTX5000 16GB 1 év garancia
- Honor Magic5 Lite 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
