a) Nhập vào hai số nguyên a và b (1≤ a,b ≤ 109). Tính và in lên màn hình ước chung lớn nhất(UCLN) v à bội chung nhỏ nhất (BCNN) của a,b.
b)Dãy số fibonacy được định nghĩa như sau:
f1=f2=1
fn=fn-1+fn-2 (với n >=3)
Hãy viết chương trình in ra n số đầu tiên của dãy fibonacy.
Dữ liệu nhập:là số nguyên n (1<=n<=30)
Dự liệu xuất: là n số fibonacy đầu tiên trên cùng một dòng, mỗi số cách nhau một khoảng trắng.
a)
program UCLN_va_BCNN;
uses crt;
var a,b,c,r,p:integer;
begin
clrscr;
write('nhap a,b:');readln(a,b);
if a<b then
begin
c:=a;
a:=b;
b:=c;
end;
p:=a*b;
r:=a mod b;
while r<>0 do
begin
a:=b;
b:=r;
r:=a mod b;
end;
writeln('UCLN la: ',b);
writeln('BCNN la: ',p div b);
readln;
end.
b)
program fibonaci;
uses crt;
var i,n:integer;
a:array[1..30]of integer;
begin
clrscr;
repeat
write('nhap n:');readln(n);
if (n<1)or(n>30) then writeln('so n phai lon hon hoac bang 1 va nho hon hoac bang 30:);
until (n>=1)and(n<=30);
a[1]:=1;
a[2]:=1;
for i:=3 to n do
a[i]:=a[i-1]+a[i-2];
writeln(n,' so fibonaci dau tien la:');
for i:=1 to n do
write(a[i]:3);
readln;
end.