Cho 2 số nguyên dương M,N (0<=M,N). Hãy viết chương trình đếm các ước của M và N? (VD 5 và 3 chỉ có 1 ước là 1)

2 câu trả lời

program Tin_hoc;

uses crt;

var i,m,n,k:integer;

begin

clrscr;

write('M=');readln(m);

write('N=');readln(n);

k:=0;

if m<n then for i:= 1 to m  do if (m mod i = 0) and (n mod i = 0) then inc(k);

if m>n then for i:= 1 to n  do if (m mod i = 0) and (n mod i = 0) then inc(k);

writeln('Co ',k,' so la uoc cua ',m,' va ',n);

readln;

end.

uses crt;

var M, N, k, dem : integer;

begin

clrscr;

write('Nhap hai so M, N : '); readln(M, N);

if (M >= 0) and (N >= 0) then

begin

dem := 0;

if M >= N then

for k := 1 to N do

if (M mod k = 0) and (N mod k = 0) then dem := dem + 1;

if M <= N then

for k := 1 to M do

if (M mod k = 0) and (N mod k = 0) then dem := dem + 1;

end;

write('M va N co ', dem ,' uoc');

readln

end.