Новости | FAQ | Авторы | Документация | В действии | Библиотека |
Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Misha v.3 29.01.2007 14:37 / 29.01.2007 14:38
# в $sing бывает 1 или -1, незачем брать sing и его сравнивать, всё можно сделать одним сравнением $sign(^if($y<0){-1}{1}) # а тут вместо 3-х if лучше использовать 1 switch и убрать промежуточную строковую переменную $atan ^swith(^math:sign($x)){ ^case(1){ $res($sign*^math:atan(^math:abs($y/$x))) } ^case(-1){ $res($sign*($math:PI-^math:atan(^math:abs($y/$x)))) } ^case(0){ $res(^math:sign($y)*$math:PI/2) } } ...