Bom, preciso criar um programa que segue o enunciado:
Você é responsável pelo transporte de produtos e faz entregas em todo o Território nacional.
Você possui um único caminhão com um conteiner de certo tamanho. Você ganha uma comissão
diretamente proporcional ao valor de cada produto que você entrega. Como o seu objetivo é obter o
maior ganho possível em comissões, você deverá colocar produtos em seu conteiner de forma que
você não ultrapasse a capacidade do seu conteiner e, ao mesmo tempo, você consiga armazenar o
maior valor possível em produtos dentro do conteiner, para obter assim, o maior ganho possível em
comissões. Desenvolva um programa utilizando a linguagem de programação Java que efetue os
cálculos para você. No programa, você deverá entrar com:
? A capacidade máxima do seu conteiner (Por exemplo, o peso máximo suportado);
? A lista de produtos que você pode entregar.
? O peso e o valor de cada produto que você pode transportar em seu conteiner;
? A comissão que você recebe por cada produto entregue (por exemplo, R$ 5,00 para cada R$
100 de produtos entregues);
Seu programa deverá retornar como resposta uma lista com nomes dos produtos que você
colocará no conteiner de forma que você obtenha o valor máximo em produtos armazenados sem
estourar a capacidade do conteiner. Deverá informar também o valor de cada produto que será
armazenado, o somatório do valor máximo armazenado, o peso total que você levará colocando
estes produtos e o valor em dinheiro que você obterá como comissão pelo seu trabalho.
até o momento eu consigo armazenar os produtos, mais não estou conseguindo organizar os metodos pra resolver o problema, se alguem puder me ajudar.
Principal
import java.util.Arrays;
import java.util.Scanner;
public class Principal {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
Produto[] produtos = new Produto[5];
Produto[] conteiner = new Produto[1];
for (int i = 0; i < conteiner.length; i++) {
conteiner c = new conteiner();
System.out.println("capacidade do conteiner em kilos\n");
c.capacidade = entrada.nextFloat();
System.out.println("Comissão em R$, a cada R$ 100 entregues\n");
c.comissão = entrada.nextFloat();
}
for (int i = 0; i < produtos.length; i++) {
Produto p = new Produto();
System.out.println("Entre com o nome do " + (i + 1) + "º Produto");
p.nome = entrada.next();
System.out.println("Entre com o peso em kilos do " + (i + 1) + "º Produto");
p.peso = entrada.nextFloat();
System.out.println("Entre com o valor em R$ do " + (i + 1) + "º Produto");
p.valor = entrada.nextFloat();
produtos[i] = p;
Arrays.sort(produtos);
for (int i = 0; i < produtos.length; i++) {
if (p.maiorlucro < p.peso * p.valor) {
p.peso * p.valor = p.maiorlucro;
}
}
}
Arrays.sort(produtos);
for (int i = 0; i < produtos.length; i++) {
if (c.capacidade < p.maiorlucro) {
c.quantidade = c.capacidade/p.maiorlucro;
}
System.out.println(+p.nome);
System.out.println(+maiorlucro);
}
}
}
produto
public class Produto{
public String nome;
public float peso;
public float valor;
public float maiorlucro;
}
conteiner
public class conteiner{
public String nome=null;
public float peso=0;
public float valor=0;
public float capacidade;
public float comissão;
public float quantidade=0;
}
Desde já agradeço a todos que ja tem me ajudado.