Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 11, 2016 20:57:08

Andrew22528
Зарегистрирован: 2015-05-17
Сообщения: 44
Репутация: +  0  -
Профиль   Отправить e-mail  

Модуль без abs и if

Здравствуйте, не могли бы вы подсказать, как взять модуль числа без if и abs?
Заранее спасибо.

Офлайн

#2 Окт. 11, 2016 21:40:45

ZerG
Зарегистрирован: 2012-04-05
Сообщения: 2627
Репутация: +  61  -
Профиль   Отправить e-mail  

Модуль без abs и if

math.fabs не пойдет или у вас какая-то принципиальная задача?



Влодение рускай арфаграфией - это как владение кунг-фу: настаящие мастира не преминяют ево бес ниабхадимости

Офлайн

#3 Окт. 11, 2016 21:42:28

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Модуль без abs и if

ВОобще модуль числа А в алгебре (вроде) есть арифметический корень из квадрата числа А. Дословная реализация в Питоне не даст желаемого результата так как сменится тип данных (из за операции sqrt )

 >>> from math import sqrt
>>> a = -3
>>> a_modulo = sqrt(a ** 2)
>>> a_modulo
3.0
Решить проблему можно явно - приведением к исходному типу:
 >>> previous_type = type(a)
>>> previous_type(a_modulo)
Но думаю другие форумчане смогут предложить более рациональное решение.

Альтернативное решение (которое наверняка предложат новички) является операции со строками:
 >>> str(a).lstrip('-')
'3'
ну и также приводить к исходному типу нужно. А ну и оно таки бредовое, чего уж говорить.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Отредактировано JOHN_16 (Окт. 11, 2016 21:43:50)

Офлайн

#4 Окт. 11, 2016 23:14:36

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Модуль без abs и if



 x < 0 and -x or x

Офлайн

#5 Окт. 11, 2016 23:19:53

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Модуль без abs и if

4kpt_IV
да да ) Вот именно подобное я хотел увидеть =)



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#6 Окт. 11, 2016 23:21:39

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Модуль без abs и if

JOHN_16

Я проникся твоим постом

Офлайн

#7 Окт. 12, 2016 01:28:04

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Модуль без abs и if

4kpt_IV
Я проникся твоим постом
А помоему уже надо банить студентов за посты со словами “сделать без использования”, да и преподов тоже. :).
Это оправдано только на убогих железках с убогим питоном. За все время припоминаю только один пост такого типа. Остальное все игры разума.



Офлайн

#8 Окт. 12, 2016 06:24:40

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

Модуль без abs и if

doza_and
А помоему уже надо банить студентов за посты со словами “сделать без использования”, да и преподов тоже. :).
Может люди к параолимпиаде по программированию готовятся ;)



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version