Цитата:
Сообщение от Виллилен
Задана производственная функция, цены единицы первого и второго ресурсов, а также ограничения I в сумме, которая может быть потрачена на приобретение ресурсов (сумма ≤ I). Найти величины используемых ресурсов (x, y), при которых фирма-производитель получит наибольшую прибыль:
K(x, y) = 10 ∙ √x ∙³√y
p1 = 2, p2 = 4, I = 12.
|
Поскольку в лучших традициях нашего форума вопрошающий не счел нужным перетруждаться, указав требуемый язык программирования, я, как дуэлянт в старину, право выбора оружия оставляю за собой.
Драться будем на Паскале.
Претензии типа "а мне надо на C#" НЕ ПРИНИМАЮТСЯ.
Код:
Const
I=12;
p1=2.0;
p2=4.0;
Var
n1,n2,n1max,n2max:Byte;
x,y,S,Smax:Real;
Function K(z1,z2:real):Real;
begin
K:=Sqrt(z1)*Exp(Ln(z2)/3)*10;
end;
Begin
Smax:=0;
for n1:=1 to 4 do
begin
x:=p1*n1;
n2:=0;
repeat
Inc(n2);
y:=p2*n2;
S:=K(x,y);
if ((x+y)<=I) then
Writeln('x = ',Round(x),' y = ',Round(y),' K = ',S:0:5);
if ((x+y)<=I) and (S>Smax) then
begin
Smax:=S;
n1max:=n1;
n2max:=n2;
end;
until x+y>I;
end;
Writeln;
Writeln('Result:');
Writeln('x = ',Round(p1*n1max));
Writeln('y = ',Round(p2*n2max));
Readln
End.