vct nhập vào 1 dãy số
tìm ucln và bcnn của số đó
tìm và in ra các số chính phương
vct nhập vào 1 dãy số tìm ucln và bcnn của số đó tìm và in ra các số chính phương
By Mackenzie
By Mackenzie
vct nhập vào 1 dãy số
tìm ucln và bcnn của số đó
tìm và in ra các số chính phương
#include <iostream>
using namespace std;
// Cho 2 số nguyên dương a và b. Hãy tìm ước chung lớn nhất của 2 số này.
// Input : 2 số a,b
// Output : Ước chung lớn nhất của 2 số a, b
int UCLN(int a, int b)
{
while ( a != b)
{
if (a > b)
a = a – b;
else
b = b – a;
}
return a; // or return b; a = b
}
// Cho 2 số nguyên dương a và b. Hãy tìm bội chung nhỏ nhất của 2 số này
// Input : 2 số a,b
// Output : Bội chung nhỏ nhất
int BCNN(int a, int b)
{
int result = UCLN(a, b);
return a * b / result;
}
int main()
{
int a, b;
cout << “a = “;
cin >> a;
cout << “b = “;
cin >> b;
int result = UCLN(a, b);
cout << “UCLN : “<<result;
cout << “\n”;
result = BCNN(a, b);
cout << “BCNN : “ << result << endl;
system(“pause”);
}
#hoctot
uses crt;
var i,n,t:longint; a:array[1..1000000]of longint;
function kt(x:longint):boolean;
var i:longint;
begin
kt:=true;
for i:=1 to n do if a[i] mod x<>0 then kt:=false;
end;
function ktt(x:longint):boolean;
var i:longint;
begin
ktt:=true;
for i:=1 to n do if x mod a[i]<>0 then ktt:=false;
end;
begin
clrscr;
write(‘n=’);readln(n);
for i:=1 to n do
begin
write(‘a[‘,i,’]=’);readln(a[i]);
end;
writeln(‘Cac so chinh phuong la’);
for i:=1 to n do
if trunc(sqrt(a[i]))=sqrt(a[i]) then writeln(a[i]);
writeln(‘Ucln’);
for i:=1 to n do if kt(i) then t:=i;
writeln(t);
writeln(‘Bcnn’);
i:=a[1];
while not(ktt(i)) do inc(i);
writeln(i);
readln
end.