Estou precisando de ajuda para terminar dois códigos. o primeiro é pra pedir 5 produtos, quantidade , valor e desconto. preciso mostrar o valor total a pagar.
ai está o que ja fiz, esta rodando só preciso complementar o ultimoo requisito pedido no enunciado.
importjava.util.Scanner;publicclassPrincipal{publicstaticvoidmain(String[]args){Scannerentrada=newScanner(System.in);Produto[]produtos=newProduto[5];//Produto[] conteiner = new Produto[5];for(inti=0;i<produtos.length;i++){Produtop=newProduto();System.out.println("Entre com o nome do "+(i+1)+"º Produto");p.nome=entrada.next();System.out.println("Entre com a quantidade do "+(i+1)+"º Produto");p.quantidade=entrada.nextFloat();System.out.println("Entre com o preço do "+(i+1)+"º Produto");p.preço=entrada.nextFloat();System.out.println("Entre com o desconto do "+(i+1)+"º Produto, se houver, se não digite zero:");p.desconto=entrada.nextFloat();produtos[i]=p;}}}
Fala garotinho… Seja bem vindo ao fórum. Espero que você atente para o que lhe falarei agora.
1 - O que você está pedindo é Java Básico não avançado, muito cuidado em qual fórum criar o seu tópico.
2 - Poste seus códigos entre as Tags CODE, vá ao Java Básico e procure nos tópicos fixos do fórum, no Post de Iniciantes, que ensina como fazer isso detalhadamente, senão podes fazer com que as pessoas nem leiam seu código (eu sou um);
Obrigado mano pela dica. já resolvi o problema da formatação do post.
sei também agora que trata-se de básico e não de avançado.
mais pode me ajudar nesses codigos?
cara tem dias que tento resolver. não valem nota mais preciso aprende-los.
se puder me ajudar eu agradeço.
davidbuzatto
Por favor, evite colocar o título dos tópicos em caixa alta.
Parece que você está gritando.
Vou alterar o seu título tudo bem?
[]'s
garotinhodejesus
tudo bem.
paulociecomp
publicclassPrincipal{publicstaticvoidmain(String[]args){Scannerentrada=newScanner(System.in);Produto[]produtos=newProduto[5];floattotalPreco=0;//Produto[] conteiner = new Produto[5];for(inti=0;i<produtos.length;i++){Produtop=newProduto();System.out.println("Entre com o nome do "+(i+1)+"º Produto");p.nome=entrada.next();System.out.println("Entre com a quantidade do "+(i+1)+"º Produto");p.quantidade=entrada.nextFloat();System.out.println("Entre com o preço do "+(i+1)+"º Produto");p.preço=entrada.nextFloat();System.out.println("Entre com o desconto do "+(i+1)+"º Produto, se houver, se não digite zero:");p.desconto=entrada.nextFloat();produtos[i]=p;}for(Produtop:produtos){totalPreco+=p.preço;}System.out.println("Valor Total a pagar: "+totalPreco);}}
Cara, esse é o for aprimorado, uma novodade do java 5. Ele faz um loop no array e pega todos os preços dos produtos. Agora você tem que atentar para o fato de que seu algoritmo não está levando em consideração a quantidade e o desconto para fazer a soma dos preços. Isso você terá que consertar.
Abraços.
Elizeu_Santos
estas a falar sobre o enhanced for?
geralmente eu não uso… agora… não entendi muito bem a duvida.
Elizeu_Santos
voce quer pegar o valor de cada produto e somar?
crie uma variavel “total”
crie no objeto produto um método que retorne o valor total, ou seja, (quantidade * preco) - desconto.
crie um for que some o valor de cada um deles a uma determinada variavel X.
x += produto[i].getTotal();
Elizeu_Santos
problema do guj é que o pessoal gosta de dar lição de moral, apontar falhas mais poucos se empenham em resolver problemas.
garotinho… [email removido]
qualquer duvida…
se quiser pode me mandar mensagem privada também fique a vontade. o pouco que sei compartilho, ensinar é aprender duas vezes.
garotinhodejesus
Ok Elizeu, já te adicionei no msn. precisarei de ti com toda certeza.
para esclarecer, eu preciso completar o código, pra que ele me dê o valor total a pagar, ou seja acho que a logica seria mais ou menos assim:
preciso de um laço que leia todo o vetor e va somando um por um e depois de o resultado da soma total.
me desculpe, mais sou novato em programação e talvez por isso não tenha entendido o que o amigo paulociecomp, escreveu.
se puderem me ajudar fico muito agradecido.
paulociecomp
garotinhodejesus foi mal minha. Eu é que havia entendido errado.
Vamos fazer como o Elizeu_Santos sugeriu. Criaremos um método getValorAPagar() na classe produto.
Esse método vai calcular o valor de acordo com a quantida e desconto por produto.
Na classe principal criaremos uma variável total e armazenaremos nela o total a pagar dentro do seu for.
total+=p.getValorAPagar();
Veja como ficou:
publicclassPrincipal{publicstaticvoidmain(String[]args){Scannerentrada=newScanner(System.in);Produto[]produtos=newProduto[5];floattotal=0;//Produto[] conteiner = new Produto[5];for(inti=0;i<produtos.length;i++){Produtop=newProduto();System.out.println("Entre com o nome do "+(i+1)+"º Produto");p.nome=entrada.next();System.out.println("Entre com a quantidade do "+(i+1)+"º Produto");p.quantidade=entrada.nextFloat();System.out.println("Entre com o preço do "+(i+1)+"º Produto");p.preço=entrada.nextFloat();System.out.println("Entre com o desconto do "+(i+1)+"º Produto, se houver, se não digite zero:");p.desconto=entrada.nextFloat();produtos[i]=p;total+=p.getValorAPagar();}System.out.println("Total a pagar:"+total);}}classProduto{publicStringnome;publicfloatquantidade;publicfloatpreço;publicfloatdesconto;publicfloatgetValorAPagar(){return(preço*quantidade)-desconto;}}
Espero ter ajudado. E espero que a atitude de alguns não te desestimule a postar no fórum.
adriano_si
Elizeu_Santos:
problema do guj é que o pessoal gosta de dar lição de moral, apontar falhas mais poucos se empenham em resolver problemas.
garotinho… [email removido]
qualquer duvida…
se quiser pode me mandar mensagem privada também fique a vontade. o pouco que sei compartilho, ensinar é aprender duas vezes.
Espero que esse “pessoal” não seja eu Elizeu, pois se você ler as indicações que dei ao garotinho não foi com objetivo de apontar problemas ou prejudicá-lo, tenho certeza que se ele leu o link que passei, deve está agradecido pelo que leu e encarou com bons olhos.
Agora não encare que uma não ajuda em um código é por maldade ou por não querer. Ainda digo mais, não dê o peixe pra alguém, ensine-o a pescar. Se você não gosta do “pessoal do GUJ” sinta-se a vontade pra sair do fórum.
Garotinho infelizmente não pude voltar ao tópico a tempo de ajudá-lo pois o Elizeu e o Paulo já o haviam feito. O que eles colocaram acima pra você creio que já resolva seu problema, qualquer coisa posta aí de novo.
Abs [] e bons estudos…
Elizeu_Santos
adriano_si:
Elizeu_Santos:
problema do guj é que o pessoal gosta de dar lição de moral, apontar falhas mais poucos se empenham em resolver problemas.
garotinho… [email removido]
qualquer duvida…
se quiser pode me mandar mensagem privada também fique a vontade. o pouco que sei compartilho, ensinar é aprender duas vezes.
Espero que esse “pessoal” não seja eu Elizeu, pois se você ler as indicações que dei ao garotinho não foi com objetivo de apontar problemas ou prejudicá-lo, tenho certeza que se ele leu o link que passei, deve está agradecido pelo que leu e encarou com bons olhos.
Agora não encare que uma não ajuda em um código é por maldade ou por não querer. Ainda digo mais, não dê o peixe pra alguém, ensine-o a pescar. Se você não gosta do “pessoal do GUJ” sinta-se a vontade pra sair do fórum.
Garotinho infelizmente não pude voltar ao tópico a tempo de ajudá-lo pois o Elizeu e o Paulo já o haviam feito. O que eles colocaram acima pra você creio que já resolva seu problema, qualquer coisa posta aí de novo.
Abs [] e bons estudos…
não citei nomes. a ultima coisa que quero é WAR. disto o mundo já esta cheio, quero que as pessoas sejam mais solidarias, só isso.
forte abraço a todos.
garotinho, vou entrar no ebuddy pra tentar te adc, o Empathy do Linux ta dando uns problemas…
forte abraço fique com Deus.
Caso queira… tenho disponível a apostila FJ-16 da caelum… o download é exclusivo para ex-alunos da caelum… porém eles não disseram nada sobre compartilhar =).
adriano_si
Elizeu_Santos:
não citei nomes. a ultima coisa que quero é WAR. disto o mundo já esta cheio, quero que as pessoas sejam mais solidarias, só isso.
forte abraço a todos.
Ninguém quer guerra, só que embora não tenha citado nomes, a indireta foi BEM direta.
Espero apenas que você entenda que quando alguém pede pra organizar melhor as perguntas ou formatarmelhor o tópico, é ajuda tão igual quanto com código, afinal a sobrevivência dele na TI dependerá também disso.
Eu sei como é pegar respostas APARENTEMENTE mal educadas na cara… Fiz muita merda no início de convivência em fórums e aprendi apanhando…
Só que no meu caso não aprendi com conselhos, aprendi sendo xingado mesmo… heueheueheueeheuehue…
Abs []
garotinhodejesus
Quero agradecer a todos que se empenharam em me ajudar. foi minha primeira esperiencia com o GUY, mais sou muito grato a todos vcs e com certeza vou precisar de vcs amigos.
obrigado e até a proxima.