Você está na página 1de 24

screva um algoritmo que calcule o nmero de notas e de moedas que deve ser dado de

troco para
um pagamento efetuado. O algoritmo deve ler o valor a ser pago e o valor efetivamente
pago. Supor que
o troco seja dado em notas de 50, 20, 10, 5, 2 e 1 real.
Eu fiz assim (*mas as variaveis n50,n20,n10,n5,n2 e n1 estao sempre saindo como 0, ja
tentei fazer usando "SE" tambm, mas no saiu*):
algoritmo "Troco"
var a_pagar, pago: inteiro
troco: inteiro
n50 ,n20 , n10, n5, n2, n1: inteiro
inicio
escreva ("Entre com o valor a ser pago: ")
leia (a_pagar)
escreva ("Entre com valor pago: ")
leia (pago)
troco<- a_pagar - pago
enquanto (troco>50) faca
n50<-n50 + 1
troco<- troco - 50
fimenquanto
enquanto (troco>20) faca
n20<- n20 + 1
troco<- troco - 20
fimenquanto
enquanto (troco>10) faca
n20<- n20 + 1
troco<- troco - 20
fimenquanto
enquanto (troco>5) faca
n5<-n5 +1
troco<- troco - 5
fimenquanto
enquanto (troco>1) faca
n1<- n1 + 1
troco<- troco - 1
fimenquanto
escreva (n50,n20,n10,n5,n1)
fimalgoritmo

~
O exerccio exige que se crie uma funo que receba como parmetro um nmero inteiro
representando o valor solicitado para saque num caixa eletrnico, e em seguida, sabendo que
o caixa est alimentado com notas de 1, 5, 10, 50 e 100 reais, calcule e escreva quantas notas
de cada valor sero necessrias para atender a solicitao de saque.
Acabei por fazer uma esboo assim:

#!/usr/bin/env python
#-*- coding: iso8859-1 -*-

nota100 = 25;
nota50 = 100;
nota10 = 200;
nota5 = 80;
nota1 = 100;

saldo = (nota100*100) + (nota50*50) + (nota10*10) + (nota5*5) + (nota1);


valorReservado = 0;

saque = raw_input("Digite o valor do saque: ");


print ("Voce deseja retirar: R$"), saque;

if (saldo > saque):


if (saque > valorReservado):
saqueNota100 = checaQtdeNota(100, nota100, saque, valorReservado);
valorReservado = valorReservado + (saqueNota100 * 100);
if (saque > valorReservado):
saqueNota50 = checaQtdeNota(50, nota50, saque, valorReservado);
valorReservado = valorReservado + (saqueNota50 * 50);
if (saque > valorReservado):
saqueNota10 = checaQtdeNota(10, nota10, saque, valorReservado);
valorReservado = valorReservado + (saqueNota10 * 10);
if (saque > valorReservado):
saqueNota5 = checaQtdeNota(5, nota5, saque, valorReservado);
valorReservado = valorReservado + (saqueNota5 * 5);
if (saque > valorReservado):
saqueNota1 = checaQtdeNota(1, nota1, saque, valorReservado);
valorReservado = valorReservado + (saqueNota1 * 1);
if (valorReservado == saque):
nota100 = nota100 - saqueNota100;
nota50 = nota50 - saqueNota50;
nota10 = nota10 - saqueNota10;
nota5 = nota5 - saqueNota5;
nota1 = nota1 - saqueNota1;
print ("Saque de ", saque, "efetuado.");
else:
saque = 0;
print ("Nao ha notas suficientes para o saque.");
else:
saque = 0;
print ("Nao ha dinheiro suficiente para o saque");

saldo = saldo - saque;


print ("Situacao atual: | ");
print nota100, (" | ");
print nota50, (" | " );
print nota10, (" | ");
print nota5, (" | ");
print nota1, (" | ");
print saldo, (" | ");

saque = 0

def checaQtdeNota (ValorNota, qtdSaldoNota, saque, valorReservado):


retorno = (saque - valorReservado) / valorNota;

if (retorno > qtdSaldoNota):


retorno = qtdSaldoNota;

return retorno;
1. Segue abaixo os exerccios resolvidos!

