Проще всего воспользоваться таблицей тетрад. Выглядит так
0000 - не зарезирвировано
0001 - А
0010 - В
0011 - Д
0100 - Е
0101 - Ж
0110 - И
0111 - К
1000 - Л
1001 - М
1010 - Н
1011 - О
1100 - П
1101 - Р
1110 - Ь
1111 - Ш
1011 - О, 1100 - П, 0100 - Е, 1000 - Л, 1110 - Ь
Слово ОПЕЛЬ
12₈ = 2×8⁰+1×8¹ = 2×1+1×8 = 2+8 = 10₁₀
1234567₈ = 7×8⁰+6×8¹+5×8²+4×8³+3×8⁴+2×8⁵+1×8⁶ = 7×1+6×8+5×64+4×512+3×4096+2×32768+1×262144 = 342391₁₀
Var
a, b: integer;
begin
readln(a);
while (inttostr(a).Length > 1) do
begin
b := 0;
foreach c: char in inttostr(a) do
b += strtoint(c);
a := b;
end;
writeln(b);
<span>end.
=======================
var
a, b, e: integer;
d: string;
begin
readln(a);
d := inttostr(a);
while (length(d) > 1) do
begin
d := inttostr(a);
b := 0;
for e := 1 to length(d) do
b += strtoint(d[e]);
a := b;
end;
writeln(b);
<span>end.</span></span>
C++
#include <math.h>
int revert(int a)
{
int b=0;
int nl = log((float)a)/log(10.0), p = pow((float)10,(float)nl);
for (int i=0; i<=nl; i++)
{
b+= a \% 10 *p;
a/=10;
p/=10;
}
return b;
<span>}</span>
<span>Существует формула, которая связывает между собой количество возможных информационных сообщений N и количество информации I, которое несет полученное сообщение:</span>
N = 2 в степени I, следовательно
8 = 2 в степени 3, следовательно 3 - количество информации которое несёт одна буква этого алфавита.