Побитовый сдвиг выводит неверный результатPython

Программы на Python
Ответить Пред. темаСлед. тема
Гость
 Побитовый сдвиг выводит неверный результат

Сообщение Гость »


Я заканчиваю задание по информатике и написал это для своего вопроса:

Создайте переменную s со значением 154 и переменную p со значением 6. Отобразите ее значения в десятичной и двоичной форме на экране.

s=154 р=6 bs=бин(ы) бп=бин(п) print("В десятичной форме s =",s,"и p =",p) print("В двоичной форме s =",bs[2:],"и p =",bp[2:]) Выполните побитовую операцию ИЛИ над переменными s и p и запишите результат в переменную s. Выведите значение в десятичной и двоичной форме на экран.

s=s|p bsp=бин(ы) print("В десятичной форме значение равно",s) print("В двоичной форме значение равно",bsp[2:]) Выполнить операцию побитового сдвига вправо на 2 бита над переменными s и p с записью результатов в соответствующие переменные. Отображение значений в десятичной и двоичной форме на экране.

#print(s) sbutshift2digit=s>>2 binsshift=bin(sbutshift2digit) pbutshift2digit=p>>2 binpshift=bin(pbutshift2digit) print("для операции побитового сдвига вправо на 2 бита для переменных s значение в десятичном формате равно",sbutshift2digit) print("для операции побитового сдвига вправо на 2 бита для переменных s значение в двоичном виде равно",binsshift[2:]) печать("\n") print("для операции побитового сдвига вправо на 2 бита для переменных s десятичное значение равно",pbutshift2digit) print("для операции побитового сдвига вправо на 2 бита для переменных s значение в двоичном виде равно",binpshift[2:]) Вот результат моей третьей части кода:

для операции побитового сдвига вправо на 2 бита по переменным s, значение в десятичном виде равно 39 для операции побитового сдвига вправо на 2 бита по переменным s значение в двоичном виде равно 100111 для операции побитового сдвига вправо на 2 бита по переменным s значение в десятичном формате равно 1 для операции побитового сдвига вправо на 2 бита по переменным s значение в двоичном виде равно 1 Проблема в том, что для операции побитового сдвига вправо на 2 бита для переменных s десятичное значение должно быть 38, а не 39. Я действительно не знаю, что пошло не так......
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»