1 / 11

Motorverseny

Motorverseny. A Motorverseny feladat szövege. Ismert a SuperBike világbajnokság 0<n<1<=12 idei futamának beérkezési sorrendje, a BIKE.BE fájlban. Minden sorban 1 név van, futamonként legfeljebb 6. Az egyes futamokat egy üres sor választja el egymástól (mindig maximum hatan érkeznek be).

nedaa
Download Presentation

Motorverseny

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Motorverseny

  2. A Motorverseny feladat szövege Ismert a SuperBike világbajnokság 0<n<1<=12 idei futamának beérkezési sorrendje, a BIKE.BE fájlban. Minden sorban 1 név van, futamonként legfeljebb 6. Az egyes futamokat egy üres sor választja el egymástól (mindig maximum hatan érkeznek be). • Adjuk meg azok névsorát a FUTAM.TXT fájlban, akik minden futamon célba érkeztek! Minden sorban pontosan egy név szerepeljen! • A LISTA.TXT-be kerüljön be a világbajnokság eredményrangsora (rendezés)! A győztes hat, a többiek rendre eggyel kevesebb pontot kapnak! Minden sorban egy név legyen mellette egy szóköz, utána a pontszám! motorverseny - Várhelyi Ágnes

  3. Változók • 3db textfájl (BIKE.BE; FUTAM.TXT; LISTA.TXT) • Amibe kiolvasunk (v) • Olyan rekordokból álló vektor, ahol • nev  versenyző neve (v.n) • pont  az olvasásig elért összpontszáma (v.p) • futam  az olvasásig teljesített futamok száma (v.f) • A futamok számlálója (fut) • Futamon belül a helyezés számlálója (hely) • A versenyzők számának nyilvántartása (n) • „sor ” a fájlba íráshoz (sor) motorverseny - Várhelyi Ágnes

  4. Adatbeolvasás - kezdőrekord Hozzárendel(f,”BIKE.BE”) Megnyit_olvasásra(f) Fut:=1 n:=0; hely:=0 Olvas(f.sor) Ciklus amíg sor nem üres n:=n+1; hely:=hely+1 V[n].n:=sor; v[n].p:=6+1-hely olvas(f,sor) Ciklus vége (első futam) motorverseny - Várhelyi Ágnes

  5. Adatbeolvasás - folyamatos Olvaseljárás(f:textfájl; sor:string; fv:logikai) fv:=hamis Ha nem fájlvége akkor sor:=olvas(f,sor) Különben fv:=igaz Eljárás vége motorverseny - Várhelyi Ágnes

  6. A teljes beolvasás ciklusa Olvaseljárás(f,sor,fv) Ciklus amíg nem fv fut:= fut+1 Feldolgozva beír v-be olvaseljárás(f,sor,fv) Ciklus vége (fájlvégéig) Bezár(f) motorverseny - Várhelyi Ágnes

  7. A v-be beírás ciklusa Hely:=0 Ciklus amíg nem fv & sor nem üres hely:=hely+1 keresésarra, hogy ez a név szerepelt-e már egy korábbi futamban (l igaz akkor igen) ha nem l akkor n:=n+1; i:=n v[i].n:=sor; v[i].p:=0; v[i].futam:=0 v[i].p:= v[i].p+6+1-hely; v[i].f:= v[i].f+1 Olvaseljárás(f,sor,fv) Ciklus vége(sor nem üres) motorverseny - Várhelyi Ágnes

  8. A keresés i:=0 l:=hamis Ciklus amíg i<n & nem l i:=i+1 l:=v[i].n=sor Ciklus vége (keres) motorverseny - Várhelyi Ágnes

  9. A FUTAM.TXT feltöltése Hozzárendel(h, „FUTAM.TXT”) Megnyit_írásra(h) Ciklus i:= 1, k ha v[i].f=fut akkor ír_soremeléssel(h, v[i].n) Ciklus vége (h-ba írás) motorverseny - Várhelyi Ágnes

  10. A LISTA.TXT készítése  rendezés Ciklus i:=1, n-1 ciklus j:=i+1, n ha v[i].p < v[j].p akkor sv:=v[i].n v[i].n:=v[j].n v[j].n:=sv ciklus vége (j) Ciklus vége (i) motorverseny - Várhelyi Ágnes

  11. A LISTA.TXT fájl feltöltése Hozzárendel(g, „LISTA.TXT”) Megnyit_írásra(g) Ciklus i:=1, k sor:=v[i].n+’ ‘+v[i].p ír(g, sor) Ciklus vége (g-be írás) Bezár (g) motorverseny - Várhelyi Ágnes

More Related