Falha na execução do comando

Pessoal fiz uma questão da faculdade que pedia estrutura de repetição Do While. Aparentemente sem erros mas ao rodar o netbeans mostra a mensagem “Command execution failed”. Segue o código…

package questoesguanabara;
import java.util.Scanner;

/**
 *
 * @author Andre
 */
public class NewClassRepeticao61 {

     public static void main(String[] args) {
         int maior_idade=0;
         int c=0;
         int tot_idade=0;
          float media_idade=0;
          char resp = 's';
         do {
         System.out.println("Informe seu nome:");
         Scanner in = new Scanner(System.in);
         String nome = in.nextLine();
         System.out.println("Informe sua idade:");
         int idade = in.nextInt();
         media_idade=(media_idade/c);
         if(idade>21){ 
          maior_idade= maior_idade+1;   
         }
                 tot_idade=tot_idade+1;
         System.out.println("   Deseja continuar?[s]sim [nao]");
            String value =  in.nextLine();
	    resp = value.charAt(0);
             
         c++;
         } while(resp=='s');
             System.out.println("Foram digitadas no total" + tot_idade + " idades."); 
             System.out.println("A média entre as idades digitadas é: " + media_idade);
             System.out.println("No total temos " + maior_idade + " pessoas maiores de 21 anos."); 
         }
    }

Alguem poderia me ajudar?

1 curtida

Verifiquei no meu computador e roda normalmente, poderias mandar o print do erro??

1 curtida

Olá Isaura, segue o print…
<

>

É um erro sobre o tamanho da string, devido ao valeu.charAt(0), pretendes pegar apenas uma posição da string, neste caso desves responder a SMS de continuação: sim ou nao, não deves entrar com o caracter s ou n!

1 curtida

@Isaura_Antonio, olá, para enviar alguma imagem é necessário aguardar o envio completo da mesma.

@Andre_Pires1, ao realizar posts no site, selecione ele todo e clica em </> , isso facilita a leitura dos colegas.

image

1 curtida

Obrigada @abner.rodrigues😊

System.out.println(" Deseja continuar?[s]sim [nao]");
String x = in.nextLine();Texto pré-formatado

A saída fica assim?Texto pré-formatado

Certo.

Se de desejas continuar, escreva: sim
Senão: nao

value=in.next();
resp = value.charAt(0);

Não precisas usar o nextLine(), porque estás a dar entrada de uma string e precisas dela completa, o nextLine() vai permitir que digites na outra linha por isso caí em exceção, … não consegue buscar o índice 0!

1 curtida

Agora rodou . Estou a pouco tempo no Java, farei mais exercícios para familiarizar me com a sintaxe dele. Muito obrigado !

1 curtida

Disponha, estamos aqui para nos ajudar sempre uns aos outros, com certeza, a prática faz a perfeição :wink::clap:

1 curtida