Problema Java?

Faça um programa que peça para o usuário digitar o valor de um produto e a quantidade que ele comprou. Deverão ser pedidos 5 produtos. Ao final, mostrar o valor total da compra.
OBS: Não se esqueça de validar a entrada dos valores, pois não são aceitas quantidades negativas, nem preços negativos.

import java.util.Scanner;

public class L6Questao5{
	public static void main(String [] args){

		Scanner in = new Scanner(System.in);
		double preco, total =0.0, total2 =0.0;
		int quantidade;
		
		for(int i = 0; i<5; i++){

			System.out.println("Digite o preco do produto:");
			preco = in.nextDouble();
			while(preco<0){
				System.out.println("Nao sao aceitos precos negativos. Digite o preco do produto novamente:");
				preco = in.nextDouble();
			}
			System.out.println("Digite a quantidade que voce comprou:");
			quantidade = in.nextInt();
			while(quantidade<0){
				System.out.println("Nao sao aceitas quantidade negativas. Digite a quantidade do produto novamente:");
				quantidade = in.nextInt();
			}
			total = total + preco;
			total2 = total2 + quantidade;
		}
		System.out.println(total);
		System.out.println(total2);
	}
}

Como eu faço para saber o preço total, ou seja, preço do primeiro produto x(vezes) a quantidade do primeiro produto, preço do segundo produto x a quantidade do segundo…

Só sua lógica estava meio furada:

import static java.lang.System.out;

import java.util.Scanner;

public class L6Questao5 {

	private static final Scanner in = new Scanner(System.in);

	public static void main(String[] args) {
		L6Questao5 programa = new L6Questao5();
		programa.executar();
	}

	private void executar() {
		double totalCompra = 0;
		for (int i = 0; i < 5; i++) {
			out.println("Digite o preco do produto:");
			double preco = in.nextDouble();
			while (preco < 0) {
				out.println("Nao sao aceitos precos negativos. Digite o preco do produto novamente:");
				preco = in.nextDouble();
			}
			System.out.println("Digite a quantidade que voce comprou:");
			int quantidade = in.nextInt();
			while (quantidade < 0) {
				out.println("Nao sao aceitas quantidade negativas. Digite a quantidade do produto novamente:");
				quantidade = in.nextInt();
			}
			totalCompra += preco * quantidade;
		}
		out.println("Total da compra: " + totalCompra);
	}
}
1 curtida

Eu fiz dessa forma forma e deu certo. Eu só não estava sabendo como somar os valores. Obrigado! :smile:

import java.util.Scanner;

public class L6Questao5
{
	public static void main(String [] args)
	{
		Scanner in = new Scanner(System.in);
		double preco, totalCompra= 0.0;
		int quantidade;
		
		for(int i = 0; i<5; i++){

			System.out.println("Digite o preco do produto:");
			preco = in.nextDouble();
			while(preco<0){
				System.out.println("Nao sao aceitos precos negativos. Digite o preco do produto novamente:");
				preco = in.nextDouble();
			}
			System.out.println("Digite a quantidade que voce comprou:");
			quantidade = in.nextInt();
			while(quantidade<0){
				System.out.println("Nao sao aceitas quantidade negativas. Digite a quantidade do produto novamente:");
				quantidade = in.nextInt();
			}
			totalCompra += preco * quantidade;
		}
		System.out.println("Total da compra: "totalCompra);
	}
}