1111101(2)=2^6+2^5+2^4+2^3+2^2+2^0=125(10)
AF(16)=175(10)
A=10 F=15
AF(16)=16^1*10+16^0*15=175(10)
36(8)=3*8^1+6*8^0=30(10)
1101(2)=2^3+2^2+2^0=13(10)
125+175+30+13=343
3 Кбайта = 3*1024*8 бит
Объем одного символа = 3*1024*8 / 2048 = 12 бит
Мощность алфавита = 2^12 = 4096
//Pascal ABC.NET v3.1 сборка 1219
Const
n=5;
Var
a:array[1..n] of integer;
i,s:integer;
begin
for i:=1 to n do
begin
readln(a[i]);
if a[i]<i then s:=s+a[i];
end;
writeln(s);
end.
Пример ввода:
2
2
1
1
2
Пример вывода:
4
===== PascalABC.NET =====
begin
var (s, n) := ReadInteger2('Введите S и N:');
var r := 0;
for var m10 := 0 to S div 10 do
begin
for var m5 := 0 to (S - 10 * m10) div 5 do
begin
if m10 + m5 > N then
break;
for var m2 := 0 to (S - 10 * m10 - 5 * m5) div 2 do
begin
if m10 + m5 + m2 > N then
break;
for var m1 := 0 to S - 10 * m10 - 5 * m5 - 2 * m2 do
begin
if m10 + m5 + m2 + m1 > N then
break;
if (m10 * 10 + m5 * 5 + m2 *2 + m1 = s) and
(m10 + m5 + m2+ m1 = N) then
begin
$'{m10} x 10 + {m5} x 5 + {m2} x 2 + {m1} x 1'.Println;
Inc(r)
end
end
end
end
end;
if r > 0 then
Println('Найдено вариантов размена:', r)
else
Println('Вариантов такого размена нет')
end.