Informatika1-2007/Feladatok

A MathWikiből
(Változatok közti eltérés)
a (Informatika1/Feladatok moved to Informatika1-2007/Feladatok: Új félév jött.)
 
(2 szerkesztő 18 közbeeső változata nincs mutatva)
1. sor: 1. sor:
== Feladatok ==
+
== Feladatok az 1. ZH-hoz ==
  
 
=== Logikai műveletek ===
 
=== Logikai műveletek ===
14. sor: 14. sor:
 
## 1 1/3 + 2 2/3
 
## 1 1/3 + 2 2/3
 
# Konvertáljuk az alábbi 2-es komplemensben ábrázolt számokat 10-es számrendszerbe. Minden szám épp annyi bites ábrázolást használ ahány bitje meg van adva.<br/> (a) 00101011  &nbsp; (b) 1101 &nbsp; (c) 11010 &nbsp; (d) 10111111
 
# Konvertáljuk az alábbi 2-es komplemensben ábrázolt számokat 10-es számrendszerbe. Minden szám épp annyi bites ábrázolást használ ahány bitje meg van adva.<br/> (a) 00101011  &nbsp; (b) 1101 &nbsp; (c) 11010 &nbsp; (d) 10111111
# Konvertáljuk 2-es komplemens 8-bites alakba az alábbi számokat<br/> (a) 15 &nbsp; (b) -15 &nbsp (c) 100 &nbsp; (d) -100
+
# Konvertáljuk 2-es komplemens 8-bites alakba az alábbi számokat<br/> (a) 15 &nbsp; (b) -15 &nbsp; (c) 100 &nbsp; (d) -100
 
# Melyik a legnagyobb és legkisebb ábrázolható szám 2-es komplemens ábrázolás esetén (a) négy, (b) nyolc biten?
 
# Melyik a legnagyobb és legkisebb ábrázolható szám 2-es komplemens ábrázolás esetén (a) négy, (b) nyolc biten?
 
# Végezzük el az alább megadott műveleteket a 2-es komplemens ábrázolással megadott számokkal, majd ellenőrizzük az eredményt 10-es számrendszerbe konvertálással. Figyeljünk az esetleges túlcsordulásra.
 
# Végezzük el az alább megadott műveleteket a 2-es komplemens ábrázolással megadott számokkal, majd ellenőrizzük az eredményt 10-es számrendszerbe konvertálással. Figyeljünk az esetleges túlcsordulásra.
117. sor: 117. sor:
 
     számláló <- számláló + 1
 
     számláló <- számláló + 1
  
=== Maple feladatok ===
+
=== Maple és bc feladatok ===
  
 
1. Mi lesz rek(5) értéke?
 
1. Mi lesz rek(5) értéke?
133. sor: 133. sor:
 
  end proc;
 
  end proc;
  
 +
2. Írjuk át az előző feladatot bc-be.
  
2. Mi lesz az eredménye az alábbi kódnak?
+
3. Mi lesz az eredménye az alábbi kódnak?
  
 
  select(i->isprime(i+2),[seq(i,i=1..20)]);
 
  select(i->isprime(i+2),[seq(i,i=1..20)]);
  
3. Mit ad vissza az alábbi program? L egy lista, amelyben sok 8 és 9 elem van (mindegyikből legalább 10).
+
4. Mit ad vissza az alábbi program? L egy lista, amelyben legaláb 10 darab 8-as és legalább 10 darab 9-es van.
  
 
  k := 0;
 
  k := 0;
149. sor: 150. sor:
 
  k;
 
  k;
  
Mit ad vissza az alábbi program?
+
5. Mit ad vissza az alábbi program?
  
 
  lista := [1,5,4,6,3,2,2];
 
  lista := [1,5,4,6,3,2,2];
 
  k := 1; q := lista[1];
 
  k := 1; q := lista[1];
 
  for j from 2 to nops(lista) do
 
  for j from 2 to nops(lista) do
  if lista[j] > q then
+
  if lista[j] > q then
  k := j;
+
    k := j;
  q := lista[j];
+
    q := lista[j];
  end if;
+
  end if;
 
  end do;
 
  end do;
 
  k;
 
  k;
 +
 +
