Tartalomjegyzék

Mit csinál? Mi a szerepe?

1995/9-10/1/6

Egy Pascal-szerű programnyelven írtunk programrészletet az alábbiakban. Ezen a nyelven az elágazások és a ciklusok végét is az End alapszó jelzi.

	l:=False;
	For i:=1 to 100 do
		If a[i]>0 then
			If l then
        				If a[i]<m then m:=a[i]; n:=i;
        				End;
     			else
        				l:=True; n:=i; m:=a[n];
    			End;
    		End;
  	End;

1996/9-10/1/2

Az N (>1) elemű A vektorban egész számok vannak. Milyen vektorbeli értékek esetén írnak ki az alábbi programok IGEN választ?

V:=IGAZ
Ciklus i:=2-től N-ig
	V:=V AND (A(i)>A(i-1))
Ciklus vége
Ha V akkor Ki: ”IGEN”
V:=HAMIS
Ciklus i:=2-től N-ig
	V:=V OR (A(i)>A(i-1))
Ciklus vége
Ha V akkor Ki: ”IGEN”

1997/9-10/1/1

Az A és B halmazok egész számokat tartalmaznak. Mindkét halmaznak van olyan eleme, amelyik a másiknak nem eleme. Használni fogjuk a következő utasításokat:

nemüres(H) igaz, ha a H halmaznak legalább egy eleme van.
eleme(e, H) igaz, ha az e elem benne van a H halmazban.
üreshalmaz üres halmazt ad eredményül.
egyeleme(H) a H halmaz egy tetszőleges elemét adja eredményül.
hozzáad(e,H) az e elemet berakja a H halmazba.
kivesz(e,H) az e elemet kiveszi a H halmazból.
Valami:
	H:=üreshalmaz
	Ciklus amíg nemüres(A) vagy nemüres(B)
		Ha nemüres(A) akkor  e:=egyeleme(A)
		            különben e:=egyeleme(B)
		Ha eleme(e,A) akkor kivesz(e,A)
		Ha eleme(e,B) akkor kivesz(e,B)
		hozzáad(e,H)
	Ciklus vége
Eljárás vége.

1997/9-10/1/3

Egy programozási nyelvben az elágazás (IF utasítás) végét mindig a FI, a ciklus (DO utasítás) végét pedig az OD alapszó jelzi. Készítettünk egy algoritmust, amely ellenőrzi az IF-FI, illetve a DO-OD párok helyes párosítását. A megoldásban az N elemű X vektor tartalmazza a program szavait.

Ellenőr:
	A:=0: B:=0
	Ciklus I=1-től N-ig
		Elágazás
			X(I)="IF" esetén A:=A+1: V(A):=B
			X(I)="DO" esetén B:=B+1
			X(I)="FI" esetén A:=A-1: Ha A<0 akkor HIBA1
			                 Ha V(A+1)<B akkor HIBA2
			                 Ha V(A+1)>B akkor HIBA3
			X(I)="OD" esetén B:=B-1: Ha B<0 akkor HIBA4
		Elágazás vége
	Ciklus vége
	Ha A>0 akkor HIBA5
	Ha B>0 akkor HIBA6
Eljárás vége.

Milyen hibajelenségek váltják ki a HIBA1..HIBA6 hibajelző utasításokat?

1997/9-10/1/4

Kukutyinban N napon keresztül mértük a hőmérsékletet. Az egyes napi mérések értékét az A[1..N] tömb tartalmazza.

Valami:
	L:=hamis
	Ciklus I=1-től N-ig
		Ha A[I]<0 akkor
			Ha nem L akkor L:=igaz: P:=I: M:=A[I]
			különben Ha A[I]>M akkor P:=I: M:=A[I]
		Elágazások vége
	Ciklus vége
Eljárás vége.

2014/9-10/1/2

Az alábbi algoritmus az A, B, C (mindhárom >0) számok alapján számolja ki D értékét.

Valami(A,B,C,D):
  Ciklus amíg nem(A=B és B=C)
    Ha A>B akkor A:=A-B
    Ha B>C akkor B:=B-C
    Ha C>A akkor C:=C-A
  Ciklus vége
  D:=A
Eljárás vége.

2014/9-10/1/3

Az alábbi algoritmus N nemnegatív adatot kap bemenetként (N>2, X(1)>0, X(N)>0, X(i)≥0) az X vektorban, amelyekből több értéket számol ki:

Valami(N,X,A,B,C,E):
  A:=0; B:=0; C:=0; D:=0
  Ciklus i=2-től N-ig
    Ha X(i-1)>0 és X(i)=0 akkor D:=0
    Ha X(i)=0 akkor Ha A=0 akkor A:=i
                    D:=D+1; B:=i
    Elágazás vége
    Ha X(i)>0 és X(i-1)=0 akkor C:=C+1; E(C):=D
  Ciklus vége
Eljárás vége.

2015/9-10/1/3

Az alábbi sorozat első három tagja rögzített, a továbbiakat pedig egy algoritmus számolta, minden negyediket ugyanazzal a módszerrel, amihez egyes esetekben az előző tagokat is felhasználhatta:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
1 3 2 6 7 4 10 12 11 14 18 8 15 20 26
A(1):=1; A(2):=3; A(3):=2
Ciklus i=1-től N-ig 
	A(4*i):=□□□□□□□□□□□ 
	A(4*i+1):=□□□□□□□□□□□
	A(4*i+2):=□□□□□□□□□□□
	A(4*i+3):=□□□□□□□□□□□
Ciklus vége

2015/9-10/1/5

Egy kiállítás sorozat N egymást követő napból áll, amelyet egyetlen teremben rendeznek meg. M kiállító jelentkezett. Az egyes kiállítók megadták, hogy mely napon szeretnék megrendezni a kiállításukat (1≤Ki≤N, növekvő sorrendben, egy napra csak egy jelentkező van).

Minden kiállítónak X nap áll rendelkezésre a kiállítás berendezéséhez és a kiállítás után X nappal át kell adniuk a termet a következő kiállítónak. Emiatt lehetnek ütközések. (Például X=2 esetén 2 napjuk van a berendezésre, 1 nap a kiállítás és 1 nap marad a terem kiürítésére.) Az első kiállító építkezése és az utolsó lebontása lehet az N napon kívül is.

A következő kérdésekre ad válasz az alábbi algoritmus:

Egészítsd ki az alábbi algoritmust úgy, hogy a téglalapok helyére írhatsz tetszőlegesen hosszú kifejezést!

Kiállítás(N,M,K,X,A,B,C):
  A:=; B:=;
  Ha  akkor C:= különben C:=0
  Ciklus i=2-től M-ig
    Ha  akkor B:=
    Ha  akkor C:=
  Ciklus vége
  Ha  akkor C:=
Eljárás vége.