Перейти к содержимому
  • 0
LeshaInc

Проверка числа на четность

Вопрос

Делал я прогу. Мне нужно было сделать if. В нем должно было быть if cc<ss and cc - чётное then. Я не знал как сделать проверку чётное/нечетное. Предложили проверять остаток при делении на 2 и если равно 0, то чётное. Получилось math.fmod(cc/2). В обычном print'е оно выдавало правильный результат - 1 (cc=3). Но в сравнении math.fmod(cc/2) было nill и выдавало ошибку: "Не могу nill с числом сравнивать, батька." Я думаю это ошибка в луа, хотя ничего не противостоит против того что я тупой. Помогите пожалуйста решить проблему.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Рекомендуемые сообщения

можно так:

​if cc < ss and cc%2==0 then
   print ('cc меньше ss и сс-четное')
else
   print('одно или несколько условий не выполнено')
end

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ты хотя бы вики почитал, OpenOS подгружает все эти библиотеки, в биосе доступны Component and computer API.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Очень невнимательный игрок. Команда принимает не 1 аргумент, а 2. Я в чате даже строку дал правильную math.fmod(3,2) . И потом даже сходил проверил и сказал что math.fmod(3,2) возвращает единицу.
Нужно примерно вот так:

if math.fmod(сс,2)~=0 then
  print("Нечетное")
else 
  print("Четное")
end

А ошибка про nil и была потому, что аргументы не все передавал. В следующий раз при такой же ошибке сходи на lua.ru в разделе документации почитай как с определенной командой работать, их описание , что делают и какие аргументы принимают.
Еще заодно можно просто пробежаться по описаниям других команд, чтобы при возникновении новых потребностей ты уже знал чем это решить, а команду потом найти будет не сложно.

Изменено пользователем KelLiN
  • Нравится 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.

×
×
  • Создать...