Как написать четную или нечетную программу в Java? - PullRequest
2 голосов
/ 22 июня 2019

Мои инструкции: «Напишите программу, которая запрашивает у пользователя число, затем подсчитывает (цикл« для ») от одного до этого числа и печатает, является ли этот номер цикла четным или нечетным (что потребует еще структура внутри цикла) Так что нужно перечислить: 1 странный 2 четное 3 странно ...

public class AssmtEvenOrOddJulianP {
public static void main(String[] args) {
  //variable
  int num = 0;

  //input
  System.out.print("\nEnter a number less than 100: ");
  num = Expo.enterInt();

  //output
  for (int i = 1; i <= num; i++)
     if ((num % 2) == 0)
     System.out.print("\n" + i + " Is Even");       
     else if ((num % 2) >= 0)
     System.out.print("\n" + i + " Is Odd");

Прямо сейчас, если я введу 3, будет напечатано: 1 странный 2 странно 3 нечетно

Ответы [ 2 ]

4 голосов
/ 22 июня 2019

Незначительная ошибка:

Вы должны вычислить остаток от i на 2, а не num на 2.

Всегда переносить for и if / elseблоки в фигурных скобках:

for (int i = 1; i <= num; i++) {
    if ((i % 2) == 0) {
        System.out.print("\n" + i + " Is Even");
    } else if ((num % 2) >= 0) {
        System.out.print("\n" + i + " Is Odd");
    }
}

Избегайте использования лишних паратезов:

for (int i = 1; i <= num; i++) {
    if (i % 2 == 0) {
        System.out.print("\n" + i + " Is Even");
    } else if (num % 2 >= 0) {
        System.out.print("\n" + i + " Is Odd");
    }
}

Условие else if имеет небольшую ошибку, которая сейчас "недоступна", но может вызвать боль вбудущее

num % 2 >= 0 должно быть i % 2 < 0 || i % 2 > 0

Условие else if можно упростить до else:

for (int i = 1; i <= num; i++) {
    if (i % 2 == 0) {
        System.out.print("\n" + i + " Is Even");
    } else {
        System.out.print("\n" + i + " Is Odd");
    }
}

Окончательный результат:

С некоторыми другими незначительными улучшениями:

public class EvenOdd {
    public static void main(String[] args) {
        // input
        System.out.print("\nEnter a number less than 100: ");

        // variable
        int num = Expo.enterInt();

        System.out.println();

        // output
        for (int i = 1; i <= num; i++) {
            if (i % 2 == 0) {
                System.out.println(i + " Is Even");
            } else {
                System.out.println(i + " Is Odd");
            }
        }
    }
}
0 голосов
/ 23 июня 2019

Следующая программа поможет вам.для нечетного и четного числа нам нужно разделить на 2, а если число делится на 2, то число является четным числом (в данном случае напоминание будет 0), а если напоминанием является 1, то его нечетное число

public class EvenAndOddNumber {
public static void main(String[] args) {

    System.out.println("Enter the number");
    Scanner sc = new Scanner(System.in);
    int num = sc.nextInt();

    for (int i = 1; i <= num; i++) {
        if (i % 2 == 0) {
            System.out.println(i + " is even number");
        } else {
            System.out.println(i + " is odd number");
        }
    }
}

}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...