Перевод факториала в двоичную систему - Turbo Pascal
Формулировка задачи:
Привет всем.
Нужна программа, которая переводит факториал в двоичную систему.
Желательно. чтобы при переводе каждая цифра (1 и 0 соответственно)
находилась в отдельной ячейки массива.
Var a,a2:array[1..100000000] of int64; i,j,b,t,n,c:longint; x:int64; begin clrscr; Read(n); a[1]:=1; t:=1; b:=1; for i:=1 to n do begin x:=0; for j:=1 to t do begin x:=x+a[j]*b; a[j]:=x mod 10; x:=x div 10; end; while x>0 do begin inc(t); a[t]:=x mod 10; x:=x div 10; end; inc(b); end; Write(a[t]); for i:=t-1 downto 1 do begin Write(a[i]); end; end.Добавлено через 21 минуту Переформулирую задачу. Вводится факториал какого-то числа. И мне нужно получить факториал этого числа в двоичной системе счисления, причём, чтобы каждая цифра (1 или 2 соответственно) была в отдельной ячейке массива. Например, ввожу 8 и получаю 1001110110000000 Добавлено через 1 час 1 минуту Вводимое число в диапазоне от 1 до 10000
Код к задаче: «Перевод факториала в двоичную систему - Turbo Pascal»
begin ... Readln(a); count2:=0; while (a>1) do begin a:=a div 2; inc(count2,a); end; WriteLn(count2); ... end.
10 голосов, оценка 4.000 из 5
СОХРАНИТЬ ССЫЛКУ