6. Írjunk egy power nevű bc programot a beépített függvényeket használva (bc -l), mely a power(a,b) hívás után kiszámítja <math>a^b</math> értékét nem csak egész <math>b</math> esetén.
 +
 +
== Feladatok a 2. ZH-hoz ==
 +
 +
=== LaTeX ===
 +
 +
1. Mit jelentenek az alábbi fogalmak: ligatúra, törhetetlen szóköz, kurzív kiegyenlítés, groteszk (betűcsalád)?
 +
 +
2. Mi a különbség (La)TeX-ben parancs és deklaráció között? Mondj mindkettőre 2-2 példát!
 +
 +
3. Egy magyar nyelvű dokumentum írásában a 60-dik oldal közelében jársz, ami a negyedik vagy ötödik fejezete lesz a műnek. Hogyan fogsz a dokumentum más részeiben erre a részre hivatkozni?
 +
 +
4. Készítsd el az alábbi táblázatot LaTeX-ben!
 +
AND | 0 1
 +
----+-----
 +
  0  | 0 0
 +
  1  | 0 1
 +
 +
5. Írd le a következő fájl forráskódját: [http://www.math.bme.hu/~morap/minta.pdf alábbi képleteket]! Nem kell a fájl preambulumát leírni (\documentclass ... \usepackage ...,) de kell a cím, és a dokumentum törzse (\begin{document} ... \section ... \end{document}).
 +
 +
6. Írd le Pythagoras tételét egy tételszerű környezetben, és hivatkozz rá!
 +
 +
A képletek leírásánál tudni kell használni az alábbi függvényeket, parancsokat:
 +
\int, \lim, \dots, \infty, \frac, _, ^, \sum, \sin, \cos, \pi, \left(, \right), \left|, \right|, \le, \ge, \ne
 +
 +
=== HTML ===
 +
 +
1. Készítsd el az alábbi táblázatot XHTML-ben!
 +
<table border = "1">
 +
<tr><th>Hová </th><th> Indulás </th><th> Érkezés </th></tr>
 +
<tr><th>Bécs </th><td> 08:10 </td><td> 12:20 </td></tr>
 +
<tr><th>Pécs </th><td> 10:15 </td><td> 14:20 </td></tr>
 +
</table>
 +
 +
 +
=== Reguláris kifejezések ===
 +
 +
1. Írj olyan reguláris kifejezést, amely illeszkedik az alábbi email-címekre:
 +
 +
wazzup@hotmail.com
 +
juppie@googlemail.com
 +
jee@freemail.hu
 +
yes@egon.gyaloglo.hu
 +
login@inf.elte.hu
 +
 +
de nem illeszkedik a következőkre:
 +
 +
nem@jo@hotmail.com
 +
bena@hu
 +
ez@sem.leszjo
 +
ujabbrosszpelda@
 +
ezisrossz@.hu
 +
@gmail.com
 +
 +
Segítség: Használhatjuk a \b horgonyt a szóhatár megtalálásához (esetünkben ez egybeesik a sor végével is).
 +
 +
2. Írj reguláris kifejezést, mely illeszkedik az összes olyan 2-jegyű számra, mely előtt a Combinatorics' szöveg szerepel, pl. illeszkedik a 98-ra a '''Combinatorics'98 Conference''' szövegben, de nem illeszkedik a 98-ra a '''már 98 óta''' szövegben!
 +
 +
3. Példa ''sed'' parancs használatára. A titkárnőnk begépelte egy [http://www.math.bme.hu/~morap/titkarno.txt titkarno.txt] nevű fájlba az ismerőseim nevét, születési időpontját és lakhelyét. (A fájl letölthető a linkről).
 +
 +
A ''cat'' parancs hatására kilistázhatjuk a fájl tartalmát:
 +
 +
cat titkarno.txt
 +
 +
Kiss Ábel, szül:1984.05.01,Budapest
 +
Nagy Tamás, szül:Ajka,1983.08.04
 +
Közepes Ákos, szül:1985.03.01,Gyöngyös
 +
Átlagos Mihály, szül:Debrecen,1983.05.15
 +
Nevesincs Gergely, szül:1982.01.25,Szolnok
 +
Mégegy Ábel, szül:1982.10.11,Budapest
 +
 +
A kimenetet beirányítjuk a ''sed'' parancs bemenetére, majd a sed paranccsal kicseréljük az összes Ábelt Olgára:
 +
 +
cat titkarno.txt | sed -r 's/Ábel/Olga/g'
 +
 +
Kiss Olga, szül:1984.05.01,Budapest
 +
Nagy Tamás, szül:Ajka,1983.08.04
 +
Közepes Ákos, szül:1985.03.01,Gyöngyös
 +
Átlagos Mihály, szül:Debrecen,1983.05.15
 +
Nevesincs Gergely, szül:1982.01.25,Szolnok
 +
Mégegy Olga, szül:1982.10.11,Budapest
 +
 +
Megjegyzés: a -r opció hatására nem BRE (basic), hanem ERE (extended) regular expression-t lehet használni, vagyis azt, amelyiket leginkább szoktuk. Az s az első / jel után a ''sed'' csere parancs miatt kell, az utolsó g betű pedig opció (minden cserét hajtson végre).
 +
 +
'''Feladat''': Mint bizonyára a leleményesebbek észrevették, a sorrend rossz két helyen. Írjunk olyan parancsot, amely után a kimenet a következő lesz:
 +
 +
Kiss Ábel, szül:1984.05.01,Budapest
 +
Nagy Tamás, szül:1983.08.04,Ajka
 +
Közepes Ákos, szül:1985.03.01,Gyöngyös
 +
Átlagos Mihály, szül:1983.05.15,Debrecen
 +
Nevesincs Gergely, szül:1982.01.25,Szolnok
 +
Mégegy Ábel, szül:1982.10.11,Budapest

A lap jelenlegi, 2008. szeptember 3., 17:40-kori változata

Tartalomjegyzék

Feladatok az 1. ZH-hoz

Logikai műveletek

  1. Írjuk fel az igazságtábláját az a \land (b \lor \lnot a) kifejezésnek (\land = AND, \lor = OR, \lnot = NOT, ).
  2. Ellenőrizzük, hogy az alábbi ábrán látható logikai áramkör egy összeadó áramkör, mely két összeadandó szám k-adik bitjét adja össze, hozzáadva a (k − 1)-edik bitek összeadásának "átviteli" bitjét.


Számábrázolás

  1. Írjuk át az alábbi számokat kettes számrendszerbe:
    (a) 15   (b) 100   (c) 15.4   (d) 1/3
  2. Számolás kettes számrendszerben: írjuk át az alábbi műveletekben megadott számokat kettes számrendszerbe, végezzük el a műveletet, majd alakítsuk vissza 10-es számrendszerbe.
    1. 1 3/4 + 5 13/16
    2. 1 1/3 + 2 2/3
  3. Konvertáljuk az alábbi 2-es komplemensben ábrázolt számokat 10-es számrendszerbe. Minden szám épp annyi bites ábrázolást használ ahány bitje meg van adva.
    (a) 00101011   (b) 1101   (c) 11010   (d) 10111111
  4. Konvertáljuk 2-es komplemens 8-bites alakba az alábbi számokat
    (a) 15   (b) -15   (c) 100   (d) -100
  5. Melyik a legnagyobb és legkisebb ábrázolható szám 2-es komplemens ábrázolás esetén (a) négy, (b) nyolc biten?
  6. Végezzük el az alább megadott műveleteket a 2-es komplemens ábrázolással megadott számokkal, majd ellenőrizzük az eredményt 10-es számrendszerbe konvertálással. Figyeljünk az esetleges túlcsordulásra.
    1. 1011 + 0011
    2. 11100 + 01111
    3. 0110 + 0101
    4. 1010 + 1011
  7. ábrázoljuk lebegőpontos számábrázolással az az alábbi számokat a megadott bitfelosztás szerint
    1. 1.375 (1+3+4 biten)
    2. 2.375 (1+3+4 biten)
    3. -1.375 (1+3+4 biten)
    4. -1025.4 (1+8+23 biten)
  8. Írjuk át az alábbi lebegőpontosan ábrázolt számot 10-es számrendszerbe.
    1. 1 101 0111 (1+3+4)
    2. 0 10000011 01010110000000000000000 (1+8+23)

Karakterkódolás

A következő kérdésekben csak a megadott információk alapján adjuk meg a választ!

  1. Az "a" ASCII kódja #61. Mennyi "C" kódja?
  2. Az "Õ" (LATIN CAPITAL LETTER O WITH TILDE) latin-1 kódja #D5. Mennyi az "ő" (LATIN SMALL LETTER O WITH DOUBLE ACUTE) latin-2 kódja?
  3. Az "ű" (LATIN SMALL LETTER U WITH DOUBLE ACUTE) unicode kódja U+0171. Mennyi az UTF-8 kódja?

Mennyiségek

  1. Hány byte 1 KB - 1 KiB?
  2. Egy gibibyte hány gigabyte?

Gépek, programok

Mit csinálnak a kovetkező RAM-gépre írt programok?

1. Az első program a 2. rekeszbe tesz egy számot. Mire jut vele?

 1	LOAD  =	33
 2	STORE	2 
 3	DIV   =	2
 4	STORE	1
 5	MULT  =	2
 6	SUB	2
 7	JZERO	12
 8	LOAD	2
 9	MULT  =	3
10	ADD   =	1
11	JUMP	2
12	LOAD	1
13	STORE	2
14	SUB   =	1
15	JZERO	18
16	LOAD	1
17	JUMP	3
18	HALT	11

2. Az alábbi program az 1-es és 2-es rekeszbe teszi inputját, és a 6-ba az outputját. Mit csinál?

 0	LOAD  =	12
 1	STORE	1
 2	LOAD  =	16
 3	STORE	2
 4	LOAD	2
 5	JZERO	19
 6	LOAD	1
 7	DIV	2
 8	STORE	3
 9	MULT	2
10	STORE	4
11	LOAD	1
12	SUB	4
13	STORE	5
14	LOAD	2
15	STORE	1
16	LOAD	5
17	STORE	2
18	JUMP	4
19	LOAD	1
20	STORE	6
21	HALT	0

Pszeudokód, folyamatábra, struktogram

1. Mit csinál az alábbi Valami nevű eljárás a Valami(3) hívás után?

procedure Valami( n )
   print n
   if n > 0 then Valami( n-1 )
   print n

2. Írjuk át az alábbi programot repeat utasítással, majd készítsünk mindkét változatról struktogramot és folyamatábrát!

c <- 1
x <- 1
while x < 5 do
   c <- c*x
   x <- x+1

3. Legyen x és y két nemnegatív egész szám. Az alábbi program kiszámítja a szorzatukat. Ha hibás, javítsuk ki!

szorzat <- y
számláló <- 1
while számláló < x do
   szorzat <- szorzat + y
   számláló <- számláló + 1

Maple és bc feladatok

1. Mi lesz rek(5) értéke?

rek := proc(x::integer)
local s,i;
  if x<3 then
    return x;
  end if;
  s := 0;
  for i from 1 to x-1 do
    s := s + rek(i);
  end do:
  s;
end proc;

2. Írjuk át az előző feladatot bc-be.

3. Mi lesz az eredménye az alábbi kódnak?

select(i->isprime(i+2),[seq(i,i=1..20)]);

4. Mit ad vissza az alábbi program? L egy lista, amelyben legaláb 10 darab 8-as és legalább 10 darab 9-es van.

k := 0;
for j from 1 to 3 do
  k := k+1;
  while(L[k] <> 8) do
    k := k+1;
  end do;
end do:
k;

5. Mit ad vissza az alábbi program?

lista := [1,5,4,6,3,2,2];
k := 1; q := lista[1];
for j from 2 to nops(lista) do
  if lista[j] > q then
    k := j;
    q := lista[j];
  end if;
end do;
k;

6. Írjunk egy power nevű bc programot a beépített függvényeket használva (bc -l), mely a power(a,b) hívás után kiszámítja ab értékét nem csak egész b esetén.

Feladatok a 2. ZH-hoz

LaTeX

1. Mit jelentenek az alábbi fogalmak: ligatúra, törhetetlen szóköz, kurzív kiegyenlítés, groteszk (betűcsalád)?

2. Mi a különbség (La)TeX-ben parancs és deklaráció között? Mondj mindkettőre 2-2 példát!

3. Egy magyar nyelvű dokumentum írásában a 60-dik oldal közelében jársz, ami a negyedik vagy ötödik fejezete lesz a műnek. Hogyan fogsz a dokumentum más részeiben erre a részre hivatkozni?

4. Készítsd el az alábbi táblázatot LaTeX-ben!

AND | 0 1
----+-----
 0  | 0 0
 1  | 0 1

5. Írd le a következő fájl forráskódját: alábbi képleteket! Nem kell a fájl preambulumát leírni (\documentclass ... \usepackage ...,) de kell a cím, és a dokumentum törzse (\begin{document} ... \section ... \end{document}).

6. Írd le Pythagoras tételét egy tételszerű környezetben, és hivatkozz rá!

A képletek leírásánál tudni kell használni az alábbi függvényeket, parancsokat: \int, \lim, \dots, \infty, \frac, _, ^, \sum, \sin, \cos, \pi, \left(, \right), \left|, \right|, \le, \ge, \ne

HTML

1. Készítsd el az alábbi táblázatot XHTML-ben!

Hová Indulás Érkezés
Bécs 08:10 12:20
Pécs 10:15 14:20


Reguláris kifejezések

1. Írj olyan reguláris kifejezést, amely illeszkedik az alábbi email-címekre:

wazzup@hotmail.com
juppie@googlemail.com
jee@freemail.hu
yes@egon.gyaloglo.hu
login@inf.elte.hu

de nem illeszkedik a következőkre:

nem@jo@hotmail.com
bena@hu
ez@sem.leszjo
ujabbrosszpelda@
ezisrossz@.hu
@gmail.com

Segítség: Használhatjuk a \b horgonyt a szóhatár megtalálásához (esetünkben ez egybeesik a sor végével is).

2. Írj reguláris kifejezést, mely illeszkedik az összes olyan 2-jegyű számra, mely előtt a Combinatorics' szöveg szerepel, pl. illeszkedik a 98-ra a Combinatorics'98 Conference szövegben, de nem illeszkedik a 98-ra a már 98 óta szövegben!

3. Példa sed parancs használatára. A titkárnőnk begépelte egy titkarno.txt nevű fájlba az ismerőseim nevét, születési időpontját és lakhelyét. (A fájl letölthető a linkről).

A cat parancs hatására kilistázhatjuk a fájl tartalmát:

cat titkarno.txt

Kiss Ábel, szül:1984.05.01,Budapest
Nagy Tamás, szül:Ajka,1983.08.04
Közepes Ákos, szül:1985.03.01,Gyöngyös
Átlagos Mihály, szül:Debrecen,1983.05.15
Nevesincs Gergely, szül:1982.01.25,Szolnok
Mégegy Ábel, szül:1982.10.11,Budapest

A kimenetet beirányítjuk a sed parancs bemenetére, majd a sed paranccsal kicseréljük az összes Ábelt Olgára:

cat titkarno.txt | sed -r 's/Ábel/Olga/g'

Kiss Olga, szül:1984.05.01,Budapest
Nagy Tamás, szül:Ajka,1983.08.04
Közepes Ákos, szül:1985.03.01,Gyöngyös
Átlagos Mihály, szül:Debrecen,1983.05.15
Nevesincs Gergely, szül:1982.01.25,Szolnok
Mégegy Olga, szül:1982.10.11,Budapest

Megjegyzés: a -r opció hatására nem BRE (basic), hanem ERE (extended) regular expression-t lehet használni, vagyis azt, amelyiket leginkább szoktuk. Az s az első / jel után a sed csere parancs miatt kell, az utolsó g betű pedig opció (minden cserét hajtson végre).

Feladat: Mint bizonyára a leleményesebbek észrevették, a sorrend rossz két helyen. Írjunk olyan parancsot, amely után a kimenet a következő lesz:

Kiss Ábel, szül:1984.05.01,Budapest
Nagy Tamás, szül:1983.08.04,Ajka
Közepes Ákos, szül:1985.03.01,Gyöngyös
Átlagos Mihály, szül:1983.05.15,Debrecen
Nevesincs Gergely, szül:1982.01.25,Szolnok
Mégegy Ábel, szül:1982.10.11,Budapest
Személyes eszközök