Добавил:
Studfiles2
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Алгоритм Евклида
.PAS { ‘ҐаЈҐҐў Ђ.€., Ја.234, 7.09.92 }
{ ‹ Ў®а в®а п а Ў®в N 0 }
{ Greatest Common Divisor }
{ GCD(a,b) - ЁЎ®«миЁ© ®ЎйЁ© ¤Ґ«ЁвҐ«м вга «мле a,b }
{ ЇаЁ¬Ґз ЁҐ: Ї®¬ҐвЄ "Dem" ў ⥪б⥠㪠§лў Ґв
¤Ґ¬®бва жЁ®л© да Ј¬Ґв }
type
Nat0 = 0..MaxLongInt;
var
a,b,u,v,
Remainder,
Quotient, {Dem}
i : Nat0; {Dem}
begin
WriteLn('‚ўҐ¤ЁвҐ ¤ў вга «мле зЁб« :');
Read( a, b);
WriteLn('Ќ 室Ё¬ ЌЋ„ Ї ал зЁбҐ« :', a :10, ',', b :10);
{Dem} i := 0;
u := a;
v := b;
{ u>=0 & v>=0 & GCD(u,v)=GCD(a,b) }
while v <> 0 do
begin { u>=0 & v>0 & GCD(u,v)=GCD(a,b) }
{Dem} i := i + 1; Write(' Ј ', i:3);
{Dem} Quotient := u div v;
Remainder := u mod v;
{Dem} WriteLn(' :: ', u:10,' =',
Quotient:5,' *',v:10,' +',Remainder:10);
u := v;
v := Remainder;
{ u>0 & v>=0 & GCD(u,v)=GCD(a,b) }
end {while};
{ u>=0 & v=0 & u=GCD(u,0)=GCD(a,b) }
WriteLn;
WriteLn('ђҐ§г«мв в : --> ЌЋ„(', a:1, ',', b:1, ') = ', u:1);
end.
{ ‹ Ў®а в®а п а Ў®в N 0 }
{ Greatest Common Divisor }
{ GCD(a,b) - ЁЎ®«миЁ© ®ЎйЁ© ¤Ґ«ЁвҐ«м вга «мле a,b }
{ ЇаЁ¬Ґз ЁҐ: Ї®¬ҐвЄ "Dem" ў ⥪б⥠㪠§лў Ґв
¤Ґ¬®бва жЁ®л© да Ј¬Ґв }
type
Nat0 = 0..MaxLongInt;
var
a,b,u,v,
Remainder,
Quotient, {Dem}
i : Nat0; {Dem}
begin
WriteLn('‚ўҐ¤ЁвҐ ¤ў вга «мле зЁб« :');
Read( a, b);
WriteLn('Ќ 室Ё¬ ЌЋ„ Ї ал зЁбҐ« :', a :10, ',', b :10);
{Dem} i := 0;
u := a;
v := b;
{ u>=0 & v>=0 & GCD(u,v)=GCD(a,b) }
while v <> 0 do
begin { u>=0 & v>0 & GCD(u,v)=GCD(a,b) }
{Dem} i := i + 1; Write(' Ј ', i:3);
{Dem} Quotient := u div v;
Remainder := u mod v;
{Dem} WriteLn(' :: ', u:10,' =',
Quotient:5,' *',v:10,' +',Remainder:10);
u := v;
v := Remainder;
{ u>0 & v>=0 & GCD(u,v)=GCD(a,b) }
end {while};
{ u>=0 & v=0 & u=GCD(u,0)=GCD(a,b) }
WriteLn;
WriteLn('ђҐ§г«мв в : --> ЌЋ„(', a:1, ',', b:1, ') = ', u:1);
end.
Соседние файлы в предмете Программирование