tìm số có 3 chữ số biết tổng của chúng bằng tích của chúng (tin 8)
2 câu trả lời
Tìm 1 số:
uses crt;
var x: longint;
function sumDigits(n: longint): longint;
var sum: longint;
begin
sum:=0;
while n <> 0 do
begin
inc(sum, n mod 10);
n:=n div 10;
end;
exit(sum);
end;
function t(n: longint): longint;
var p: longint;
begin
p:=1;
while n <> 0 do
begin
p:=p * (n mod 10);
n:=n div 10;
end;
exit(p);
end;
begin
clrscr;
x:=100;
while x < 1000 do
begin
if sumDigits(x) = t(x) then
begin
write(x, ' ');
break;
end else inc(x);
end;
readln;
end.
Tìm nhiều số:
uses crt;
var x: longint;
function sumDigits(n: longint): longint;
var sum: longint;
begin
sum:=0;
while n <> 0 do
begin
inc(sum, n mod 10);
n:=n div 10;
end;
exit(sum);
end;
function t(n: longint): longint;
var p: longint;
begin
p:=1;
while n <> 0 do
begin
p:=p * (n mod 10);
n:=n div 10;
end;
exit(p);
end;
begin
clrscr;
x:=100;
while x < 1000 do
begin
if sumDigits(x) = t(x) then
begin
write(x, ' ');
inc(x);
end else inc(x);
end;
readln;
end.
uses crt;
var i, j, k : byte;
begin
clrscr;
write('So can tim : ');
for i := 1 to 9 do
for j := 0 to 9 do
for k := 0 to 9 do
if (i + j + k) = (i * j * k) then write(i, j, k ,' ');
readln
end.
