Проверьте два оператора if else, запустите третью вещь?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Проверьте два оператора if else, запустите третью вещь?

Сообщение Anonymous »

Пытаемся найти решение для проверки двух разных условий if, и если ни одно из них не истинно, выведите третье. Используя здесь пример кода FizzBuzz, чтобы продемонстрировать проблему, когда Fizz — это любое число, кратное 5, а Buzz — любое число, кратное 7. Сначала я написал «правильный» способ сделать это здесь.

Код: Выделить всё

//java
public class Fizzbuzz {
public static void main(String[] args) {
for(int i = 0; i < 100; i++ ) {
if(i % 5 == 0 && i % 7 == 0) {
System.out.println("FizzBuzz");
} else if(i % 5 == 0) {
System.out.println("Fizz");
} else if(i % 7 == 0) {
System.out.println("Buzz");
} else {
System.out.println(i);
}
}
}
}
Я думал, что это плохо, потому что использование 4 операторов if для проверки двух возможных вещей теоретически является пустой тратой. Это можно легко упростить до чего-то вроде этого:

Код: Выделить всё

//java
public class Fizzbuzz2 {
public static void main(String[] args) {
for(int i = 0; i < 100; i++ ) {
if(i % 5 == 0) {
System.out.print("Fizz");
}
if(i % 7 == 0) {
System.out.print("Buzz");
}
if(i % 5 != 0 && i % 7 != 0) {
System.out.print(i);
}
System.out.print(\n);
}
}
}
В идеале это можно было бы упростить примерно так

Код: Выделить всё

if (x), print fizz 

Код: Выделить всё

if (y), print buzz

Код: Выделить всё

if neither of the first two, print i 
где печатается шипение, жужжание, и я не добавляю новую строку, а print(/n) находится в конце.
Кто-нибудь знает, как это сделать (на любом языке ?).

Подробнее здесь: https://stackoverflow.com/questions/793 ... -3rd-thing
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»