Вообщем стратегия такая: сначала наращиваем мощности, а потом копим печеньки Программа вычисляет оптимальную максимальную мощность. Это оказывается 9 или 10 печенек в день (т.е 8 или 9 духовок) в минимуме в общем целом на это уйдет 108 дней
1. var f_name,s_name:string; begin writeln('Введите имя'); readln(f_name); writeln('Введите фамилию'); readln(s_name); writeln('Доброе утро ',f_name,' ',s_name); end.
2. var s,a:real; i:integer; begin s:=0; for i:=1 to 5 do begin writeln('Введите число №',i); readln(a); s:=s+a; end; writeln('Сумма=',s) end.
3. var s,a:real; i:integer; begin s:=1; for i:=1 to 3 do begin writeln('Введите число №',i); readln(a); s:=s*a; end; writeln('Произведение=',s); end.
4. var a, b, c, max: integer; begin write ('Введите три числа: '); readln (a, b, c); if a >= b then max := a else max := b; if c > max then max := c; writeln ('Максимальное число: ', max); end.
Программа вычисляет оптимальную максимальную мощность. Это оказывается 9 или 10 печенек в день (т.е 8 или 9 духовок)
в минимуме в общем целом на это уйдет 108 дней
код на руби
(1..100).step(1) {|max_productivity|
productivity = 1
cockies = 0
days = 0
upgrade_cost = 5 * productivity
while cockies < 532
if cockies >= upgrade_cost and productivity < max_productivity
cockies -= upgrade_cost
productivity += 1
upgrade_cost = 5 * productivity
else
cockies += productivity
end
days += 1
end
p [max_productivity, days, cockies, productivity]
}
Вывод (куска)
[6, 119, 534, 6]
[7, 112, 532, 7]
[8, 109, 536, 8]
[9, 108, 540, 9]
[10, 108, 540, 10]
[11, 109, 539, 11]
[12, 111, 540, 12]
[13, 113, 533, 13]
[14, 116, 532, 14]
[15, 120, 540, 15]
[16, 124, 544, 16]
[17, 128, 544, 17]
[18, 132, 540, 18]
var
f_name,s_name:string;
begin
writeln('Введите имя');
readln(f_name);
writeln('Введите фамилию');
readln(s_name);
writeln('Доброе утро ',f_name,' ',s_name);
end.
2.
var
s,a:real;
i:integer;
begin
s:=0;
for i:=1 to 5 do
begin
writeln('Введите число №',i);
readln(a);
s:=s+a;
end;
writeln('Сумма=',s)
end.
3.
var
s,a:real;
i:integer;
begin
s:=1;
for i:=1 to 3 do
begin
writeln('Введите число №',i);
readln(a);
s:=s*a;
end;
writeln('Произведение=',s);
end.
4.
var
a, b, c, max:
integer;
begin
write ('Введите три числа: ');
readln (a, b, c);
if a >= b then
max := a else
max := b;
if c > max then
max := c;
writeln ('Максимальное число: ', max);
end.