
Java If Else
Neste desafio, testamos seu conhecimento sobre o uso de instruções condicionais if-else para automatizar processos de tomada de decisão.
- Douglas MatosNeste desafio, testamos seu conhecimento sobre o uso de instruções condicionais if-else para automatizar processos de tomada de decisão. Uma instrução if-else tem o seguinte fluxo lógico:
Fonte: Wikipédia
Tarefa
Dado um número inteiro, n, execute as seguintes ações condicionais:
Se n for estranho, imprima Weird Se n for par e estiver no intervalo inclusivo de 2 a 5, imprima Not Weird Se n for par e estiver no intervalo inclusivo de 6 a 20, imprima Weird Se n for par e maior que 20, imprima Not Weird Preencha o código stub fornecido em seu editor para imprimir se n é estranho ou não.
Formato de entrada
Uma única linha contendo um número inteiro positivo, n.
Restrições
bash1<= n <= 100
Formato de saída
Imprima Estranho se o número for estranho; caso contrário, imprima Not Weird.
Exemplo de entrada 0
bash3
Exemplo de saída 0
bashEsquisito
Exemplo de entrada 1
bash24
Exemplo de saída 1
bashNão é estranho
Explicação
Exemplo de caso 0: n = 3 n é ímpar e números ímpares são estranhos, então imprimimos Estranho.
Exemplo de caso 1: n ==24 n > 20 e n é par, então não é estranho. Assim, imprimimos Not Weird.
Resolvendo o desafio
Primeiro vamos verificar o código base que nos foi fornecido.
Javaimport java.io.*; import java.math.*; import java.security.*; import java.text.*; import java.util.*; import java.util.concurrent.*; import java.util.regex.*; public class Solution { private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int N = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); scanner.close(); } }
Vamos começar identificando se N é par ou ímpar, fazemos isso usando o operado % que retorna o resto da divisão, se o resto da divisão for igual a 0 (zero), isso quer dizer que o valor é par, se não, o valor é ímpar.
Javaimport java.util.Scanner; public class Solution { private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int N = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); boolean isOdd = N % 2 != 0 ? true : false; scanner.close(); } }
Agora, vamos as condicionais. Se N for ímpar, devemos imprimir Weird
Javaimport java.util.Scanner; public class Solution { private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int N = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); boolean isOdd = N % 2 != 0 ? true : false; if (isOdd) { System.out.println("Weird"); } scanner.close(); } }
Se N não for ímpar e ** N** for maior que 2 e N menor que 5, devemos imprimir Not Weird
Javaimport java.util.Scanner; public class Solution { private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int N = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); boolean isOdd = N % 2 != 0 ? true : false; if (isOdd) { System.out.println("Weird"); } else if (!isOdd && N > 2 && N < 5) { System.out.println("Not Weird"); } scanner.close(); } }
Se N não for ímpar e N for maior que 6 e N for menor que 20, devemos imprimir Weird
Javaimport java.util.Scanner; public class Solution { private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int N = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); boolean isOdd = N % 2 != 0 ? true : false; if (isOdd) { System.out.println("Weird"); } else if (!isOdd && N > 2 && N < 5) { System.out.println("Not Weird"); } else if (!isOdd && N > 6 && N < 20) { System.out.println("Weird"); } scanner.close(); } }
Agora, por último, se N não for ímpar e N for maior que 20, devemos imprimir Not Weird
Javaimport java.util.Scanner; public class Solution { private static final Scanner scanner = new Scanner(System.in); public static void main(String[] args) { int N = scanner.nextInt(); scanner.skip("(\r\n|[\n\r\u2028\u2029\u0085])?"); boolean isOdd = N % 2 != 0 ? true : false; if (isOdd) { System.out.println("Weird"); } else if (!isOdd && N > 2 && N < 5) { System.out.println("Not Weird"); } else if (!isOdd && N > 6 && N < 20) { System.out.println("Weird"); } else if (!isOdd && N > 20) { System.out.println("Not Weird"); } scanner.close(); } }
Pronto, resolvido o nosso desafio.