Bài 5: Ngôn ngữ lập trình

Bạn chưa đăng nhập. Vui lòng đăng nhập để hỏi bài
Trúc Ly Ngô Vũ

Viết chương trình (pascal) nhập vào một số nguyên dương n

a) Nhập vào m và xác định cặp số m,n có phải số hứa hôn hay không?

b) Nhập vào số nguyên, tính và xuất ra màn hình nm

c) Hãy cho biết n! kết thúc bởi bao nhiêu số 0?

d) Nhập vào số nguyên dương m, tìm và xuất ra màn hình ước chung lớn nhất và bội chung nhỏ nhất của m,n

Nguyễn Lê Phước Thịnh
5 tháng 12 2020 lúc 11:50

uses crt;
var n,m,i,ucln,bcnn,dem:integer;
kq:real;
st:string;
gt:longint;
{--------------------------chuong-trinh-con-tinh-tong-uoc-thuc-su---------------------}
function tonguoc(x:integer):integer;
var t,i:integer;
begin
t:=0;
for i:=1 to x-1 do
if x mod i=0 then t:=t+i;
tonguoc:=t;
end;
{-------------------------chuong-trinh-chinh--------------------}
begin
clrscr;
repeat
write('Nhap n='); readln(n);
write('Nhap m='); readln(m);
until (n>0) and (m>0);
if (tonguoc(n)=m+1) and (tonguoc(m)=n+1) then writeln(n,' va ',m,' la cap so hua hon')
else writeln(n,' va ',m,' khong la cap so hua hon');
kq:=1;
for i:=1 to m do
kq:=kq*n;
writeln(n,'^',m,'=',kq:4:2);
gt:=1;
for i:=1 to n do
gt:=gt*i;
str(gt,st);
dem:=0;
for i:=1 to length(st) do
if st[i]='0' then inc(dem);
writeln(n,'! ket thu boi ',dem,' so 0');
ucln:=1;
if n>m then
begin
for i:=1 to m do
if (n mod i=0) and (m mod i=0) then
begin
if ucln<i then ucln:=i;
end;
end
else begin
for i:=1 to n do
if (n mod i=0) and (m mod i=0) then
begin
if ucln<i then ucln:=i;
end;
end;
bcnn:=n*m;
for i:=n*m downto 1 do
if (i mod n=0) and (i mod m=0) then
begin
if bcnn>i then bcnn:=i;
end;
writeln('Uoc chung lon nhat cua ',m,' va ',n,' la: ',ucln);
writeln('Boi chung lon nhat cua ',m,' va ',n,' la: ',bcnn);
readln;
end.

Khách vãng lai đã xóa

Các câu hỏi tương tự
camcon
Xem chi tiết
camcon
Xem chi tiết
diễn đậu tiến
Xem chi tiết
Nguyễn Văn Lâm
Xem chi tiết
Luân Đào
Xem chi tiết
Nguyễn Hồng Ngọc
Xem chi tiết
5-Hồ Hũu Dương-9C
Xem chi tiết
Đặng Thảo Yến Nhi
Xem chi tiết
Mạnh Quốc
Xem chi tiết
Mạnh Quốc
Xem chi tiết