XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Лекс

offline
Опыт: 3,280
Активность:
Целость числа
Вообщем сабж
Мне нужно определить, кратно ли число, которое увеличивается в цикле 10ти
Для этого я хочу использовать переменную типа real и проверять являются ли значение после запятой нулями или же нет.
Возможно ли это проследить или же есть какой либо другой способ вычислить кратность числа?
Старый 07.02.2010, 00:55
reALien

offline
Опыт: 29,211
Активность:
Можна сделать так:
Перевести наше число в integer и отнять от его целочисленного варианта реальный, тогда если результат равен нулю, то число было целое.
Старый 07.02.2010, 01:22
Лекс

offline
Опыт: 3,280
Активность:
спасибо
Старый 07.02.2010, 01:58
Enein
Silenced by ZlaYa1000
offline
Опыт: 43,453
Активность:
есть же стандартная проверка:
function ModuloReal takes real dividend, real divisor returns real
    local real modulus = dividend - I2R(R2I(dividend / divisor)) * divisor
    if (modulus < 0) then
        set modulus = modulus + divisor
    endif
    return modulus
endfunction
Старый 07.02.2010, 02:03
Лекс

offline
Опыт: 3,280
Активность:
Enein, это не то
Старый 07.02.2010, 03:25
Enein
Silenced by ZlaYa1000
offline
Опыт: 43,453
Активность:
что не то, тебе кратность числа надо узнать?
Старый 07.02.2010, 03:33
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
Лекс, если число кратно 10 то при делении на 10 остаток равен 0
Старый 07.02.2010, 10:16
Лекс

offline
Опыт: 3,280
Активность:
King_Ksel, спасибо кеп, а я не знал! если б тут была какая-либо простая функция в духе MOD тогда я понимаю. Я ее не нашел
короч пофиг я уже сделал простым перечислением возможных кратных чисел через or. Тупо но понятно.
Старый 07.02.2010, 10:21
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
Лекс, MOD нету но зато есть ModuloInteger или ModuloReal
King Ksel добавил:
1 число берет твое, а второе на какое делиться. Вернет остаток от деления. Например
ModuloInteger(5,2) = 1
Старый 07.02.2010, 10:30
Лекс

offline
Опыт: 3,280
Активность:
его можно присобачить в условие?
Старый 07.02.2010, 10:48
agentex

offline
Опыт: 34,834
Активность:
любую функцию можно присобачить в условие ^^
Старый 07.02.2010, 11:06
DioD

offline
Опыт: 45,134
Активность:
лекс радует с каждым днём всё больше и больше.
X /10 * 10 == X
Старый 07.02.2010, 12:04
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 05:33.