Найти все трёхзначные числа, равные сумме кубов своих цифр.
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils,
Math;
function Cube(chislo : integer) : integer;
var
t : string;
c1, c2, c3, res : integer;
c,v,b : extended;
begin
t := inttostr(chislo);
c1 := strtoint(t[1]);
c2 := strtoint(t[2]);
c3 := strtoint(t[3]);
res := ceil(power(c1, 3) + power(c2, 3) + power(c3, 3));
result := res;
end;
var
i: integer;
begin
for i := 100 to 999 do
begin
if i = Cube(i) then writeln(i);
end;
readln; end. |
Ещё вот так можно:
program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils, Windows;
var
i, j, k : Integer;
begin //Переключаем окно консоли на кодовую страницу CP1251 (Win-1251).
//Если после этого буквы кириллицы будут показываться неверно,
//надо открыть системное меню консоли (в левом верхнем углу окна консоли)
//и выбрать: Свойства - закладка "Шрифт" - выбрать шрифт Lucida Console.
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
Writeln('Искомые числа:');
for i := 1 to 9 do for j := 0 to 9 do
for k := 0 to 9 do
if
(i * 100 + j * 10 + k) =
(i * i * i + j * j * j + k * k * k)
then Writeln(i, j, k);
Readln;
end. |