<span># Как я понял, для отрицательного числа просто добавляется
# знак -
def IntToByte(x):
n = "" if x>0 else "0"
while x > 0:
y = str(x % 2)
n = y + n
x = int(x / 2)
print (n)
a = int(input())
if a>=0:
IntToByte(a)
else:
print('-',end = "")
IntToByte(-a)</span>
program simple_num;
var n:integer;
function simple(num:integer):boolean;
var count, i:integer;
key:boolean;
begin
count := 0;
i := 1;
repeat
if num mod i = 0 then
inc(count);
inc(i);
until (i > num);
if count > 2 then
key := false
else key := true;
simple := key;
end;
begin
writeln('Введите натуральное число больше 1');
readln(n);
if n > 1 then
if simple(n) then
writeln('Число ',n, ' простое')
else writeln('Число ',n, ' непростое')
else writeln('введено число менее 1');
end.
Дважды используем закон де Моргана и один раз закон повторения.
not(x * (not x * not y )) = not x + not(not x * not y) =
not x + not x + not y = not x + not y