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

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

Закрытая тема
 
vladfaust

offline
Опыт: 12,714
Активность:
Функция не работает
» код
local real acc = 0.
if sp_throws[1] != 0 {
acc = sp_succes[1]/sp_throws[1]
}
BJDebugMsg("acc = "+R2S(acc))
Когда sp_throws[1] хотя бы на 1. больше sp_succes, возвращает 0. втф?
[+] 1 пункт от Rewenger: Недопустимое название темы.

Отредактировано Rewenger, 06.11.2011 в 15:36.
Старый 06.11.2011, 13:21
Hanabishi
COOL STATUS
offline
Опыт: отключен
inadequate_, это логично, при делении меньшего на большее получается число меньше единицы.
Почему 0 непонятно, должна получиться дробь 0.xxx

Отредактировано Hanabishi, 06.11.2011 в 14:36.
Старый 06.11.2011, 14:03
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
inadequate_, а sp_throws и sp_throws какой тип данных
Старый 06.11.2011, 14:43
Doc

offline
Опыт: 63,163
Активность:
потому-что нужно всегда ставить . после чисел.
1 / 3 = 0
а 1. / 3. = 0.34
Старый 06.11.2011, 14:55
alexprey
познающий Unity
offline
Опыт: 68,501
Активность:
inadequate_, короче проблема вот в чем, а то меня Emtec замучает
Если у тебя переменные sp_succes и sp_throws типа int, то все логично. При делении int на int получается целочисленное деление. Например 5 \ 2 = 2, но 5.0 \ 2 = 2.5. Замени тип переменные на real и радуйся жизни.
Старый 06.11.2011, 15:30
vladfaust

offline
Опыт: 12,714
Активность:
[close]
Старый 07.11.2011, 14:22
Закрытая тема

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

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

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

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



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