Форум переехал на новый адрес: http://qsp.su



АвторСообщение



ссылка на сообщение  Отправлено: 16.03.09 08:13. Заголовок: Почему в QSP нет функции модуля числа?!


когда делаешь механизмы загадок, то используешь как строки так и числа, с числами делать это проще (а на экран строками).

Дык вот, в чем дилема возникла, нужно мне было в загадке использовать принцип весов (принцип равновесия) и для этого нужно использовать числа относительно нуля. Это определяется не только оптимальностью алгоритма (так проще писать), но и уменьшает кол-во переменных для вывода на экран о состоянии загадки. Т.е. видно не только степень наклона на весах, но и в какую сторону. Для этого у меня задано, что отрицательные это левая чаша, а положительные это правая у каждой по 48 очков (по сумме для равновесия они должны быть равны нулю). Использование чисел в данном случае определяет то, что к весам приложена сама загадка с орнаментом, т.е. при совпадении знаков с эталоном в левой и правой секциях, весы начинают менять свое положение, что в результате определяет степень наклона и направление в одной переменной сразу (левая + правая = результат: -48 + 48 = 0 -равновесие). Можно конечно сделать и с положительными числами на обеих чашах, но тогда код разбухнет вдвое, а хороший алгоритм должен быть коротким, понятным и простым. В данном случае подходит описанный мной.

В общем смысл дилемы напрашивается само собой, для определенных проверок требуется сверка, как положительных значений, так и отрицательных одновременно, т.е:
Скрытый текст


В то время когда можно напиать так:
Скрытый текст


где ABS(X) - это |X| (модуль числа X).


Почему в QSP нет функции модуля числа?

Сообщение отредактировано модератором.

Спасибо: 0 
Профиль Цитата Ответить
Ответов - 9 [только новые]


администратор




ссылка на сообщение  Отправлено: 16.03.09 19:01. Заголовок: replace(a,'-'..


replace(a,'-') - модуль числа :)

Спасибо: 0 
Профиль Цитата Ответить
администратор




ссылка на сообщение  Отправлено: 16.03.09 19:04. Заголовок: а также iif(a<0,..


а также iif(a<0,-a,a) - модуль числа.

Спасибо: 0 
Профиль Цитата Ответить
администратор




ссылка на сообщение  Отправлено: 16.03.09 19:11. Заголовок: А ещё max(a,-a) - мо..


А ещё max(a,-a) - модуль числа.

Спасибо: 0 
Профиль Цитата Ответить



ссылка на сообщение  Отправлено: 17.03.09 00:26. Заголовок: Байт явно ответил и ..


Байт явно ответил и у меня отпали все вопросы. Спасибо за ответ, Байт!

Сообщение отредактировано модератором.

Спасибо: 0 
Профиль Цитата Ответить



ссылка на сообщение  Отправлено: 17.03.09 14:17. Заголовок: Ну, в QSP есть функц..


Ну, в QSP есть функции, так что можно просто сделать функцию модуля числа. Не знаю правда, насколько лучше выглядит
func "abs", n
, чем
max(n, -n)
, но осмысленне - точно. Я в общем-то и ратовал за функции, чтобы тем таких не возникало...

Спасибо: 0 
Профиль Цитата Ответить





ссылка на сообщение  Отправлено: 12.05.09 09:28. Заголовок: С использованием опе..


С использованием оператора func уже можно оформлять вычисление модуля отдельной локацией.
Правда стоит ли ;)

Спасибо: 0 
Профиль Цитата Ответить





ссылка на сообщение  Отправлено: 16.05.09 13:02. Заголовок: Ntropy пишет: Байт ..


Ntropy пишет:

 цитата:
Байт явно ответил и у меня отпали все вопросы. Спасибо за ответ, Байт



Спасибо: 0 
Профиль Цитата Ответить





ссылка на сообщение  Отправлено: 16.05.09 13:16. Заголовок: это не я писал, а E..


[Ray] это не я писал, а Eten.

Спасибо: 0 
Профиль Цитата Ответить





ссылка на сообщение  Отправлено: 16.05.09 13:58. Заголовок: оу перепутал кнопки ..


оу перепутал кнопки "цитата".

Спасибо: 0 
Профиль Цитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 4
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация вкл, правка нет



Создай свой форум на сервисе Borda.ru
Текстовая версия