Вытаскивание из корзины любого из 16 шаров<span> </span>–<span> </span>события равновероятные (т.к. все шары разного цвета). Поэтому<span> </span>для<span> </span>решения<span> </span>задачи<span> </span>применима<span> </span>формула<span> </span><span>2 ^</span>i<span> = N.</span> Здесь<span> </span>N = 16<span> </span>–<span> </span>число шаров разного цвета.<span> </span>Решая<span> </span>уравнение<span> </span><span>2^i</span><span> =16,</span><span> </span>получаем ответ:<span> </span>i<span> = 4 бита (2^4=2*2*2*2=16)</span>
N = 16 = 2^4
i = 4
К = 8*32*128
I = ?
I = K*i = 8*32*128*4 бит = 8*32*128*4/8 байт = 32*128*4 байт = 32*128*4/1024 Кбайт = 16 Кбайт
<em>// PascalABC.NET 3.2, сборка 1417 от 28.03.2017</em>
<em>// Внимание! Если программа не работает, обновите версию!</em>
function Res(a:integer;op:char;b:integer):integer;
begin
case op of
'+':Result:=a+b;
'-':Result:=a-b;
'*':Result:=a*b;
'/':Result:=a div b
end
end;
begin
var s:=ReadlnString('Вводите:');
var p:=s.Matches('(((\-)?\d+)|[\+\-\*\/])').ToArray;
if p.Count<>5 then Writeln('Ошибка!')
else begin
var op1:=p[1].Value[1];
var op2:=p[3].Value[1];
var a:=p[0].Value.ToInteger;
var b:=p[2].Value.ToInteger;
var c:=p[4].Value.ToInteger;
if (op1 in ['+','-']) and (op2 in ['*','/']) then
Writeln('='+Res(Res(b,op2,c),op1,a))
else Writeln('='+Res(Res(a,op1,b),op2,c))
end
end.
<u>Примеры</u>
Вводите: -4--3--2
=1
Вводите: 12*3+45
=81
Вводите: 45+12*3
=81
Вводите: -26/13--5
=3
1 обозначить центр
2 начертить самый большой круг
3 начертить круг поменьше
4 отступать от центра 5 мм влево
5 начертить самый маленький круг
6 отступить от центра 5 мм вправо
7 начертить второй самый маленький круг таких же размеров
Program abc;
var a, b, c, max: integer;
begin
read (a, b, c);
if a>b then
a:=max
else
b:=max;
if c>max then
c:=max;
writeln ('Максимальное число__', max);
end.
Второй в один вопрос еще))0).