При броске одной шестигранной кости количество информации = log(2)6 ≈ 2,58 бит. При броске трех костей количество информации = 3*log(2)6-log(2)3 ≈ 3*2,58-1,58 ≈ 6,16 бит. Вычитание выполняется для различения трех костей.
Irinalobanowa
17.09.2022
#include <iostream> #include <cmath> using namespace std; int main() { setlocale(LC_ALL, "Russian"); double x,y,z; cout << "Введите 3 числа через пробел: "; cin >> x >> y >> z; if (x<0) { x=pow(x,2); } else if (x>0) { x=pow(x,3); } if (y<0) { y=pow(y,2); } else if (y>0) { y=pow(y,3); } if (z<0) { z=pow(z,2); } else if (z>0) { z=pow(z,3); } cout << "Вывод: " << x << " " << y << " " << z << endl; return 0; }
best00
17.09.2022
Программу надо сформатировать и тогда её структура будет видна лучше. А чтобы понять, как идет выполнение, в нужных точках ставим промежуточную выдачу - это называется "трассировкой".
var s, k: integer; label met; begin s:=-12; k:=90; Writeln('s=',s,', k=',k); s:=s+10; Writeln('s=',s); met: Writeln('Метка met:'); k:=k+10; Write('k=',k); if k<200 then s:=50 else s:=s+k; Writeln(', s=',s); if k<200 then goto met; Writeln('Результат: s=',s) end.