Одна компания, которая производит олимпиады (x) и праздники (y), наняла на работу Петра. Директор компании не знает, что у Петра получается делать лучше: олимпиады или праздники. Он знает, что с вероятностью p = 0,5 Петр может за час произвести 0,5 единиц y, a с вероятностью 1 − p = 0,5 – 1 единицу y. Также он знает, что с вероятностью d = 0,5 Петр может за час произвести 1 единицу x, a с вероятностью 1−d = 0,5 – 0,5 единиц x. Всего у Петра 8 часов. Директор компании выбирает, какое количество часов Петру потратить на производство x, а какое – на производство y, максимизируя количество комплектов из 1 x и m y, и прописывает эти часы в контракте. Петр тратит ровно это количество часов и отдаёт все x и y директору. При этом его реальные производственные функции: y = Ly 2 , x = Lx . Определите, чему равно m, если известно, что директор получил на 0,4 комплекта из 1 единицы x и m единиц y меньше из-за того, что не знал производственные функции Петра до принятия решения о распределении часов между Lx и Ly
const
n = 100;
var
a: array[1..n] of integer;
i, s: integer;
begin
for i := 1 to 15 do
begin
write('a[', i, '] = ');readln(a[i]);
if i mod 3 = 0 then s := s + a[i];
end;
writeln('Сумма элементов, индексы которых кратны 3 = ', s);
end.
Тестовое решение:
число элементов : 10
a[1] = 2
a[2] = 5
a[3] = 1
a[4] = 5
a[5] = 6
a[6] = 3
a[7] = 5
a[8] = 6
a[9] = 1
a[10] = 8
Сумма элементов, индексы которых кратны 3 = 5
// Задание 2
const
n = 100;
var
a: array[1..n] of integer;
i: integer;
begin
for i := 1 to 15 do
begin
a[i] := random(100);write(a[i]:4);
end;
writeln;
for i := 1 to 15 do
begin
if i mod 2 = 0 then a[i] := a[i] * 2;
write(a[i]:4);
end;
end.
Тестовое решение:
35 98 67 94 63 18 26 17 3 5 0 77 47 11 33
35 196 67 188 63 36 26 34 3 10 0 154 47 22 33
// Задание 3
const
m = 100;
var
a: array[1..m] of integer;
i, n, k, tmp: integer;
begin
write('число элементов : ');
readln(n);
for i := 1 to n do
begin
write('a[', i, '] = ');readln(a[i]);
end;
repeat
write('Введите к (k<>1 и k<>n)');
readln(k);
if (k = 1) or (k = n) then writeln('Ошибка, повторите ввод');
until (k <> 1) and (k <> n);
for i := 1 to n do write(a[i]:4);writeln;
tmp := a[k - 1];a[k - 1] := a[k + 1];a[k + 1] := tmp;
for i := 1 to n do write(a[i]:4);
end.
Тестовое решение:
число элементов : 6
a[1] = 2
a[2] = 7
a[3] = 3
a[4] = 8
a[5] = 9
a[6] = 1
Введите к (k<>1 и k<>n)4
2 7 3 8 9 1
2 7 9 8 3 1