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:linearis_kereses_tetele [2017/06/21 09:27] beistvan |
inf-prog-fszi:linearis_kereses_tetele [2017/06/25 15:05] (aktuális) beistvan |
||
|---|---|---|---|
| Sor 1: | Sor 1: | ||
| + | ====== Lineáris keresés tétele ====== | ||
| + | |||
| + | Általános feladat: N elemű sorozat; sorozat elemein értelmezett T tulajdonság. Van-e T tulajdonságú elem és ha van, akkor mi a sorszáma. (Eldöntés és kiválasztás együtt.) | ||
| + | |||
| + | <code bash linkeres.txt> | ||
| + | Eljárás: | ||
| + | I := 1 | ||
| + | Ciklus amíg I <= N és A(I) nem T tulajdonságú | ||
| + | I := I + 1 | ||
| + | Ciklus vége | ||
| + | VAN := I <= N | ||
| + | Ha VAN akkor SORSZ := I | ||
| + | Eljárás vége. | ||
| + | </ | ||
| + | |||
| + | Pascal forráskód | ||
| + | |||
| + | <code pascal linearis_kereses.pas> | ||
| + | program linearis_kereses; | ||
| + | const n = 10; | ||
| + | var a:array [1..n] of integer; | ||
| + | i, sorsz: integer; | ||
| + | van: boolean; | ||
| + | begin | ||
| + | randomize; | ||
| + | //a tömb elkészítése | ||
| + | for i:=1 to n do | ||
| + | begin | ||
| + | a[i]: | ||
| + | write(a[i], ' '); | ||
| + | end; | ||
| + | writeln; | ||
| + | //van-e benne 5-ös? | ||
| + | i:=1; | ||
| + | while (i<=n) and (a[i]<> | ||
| + | i:=i+1; | ||
| + | van:= i<=n; | ||
| + | write(' | ||
| + | if van then begin | ||
| + | sorsz:=i; | ||
| + | writeln(' | ||
| + | end | ||
| + | else | ||
| + | writeln(' | ||
| + | readln; | ||
| + | end. | ||
| + | </ | ||
| + | |||
| + | [[https:// | ||
| + | |||
| + | Órai gyakorlat | ||
| + | |||
| + | <code pascal linearis_kereses.pas> | ||
| + | program linearis_kereses; | ||
| + | const n=8; | ||
| + | var i : integer; van : boolean; | ||
| + | a: array [1..n] of integer; | ||
| + | begin | ||
| + | writeln(' | ||
| + | for i:=1 to n do | ||
| + | begin | ||
| + | write(' | ||
| + | end; | ||
| + | i:=1; | ||
| + | while (i<=n) and (a[i]<> | ||
| + | inc(i); //i:=i+1; | ||
| + | // | ||
| + | van: | ||
| + | if van then write(' | ||
| + | readln; | ||
| + | end. | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | <code pascal linearis_kereses_for.pas> | ||
| + | program linearis_kereses_for; | ||
| + | const n=8; | ||
| + | var i : integer; volt : boolean; | ||
| + | a: array [1..n] of integer; | ||
| + | begin | ||
| + | writeln(' | ||
| + | for i:=1 to n do | ||
| + | begin | ||
| + | write(' | ||
| + | end; | ||
| + | volt: | ||
| + | for i:=1 to n do | ||
| + | if a[i]=5 then begin volt:=true; break; end; //a T tulajdonsag: | ||
| + | // | ||
| + | if volt then write(' | ||
| + | readln; | ||
| + | end. | ||
| + | |||
| + | </ | ||