Calcular novo salário.JAVA

Olá, pessoal. Estou na fase inicial do estudo de programação em Java e preciso de uma ajudinha com a seguinte atividade:

/** Declare a variável nome, salario,novoSalario e percentagemAumento cada um com o tipo apropriado e mais uma constante
*do tipo double com o nome INFLACAO e o valor 5,5 depois solicite ao usuário que digite os
*valores para nome, salario, percentagemAumento depois de realizar a leitura atribua a
*variável novoSalario o resultado da expressão:
novoSalario = salario + ( (INFLACAO+percentagemAumento)/100 )salario;
*Em seguida imprima o texto “Ola variavelNome seu salario novo = variavelNovoSalario”
*o valor do salário deve ser impresso com duas casas decimais.
*/
import java.util.Scanner;
public class Programa11{
public static void main (String [] args){
Scanner input = new Scanner(System.in);
String nome;
double salario, novoSalario, percentagemAumento;
final double INFLACAO = 5.5; 
System.out.print("Digite seu nome: \n");
nome = input.nextLine();
System.out.printf("Digite seu salário: %d \n ", salario);
salario = input.nextDouble();

novoSalario = novoSalario = salario + ( (INFLACAO+percentagemAumento)/100 )*salario;
System.out.printf("Olá, seu novo salário: %d \n", novoSalario);

}
}

O programa dá erro e eu não consegui identificar direito onde se encontra o problema. Alguém pode me dar uma luz?:disappointed_relieved:

substitua %d, por %2f (float) em todas.
Da uma olhada:

1 curtida

Ainda não resolveu :confused:
Eu fiz as seguintes mudanças:

 import java.util.Scanner;
public class Programa11{
   public static void main (String [] args){
   Scanner input = new Scanner(System.in);
   String nome;
   double salario, novoSalario, percentagemAumento;
   final double INFLACAO = 5.5; 
   System.out.print("Digite seu nome: \n");
   nome = input.nextLine();
   System.out.printf("Digite seu salário:  %2f \n ", salario);
   salario = input.nextDouble();
   System.out.printf("Especifique a percentagem de aumento do salário: %2f \n", percentagemAumento);
   percentagemAumento = input.nextDouble ();
       
   novoSalario = novoSalario = salario + ( (INFLACAO+percentagemAumento)/100 )*salario;
   System.out.printf("Olá, seu novo salário:  %2f \n", novoSalario);
   
   }
  }

Estou usando o programa jGRASP, daí é apresentado o seguinte erro:

 ----jGRASP exec: javac -g Programa11.java
Programa11.java:18: error: variable salario might not have been initialized
   System.out.printf("Digite seu salário:  %2f \n ", salario);
                                                     ^
Programa11.java:20: error: variable percentagemAumento might not have been initialized
   System.out.printf("Especifique a percentagem de aumento do salário: %2f \n", percentagemAumento);
                                                                                ^
2 errors

 ----jGRASP wedge2: exit code for process is 1.
 ----jGRASP: operation complete.

Atributo salario não inicializado… declare primeiro os atributos com valores 0;

double salario = 0;
double novoSalario = 0;
double percentagemAumento = 0;
String nome;

dpois faça a coleta de informações

1 curtida

Muito obrigada! Deu certo :+1:

1 curtida