Viết chương trình, cho 1 dãy số nguyên gồm N phần tử (A1,A2,…,AN). Tìm ước chung lớn nhất của dãy số trên.
Viết chương trình, cho 1 dãy số nguyên gồm N phần tử (A1,A2,…,AN). Tìm ước chung lớn nhất của dãy số trên.
Lời giải:
uses crt; var i,n,a,b, uc,bcnn:integer ; c:array[1..100] of integer; {--- CTC tim UCLL hai so} function ucln(a,b:integer):integer; var r:integer; begin r:=a mod b; while r<>0 do begin a:=b; b:=r; r:= a mod b; end; ucln:=b; end; {--- CTC chinh----} begin Write('n= '); readln(n); for i:=1 to n do begin write('c[',i,']='); readln(c[i]); end; for i:= 1 to n do Write(c[i]:3);writeln; uc:=ucln(c[1], c[2]); bcnn:=(c[1]*c[2])div uc; for i:=3 to n do begin uc:=ucln(uc,c[i]); bcnn:= bcnn*c[i] div uc; end; Writeln('bcnn =',bcnn); readln; end.