Newcomposers.ru

IT Мир
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

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

Как определить, является ли число нечетным в JavaScript

может ли кто-нибудь указать мне на некоторый код, чтобы определить, является ли число в JavaScript четным или нечетным?

26 ответов

использовать ниже код:

1 представляет нечетное число, в то время как 0 представляет четное число.

использовать побитовое AND оператора.

Если вы не хотите возвращаемое значение строки, а скорее логическое, используйте это:

вы можете сделать что-то вроде этого:

должен ли я сделать массив действительно большим, который имеет много четных чисел

О боже нет. Используйте модуль (%). Это дает вам остаток двух чисел, которые вы делите.

это означает, что если вы модифицируете любое число x на 2, Вы получаете либо 0, либо 1, либо -1. 0 будет означать, что все в порядке. Все остальное будет означать, что это странно.

Это можно решить с помощью небольшого фрагмента кода:

надеюсь, что это помогает 🙂

Как и многие языки, Javascript имеет оператор модуля % , которая находит остаток от деления. Если нет остатка после деления на 2, а еще:

это очень распространенная идиома для тестирования четных целых чисел.

простую функцию можно обойти. Использует оператор по модулю % и тернарный оператор ?.

использовать мои расширения :

если вы не уверены, что это число, проверьте его следующим ветвлением:

обновление :

если вы не будете использовать переменную :

производительность :

оказывается, что процедурная парадигма лучше, чем парадигма ООП . Кстати, я выступал профилирование в этой скрипке . Однако, путь ООП все еще самый красивый .

С побитовым, codegolfing:

вычитайте 2 рекурсивно, пока не достигнете либо -1, либо 0 (очевидно, работает только для положительных целых чисел):)

вы можете использовать оператор for и условное, чтобы определить, является ли число или ряд чисел нечетным:

это будет печатать каждое нечетное число от 1 до 5.

просто выполнил это в Adobe Dreamweaver..он работает отлично. я использовал if(isNaN (mynmb))

Читать еще:  Runtime parameters java minecraft

чтобы проверить, является ли данное значение числом или нет, и я также использовал математика.abs (mynmb%2) преобразовать отрицательное число в положительное и вычислить

замените X своим номером (может исходить из переменной). Оператор If выполняется, когда число четное, Else, когда оно нечетное.

Если вы просто хотите знать, является ли любое заданное число нечетным:

снова замените X на число или переменную.

каждое нечетное число при делении на два оставляет остаток как 1 и каждое четное число при делении на ноль оставляет ноль как остаток. Следовательно, мы можем использовать этот код

Как насчет этого.

вот что я сделал

по какой-то причине я должен был убедиться, что длина массива меньше на единицу. Когда я этого не делаю, я получаю «undefined» в последнем элементе массива oddNumbers.

когда вам нужно проверить, является ли какая-то переменная нечетной, вы должны сначала проверить если это число. Кроме того, обратите внимание, что при расчете остатка на отрицательное число результат будет отрицательным ( -3 % 2 === -1 ).

Если Количество.isInteger доступен, вы также можете упростить этот код:

Примечание: здесь мы проверяем value % 2 !== 0 вместо value % 2 === 1 из-за -3 % 2 === -1 . Если вы не хотите -1 пройти этот тест, вам может понадобиться изменить это линия.

вот несколько тестовых примеров:

предупреждение! Я проверил все остальные ответы, и они неверны.