1) Programa que calcule a mdia de salrios de uma empresa, pedindo ao usurio a grade de
funcionrios e os salrios em JOptionPane e devolvendo a mdia em DOS.
1. import javax.swing.JOptionPane;
2. public class Media {
3. public static void main(String[] args) {
4.
5. int quantidadeFuncionarios = 0;
6. float salarioFuncionario = 0;
7. float totalSalarios = 0;
8. float mediaSalarial = 0;
9. //varivel contadora para lao
10. int contadora = 0;
11.
12. quantidadeFuncionarios = Integer.parseInt(JOptionPane.showInputDialog(null
,"Digite a quantidade de funcionrios","Nmero de funcionrios",JOptionPane.QU
ESTION_MESSAGE));
13.
14. while (contadora < quantidadeFuncionarios){
15. contadora++;
16. salarioFuncionario = Float.parseFloat(JOptionPane.showInputDialog(null,"
Digite o salrio do funcionrio","Salrio",JOptionPane.QUESTION_MESSAGE));

17. totalSalarios = totalSalarios + salarioFuncionario;


18. }
19.
20. mediaSalarial = totalSalarios / quantidadeFuncionarios;
21. System.out.println("Mdia Salarial = " + mediaSalarial);
22.
23. System.exit(0);
24. }
25.
26. }

2) Criar um programa que receba por janela JoptionPane o valor de um produto e um cdigo
de aumento, segundo a tabela:

Cdigo % aumento
1 10
3 25
4 30
8 50

Utilizando a estrutura switch-case, mostrar em janela de sada o novo valor do produto


depois de acrescida a porcentagem correspondente.

1. import javax.swing.JOptionPane;
2. public class Porcentagem {
3. public static void main(String[] args) {
4.
5. int codigoTaxaAumento;
6. float valorProduto;
7.
8.
9. valorProduto = Float.parseFloat(JOptionPane.showInputDialog(null,"R$","Val
or do produto",JOptionPane.QUESTION_MESSAGE));
10. codigoTaxaAumento = Integer.parseInt(JOptionPane.showInputDialog(null,"
Cdigo","Cdigo de taxa do aumento",JOptionPane.QUESTION_MESSAGE));
11.
12. switch (codigoTaxaAumento) {
13. case 1: valorProduto = valorProduto + (valorProduto * 10 / 100);
14. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do pr
oduto com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
15. break;
16.
17. case 3: valorProduto = valorProduto + (valorProduto * 25 / 100);
18. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produt
o com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
19. break;
20.
21. case 4: valorProduto = valorProduto + (valorProduto * 30 / 100);
22. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produt
o com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
23. break;
24.
25. case 8: valorProduto = valorProduto + (valorProduto * 50 / 100);
26. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produt
o com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
27. break;
28.
29. default: JOptionPane.showMessageDialog(null,"Cdigo" + codigoTaxaAumen
to,"Cdigo de taxa de aumento desconhcido",JOptionPane.PLAIN_MESSAGE);
30. break;
31. }
32. System.exit(0);

3) Criar um programa para clculo do salrio lquido em que trs valores devem ser
informados pelo usurio em janelas de entrada: a quantidade de horas trabalhadas, o salrio
hora e o nmero de dependentes. O programa deve mostrar em janela de sada as
informaes contidas no lado esquerdo da tabela seguinte:

Informao Clculos
Salrio bruto Horas trabalhadas * salrio hora + (50 * nmero de dependentes)

Desconto INSS Se salrio bruto <= 1000 INSS=salrio bruto * 8.5/100


Se salrio bruto > 1000 INSS=salrio bruto * 9/100

Desconto IR Se salrio bruto <= 500 IR=0


Se salrio bruto > 500 e <= 1000 IR=salrio bruto*5/100
Se salrio bruto > 1000 IR=salrio bruto*7/100

Salrio lquido Salrio bruto - INSS - IR

1. import javax.swing.JOptionPane;
2.
3. public class Rh {
4.
5. public static void main( String args[] )
6. {
7.
8. String ND, SH, HT;
9. int nd;
10. float sh, ht, dIR, sb;
11. double dINSS, sl;
12.
13. ND=
14. JOptionPane.showInputDialog
15. (null,"Digite nmero de dependentes","Nmero de Dependentes",
16. JOptionPane.QUESTION_MESSAGE);
17.
18. nd = Integer.parseInt(ND);
19.
20. SH=
21. JOptionPane.showInputDialog
22. (null,"Digite salrio hora","Salrio Hora",
23. JOptionPane.QUESTION_MESSAGE);
24.
25. sh = Float.parseFloat(SH);
26.
27. HT=
28. JOptionPane.showInputDialog
29. (null,"Digite nmero de horas trabalhadas","Nmero de Horas Trabalhadas",
30. JOptionPane.QUESTION_MESSAGE);
31.
32. ht = Float.parseFloat(HT);
33.
34. sb = ht*sh+(50*nd);
35.
36. {JOptionPane.showMessageDialog (
37. null, "Salrio Bruto" +sb , "Salrio Bruto",
38. JOptionPane.INFORMATION_MESSAGE );}
39.
40. if (sb<=1000)
41.
42. dINSS = sb*8.5/100;
43.
44. else
45.
46. dINSS = sb*9/100;
47.
48. {JOptionPane.showMessageDialog (
49. null, "Desconto do INSS" +dINSS , "Desconto do INSS",
50. JOptionPane.INFORMATION_MESSAGE );}
51.
52. if (sb<=500)
53.
54. dIR = 0;
55.
56. if (sb>500 && sb<=1000)
57.
58. dIR = sb*5/100;
59.
60. else
61.
62. dIR = sb*7/100;
63.
64. {JOptionPane.showMessageDialog (
65. null, "Desconto do IR" +dIR , "Desconto do IR",
66. JOptionPane.INFORMATION_MESSAGE );}
67.
68. sl = sb-dINSS-dIR;
69.
70. {JOptionPane.showMessageDialog (
71. null, "Salrio Lquido" +sl , "Salrio Lquido",
72. JOptionPane.INFORMATION_MESSAGE );
73. System.exit( 0 );}
74.
75. }
76. }

4) Desenvolver programa que peca ao usuario para cadastrar uma senha; na sequencia, deve
pedir ao usuario que digite duas variaveis reais, e ira calcular a diviso da primeira pela
segunda. O programa ira pedir ao usuario que digite sua senha e estiver correta ela
mostra o resultado da divisao. Senao da mensagem de erro e encerra o aplicativo.

1. import javax.swing.*;
2. public class Senha4 {
3. public static void main(String[] args) {
4. String cadastroSenha;
5. String confirmaSenha;
6. double a;
7. double b;
8.
9. cadastroSenha = JOptionPane.showInputDialog(null,"Senha","",JOptionPane.
QUESTION_MESSAGE);
10.
11. a = Double.parseDouble(JOptionPane.showInputDialog(null,"Primeiro nmer
o","",JOptionPane.QUESTION_MESSAGE));
12. b = Double.parseDouble(JOptionPane.showInputDialog(null,"Segundo nmer
o","",JOptionPane.QUESTION_MESSAGE));
13.
14. confirmaSenha = JOptionPane.showInputDialog(null,"Digite sua senha","",JO
ptionPane.QUESTION_MESSAGE);
15.
16. if (confirmaSenha.equals(cadastroSenha)){
17. System.out.println(a/b);
18. }else{
19. System.out.println("Senha incorreta");
20. }
21.
22. System.exit(0);
23. }
24.
25. }

5) Implementar programa que realize uma das 4 operaoes (+), (-), (/) e (*) entre duas
variveis, atravs da escolha do usurio.

1. import javax.swing.JOptionPane;
2.
3. public class Operacoes{
4.
5. public static void main( String args[] )
6. {
7. //APRESENTAO DAS VARIAVEIS
8.
9. String a, b, escolha;
10. int es;
11. float c, d, e;
12.
13.
14. //DEFINIO DAS VARIAVEIS
15.
16. escolha = JOptionPane.showInputDialog ("Digite 0 para soma, \n Digite 1 para s
ubtraao, \n Digite 2 para divisao, \n Digite 3 para multiplicacao");
17. es = Integer.parseInt(escolha);
18. a = JOptionPane.showInputDialog ("Digite o primeiro numero");
19. c = Float.parseFloat(a);
20. b = JOptionPane.showInputDialog ("Digite o segundo numero");
21. d = Float.parseFloat(b);
22.
23.
24.
25. //SWITCH CASE
26.
27. switch (es)
28. {
29. case 0:
30. e = c + d;
31. JOptionPane.showMessageDialog(null, "Resultado da soma: " + e, "Feito", JOpt
ionPane.PLAIN_MESSAGE );break;
32.
33. case 1:
34. e = c - d;
35. JOptionPane.showMessageDialog(null, "Resultado da subtracao: " + e, "Feito",
JOptionPane.PLAIN_MESSAGE );break;
36.
37. case 2:
38. e = c / d;
39. JOptionPane.showMessageDialog(null, "Resultado da divisao: " + e, "Feito", JO
ptionPane.PLAIN_MESSAGE );break;
40.
41. case 3:
42. e = c * d;
43. JOptionPane.showMessageDialog(null, "Resultado da multiplicacao: " + e, "Feit
o", JOptionPane.PLAIN_MESSAGE );break;
44.
45. }
46. System.exit(0);
47. }
48. }

_________________
A simpatia para os fracos!!!
1.

TriTonE
Posts:1576

Publicado em: 09/04/2009 23:18:44

Pagando bem, que mal tem?!


_________________
Daniel F. Martins

1.

Ataxexe
Posts:401

Publicado em: 09/04/2009 23:18:44

Voc tem alguma dvida? Se tiver, poste-a pois eu duvido que algum v fazer o trabalho
da sua faculdade. Isso aqui um frum.

Esqueci de perguntar: urgente?


_________________
Marcelo Varella

1.

jack_-_ganzha
Posts:4191

Publicado em: 09/04/2009 23:18:44

Pelo amor de Deus...

Marcos: cada vez mais tentado a criar uma entrada na wiki chamada "Dever de casa".

valeuz...
_________________
Marcos Silva Pereira

1.

ColoredNavisko
Posts:4

Publicado em: 09/04/2009 23:18:44

Pagando bem, que mal tem?! [2]

Engraado so Posta os Exercicios mas n fala nd oq tem pra fazer kkk


_________________
Bl Bl Bl

1.

simu
Posts:9417

Publicado em: 09/04/2009 23:18:44

Nagashantal

Caros colegas;
Vejo que a idia prtica feminina sempre a oposta da masculina...rs
A lgica de ter disponibilizado os exerccios feitos da minha faculdade aqui, surgiu
devido a um passeio pelo frum em busca de algumas respostas, porm, vi alguns
pedidos de exerccios e tendo alguns prontos, corrigidos e at com os print screens,
decidi disponibiliz-los, de modo a ser prestativa.
No entanto, utilizei o tpico java bsico por ser um indicador de nvel para os
colegas iniciantes, e dentro desse espao achei ideal criar um sub tpico chamado
exerccios de java.
Sinto ter desapontado a espectativa dos senhores prestativos, mas na realidade, eu
coloquei os exerccios para os aflitos iniciantes como eu, pudessem treinar.
Estou disposta a discutir quaisquer questes referentes ao assunto, sendo elas,
questes coerentes.
Obrigada pela ateno de todos!!!

Ps.:Mantenho os exerccios em anexo para uso comum, pois sempre existe


algum que apresenta interesse ou curiosidade. Infelizmente devido as crticas,
agora os interessados tero de fazer download para descobrirem se eles so ou
no pertinentes ao potencial treino!

Aos relutantes...Entendam como puderem!

Muito legal voce ter postado esse documento, mas infelizmente voce escreveu apenas um
monte de perguntas na sua mensagem original, sem explicar nada. Ficou dificil saber qual a
sua intenco? Acho que ninguem pensou que no anexo tem as respostas. E se olhar no
frum vai achar um monte de tpicos onde os trabalhos de faculdade ou escola so postados
descaradamente, as vezes at sem nenhum comentario ou apenas anexando diretamente os
emunciados.
Eu tambem pensei que o seu post original se enquadrava nessa categoria, nem pensei em
fazer o download do documento para ver o conteudo... Por favor, no leva a mal!
[]]
_________________
Nome real: Carlos F. Heuberger

Removeram os meus direitos de administrador e moderador - sem aviso, pela segunda vez -
contate o ombudsman (?), a equipejavafree ou a "alta gerncia" se necessrio - Que pena...
que terminou dessa maneira!

"The mod javafree deserves, but not the one it needs right now."
--------------------
No leio nem respondo MPs!
This posting is provided AS IS with no warranties and confers no rights.

1.

TriTonE
Posts:1576

Publicado em: 09/04/2009 23:18:44

simu

Muito legal voce ter postado esse documento, mas infelizmente voce escreveu
apenas um monte de perguntas na sua mensagem original, sem explicar nada. Ficou
dificil saber qual a sua intenco? Acho que ninguem pensou que no anexo tem as
respostas. E se olhar no frum vai achar um monte de tpicos onde os trabalhos de
faculdade ou escola so postados descaradamente, as vezes at sem nenhum
comentario ou apenas anexando diretamente os emunciados.
Eu tambem pensei que o seu post original se enquadrava nessa categoria, nem
pensei em fazer o download do documento para ver o conteudo... Por favor, no
leva a mal!
[]]
2!
_________________
Daniel F. Martins

1.

Ataxexe
Posts:401

Publicado em: 09/04/2009 23:18:44

3...a propsito, escrever sobre o tpico criado e sobre o documento anexado ajuda bastante.
_________________
Marcelo Varella

1.

Carlos Tonyco
Posts:16

Publicado em: 09/04/2009 23:18:44

Acho uma boa ideia mas sempre tem gente do contra, eu apoio essa ideia sua.Valeu
_________________
Aprender eh sempre um desafio!!!

1.

Nagashantal
Posts:3

Publicado em: 09/04/2009 23:18:44


Ok meninos, como sou uma Padawan...rs
Colocarei meu post de forma adequada!
besos
_________________
A simpatia para os fracos!!!

1.

Ataxexe
Posts:401

Publicado em: 09/04/2009 23:18:44

Melhorou bastante o post. E ficar melhor ainda se voc utilizar aquelas duas tags pra
formatar o cdigo-fonte ([ code ] e [ /code ]).

Mais uma vez, mil desculpas pelo mal entendido.


_________________
Marcelo Varella

1.

Nagashantal
Posts:3

Publicado em: 09/04/2009 23:18:44

Nagashantal

Caros colegas;
Vejo que a idia prtica feminina sempre a oposta da masculina...rs
A lgica de ter disponibilizado os exerccios feitos da minha faculdade aqui, surgiu
devido a um passeio pelo frum em busca de algumas respostas, porm, vi alguns
pedidos de exerccios e tendo alguns prontos, corrigidos e at com os print screens,
decidi disponibiliz-los, de modo a ser prestativa.
No entanto, utilizei o tpico java bsico por ser um indicador de nvel para os
colegas iniciantes, e dentro desse espao achei ideal criar um sub tpico chamado
exerccios de java.
Sinto ter desapontado a expectativa dos senhores prestativos, mas na realidade, eu
coloquei os exerccios para os aflitos iniciantes como eu, pudessem treinar.
Estou disposta a discutir quaisquer questes referentes ao assunto, sendo elas,
questes coerentes.
Obrigada pela ateno de todos!!!
Segue abaixo os exerccios resolvidos!

1) Programa que calcule a mdia de salrios de uma empresa, pedindo ao usurio a


grade de funcionrios e os salrios em JOptionPane e devolvendo a mdia em DOS.

1. import javax.swing.JOptionPane;
2. public class Media {
3. public static void main(String[] args) {
4.
5. int quantidadeFuncionarios = 0;
6. float salarioFuncionario = 0;
7. float totalSalarios = 0;
8. float mediaSalarial = 0;
9. //varivel contadora para lao
10. int contadora = 0;
11.
12. quantidadeFuncionarios = Integer.parseInt(JOptionPane.showInputDi
alog(null,"Digite a quantidade de funcionrios","Nmero de funcionrios",
JOptionPane.QUESTION_MESSAGE));
13.
14. while (contadora < quantidadeFuncionarios){
15. contadora++;
16. salarioFuncionario = Float.parseFloat(JOptionPane.showInputDialo
g(null,"Digite o salrio do funcionrio","Salrio",JOptionPane.QUESTIO
N_MESSAGE));
17. totalSalarios = totalSalarios + salarioFuncionario;
18. }
19.
20. mediaSalarial = totalSalarios / quantidadeFuncionarios;
21. System.out.println("Mdia Salarial = " + mediaSalarial);
22.
23. System.exit(0);
24. }
25.
26. }

2) Criar um programa que receba por janela JoptionPane o valor de um produto e


um cdigo de aumento, segundo a tabela:

Cdigo % aumento
1 10
3 25
4 30
8 50

Utilizando a estrutura switch-case, mostrar em janela de sada o novo valor do


produto depois de acrescida a porcentagem correspondente.

1. import javax.swing.JOptionPane;
2. public class Porcentagem {
3. public static void main(String[] args) {
4.
5. int codigoTaxaAumento;
6. float valorProduto;
7.
8.
9. valorProduto = Float.parseFloat(JOptionPane.showInputDialog(null,"
R$","Valor do produto",JOptionPane.QUESTION_MESSAGE));
10. codigoTaxaAumento = Integer.parseInt(JOptionPane.showInputDialo
g(null,"Cdigo","Cdigo de taxa do aumento",JOptionPane.QUESTION_
MESSAGE));
11.
12. switch (codigoTaxaAumento) {
13. case 1: valorProduto = valorProduto + (valorProduto * 10 / 100);
14. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Va
lor do produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
15. break;
16.
17. case 3: valorProduto = valorProduto + (valorProduto * 25 / 100);
18. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor d
o produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
19. break;
20.
21. case 4: valorProduto = valorProduto + (valorProduto * 30 / 100);
22. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor d
o produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE);

23. break;
24.
25. case 8: valorProduto = valorProduto + (valorProduto * 50 / 100);
26. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor d
o produto com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
27. break;
28.
29. default: JOptionPane.showMessageDialog(null,"Cdigo" + codigoTa
xaAumento,"Cdigo de taxa de aumento desconhcido",JOptionPane.PLAI
N_MESSAGE);
30. break;
31. }
32. System.exit(0);

3) Criar um programa para clculo do salrio lquido em que trs valores devem ser
informados pelo usurio em janelas de entrada: a quantidade de horas trabalhadas, o
salrio hora e o nmero de dependentes. O programa deve mostrar em janela de
sada as informaes contidas no lado esquerdo da tabela seguinte:

Informao Clculos
Salrio bruto Horas trabalhadas * salrio hora + (50 * nmero de dependentes)

Desconto INSS Se salrio bruto <= 1000 INSS=salrio bruto * 8.5/100


Se salrio bruto > 1000 INSS=salrio bruto * 9/100

Desconto IR Se salrio bruto <= 500 IR=0


Se salrio bruto > 500 e <= 1000 IR=salrio bruto*5/100
Se salrio bruto > 1000 IR=salrio bruto*7/100

Salrio lquido Salrio bruto - INSS - IR

1. import javax.swing.JOptionPane;
2.
3. public class Rh {
4.
5. public static void main( String args[] )
6. {
7.
8. String ND, SH, HT;
9. int nd;
10. float sh, ht, dIR, sb;
11. double dINSS, sl;
12.
13. ND=
14. JOptionPane.showInputDialog
15. (null,"Digite nmero de dependentes","Nmero de Dependentes",
16. JOptionPane.QUESTION_MESSAGE);
17.
18. nd = Integer.parseInt(ND);
19.
20. SH=
21. JOptionPane.showInputDialog
22. (null,"Digite salrio hora","Salrio Hora",
23. JOptionPane.QUESTION_MESSAGE);
24.
25. sh = Float.parseFloat(SH);
26.
27. HT=
28. JOptionPane.showInputDialog
29. (null,"Digite nmero de horas trabalhadas","Nmero de Horas Trabalhad
as",
30. JOptionPane.QUESTION_MESSAGE);
31.
32. ht = Float.parseFloat(HT);
33.
34. sb = ht*sh+(50*nd);
35.
36. {JOptionPane.showMessageDialog (
37. null, "Salrio Bruto" +sb , "Salrio Bruto",
38. JOptionPane.INFORMATION_MESSAGE );}
39.
40. if (sb<=1000)
41.
42. dINSS = sb*8.5/100;
43.
44. else
45.
46. dINSS = sb*9/100;
47.
48. {JOptionPane.showMessageDialog (
49. null, "Desconto do INSS" +dINSS , "Desconto do INSS",
50. JOptionPane.INFORMATION_MESSAGE );}
51.
52. if (sb<=500)
53.
54. dIR = 0;
55.
56. if (sb>500 && sb<=1000)
57.
58. dIR = sb*5/100;
59.
60. else
61.
62. dIR = sb*7/100;
63.
64. {JOptionPane.showMessageDialog (
65. null, "Desconto do IR" +dIR , "Desconto do IR",
66. JOptionPane.INFORMATION_MESSAGE );}
67.
68. sl = sb-dINSS-dIR;
69.
70. {JOptionPane.showMessageDialog (
71. null, "Salrio Lquido" +sl , "Salrio Lquido",
72. JOptionPane.INFORMATION_MESSAGE );
73. System.exit( 0 );}
74.
75. }
76. }

4) Desenvolver programa que peca ao usuario para cadastrar uma senha; na


sequencia, deve pedir ao usuario que digite duas variaveis reais, e ira calcular a
diviso da primeira pela segunda. O programa ira pedir ao usuario que digite sua
senha e estiver correta ela mostra o resultado da divisao. Senao da mensagem
de erro e encerra o aplicativo.

1. import javax.swing.*;
2. public class Senha4 {
3. public static void main(String[] args) {
4. String cadastroSenha;
5. String confirmaSenha;
6. double a;
7. double b;
8.
9. cadastroSenha = JOptionPane.showInputDialog(null,"Senha","",JOpti
onPane.QUESTION_MESSAGE);
10.
11. a = Double.parseDouble(JOptionPane.showInputDialog(null,"Primeir
o nmero","",JOptionPane.QUESTION_MESSAGE));
12. b = Double.parseDouble(JOptionPane.showInputDialog(null,"Segund
o nmero","",JOptionPane.QUESTION_MESSAGE));
13.
14. confirmaSenha = JOptionPane.showInputDialog(null,"Digite sua senh
a","",JOptionPane.QUESTION_MESSAGE);
15.
16. if (confirmaSenha.equals(cadastroSenha)){
17. System.out.println(a/b);
18. }else{
19. System.out.println("Senha incorreta");
20. }
21.
22. System.exit(0);
23. }
24.
25. }
5) Implementar programa que realize uma das 4 operaoes (+), (-), (/) e (*) entre
duas variveis, atravs da escolha do usurio.

1. import javax.swing.JOptionPane;
2.
3. public class Operacoes{
4.
5. public static void main( String args[] )
6. {
7. //APRESENTAO DAS VARIAVEIS
8.
9. String a, b, escolha;
10. int es;
11. float c, d, e;
12.
13.
14. //DEFINIO DAS VARIAVEIS
15.
16. escolha = JOptionPane.showInputDialog ("Digite 0 para soma, \n Digite
1 para subtraao, \n Digite 2 para divisao, \n Digite 3 para multiplicacao");

17. es = Integer.parseInt(escolha);
18. a = JOptionPane.showInputDialog ("Digite o primeiro numero");
19. c = Float.parseFloat(a);
20. b = JOptionPane.showInputDialog ("Digite o segundo numero");
21. d = Float.parseFloat(b);
22.
23.
24.
25. //SWITCH CASE
26.
27. switch (es)
28. {
29. case 0:
30. e = c + d;
31. JOptionPane.showMessageDialog(null, "Resultado da soma: " + e, "Feit
o", JOptionPane.PLAIN_MESSAGE );break;
32.
33. case 1:
34. e = c - d;
35. JOptionPane.showMessageDialog(null, "Resultado da subtracao: " + e,
"Feito", JOptionPane.PLAIN_MESSAGE );break;
36.
37. case 2:
38. e = c / d;
39. JOptionPane.showMessageDialog(null, "Resultado da divisao: " + e, "F
eito", JOptionPane.PLAIN_MESSAGE );break;
40.
41. case 3:
42. e = c * d;
43. JOptionPane.showMessageDialog(null, "Resultado da multiplicacao: "
+ e, "Feito", JOptionPane.PLAIN_MESSAGE );break;
44.
45. }
46. System.exit(0);
47. }
48. }

Exerccios resolvidos.
1) Programa que calcule a mdia de salrios de uma empresa, pedindo ao
usurio a grade de funcionrios e os salrios em JOptionPane e devolvendo a
mdia em DOS.

1. import javax.swing.JOptionPane;
2. public class Media {
3. public static void main(String[] args) {
4.
5. int quantidadeFuncionarios = 0;
6. float salarioFuncionario = 0;
7. float totalSalarios = 0;
8. float mediaSalarial = 0;
9. //varivel contadora para lao
10. int contadora = 0;
11.
12. quantidadeFuncionarios = Integer.parseInt(JOptionPane.showInputDialog(null,"
Digite a quantidade de funcionrios","Nmero de funcionrios",JOptionPane.QUESTION
_MESSAGE));
13.
14. while (contadora < quantidadeFuncionarios){
15. contadora++;
16. salarioFuncionario = Float.parseFloat(JOptionPane.showInputDialog(null,"D
igite o salrio do funcionrio","Salrio",JOptionPane.QUESTION_MESSAGE));
17. totalSalarios = totalSalarios + salarioFuncionario;
18. }
19.
20. mediaSalarial = totalSalarios / quantidadeFuncionarios;
21. System.out.println("Mdia Salarial = " + mediaSalarial);
22.
23. System.exit(0);
24. }
25.
26. }
2) Criar um programa que receba por janela JoptionPane o valor de um produto
e um cdigo de aumento, segundo a tabela:

Cdigo % aumento
1 10
3 25
4 30
8 50

Utilizando a estrutura switch-case, mostrar em janela de sada o novo valor do


produto depois de acrescida a porcentagem correspondente.

1. import javax.swing.JOptionPane;
2. public class Porcentagem {
3. public static void main(String[] args) {
4.
5. int codigoTaxaAumento;
6. float valorProduto;
7.
8.
9. valorProduto = Float.parseFloat(JOptionPane.showInputDialog(null,"R$","Valor
do produto",JOptionPane.QUESTION_MESSAGE));
10. codigoTaxaAumento = Integer.parseInt(JOptionPane.showInputDialog(null,"Cdig
o","Cdigo de taxa do aumento",JOptionPane.QUESTION_MESSAGE));
11.
12. switch (codigoTaxaAumento) {
13. case 1: valorProduto = valorProduto + (valorProduto * 10 / 100);
14. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do prod
uto com taxa de aumento",JOptionPane.PLAIN_MESSAGE);
15. break;
16.
17. case 3: valorProduto = valorProduto + (valorProduto * 25 / 100);
18. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto co
m taxa de aumento",JOptionPane.PLAIN_MESSAGE);
19. break;
20.
21. case 4: valorProduto = valorProduto + (valorProduto * 30 / 100);
22. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto co
m taxa de aumento",JOptionPane.PLAIN_MESSAGE);
23. break;
24.
25. case 8: valorProduto = valorProduto + (valorProduto * 50 / 100);
26. JOptionPane.showMessageDialog(null,"R$ " + valorProduto,"Valor do produto co
m taxa de aumento",JOptionPane.PLAIN_MESSAGE);
27. break;
28.
29. default: JOptionPane.showMessageDialog(null,"Cdigo" + codigoTaxaAumento,"C
digo de taxa de aumento desconhcido",JOptionPane.PLAIN_MESSAGE);
30. break;
31. }
32. System.exit(0);

3) Criar um programa para clculo do salrio lquido em que trs valores devem
ser informados pelo usurio em janelas de entrada: a quantidade de horas
trabalhadas, o salrio hora e o nmero de dependentes. O programa deve
mostrar em janela de sada as informaes contidas no lado esquerdo da tabela
seguinte:
Informao Clculos
Salrio bruto Horas trabalhadas * salrio hora + (50 * nmero de
dependentes)

Desconto INSS Se salrio bruto <= 1000 INSS=salrio bruto * 8.5/100


Se salrio bruto > 1000 INSS=salrio bruto * 9/100

Desconto IR Se salrio bruto <= 500 IR=0


Se salrio bruto > 500 e <= 1000 IR=salrio bruto*5/100
Se salrio bruto > 1000 IR=salrio bruto*7/100

Salrio lquido Salrio bruto - INSS - IR

1. import javax.swing.JOptionPane;
2.
3. public class Rh {
4.
5. public static void main( String args[] )
6. {
7.
8. String ND, SH, HT;
9. int nd;
10. float sh, ht, dIR, sb;
11. double dINSS, sl;
12.
13. ND=
14. JOptionPane.showInputDialog
15. (null,"Digite nmero de dependentes","Nmero de Dependentes",
16. JOptionPane.QUESTION_MESSAGE);
17.
18. nd = Integer.parseInt(ND);
19.
20. SH=
21. JOptionPane.showInputDialog
22. (null,"Digite salrio hora","Salrio Hora",
23. JOptionPane.QUESTION_MESSAGE);
24.
25. sh = Float.parseFloat(SH);
26.
27. HT=
28. JOptionPane.showInputDialog
29. (null,"Digite nmero de horas trabalhadas","Nmero de Horas Trabalhadas",
30. JOptionPane.QUESTION_MESSAGE);
31.
32. ht = Float.parseFloat(HT);
33.
34. sb = ht*sh+(50*nd);
35.
36. {JOptionPane.showMessageDialog (
37. null, "Salrio Bruto" +sb , "Salrio Bruto",
38. JOptionPane.INFORMATION_MESSAGE );}
39.
40. if (sb<=1000)
41.
42. dINSS = sb*8.5/100;
43.
44. else
45.
46. dINSS = sb*9/100;
47.
48. {JOptionPane.showMessageDialog (
49. null, "Desconto do INSS" +dINSS , "Desconto do INSS",
50. JOptionPane.INFORMATION_MESSAGE );}
51.
52. if (sb<=500)
53.
54. dIR = 0;
55.
56. if (sb>500 && sb<=1000)
57.
58. dIR = sb*5/100;
59.
60. else
61.
62. dIR = sb*7/100;
63.
64. {JOptionPane.showMessageDialog (
65. null, "Desconto do IR" +dIR , "Desconto do IR",
66. JOptionPane.INFORMATION_MESSAGE );}
67.
68. sl = sb-dINSS-dIR;
69.
70. {JOptionPane.showMessageDialog (
71. null, "Salrio Lquido" +sl , "Salrio Lquido",
72. JOptionPane.INFORMATION_MESSAGE );
73. System.exit( 0 );}
74.
75. }
76. }

4) Desenvolver programa que peca ao usuario para cadastrar uma senha; na


sequencia, deve pedir ao usuario que digite duas variaveis reais, e ira calcular a
diviso da primeira pela segunda. O programa ira pedir ao usuario que digite
sua senha:Se estiver correta ela mostra o resultado da divisao. Senao da
mensagem de erro e encerra o aplicativo.

1. import javax.swing.*;
2. public class Senha4 {
3. public static void main(String[] args) {
4. String cadastroSenha;
5. String confirmaSenha;
6. double a;
7. double b;
8.
9. cadastroSenha = JOptionPane.showInputDialog(null,"Senha","",JOptionPane.QUES
TION_MESSAGE);
10.
11. a = Double.parseDouble(JOptionPane.showInputDialog(null,"Primeiro nmero",""
,JOptionPane.QUESTION_MESSAGE));
12. b = Double.parseDouble(JOptionPane.showInputDialog(null,"Segundo nmero",""
,JOptionPane.QUESTION_MESSAGE));
13.
14. confirmaSenha = JOptionPane.showInputDialog(null,"Digite sua senha","",JOpti
onPane.QUESTION_MESSAGE);
15.
16. if (confirmaSenha.equals(cadastroSenha)){
17. System.out.println(a/b);
18. }else{
19. System.out.println("Senha incorreta");
20. }
21.
22. System.exit(0);
23. }
24.
25. }

5) Implementar programa que realize uma das 4 operaoes (+), (-), (/) e (*)
entre duas variveis, atravs da escolha do usurio.

1. import javax.swing.JOptionPane;
2.
3. public class Operacoes{
4.
5. public static void main( String args[] )
6. {
7. //APRESENTAO DAS VARIAVEIS
8.
9. String a, b, escolha;
10. int es;
11. float c, d, e;
12.
13.
14. //DEFINIO DAS VARIAVEIS
15.
16. escolha = JOptionPane.showInputDialog ("Digite 0 para soma, \n Digite 1 para su
btraao, \n Digite 2 para divisao, \n Digite 3 para multiplicacao");
17. es = Integer.parseInt(escolha);
18. a = JOptionPane.showInputDialog ("Digite o primeiro numero");
19. c = Float.parseFloat(a);
20. b = JOptionPane.showInputDialog ("Digite o segundo numero");
21. d = Float.parseFloat(b);
22.
23.
24.
25. //SWITCH CASE
26.
27. switch (es)
28. {
29. case 0:
30. e = c + d;
31. JOptionPane.showMessageDialog(null, "Resultado da soma: " + e, "Feito", JOptio
nPane.PLAIN_MESSAGE );break;
32.
33. case 1:
34. e = c - d;
35. JOptionPane.showMessageDialog(null, "Resultado da subtracao: " + e, "Feito",
JOptionPane.PLAIN_MESSAGE );break;
36.
37. case 2:
38. e = c / d;
39. JOptionPane.showMessageDialog(null, "Resultado da divisao: " + e, "Feito", JOp
tionPane.PLAIN_MESSAGE );break;
40.
41. case 3:
42. e = c * d;
43. JOptionPane.showMessageDialog(null, "Resultado da multiplicacao: " + e, "Feito
", JOptionPane.PLAIN_MESSAGE );break;
44.
45. }
46. System.exit(0);
47. }
48. }

Fonte: JavaFree.
Postado h 15th June 2012 por Demstenes e Jos Fagner
0

Add a comment

Você também pode gostar