1) Mnożenie
Poniższy algorytm wyznacza \(\displaystyle{ z \cdot y,}\)gdzie \(\displaystyle{ z,y \in N}\)
Kod: Zaznacz cały
Mnoz(y, z)
1 x:=0;
2 While z>0 do
3 if odd(z) then
4 x:=x+y
5 y:= 2 * y
6 z:= z div 2
7 return x
2) Rekurencja
Kod: Zaznacz cały
G(n)
if n = 0 v n = 1
then return 3 * n
else return G(n-1)+2 * G(n-2)
3)
Dopasowanie wzorca
Dane są: łańcuch S[1...n] i wzorzec P[0...m-1] gdzie 1<=m<=n. Poniższy algorytm wyznacza pozycję I występowania wzorca P w łańcuchu S tzn. I=p jeśli S[p... p+m-1]=P,
a I=n-m+1 jeśli wzorzec P nie jest podciągiem S,
Kod: Zaznacz cały
Dopasuj(P,S,m,n)
1 I:=0
2 dopasowano:=fale
3 while I<=n-m^
eg dopasowano do
4 I:=I+1
5 r:=0
6 dopasowano:=true;
7 while r<m^dopasowano do
8 dopasowano:=(P[r] = S[I+r])
9 r:=r+1
10 return I