Форум сайта python.su
0
Здравствуйте друзья,
Помогите пожалуйста, не могу понять в чем проблема при использовании оператора “<<”
нужно получить результат из 1 << 176, VB почему то выводит 65536, хотя значение в Pythone “9578097130411805364…………”
В чем тут подвох ?! суммы поменьше считают правильно, возможно декларировать переменную нужно в VB по другому ?!
Офлайн
88
Одна пошла по кругу.
Если в VB есть тип, позволяющий вместить ‘0b100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000’, то нужно использовать его.
Отредактировано Shaman (Ноя. 3, 2015 18:06:31)
Офлайн
0
Shaman
Одна пошла по кругу.Если в VB есть тип, ползволяющий вместить ‘0b100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000’, то нужно использовать его.
Офлайн
88
Очевидно, да.
Офлайн
76
В данном случае вы используете битовую операцию смещение влево (<<). Т.е Python вам возвращает число двоичное представление, которого 1000000…(176 нолей).
Офлайн
857
PythonMinerХочешь писать в VB - изучай VB со всеми его ограничениями.
возможно декларировать переменную нужно в VB по другому ?
PythonMinerЗначит, там 16-битное ограничение на целочисленные константы.
VB почему то выводит 65536
Отредактировано py.user.next (Ноя. 4, 2015 01:02:03)
Офлайн