1. Таблицы сложения и умножения:
Вычисления во вложении. Последнее деление на самом деле можно было бы "в столбик" и не писать, и так понятно, какой будет результат.
2. Переводим в двоичную систему счисления и дописываем вперед незначащие нули, пока не наберётся 8 знаков:
3. Добавляется знаковый бит: дописываем вперед 0, если число положительное, и 1, если отрицательное. Для неотрицательных чисел по сути ничего не меняется, а отрицательные представляем в дополнительном коде: меняем все биты на противоположные и добавляем к результату 1.
-56: меняем биты на противоположные (получаем 11100011) и добавляем 1. Окончательно получается
Хорошая задача . я подумаю и скажу тебе ответ .
Измените тип переменных n и k на integer:
function Xfact(o: integer): integer;
var
factorial: longint;
i: integer;
begin
write('o = ');
readln(o);
factorial := 1;
for i := 2 to o do
factorial := factorial * i;
end;
var
c: real;
n,k:integer;
begin
writeln('Введите число n: ');
readln(n);
writeln('Введите число k: ');
readln(k);
c := Xfact(n) / Xfact(n - k) * Xfact(k);
writeln('C = ', c);
end.