Informatika2-2012/Gyakorlat03

A MathWikiből
(Változatok közti eltérés)
4. sor: 4. sor:
  
 
   
 
   
===== Miért nem fut végtelen ciklusba a következõ kód? =====
+
===== Miért nem fut végtelen ciklusba a következő kód? =====
  
 
<c>
 
<c>
19. sor: 19. sor:
  
 
===== Adatlap =====
 
===== Adatlap =====
 +
 
Kérj be adatokat a felhasználótól egy emberről, mégpedig a következőket:
 
Kérj be adatokat a felhasználótól egy emberről, mégpedig a következőket:
 
* születési év
 
* születési év
34. sor: 35. sor:
 
A printf-ben "%1.8f" -fel jelölheted hogy egy float típusú változót úgy akarsz kiírni hogy az egész részt egy karakterrel írod ki, a tört részt pedig 8 karakterrel.
 
A printf-ben "%1.8f" -fel jelölheted hogy egy float típusú változót úgy akarsz kiírni hogy az egész részt egy karakterrel írod ki, a tört részt pedig 8 karakterrel.
  
 
===== Különbség tömbökkel =====
 
Írj C programot, ami 5 darab egész értéket kér be a felhasználótól (scanf() függvénnyel), és kiírja a kapott legnagyobb és legkisebb szám különbségét ezzel a szöveggel: "A maximalis kulonbseg: ''x''", ahova persze x-et behelyettesíti.
 
Használj tömböt az értékek tárolására!
 
 
  
 
===== Hatvány függvény =====
 
===== Hatvány függvény =====
58. sor: 54. sor:
  
 
Módosítsd úgy az előző függvényt, hogy a keresendő elem első előfordulási indexét adja vissza.
 
Módosítsd úgy az előző függvényt, hogy a keresendő elem első előfordulási indexét adja vissza.
 +
 +
===== Medián =====
 +
 +
Bemenet: maximum 30 pozitív egész szám, 0-val jelezzük ha vége a bemenetnek.
 +
Kimenet: a számsorozat mediánja (vagyis a középső elem ha sorbarendezzük a számokat).
 +
 +
A feladat megoldásához előbb nagyság szerint sorba kell rendezni a számokat. Erre többféle algoritmus létezik. Ha szereted a kihívásokat, akkor ki is találhatsz egyet, ha viszont nem, vagy nincs már már idő a gyakorlat végén,
 +
akkor használd a buborék rendezést: http://wiki.prog.hu/wiki/Bubor%C3%A9krendez%C3%A9s_%28algoritmus%29 . De ebben az esetben se copy-paste-elj, hanem értsd meg az algoritmust és gépeld be a saját változóneveiddel.
 +
 +
Legyen a ''main()''-en kívül két függvény is a programodban, az egyik a rendezést oldja meg, a másik egy rendezett tömbből visszaadja a medián értékét.

A lap 2012. február 22., 22:45-kori változata

Tartalomjegyzék

Típusok, tömbök, függvények

A lenti feladatokat a CodeLite-ban oldhatjátok meg legegyszerűbben (ne felejtsetek el minden feladathoz új projektet nyitni!), de akinek a konzolos, gcc-s fordítás a szimpatikusabb úgy is csinálhatja.


Miért nem fut végtelen ciklusba a következő kód?
#include<stdio.h>
int main(void){
    char i;
    for(i = 1; i != 0; i++){}
    return 0;
}

Módosítsd úgy a kódot, hogy minden lépésnél írja ki a képernyőre i értékét, szóközökkel elválasztva! (Újsor jelet csak a ciklus után írj ki, egyszer!)


Adatlap

Kérj be adatokat a felhasználótól egy emberről, mégpedig a következőket:

  • születési év
  • magasság méterben
  • tömeg kilogrammban

Majd írd ki a képernyőre ugyanezeket, szépen formázva, egymás alá rendezve, így nézzen ki (használd a printf-ben a "\t"-t arra hogy tab-ot írj ki):

 Kora:      19     ev
 Magassag:  1.75   m
 Tomeg:     69     kg

Válaszd meg jól a változók típusait amiket használsz!

A tört érték kiírásának formázásához segítség: A printf-ben "%1.8f" -fel jelölheted hogy egy float típusú változót úgy akarsz kiírni hogy az egész részt egy karakterrel írod ki, a tört részt pedig 8 karakterrel.


Hatvány függvény

Írj hatvány függvényt ("hatvany" névvel), első paramétere az alap, második a kitevő (ne felejtsük el a negatív kitevőket, de elég ha csak egész kitevőkkel működik). A main() függvényben hívd meg a "hatvany()" függvényt néhányszor, és írd a képernyőre az eredményt.


Minimum

Írj függvényt ami a beadott (double típusú elemeket tartalmazó) tömbnek visszaadja a legkisebb elemét (első paraméter a tömb, második a tömb mérete). Itt is (és a többi feladatnál is) a main() végezze az eredmény kiírását (és az esetleges beolvasást a felhasználótól az elején, de ez nem fontos, a main() függvény kódjában közvetlenül is definiálhatod az átadandó értékeket).


Számláló

Írj függvényt ami a beadott karaktereket tartalmazó tömbben megszámolja hányszor szerepel egy adott karakter (első paraméter a tömb, második a tömb mérete, harmadik a keresendő elem).


Kereső

Módosítsd úgy az előző függvényt, hogy a keresendő elem első előfordulási indexét adja vissza.

Medián

Bemenet: maximum 30 pozitív egész szám, 0-val jelezzük ha vége a bemenetnek. Kimenet: a számsorozat mediánja (vagyis a középső elem ha sorbarendezzük a számokat).

A feladat megoldásához előbb nagyság szerint sorba kell rendezni a számokat. Erre többféle algoritmus létezik. Ha szereted a kihívásokat, akkor ki is találhatsz egyet, ha viszont nem, vagy nincs már már idő a gyakorlat végén, akkor használd a buborék rendezést: http://wiki.prog.hu/wiki/Bubor%C3%A9krendez%C3%A9s_%28algoritmus%29 . De ebben az esetben se copy-paste-elj, hanem értsd meg az algoritmust és gépeld be a saját változóneveiddel.

Legyen a main()-en kívül két függvény is a programodban, az egyik a rendezést oldja meg, a másik egy rendezett tömbből visszaadja a medián értékét.

Személyes eszközök