A mellékelt beugro_a illetve beugro_b program kiegészítése, hogy minden pontot megadjon a program. A programban már adott szöveget nem szabad módosítani, kizárólag a kommentjelzést szabad eltávolítani a main() függvényből. Munka közben javasolt folyamatosan haladni ellenoriz() függvényenként a kommentezés eltávolításával. A beugró akkor érvényes, ha minden feladat rész kész van, és nincs semmilyen módosítás a main() függvényben és az ellenoriz() makróban, illetve tilos új #define leírása is. Ha elkészültél jelezd egy felügyelőnek, aki értékeli a beugródat.
Figyelem: érvényes beugró nélkül nem értékeljük a második feladatot!
A mellékelt NearStars.csv fájl a Naprendszerhez közeli csillagok adatait tartalmazó adatbázis. A fájlban az adatokat ';' választja el egymástól. Az egyes mezők leírása:
Common Name - A csillag általános neve Sibling - Multi naprendszerek (több csillag van a rendszer középpontjában) esetén a napok kiegészítő betűjele, egyébként üres mező Equatorial Coordinates RA - Rektaszcenzió: jobboldali elfordulás az égi egyenlítőn (ekvatoriális koordináta rendszer lambda szöge: óra, perc) Equatorial Coordinates DEC - Deklináció: elhajlás az égi egyenlítőtől (ekvatoriális koordináta rendszer phi szöge: fok, fokmásodperc) Class - Spektrális osztály, azaz a csillag színkódja Visual Magnitude - Látszólagos fényesség (0 hiányzó adatot és nem konkrét értéket jelent!) Absolute Magnitude - Abszolút fényesség (10 parsec távolságból észlelt magnitudó)(0 hiányzó adatot és nem konkrét értéket jelent!) Parallaxis (Prllx) - Paralaxis (milliívmásodperc) az a szög amely alatt a csillag egy külső pontból (Föld) látszik Error - A paralaxis hibája Distance (in ligthyear) - A csillag Nap-tól vett távolsága fényévekben Gliese - A csillag Gliese kódja Other Names/Notes - A csillag egyéb neve jegyzetei
Egy kis matek segítség: - RA átváltása rad-ra: (óra+perc/60)/24*360*PI/180 (=lambda) - DEC átváltása rad-ra: fok+fokmásodperc*60*PI/180 (=phi) Ekvatoriális koordináta rendszerről Descartes koordináta rendszerre áttérés, ahol R a távolság: - X = R*cos(phi)*cos(lambda) - Y = R*cos(phi)*sin(lambda) - Z = R*sin(phi) Két térbeli pont p1(x1,y1,z1) illetve p2(x2,y2,z2) távolságának kiszámítása: - D = négyzetgyök( (X2-X1)^2 + (Y2-Y1)^2 + (Z2-Z1)^2 )
Az irányadó pontozási forma a következő: 10 pont a sikeres beugró, az 1-2-3 részfeladatok működése 10-10-10 pont, a második feladatban használt függvények eleganciája 10 pontig, a rekordok értelmes tervezése szintén 10 pontig értékelhető, de összesen nem lehet több, mint az 1-2-3 működésre adott pontok összege - nem lehet nem működő programra pontot kapni, csak mert szép. A géptermi ZH sikeres teljesítéséhez minimum elérendő pont: 10 pont