Olá pessoal!
Comecei a ver o livro Java como Programar 6ª edição. Estou no capítulo 2 mas fiquei empacado nos exercícios 2.30 e 2.32.
O 2.30 pede para inserir 5 dígitos e separá-los com três espaços. O livro dá a dica para usar as operações de divisão e resto para selecionar cada dígito. Se eu digitar “42339” é para sair “4 2 3 3 9”.
O 2.32 pede para inserir 5 números e determinar e imprimir quantos números positivos, negativos e zeros foram inseridos.
Pensei, mas ainda não consegui encontrar nenhum jeito para ao menos começá-los.
Olá pessoal!
Comecei a ver o livro Java como Programar 6ª edição. Estou no capítulo 2 mas fiquei empacado nos exercícios 2.30 e 2.32.
O 2.30 pede para inserir 5 dígitos e separá-los com três espaços. O livro dá a dica para usar as operações de divisão e resto para selecionar cada dígito. Se eu digitar “42339” é para sair “4 2 3 3 9”.
O 2.32 pede para inserir 5 números e determinar e imprimir quantos números positivos, negativos e zeros foram inseridos.
Pensei, mas ainda não consegui encontrar nenhum jeito para ao menos começá-los.
Quem puder me dar uma luz eu agradeço muito.
Até lá.
Divide por 10000 e veja o quociente. Agora pegue o resto da divisão e divida por 1000. Veja o quociente. Interessante, não?
igor_jua
Na primeira questão estude na documentação do java o método substring da classe string…
A segunda é mais lógica, assim há varias maneiras de vc resolver.
Ex:
Você poderia alojar os valores em um array, depois fazer um loop para verificar se os valores.
Assim:
publicstaticvoidmain(Stringargs[]){Scanners=newScanner(System.in);intv[]=newint[5];for(inti=0;i<5;i++){System.out.println("Digite um numero");v[i]=s.nextInt();}for(inti=0;i<5;i++){if(v[i]<0)System.out.println("negativo");if(v[i]>0)System.out.println("positivo");if(v[i]==0)System.out.println("zero");}}
rodrigo.bossini
igor_jua:
Na primeira questão estude na documentação do java o método substring da classe string…
A segunda é mais lógica, assim há varias maneiras de vc resolver.
Ex:
Você poderia alojar os valores em um array, depois fazer um loop para verificar se os valores.
Assim:
publicstaticvoidmain(Stringargs[]){Scanners=newScanner(System.in);intv[]=newint[5];for(inti=0;i<5;i++){System.out.println("Digite um numero");v[i]=s.nextInt();}for(inti=0;i<5;i++){if(v[i]<0)System.out.println("negativo");if(v[i]>0)System.out.println("positivo");if(v[i]==0)System.out.println("zero");}}
A idéia do exercício é treinar as operações de divisão inteira e módulo. Não faz sentido utilizar métodos prontos da API.
T
tflatorre
Obrigado mesmo pela ajuda dos dois.
Realmente, já consegui pegar o espírito do primeiro exercício.
Agora, se não for pedir muito, queria só uma orientação à respeito do segundo exercício em questão. Estou na dúvida se é o suficiente fazer uma verificação se o número é menor que 0, ou igual a 0, ou maior que 0. Para sabermos se o número digitado é negativo, igual a 0, ou positivo.
Obrigado desde já.
rodrigo.bossini
tflatorre:
Obrigado mesmo pela ajuda dos dois.
Realmente, já consegui pegar o espírito do primeiro exercício.
Agora, se não for pedir muito, queria só uma orientação à respeito do segundo exercício em questão. Estou na dúvida se é o suficiente fazer uma verificação se o número é menor que 0, ou igual a 0, ou maior que 0. Para sabermos se o número digitado é negativo, igual a 0, ou positivo.
Obrigado desde já.
Creio que você deva fazer o mesmo que no primeiro. Separe os 5 algarismos que compõem o número. Uma vez separados, compare um a um pra vezer quais os negativos, positivos ou zero.
T
tflatorre
rod.attack:
tflatorre:
Obrigado mesmo pela ajuda dos dois.
Realmente, já consegui pegar o espírito do primeiro exercício.
Agora, se não for pedir muito, queria só uma orientação à respeito do segundo exercício em questão. Estou na dúvida se é o suficiente fazer uma verificação se o número é menor que 0, ou igual a 0, ou maior que 0. Para sabermos se o número digitado é negativo, igual a 0, ou positivo.
Obrigado desde já.
Creio que você deva fazer o mesmo que no primeiro. Separe os 5 algarismos que compõem o número. Uma vez separados, compare um a um pra vezer quais os negativos, positivos ou zero.
Obrigado mesmo.
Vc me ajudou muito.
userguj
Cara, estou empacado justamente no exercicio 2.32, eu li as explicações que já tem neste topico, mais ainda não consegui pega o fio da miada.
Gostaria que me dessem uma luz ai, pra eu poder fazer meu code aki e posta-lo.
|/
S
smendes23
Boa noite senhores,
Sei que o fórum é antigo, mas gostaria de deixar minha contribuição caso exista mais alguém com duvidas sobre como resolver o exercício 2.32.
Eu usei a lógica abaixo para resolve-lo:
numValor=JOptionPane.showInputDialog("Digite um numero com 5 digitos");valor=Integer.parseInt(numValor);num1=valor/10000;result1=num1*10000;num2=(valor-result1)/1000;result2=((valor-num1)/1000)*1000;num3=(valor-result2)/100;result3=((valor-num2)/100)*100;num4=(valor-result3)/10;result4=((valor-num3)/10)*10;num5=(valor-result4);JOptionPane.showMessageDialog(null,num1+" "+num2+" "+num3+" "+num4+" "+num5);System.exit(0);}