Feladat: I.225 Korcsoport: - Nehézségi fok: -
Füzet: 2009/november, 489. oldal  PDF file
Témakör(ök): Feladat

A szöveg csak Firefox böngészőben jelenik meg helyesen. Használja a fenti PDF file-ra mutató link-et a letöltésre.

E feladat a szöveges állományok gyors és hatékony feldolgozásának eszközét, az awk programozási nyelv alapszintű megismerését tűzi ki célul az alábbi feladat megoldásán keresztül.
A meccs.txt (honlapunkról letölhető) szövegfájl labdarúgó mérkőzések eredményeit tartalmazza. Soronként egy mérkőzés adatai láthatók (hazai csapat, vendégcsapat, hazai gólok száma, vendég gólok száma), az egyes értékeket egyetlen szóköz választja el egymástól.
Adjuk meg a következő feladatok megoldását awk nyelven.

1.Készítsük el a mérkőzések listáját a következő minta szerint:
Alfa ‐ Béta: 1‐2 (A mérkőzések megjelenítését a későbbiekben is ilyen módon várjuk el.)
2.Listázzuk ki a Gamma csapat mérkőzéseit.
3.Jelenítsük meg a Delta csapat otthoni győztes mérkőzéseit.
4.Adjuk meg, hány mérkőzést tartalmaz az állomány.
5.Írjuk ki a képernyőre, mekkora volt a legnagyobb különbségű vendéggyőzelem.
6.Számítsuk ki az Alfa otthon szerzett pontszámát. (A győzelemért 3, a döntetlenért 1 pont jár.)
7.Készítsünk statisztikát, amely kilistázza, hogy melyik eredmény hányszor fordult elő. Feltételezhető, hogy egyetlen csapat sem szerzett 9 gólnál többet. (Az eredményt a hazai csapat szemszögéből kell vizsgálni.)

Az első négy feladat megoldása 1-1, a további feladatok megoldása 2 pontot ér.
Mintafeladat: Adjuk meg, hány gól született a mérkőzéseken összesen. E feladat megoldását a következő parancs szolgáltatja:
 
awk "BEGIN { ossz=0 }{ ossz+=($3+$4) } END { print ossz }" meccs.txt
 
A parancs windows alatt működik, linux alatt a határoló jelek módosítására szükség lehet.
Az eszköz megismerését segítheti a következő címen található leírás:
http://hup.hu/old/gawk/tobb/gawk_toc.html.
Beküldendő az egyes feladatok megoldását jól elkülönített módon tartalmazó i225.txt fájl, amelyben szerepeljen az operációs rendszer megnevezése és a megoldáskor használt awk verziószáma is.