нечетным может быть только целое число.

  • isOdd(«someString») должно быть false.
    Строка не является целым числом.
  • isOdd(1.223) и isOdd(-1.223) должно быть false.
    Поплавок не является целым числом.
  • isOdd(0) должно быть false.
    Ноль-четное целое число (https://en.wikipedia.org/wiki/Parity_of_zero).
  • isOdd(-1) должно быть истинный.
    Это-нечетное целое число.

Мое Решение:

рассуждения, которые вошли в код

  • возвращаемый тип должен быть логическим. Ключевые слова true или false являются родными, поэтому нет необходимости возвращать-строки, 0 или 1 — которые имеют неоднозначные значения.
  • Соглашение Javascript использовать верблюжий футляр!—8—>
  • An if оператор должен иметь фигурные скобки <> . Отсутствие фигурных скобок может привести к проблемам минимизации, медленной компиляции Javascript и неразборчивости кода, если возникает проблема форматирования.
Читать еще:  Включите javascript и обновите страницу

используя % поможет вам сделать это.

вы можете создать пару функций, чтобы сделать это для вас. Я предпочитаю функции separte, которые не привязаны к номеру в Javascript, как это, который также проверяет, если вы передаете номер или нет:

и назовите это так:

Я бы реализовал это, чтобы вернуть логическое значение:

он будет работать как на неподписанных, так и на подписанных номерах. Когда модуль вернется -1 или 1 это будет переведено на true .

Ввод данных в консоли на Java

Эта статья адресована в первую очередь начинающим Java программистам.

Обычно вывод данных на консоль трудностей не представляет с System.out.print или System.out.println, как правило, справляются все. Но когда же дело доходит до ввода данных возникают трудности.

Виной тому неудобная и сложная для восприятия реализация консольного ввода в Java . Но тем не менее его можно освоить если изучить его работу.

Последняя строится на основе двух классов : InputStream (System.in) и Scanner.

Ввод с использованием InputStream (System.in)

Java получает данные из консоли при помощи системного потока ввода ( Isystem.in ) поэтому данный способ ввода может показаться очевидным. Но, к сожалению, он имеет один серьёзный недостаток.

Дело в том, что системный поток ввода получает только числовые коды символов, которые введены в окно консоли и больше ничего. Причём за один раз из него можно прочитать код только одного символа. Поэтому для того чтобы прочитать слово или строку необходимо использовать цикл.

Ниже приведён пример считывания введённой в консоли строки подобным образом.

Пока в потоке ввода есть данные (метод available возвращает значение больше нуля), мы раз разом считываем код символа, затем преобразуем его в собственно сам символ и добавляем этот символ в конец строки.

Читать еще:  Java 8 update 45 что это

На этом неудобства данного подхода не заканчиваются потому, что мы всегда получаем данные в строковом формате. Если же нам требуется ввести, допустим, целое число? Тогда нам придётся дополнить вышеприведённый пример приведением типов с соответствующей проверкой.

Поэтому для получения данных от пользователя в консольных приложениях системный поток ввода на прямую сейчас почти не используется. Вместо него предпочтительнее работать с классом Scanner.

Ввод с использованием Scanner

Класс Scanner позволяет избежать всех трудностей, связанных с использованием системного потока ввода и максимально упростить ввод данных от пользователей в консольных приложениях.

Экземпляр класса Scanner создаётся при помощи конструктора, который принимает в качестве единственного параметра поток ввода. После этого можно сразу считывать готовые данные при помощи семейства методов с префиксом next.

Вот пример, который демонстрирует считывание введённой в консоли строки. В конструктор передаётся системный поток ввода.

Если сравнить этот пример с приведённым ранее прямым считыванием строки из системного потока ввода, то преимущество класса Scanner очевидно. Ведь нам уже не требуется вручную считывать коды символов и формировать строку в цикле. Класс Scanner самостоятельно выполняет все рутинные низкоуровневые функции, предоставляя данные, которые уже готовы к использованию в программе.

Как уже говорилось выше, класс Scanner имеет целый ряд методов для считывания данных, но все они отличаются друг от друга только типами возвращаемых значений и соответствующими им названиями.

Так, помимо метода nextLine, существуют методы nextBoolean, nextByte, nextInt, nextDouble и другие.

Кроме того, имеется ряд методов с префиксом hasNext, которые позволяют определить тип считываемых данных. Например, hasNextLine, hasNextInt, hasNextBollean и т. д. Если в потоке ввода находятся данные соответствующего типа, эти методы возвращают true.

Ссылка на основную публикацию
Adblock
detector