Разбираемся с личным кодом:
Длина n=11 символов
23 буквы + 10 цифр = 33 символа - мощность алфавита личного кода.
33<2^i, где i - кол-во бит на символ
i = 5 бит (из неравенства выше)
V = i * n = 5 бит * 5 = 25 бит ≤ 8 байт
Разбираемся с кодом подразделения:
Длина n=299 символов
26 буквы + 10 цифр = 36 символов - мощность алфавита кода подразделения
i = 6 бит
V = 299 * 6 бит = 1794 бит ≤ 12 байт
Procedure TForm1.Button1Click(Sender: TObject); var i1,i2,i3 : Integer; kk : Integer; Chislo : Integer; begin Memo1.Clear; kk := 0; for i1 := 1 to 9 do for i2 := 0 to 9 do for i3 := 0 to 9 do if ( (i1<>i2) and (i1<>i3) and (i2<>i3) ) then if ( Frac((i1+i2+i3)/7)=0 ) then begin Chislo := i1*100 + i2*10 + i3; if ( Frac(Chislo/7)=0 ) then begin Memo1.Lines.Append(inttostr(Chislo)); inc(kk); end; end; end;