Суть в том, что переводишь число в строковый формат и далее работаешь с ним как с одномерным массивом (чем и является по сути строка). Во внешнем цикле выбирается по порядку от 1 до (длина строки -1, т.е. до предпоследнего) цифра числа. Во внутреннем цикле эта цифра сравнивается с каждой последующей по-порядку до тех пор пока не найдется одинаковая. Если нашлась, то выход из цикла. Из внешнего цикла так же предусмотрен выход если нашлась пара равных цифр. program z1; var n: int64; l: integer; s: string; i, j: byte; x: boolean; begin writeln ('введите число'); readln (n); Str(n,s); l:=length(s); x:=false; for i:=1 to l-1 do begin for j:=i+1 to l do begin if s[i]=s[j] then begin x:=true; break; end; end; if x=true then break; end; writeln (x); end.
Информационный объём одного символа в алфавите вычисляется по формуле N=2^i,где N количество символов в алфавите, а i - информационный объём одного символа, следовательно, для русского алфавита: в русском алфавите 33 буквы(если там 32, то 2^5=32) а ближайшая степень двойки=5 тогда нам нужно взять на одну степень больше чтобы закодировать этот символ, тогда 2^6=64 откуда следует что для русского алфавита инф. объём одного символа=6 бит по аналогии с латинским, в нём 26 букв, 2^4=16 следовательно 2^5=32 и тогда для латинского алфавита инф. объём=5 бит