Príklad 1.
Algoritmus, ktorý pre dve prirodzené čísla určí najväčší spoločný deliteľ.
Predbežné úvahy:
NSD(63, 35)?
= NSD(28, 35)= NSD(28, 35-28)=
= NSD(28, 7)= NSD(28-7, 7)=
NSD(21, 7)=
NSD(14, 7)=
NSD(7, 7)=7
Algoritmus:
Premenné na uloženie čísel označme A, B, pomocné premenné X, Y.
{ak X>Y potom X:=X-Y inak Y:=Y-X}
4. Vypísať ‘Najvacsi spolocny delitel cisel ‘, A, B, ‘ je ‘, X;
program NSD;
var A, B, X, Y: integer;
begin
writeln(‘Zadaj dve prirodzene cisla‘);
readln(A, B);
X:=A; Y:=B;
while X<>Y do
if X>Y then X:=X-Y else Y:=Y-X;
writeln(‘Najvacsi spolocny delitel cisel’, A, B,’ je’, X);
end.
Príklad 2.
Skúsme urobiť analýzu nasledujúceho programu
program AKLIBOSAN;
var
i: integer;
k: integer;
ch: char;
v:integer;
begin
writeln('Zadaj, prosim, prirodzene cislo, pre
ktore chces vypisat vypocet.');
readln(k);
writeln('Chces velky vypocet? a/n');
readln(ch);
if (ch<>'a') and (ch='A') then
begin
writeln(' Mala ......... pre cislo: ', k:3);
writeln('-------------------------');
for i:=1 to 10 do
begin
v:=i*k;
writeln(i:2,' x ',k:2,' = ',v:4);
end;
writeln('-------------------------');
end else
begin
writeln(' Velka ......... pre cislo: ',k:3);
writeln('-------------------------');
for i:=11 to 20 do
begin
v:=i*k;
writeln(i:2,' x ',k:2,' = ',v:4);
end;
end;
readln;
end.