Pocentagem e tipos de dados

Oi pessoal estou quebrando a cabeça aqui pois sou novato em java e em programação em geral né.
é o seguinte eu estou tentando criar um programinha que calcule o salario liquido depois de tirar os descontos como ir inss.
o que eu preciso saber é

Nesse fragmento

if ( salario > 869,29 < 1.140,00 ) SInss = salario - 8,65%);

Eu posso usar o sinal de maior que e menor que deste jeito ou tem que ser de outra forma
e na segunda linha como eu posso fazer para ele calcular a porcentagem eu sei que esse sinal % é de modulo e não porcentagem.
e aterceira pergunta que tipo de dados eu uso para dinheiro tem como a entrada ser do tipo 1.359,36 por exemplo.
Obrigado pela atenção espero que minha pergunta não esteja muito confusa o que eu duvido.

seguinte vc precisa ler sobre operadores logicos “e” , “ou”
para usar o if vc precisaria usar o operador e ficando assim

if(salario > 86929 && salario < 1.14000) {
se salario for maior q 869… e salario for menor que 1.1400 faca
}

em relação a dinheiro leia sobre BigDecimal , float e double nao sao indicados para calculos financeiros ja que nao retornam valores exatos
para voce saber qnt é 10% pode ser feito assim

porcentagem = salario * 0.10;

Concordo com o amigo acima! Leia sobre operadores lógicos.


Sobre porcentagem. Eu uso matemática pura.
Se quero por exemplo 50% de 500.
(500/100(vindo de 100%) )* 50(vindo de 50%)
Isso irá informar o valor de 50% de 500, que é 250!
Maneira fácil de chegar lá.


Uma outra dica, agora para imprimir no formato: 1.359,36 é usar o método printf: System.out.printf().

O printf tem esse ‘f’ na frente de ‘print’ pois sua origem é de formatado, e sugiro que leia sobre ele.

Exemplo:

[code] public static void main(String[] args) {
double oi = 1000;

	System.out.printf("%,.2f", oi );

}[/code]

A saída deste código será:
1.000,00

O printf funciona desta forma:
System.out.printf(“formato”, argumentos);

Nos argumentos, vai as variáveis que você quer mostrar separadas por vírgulas. Vide meu exemplo logo acima, nesse caso colocamos como argumento apenas UMA, chamada ‘oi’, que é do tipo primitivo double.

Assim sendo, no lugar do formato, você vai apenas criar a mensagem que você vai mostrar e usando os argumentos listados através de determinados códigos iniciados com % para ‘puxar’ tais argumentos.

Para mostrar uma String: %s.
Para mostrar um inteiro: %d.
Para mostrar um número quebrado: %.2f(o 2 é variável, é relativo às casas decimais, chame de ‘precisão’…)

Se eu tiver uma variável String e quiser mostrá-la com um printf:
String variavel = “Mundo”;
System.out.printf(“Olá %s.”, variavel);
Saída: “Olá Mundo”.

E outra dica, que é: Caso queira pular de linha depois de escrever “Olá mundo”, a instrução será assim:
System.out.printf(“Olá %s.\n”, variavel);

Viu?! Um \n apareceu. ‘N de new-line’.

Agora retomando:
No caso listado mais acima, o nosso código de exibir número quebrado tem além do %.2f uma vírgula proposital antes do ponto. Quando ela aparece, na verdade esse ‘2’ vai ser o número de casas depois da vírgula e não mais do ponto. Dessa forma… tudo será formatado conforme sua vontade(em forma de dinheiro).

Também sou iniciante viu… E essa foi uma das primeiras coisas aprendidas no livro dos DEITEL 6º edição. Tem um capítulo no livro só disso, o 28. Que aliás, ainda vai demorar um pouco para eu chegar lá…rsrsrs…mas dá para me virar com o que os autores vão passando aos poucos. :slight_smile:

Abraço.