Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 29, 2017 14:58:51

VadimK
Зарегистрирован: 2013-07-03
Сообщения: 199
Репутация: +  16  -
Профиль   Отправить e-mail  

100 / 8 * 4 == 48

 Python 2.7.5 (default, Nov  6 2016, 00:28:07) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-11)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print 100 / 8 * 4
48

Почему 48 ?
100 / 8 = 12.5
12.5 * 4 = 50

В чем я затупил ?

Офлайн

#2 Ноя. 29, 2017 15:07:20

li_4
Зарегистрирован: 2017-11-28
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

100 / 8 * 4 == 48

VadimK
Возможно оператор “/” во второй ветке применяет целочисленное деление ( без остатка ) и возвращает 12, а не 12.5?

Офлайн

#3 Ноя. 29, 2017 15:47:36

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

100 / 8 * 4 == 48

li_4
Возможно оператор “/” во второй ветке применяет целочисленное деление ( без остатка ) и возвращает 12, а не 12.5?
бинго!!!



Офлайн

#4 Ноя. 29, 2017 16:03:36

VadimK
Зарегистрирован: 2013-07-03
Сообщения: 199
Репутация: +  16  -
Профиль   Отправить e-mail  

100 / 8 * 4 == 48

 >>> print type(100/8)
<type 'int'>
>>> print type(100)  
<type 'int'>
>>> print type(100.0)
<type 'float'>
>>> print 100.0 / 8 * 4
50.0

Да, так оно есть. Спасибо за подсказку.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version