User Tools

Site Tools


tanszek:oktatas:muszaki_informatika:matrixok_kezelese

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
tanszek:oktatas:muszaki_informatika:matrixok_kezelese [2025/02/12 13:24] kneheztanszek:oktatas:muszaki_informatika:matrixok_kezelese [2025/03/13 22:32] (current) – [Ellenőrző kérdések] knehez
Line 352: Line 352:
  
 ** 9. feladat **: vizsgáljuk meg a llama chat model c implementációját: https://github.com/karpathy/llama2.c/blob/master/run.c a 217.es sortól kezdődő függvényt. ** 9. feladat **: vizsgáljuk meg a llama chat model c implementációját: https://github.com/karpathy/llama2.c/blob/master/run.c a 217.es sortól kezdődő függvényt.
 +
 +===== Ellenőrző kérdések =====
 +
 +**Mi a helyes deklaráció egy 3×3-as egész mátrix létrehozására C-ben?**
 +
 +  A) int matrix[3][3];
 +  B) int matrix[9];
 +  C) int matrix[3,3];
 +  D) matrix int[3][3];
 +
 +Megoldás: A
 +
 +----
 +**Mi lesz a következő kódrészlet eredménye?**
 +
 +<sxh c>
 +int matrix[2][2] = {{1,2}, {3,4}};
 +printf("%d", matrix[1][0]);
 +</sxh>
 +
 +  A) 1
 +  B) 2
 +  C) 3
 +  D) 4
 +
 +Megoldás: C (az első sor nulladik eleme, ami a 3, hiszen a sorok is 0-tól indulnak.
 +
 +----
 +**Milyen ciklusszerkezet alkalmas egy kétdimenziós mátrix minden elemének bejárására?**
 +
 +  A) Egyetlen for-ciklus
 +  B) Egymásba ágyazott for-ciklusok
 +  C) while ciklus, egyetlen feltétellel
 +  D) Nincs szükség ciklusra
 +
 +Megoldás: B
 +
 +----
 +**Mi lesz a kód eredménye?**
 +<sxh c>
 +int arr[3][3] = {{1,2,3},{4,5,6},{7,8,9}};
 +printf("%d", arr[1][2]);
 +</sxh>
 +
 +  A) 2
 +  B) 4
 +  C) 6
 +  D) 8
 +
 +Megoldás: C  --> 2. sor 3. eleme, ami a 6-os.
 +
 +----
 +**Melyik állítás igaz az alábbiak közül?**
 +
 +  A) A C-ben a mátrix sorainak száma opcionális deklarációkor.
 +  B) Mátrixokat nem lehet paraméterként átadni függvényeknek.
 +  C) Mátrix elemei mindig ugyanazt a típust tárolják.
 +
 +Megoldás: C
 +
 +----
 +**Hogyan adunk át egy mátrixot paraméterként egy függvénynek C-ben helyesen?**
 +
 +  A) void fuggveny(int matrix[][])
 +  B) void fuggveny(int **matrix)
 +  C) void fuggveny(int matrix[][3])
 +  D) void fuggveny(matrix int[3][3])
 +
 +Megoldás: C  --> második dimenzió méretét kötelező megadni
 +
 +----
 +**Hogyan érhető el az alábbi mátrix legutolsó eleme (9) az alábbi deklarációból?**
 +
 +<sxh c>
 +int mat[3][3] = {{1,2,3},{4,5,6},{7,8,9}};
 +</sxh>
 +
 +  A) mat[9]
 +  B) mat[3][3]
 +  C) mat[2][2]
 +  D) mat[3][2]
 +
 +Megoldás: C  --> mivel az indexelés 0-tól indul
 +
 +----
 +**Mit csinál az alábbi kód?**
 +
 +<sxh c>
 +int mat[3][3] = {0};
 +</sxh>
 +
 +  A) Lefoglal egy 3x3-as mátrixot véletlenszerű értékekkel.
 +  B) Lefoglal egy 3x3-as mátrixot nullákkal feltöltve.
 +  C) Csak a mátrix első elemét inicializálja 0-ra.
 +  D) Csak a mátrix első sorát tölti fel nullával.
 +
 +Megoldás: B  -> a modern c-ben ezzel a szintaktikával lehet nullákkal feltölteni egy mátrixot.
 +
 +----
 +** Hogyan lehet helyesen dinamikusan lefoglalni egy 5×5-ös mátrixot? **
 +
 +  A) int mat[5][5] = malloc(25 * sizeof(int));
 +  B) 
 +<sxh c>
 +int **mat = malloc(5 * sizeof(int *));
 +for(int i = 0; i < 5; i++)
 +    mat[i] = malloc(5 * sizeof(int));
 +</sxh>
 +  C) int *mat[5] = malloc(sizeof(int) * 25);
 +  D) int mat[][] = malloc(5*5*sizeof(int));
 +
 +Megoldás: B
 +
 +----
 +**Hogyan kell helyesen felszabadítani a memóriát egy dinamikusan foglalt kétdimenziós mátrix esetén?**
 +
 +  A) free(mat);
 +  B)
 +<sxh c>
 +for (int i = 0; i < sorok; i++)
 +    free(mat[i]);
 +free(mat);
 +</sxh>
 +  C) free(mat[][]);
 +  D) free(mat);
 +  
 +Megoldás: B
 +
 +----
 +
 +
 +
  
tanszek/oktatas/muszaki_informatika/matrixok_kezelese.1739366650.txt.gz · Last modified: 2025/02/12 13:24 by knehez