Для целесообразности вместо корня из 1 заранее используется 1 (поскольку нет нужды вычислять).
--- КОД ПРОГРАММЫ НИЖЕ ---
// Проверено в PascalABC.NET (версия 3.2, сборка 1363)
program zz;
var
n, i, u, d, f, c, ff, cc: integer;
y: real;
procedure GetDiv();
begin
ff := f;
cc := c;
d := 0;
while cc > 0 do
begin
d := d + ff;
ff := ff + 1;
cc := cc - 1;
end;
end;
function Facto(num: integer): integer;
var
ff, fi: integer;
begin
ff := 1;
for fi := 2 to num do
ff := ff * fi;
Facto := ff;
end;
begin
write('n = ');
readln(n);
y := 0;
f := 2;
c := 2;
for i := 1 to n do
begin
u := Facto( n - (i - 1) );
if i = 1 then
d := 1
else
begin
GetDiv();
f := ff + 1;
c := c + 1;
end;
y := y + (u / d);
end;
writeln('y = ', y);
end.
Program zzadani;
Var n,b,a,c:integer;
Begin
Writeln('Введите трехзначное число');
Readln(n);
a:=n div 100;
b:=(n div 10) mod 10;
c:=(n mod 100) mod 10;
n:=a+b+c;
Writeln('Сумма цифр данного числа=',n);
End.
Графики..................
Я, конечно, не художник, но надеюсь это похоже на ёлки.
uses GraphABC;
begin
For var i := 0 to 4 do
begin
SetBrushColor(clGreen);
FillPie(80 + 120 * i, 100, 25, -50, -130);
FillPie(80 + 120 * i, 115, 40, -50, -130);
FillPie(80 + 120 * i, 135, 60, -50, -130);
FillPie(80 + 120 * i, 160, 75, -50, -130);
SetBrushColor(clBrown);
FillRectangle(74 + 120 * i, 234, 86 + 120 * i, 245)
end;
end.