В двоичном представлении инвертировать все одиночные единицы, кроме старшего бита - Pascal ABC
Формулировка задачи:
В двоичном представлении инвертировать все одиночные единицы, кроме старшего бита.
Решение задачи: «В двоичном представлении инвертировать все одиночные единицы, кроме старшего бита»
textual
Листинг программы
Program P25; Var C : Array [1..31] of integer; Var i,n,k,p : integer; Begin write('n='); readln(n); for i:=1 to 31 Do C[i]:=0; p:=31; while (n>0) Do Begin k:=n mod 2; C[p]:=k; p:=p-1; n:=n div 2; End; k:=1; while (C[k]=0) Do k:=k+1; for i:=1 to 31 Do write(C[i]); writeln; for i:=k+2 to 30 Do If (C[i]=1) And (C[i-1]=0) And (C[i+1]=0) then C[i]:=0; for i:=1 to 31 Do write(C[i]); writeln; k:=0; for i:=1 to 31 Do k:=k*2+C[i]; writeln(k); End.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д