Programozási tételek

Típusdefiníció:

v, w: logikai;
h, i, j, k, l, m, n: integer; (i, j, k: számláló; l, m, n: a tömb elemszáma)
s: feladatfüggő típus
A[], B[], C[], D[], E[], F[], G[]: tömb; (F[] és G[] rendezett, az elemek típusa feladatfüggő)
t: feladatfüggő tulajdonság vagy függvény

Sorozathoz értéket rendelő algoritmusok

Eldöntés algoritmusa

i:=1;
Ismételd amíg (i<=n) és nem(t(A[i]))
  i:=i+1;
Ismétlés vége;
v:=(i<=n);
Ki(v);

Keresés algoritmusa

i:=1;
Ismételd amíg (i<=n) és nem(t(A[i]))
  i:=i+1;
Ismétlés vége;
Ki(i, A[i]);

Kiválasztás algoritmusa

h:=0
i:=1;
Ismételd amíg (i<=n) és nem(t(A[i]))
  i:=i+1;
Ismétlés vége;
v:=(i<=n);
Ha v akkor h:=i;
Ki(h);

Megszámlálás algoritmusa

h:=0;
i:=1
Ismételd amíg i<=n
  Ha t(A[i]) akkor h:=h+1;
Ismétlés vége;
Ki(h);

Sorozatszámítás algritmusa

i:=1;
s:=kezdőérték;
Ismételd amíg i<=n
  s:=t(s, A[i)];
  i:=i+1;
Ismétlés vége;
Ki(s);

Maximum kiválasztás algoritmusa

h:=1;
i:=2;
Ismételd amíg i:=n
  Ha A[i]<A[h] akkor h:=i;
  i:=i+1;
Ismétlés vége;
Ki(h, A[h]);

Sorozat(ok)hoz sorozato(ka)t rendelő algoritmusok

Kiválogatás algoritmusa

i:=1
j:=0
Ismételd amíg i<=n
  Ha t(A[i]) akkor
  kezd
    j:=j+1;
    B[j]:=A[i];
  vége;
  i:=i+1;
Ismétlés vége;
Ki(B[]);

Szétválogatás algoritmusa

i:=1;
j:=n;
Ismételd amíg i<j
  Ismételd amíg t(A[i])
    i:=i+1;
  Ismétlés vége;
  Ismételd amíg nem(t(A[j]))
    j:=j-1;
  Ismétlés vége;
  s:=A[i];
  A[i]:=A[j];
  A[j]:=s;
Ismétlés vége;
Ki(A[]);

Unióképzés algoritmusa

Ismételd i:=1-től N-ig
  C[i]:=A[i];
Ismétlés vége;
  k:=n;
Ismételd j:=1 től m-ig
  i:=1;
  Ismételd amíg (i<=n) és (A[i]<>B[j])
    i:=i+1;
  Ismétlés vége;
  Ha i>n akkor
  kezd
    k:=k+1;
    C[k]:=B[j];
  vége;
Ismétlés vége;
Ki(C[]);

Rendezés algoritmusa

Ismételd i:=2-től n-ig
  j:=n
  Ismételd amíg j>=i
    Ha A[j-1]>A[j] akkor
    kezd
      s:=A[j-1];
      A[j-1]:=A[j];
      A[j]:=s;
    vége;
    j:=j-1;
  Ismétlés vége;
Ismétlés vége;
Ki(A[]);

Összefuttatás algoritmusa


i:=1;
j:=1;
k:=0;
Ismételd amíg (i<=n) és (j<=m)
  k:=k+1;
  Ha F[i]<G[j] akkor
  kezd
    A[k]:=F[i];
    i:=i+1;
  vége;
  különben Ha F[i]>G[j] akkor
  kezd
    A[k]:=G[i]
    j:=j+1;
  vége;
  különben
  kezd
    A[k]:=F[i];
    i:=i+1;
    j:=j+1;
  vége;
Ismétlés vége;
Ismételd h:=i-től n-ig
  k:=k+1;
  A[k]:=F[i];
Ismétlés vége;
Ismételd h:=j-től m-ig
  k:=k+1;
  A[k]:=G[i];
Ismétlés vége;
Ki(A[]);

Metszet algoritmusa

k:=0;
Ismételd i:=1-től N-ig
  j:=1;
  Ismételd amíg (j<=m) és (A[i]<>B[j])
    j:=j+1;
  Ismétlés vége;
  Ha A[i]=B[j] akkor
  kezd
    k:=k+1;
    C[k]:=A[i];
  vége;
Ismétlés vége;
Ki(C[])