Пусть длина номера = 5
Мощность алфавита = 40
Тогда для записи 1 сивола понадобится 6 бит (2^6 > 40 < 2^5)
6 * 5 = 30 бит на 1 номер. Номер кодируется целым кол-во байт, следовательно 30/8=3.75, отсюда 4 байта отводится на 1 номер.
4*50= 200 байт.
// PascalABC.NET 3.3, сборка 1555 от 21.10.2017
// Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('n=');
var a:=MatrGen(n,n,(i,j)->i<=n-j-1?i+1:0);
a.Println(3)
end.
Пример
n= 13
1 1 1 1 1 1 1 1 1 1 1 1 1
2 2 2 2 2 2 2 2 2 2 2 2 0
3 3 3 3 3 3 3 3 3 3 3 0 0
4 4 4 4 4 4 4 4 4 4 0 0 0
5 5 5 5 5 5 5 5 5 0 0 0 0
6 6 6 6 6 6 6 6 0 0 0 0 0
7 7 7 7 7 7 7 0 0 0 0 0 0
8 8 8 8 8 8 0 0 0 0 0 0 0
9 9 9 9 9 0 0 0 0 0 0 0 0
10 10 10 10 0 0 0 0 0 0 0 0 0
11 11 11 0 0 0 0 0 0 0 0 0 0
12 12 0 0 0 0 0 0 0 0 0 0 0
13 0 0 0 0 0 0 0 0 0 0 0 0
P.S. Ненавижу того, кто поставил тут этот шрифт - все съезжает!
// составьте программу нахождения в массиве а( 10) индексов элементов значения которых не кратны 4
var i,x: word;
a : array [1..10] of integer;
Begin
writeln ('Введите 10 целых чисел');
for i:=1 to 10 do
Begin
write (i,' число ');
readln (a[i]);
end;
writeln;
for i:=1 to 10 do
Begin
x:=a[i] mod 4;
if x<>0 then writeln (i,' элемент таблицы не кратен 4');
end;
<span>End.</span>