Erro iniciante java
07/04/2020
0
Estou fazendo um programa pelo NetBeans para pratica e deu esse erro não entendi o que significa
package tiposprimitibos1.pkg0;
import java.util.Scanner;
public class Tiposprimitibos10 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
System.out.printf("Digite seu nome: ");
String nome = entrada.nextLine();
System.out.printf("Digite suas notas: ");
float nota = entrada.nextFloat();
System.out.printf("Digite suas notas: ");
float nota2 = entrada.nextFloat();
System.out.printf("Digite suas notas: ");
float nota3 = entrada.nextFloat();
System.out.printf("As notas de é %s %.2f %.2f %.2f \n" + nome, nota, nota2, nota3);
//sout+Tab
//System.out.printf("A nota de %s é %.2f \n", nome,nota2);
//format == printf
//System.out.format("A nota de %s é %.2f \n", nome,nota3);
}
}
O erro que aparece é esse na saida(no run)
run:
Digite seu nome: lucas
Digite suas notas: 9
Digite suas notas: 1,2
Digite suas notas: 8,4
Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier ''%.2f''
As notas de é 9.0 1,20 8,40 at java.util.Formatter.format(Formatter.java:2519)
at java.io.PrintStream.format(PrintStream.java:970)
at java.io.PrintStream.printf(PrintStream.java:871)
at tiposprimitibos1.pkg0.Tiposprimitibos10.main(Tiposprimitibos10.java:22)
C:\Users\lucas\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
FALHA NA CONSTRUÇÃO (tempo total: 45 segundos)
package tiposprimitibos1.pkg0;
import java.util.Scanner;
public class Tiposprimitibos10 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
System.out.printf("Digite seu nome: ");
String nome = entrada.nextLine();
System.out.printf("Digite suas notas: ");
float nota = entrada.nextFloat();
System.out.printf("Digite suas notas: ");
float nota2 = entrada.nextFloat();
System.out.printf("Digite suas notas: ");
float nota3 = entrada.nextFloat();
System.out.printf("As notas de é %s %.2f %.2f %.2f \n" + nome, nota, nota2, nota3);
//sout+Tab
//System.out.printf("A nota de %s é %.2f \n", nome,nota2);
//format == printf
//System.out.format("A nota de %s é %.2f \n", nome,nota3);
}
}
O erro que aparece é esse na saida(no run)
run:
Digite seu nome: lucas
Digite suas notas: 9
Digite suas notas: 1,2
Digite suas notas: 8,4
Exception in thread "main" java.util.MissingFormatArgumentException: Format specifier ''%.2f''
As notas de é 9.0 1,20 8,40 at java.util.Formatter.format(Formatter.java:2519)
at java.io.PrintStream.format(PrintStream.java:970)
at java.io.PrintStream.printf(PrintStream.java:871)
at tiposprimitibos1.pkg0.Tiposprimitibos10.main(Tiposprimitibos10.java:22)
C:\Users\lucas\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1
FALHA NA CONSTRUÇÃO (tempo total: 45 segundos)
Lucas
Curtir tópico
+ 0
Responder
Post mais votado
07/04/2020
O erro está na linha:
System.out.printf("As notas de é %s %.2f %.2f %.2f \\n" + nome, nota, nota2, nota3);
provavelmente por que há um sinal "+" que deveria ser ",".
Conheço pouquissimo de Java, mas espero ter acertado no palpite :)
System.out.printf("As notas de é %s %.2f %.2f %.2f \\n" + nome, nota, nota2, nota3);
provavelmente por que há um sinal "+" que deveria ser ",".
Conheço pouquissimo de Java, mas espero ter acertado no palpite :)
Ricardo Arraes
Responder
Mais Posts
08/04/2020
Lucas
O erro está na linha:
System.out.printf("As notas de é %s %.2f %.2f %.2f \\\\n" + nome, nota, nota2, nota3);
provavelmente por que há um sinal "+" que deveria ser ",".
Conheço pouquissimo de Java, mas espero ter acertado no palpite :)
System.out.printf("As notas de é %s %.2f %.2f %.2f \\\\n" + nome, nota, nota2, nota3);
provavelmente por que há um sinal "+" que deveria ser ",".
Conheço pouquissimo de Java, mas espero ter acertado no palpite :)
obrigado pela resposta porem fiz a troca de + por , e o erro continua
Responder
08/04/2020
Ricardo Arraes
O erro está na linha:
System.out.printf("As notas de é %s %.2f %.2f %.2f \\\\\\\\n" + nome, nota, nota2, nota3);
provavelmente por que há um sinal "+" que deveria ser ",".
Conheço pouquissimo de Java, mas espero ter acertado no palpite :)
System.out.printf("As notas de é %s %.2f %.2f %.2f \\\\\\\\n" + nome, nota, nota2, nota3);
provavelmente por que há um sinal "+" que deveria ser ",".
Conheço pouquissimo de Java, mas espero ter acertado no palpite :)
obrigado pela resposta porem fiz a troca de + por , e o erro continua
Certo, percebi agora que você está usando vírgula para definir a casa decimal das notas na sua entrada de dados, tente usar ponto.
Ex: em vez de 1,2 e 8,4, digite: 1.2 e 8.4
Outra coisa para você tentar, caso nenhum dos palpites funcione é:
usar $%.2f em vez de %.2f, não sei bem a diferença, mas pesquisando sua mensagem de erro na internet vi que eles fazem essa sugestão.
Espero ter ajudado!
Responder
Clique aqui para fazer login e interagir na Comunidade :)