Вообще говоря НОД вычисляется проще:
Код:
{ a, b - входные данные, целые положительные числа }
{ nod - результат }
while a <> b do
if a > b then a := a - b else b := b - a;
nod := a; { или nod := b; }
Добавлено через 2 минуты:
З.Ы. В первой программе не забудь в начале вставить вызов процедуры
Randomize.