Felkészülés a gyakorlatra
-
Az 4. előadás anyagának átnézése
Típusok
Ábrázolási korlátok és pontosság
-
Az 5. előadás anyagának átnézése
Struktúrák
Operátorok
Az 5. gyakorlat anyagának átismétlése
1. Feladat
Egy síkbeli pont tárolásához tároljuk el egy struktúrában a koordinátáit. Induljunk ki a 6_01.c programból!
-
Definiáljuk a megfelelő adattípust!
-
Próbáljuk ki a függvényt, amely kiírja egy ilyen pont koordinátáit!
-
Írjunk függvényt, mely két síkpontot összekötő szakasz felezőpontját adja vissza!
2. Feladat
Írjunk C függvényt, amely bitenként kiír egy egész számot!
-
Írjuk meg a függvényt előjel nélküli egészekhez!
-
Oldjuk meg úgy is, hogy a bitek nem fordított sorrendben vannak! Az ezt megvalósító függvény letölthető innen.
3. Feladat
Egy int változó alulról harmadik bitjét állítsuk át! Minden beállítás után hívjuk meg a fenti maszkolós kiírót, hogy látsszon az eredmény!
-
Állítsuk be 1-be!
-
Állítsuk be 0-ba!
-
Invertáljuk!
4. Feladat
Vizsgáljuk meg az egész típus méretét.
-
Írjunk függvényt, mely egészekkel dolgozik és egy szám faktoriálisát adja vissza! Hívjuk meg a függvényt 1-től 30-ig és írassuk ki az eredményt!
-
Írjuk meg és próbáljuk ki a függvényt úgy is, hogy az eredményt egy double-ban számolja!
5. Feladat
Vizsgáljuk meg a double pontosságát! Használjuk fel az innen letölthető függvényeket.
-
Hívjuk meg a dblpontossag_1 függvényt és határozzuk meg annak a számtartománynak a nagyságrendjét (EXP), ahol már nem tudjuk pontosan ábrázolni a számegyenes egészeit double-ként!
-
Hívjuk meg a dblpontossag_2 függvényeket és határozzuk meg, hogy a 3.0 környezetében hány tizedesjegyre pontos a double ábrázolás!
Fakultatív házi feladatok
-
Definiáljunk adattípust középpontjával (pont struktúra) és sugarával adott kör ábrázolására! Írjunk függvényt, amely egy paraméterként kapott körnek egy ugyancsak paraméterként kapott pontra vett tükörképét (egy kört) adja vissza!
-
Írjuk meg a bitminta kiíró függvényt előjeles egészekhez! Tipp: az előjelet külön kezeljük, a többi lépés azonos az előjel nélküli esettel.
-
A 6_f3.c forráskódot kiegészítve készítsük el egy közlekedési lámpa váltásait „szimuláló” programot. A lámpa aktuális állapotát három biten tároljuk, de nem az int legalsó három bitjén és a többi bitet nem szabad módosítani!
-
Írjunk függvényt, amiből bitben számolva megvizsgálhatjuk a double pontosságát!
-
Írjunk függvényt, mely visszaadja a legnagyobb ábrázolható egész számot.
-
Írjunk függvényt, mely visszaad egy előjel nélküli egészet, aminek a bitmintája megfelel a bemeneten érkezett előjel nélküli egészének, csak fordított sorrendben!
-
Írjunk függvényt, amely beolvas két egész számot, és kiírja az összegüket úgy, hogy az előjel nélküli egész paramétereket és az eredményt is BCD-ben kódolt számokként értelmezi! A BCD számábrázolásban egy-egy bájton két-két decimális számjegyet tárolunk.
-
A példatár kapcsolódó feladatai
Felkészülés a következő foglalkozásra
-
Az 6. előadás anyagának átnézése
Pointerek
Pointerek és tömbök kapcsolata
Tömb átadása függvénynek
Sztringek
A 4. gyakorlat anyagának átismétlése
A 5. gyakorlat anyagának átismétlése
A 6. gyakorlat anyagának átismétlése