A kiválasztott változat és az aktuális verzió közötti különbségek a következők.
Előző változat mindkét oldalon Előző változat | |||
inf-prog-fszi:egymasba_agyazott_ciklusok [2017/06/20 10:31] beistvan |
inf-prog-fszi:egymasba_agyazott_ciklusok [2017/06/21 07:38] (aktuális) beistvan |
||
---|---|---|---|
Sor 1: | Sor 1: | ||
+ | ====== Egymásba ágyazott ciklusok. Kétszeresen, | ||
+ | |||
+ | ===== Egymásba ágyazott '' | ||
+ | |||
+ | <code pascal foregymasbabeagyaz.pas> | ||
+ | for változó_1 := kezdő_érték_1 to [downto] végső_érték_1 do | ||
+ | begin | ||
+ | for változó_2 := kezdő_érték_2 to [downto] végső_érték_2 do | ||
+ | begin | ||
+ | utasítás(ok); | ||
+ | end; | ||
+ | end; | ||
+ | </ | ||
+ | |||
+ | ===== Egymásba ágyazott '' | ||
+ | |||
+ | <code pascal whileegymasbabeagyaz.pas> | ||
+ | while(feltétel_1)do | ||
+ | begin | ||
+ | while(feltétel_2) do | ||
+ | begin | ||
+ | utasítás(ok); | ||
+ | end; | ||
+ | utasítás(ok); | ||
+ | end; | ||
+ | </ | ||
+ | |||
+ | ===== Egymásba ágyazott '' | ||
+ | |||
+ | <code pascal repeategymasbabeagyaz.pas> | ||
+ | repeat | ||
+ | utasítás(ok); | ||
+ | repeat | ||
+ | utasítás(ok); | ||
+ | until(feltétel_2); | ||
+ | until(feltétel_1); | ||
+ | </ | ||
+ | |||
+ | |||
+ | ===== Kétszeresen egymásba ágyazott ciklusok ===== | ||
+ | |||
+ | <code pascal prim.pas> | ||
+ | program prim; | ||
+ | var | ||
+ | i, j : integer; | ||
+ | begin | ||
+ | for i := 2 to 50 do | ||
+ | begin | ||
+ | for j := 2 to i do | ||
+ | if (i mod j) = 0 then | ||
+ | break; {* ha van osztója, nem prím! *} | ||
+ | | ||
+ | if (j = i) then | ||
+ | writeln(i , ' prim' ); | ||
+ | end; | ||
+ | end. | ||
+ | </ | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | ===== Háromszorosan egymásba ágyazott ciklusok ===== | ||
+ | |||
+ | $c_{i, | ||
+ | |||
+ | <code pascal matrixszorzas.pas> | ||
+ | for i := 1 to n do | ||
+ | for j := 1 to n do | ||
+ | begin | ||
+ | sum := 0; | ||
+ | for k := 1 to n do | ||
+ | sum := sum + a[i,k] * b[k,j]; | ||
+ | c[i,j] := sum; | ||
+ | end; | ||
+ | </ | ||
+ | |||
+ | <code pascal matrixszorzas.pas> | ||
+ | program matrixszorzas; | ||
+ | const n = 3; | ||
+ | type tomb_tipus = array[1..n, 1..n] of integer; | ||
+ | procedure kiir(t: tomb_tipus; h: byte); | ||
+ | var i, j: integer; | ||
+ | begin | ||
+ | for i := 1 to n do begin | ||
+ | for j := 1 to n do | ||
+ | write(t[i, | ||
+ | writeln; | ||
+ | end; | ||
+ | writeln; | ||
+ | end; | ||
+ | const a: tomb_tipus = ((1, | ||
+ | b: tomb_tipus = ((2, | ||
+ | var i, j, k, sum: integer; c: tomb_tipus; | ||
+ | begin | ||
+ | kiir(a, 3); | ||
+ | kiir(b, 3); | ||
+ | for i := 1 to n do | ||
+ | for j := 1 to n do | ||
+ | begin | ||
+ | sum := 0; | ||
+ | for k := 1 to n do | ||
+ | sum := sum + a[i,k] * b[k,j]; | ||
+ | c[i,j] := sum; | ||
+ | end; | ||
+ | kiir(c, 4); | ||
+ | readln; | ||
+ | end. | ||
+ | </ | ||
+ | |||
+ | [[https:// | ||
+ | |||
+ | <code pascal matrixszorzas1.pas> | ||
+ | program matrixszorzas1; | ||
+ | const n = 3; | ||
+ | type tomb_tipus = array[1..n, 1..n] of integer; | ||
+ | procedure kiir(t: tomb_tipus; h: byte); | ||
+ | var i, j: integer; | ||
+ | begin | ||
+ | for i := 1 to n do begin | ||
+ | for j := 1 to n do | ||
+ | write(t[i, | ||
+ | writeln; | ||
+ | end; | ||
+ | writeln; | ||
+ | end; | ||
+ | const a: tomb_tipus = ((1, | ||
+ | b: tomb_tipus = ((2, | ||
+ | var i, j, k: integer; c: tomb_tipus; | ||
+ | begin | ||
+ | kiir(a, 3); | ||
+ | kiir(b, 3); | ||
+ | for i := 1 to n do | ||
+ | for j := 1 to n do | ||
+ | for k := 1 to n do | ||
+ | c[i,j] := c[i,j] + a[i,k] * b[k,j]; | ||
+ | kiir(c, 4); | ||
+ | readln; | ||
+ | end. | ||
+ | |||
+ | </ | ||
+ | |||
+ | <code pascal gotos_program.pas> | ||
+ | program gotos_program; | ||
+ | uses crt; | ||
+ | const n = 3; | ||
+ | type tomb_tipus = array[1..n, | ||
+ | procedure kiir(x, | ||
+ | var i, | ||
+ | begin | ||
+ | for i:=1 to 3 do | ||
+ | for j:=1 to 3 do | ||
+ | begin | ||
+ | gotoxy(x+3*j, | ||
+ | write(t[i, | ||
+ | end; | ||
+ | end; | ||
+ | var i, | ||
+ | const a: tomb_tipus = ((1, | ||
+ | b: tomb_tipus = ((2, | ||
+ | begin | ||
+ | kiir(1, | ||
+ | kiir(12, | ||
+ | for i:=1 to 3 do | ||
+ | for j:=1 to 5 do | ||
+ | kiir(j*11+1, | ||
+ | readln; | ||
+ | end. | ||
+ | |||
+ | </ | ||
+ | |||