Programa Salario

5 respostas
A

Alguem pode me dizer qual o erro da linha 15?

Não consigo achar:

import java.util.Scanner;

public class Salario {
public static void main (String[]args){
Scanner teclado = new Scanner(System.in);
double salario = 1.0;
int numfilhos;
double somasalario, qtdehab, somafilhos,qtdesalariobaixo;
double maiorsalario = 0;
while (salario > 0) {

System.out.println("Digite o Númenor de Filhos: ");
numfilhos = teclado.nextInt();
System.out.println("Digite Sálario: ");
salario = teclado.nextdouble();

if (salario > 0){
somasalario = somasalario + salario;
qtdehab = qtdehab + 1;
somafilhos = somafilhos + numfilhos;
if (salario > maiorsalario){
maiorsalario = salario;
}

if (salario <= 100){
qtdesalariobaixo = qtdesalariobaixo + 1;

}
}
}

System.out.println("Média de Salarios: " + (somasalario/qtdehab));
System.out.println("Média de Filhos: " + (somafilhos/qtdehab));
System.out.println("Maior Sálario: " + maiorsalario);
System.out.println("Percentual de Salarios até 100: " + (qtdesalariobaixo/qtdehab*100));
}
}

5 Respostas

Nicolas_Fernandes

Olá, adrianostos!
Tudo bem?

Possivelmente, você deve estar digitando “,” quando vai digitar o salário, sendo que valores Double não aceitam “,”, e sim “.”.
Tente assim:

System.out.print( "Digite o salário: " );
double salario = Double.parseDouble( teclado.nextLine() ); // Você pega o que digitou e converte pra double!

Abraços!

A

Ola Nicolas

Mas ele nem executa

Acredito que o erro não seja esse, eu acho.

Valeu

AITech_IX

Olá adrianostos !

O erro na linha 15 é que o “double” tem que ser “Double”.

salario = teclado.nextDouble();

Alterei isso e seu programa rodou numa boa!

AITech_IX

Ah, uma dica para o seu programa ficar melhor:

Como a sua condição de saída do laço é quando o salario < 0 , comece então perguntado o valor do salário, para o usuário nao ter que digitar uma qtde de filhos qq primeiro.

E por desencargo de consciencia, inicialize suas variáveis :lol: sei lá, tenho esse costume

abs :stuck_out_tongue:

laudenpower

Membros de classe normalmente já são inicializados quando o objeto é criado, nesse caso pode deixar de inicializar sem medo eheheheh, já isso não acontece com variáveis locais nesse caso é obrigatório inicialização.

Criado 1 de maio de 2010
Ultima resposta 1 de mai. de 2010
Respostas 5
Participantes 4