Preciso de ajuda em Java

1 resposta
L

Tenho que fazer uma atividade de um programa que faça 5 perguntas que tem como resposta apenas sim ou não. De acordo com a quantidade de “sim”, vou classificar o usuário em 4 categorias. E isso vai precisar de muuuitos if, deixando o código grande.

Queria uma alternativa melhor, pensei em ler as perguntas e guardar as respostas numa única váriável com a quantidade de “sim” (o que talvez não fosse viável) ou usar boolean de alguma forma. Quero aprender algo novo e menos extenso, agradeço pela ajuda desde já.

Aqui vai a questão caso o que eu falei tenha ficado meio vago:

10.Escreva um programa que faça 05 perguntas para uma pessoa sobre um crime. As perguntas são:
a) “Telefonou para a vítima?”
b) “Esteve no local do crime?”
c) “Mora perto da vítima?”
d) “Devia para a vítima?”
e) “Já trabalhou para a vítima?”
O programa deve ao final imprimir uma classificação sobre a participação da pessoa no crime. Se a pessoa responder positivamente a 2 questões ela deve ser classificada como “Suspeita”, entre 3 e 4 como “Cúmplice” e 5 como “Assassino”. Caso contrário, será classificada como “Inocente”.

1 Resposta

wldomiciano

Pelo que entendi, vc não vai precisar de tantos ifs.

Guarda as perguntas num array e usa um for.

for (String question : questions) {
    System.out.printf("\n%s ", question);
    String answer = scan.nextLine();

    if ("y".equalsIgnoreCase(answer))
        yes++;
}

E pra dar o veredito vc usa um switch.

switch (yes) {
case 2:
    System.out.println("Suspeito");
    break;
case 3:
case 4:
    System.out.println("Cúmplice");
    break;
case 5:
    System.out.println("Assassino");
    break;
default:
    System.out.println("Inocente");
}
Criado 31 de março de 2019
Ultima resposta 31 de mar. de 2019
Respostas 1
Participantes 2