[code]
import javax.swing.JOptionPane; // Importando a classe para inserir valores manuais
public class trabalho1 { // Nome da classe
public static suporte produtos [] = new suporte [41]; // Declarar vetor
static int i;
public static void insercaodedados(){ // Função
for (int i=1;i<41;i++){ //
produtos[i] = new suporte();
} // Fecha o for da função
MENU(); // Início do menu a
} // Fecha Inserçãodedados
public static void MENU(){//chama o menu
int op = Integer.parseInt(JOptionPane.showInputDialog(" 1 - Cadastro de produtos \n" +
" 2 - Exibir o lucro de venda de todos produtos \n " +
"3 - Exibir a quantidade de produtos em estoque \n" +
" 4 - Aumentar a quantidade em estoque de um produto \n " +
"5 - Modificar o preço de venda e compra do produto \n " +
"6 - Sair do programa"));
switch (op){ // Direciona a opção inserida pelo usuário para o devido case
case 1: //Cadastro de produto
for( i=1; i<41; i++){ // Lógica para cadastros de produtos
produtos[i] = new suporte();
String aux0 = JOptionPane.showInputDialog("Insira o Código do produto\nLembrando que os codigos tem que ser diferentes ");
produtos[i].codigo= Integer.parseInt(aux0);
String aux1 = JOptionPane.showInputDialog("Insira o preço de venda do produto , código: " +produtos[i].codigo);
produtos[i].preco_venda= Float.parseFloat(aux1);
String aux2 = JOptionPane.showInputDialog("Insira o preço de compra do produto , código: " +produtos[i].codigo);
produtos[i].preco_compra= Float.parseFloat(aux2);
String aux3 = JOptionPane.showInputDialog("Insira a quantidade de produtos em estoque do produto , codigo: " +produtos[i].codigo);
produtos[i].quantidade_estoque= Integer.parseInt(aux3);
produtos[i].descricao= JOptionPane.showInputDialog("Insira a descrição do produto , codigo : " +produtos[i].codigo);
} MENU();
case 2: // Exibir o valor do lucro com a venda de cada produto
for ( i=1;i<41;i++){ // Lógica para impressão de todos produtos cadastrados
produtos[i].lucro = produtos[i].preco_venda - produtos[i].preco_compra; // Cálculo para lucro obtido
System.out.println ("O lucro do produto de codigo : " + produtos[i].codigo +" é de : " + produtos[i].lucro); // Impressão
} MENU();
case 3: // Exibir na tela o estoque total, com todos os campos
for ( i=1;i<41;i++){ //Exibir o valor do lucro com a venda de cada produto
System.out.println ("O Codigo do produto é : "+ produtos[i].codigo+ " e tem um estoque de: "+ produtos[i].quantidade_estoque + " unidades. "); // Impressão
} MENU();
case 4: // Aumentar a quantidade em estoque de um produto
int novaqtd; // Variável de suporte
int codigo_produto ; // Variável de suporte
String auxiliar = JOptionPane.showInputDialog ("Digite o Codigo do produto que deseja alterar,caso o codigo seja inexistente o Menu retornará."); // Leitura do código do produto
codigo_produto = Integer.parseInt(auxiliar); // Conversão de string para int
for (i=1;i<41;i++){
if (codigo_produto == produtos[i].codigo){
for ( i=1;i<41;i++){ // Achar qual código do produto corresponde ao inserido pelo usuário
if (codigo_produto == produtos[i].codigo) { // Condição para que se altere a qtd de produtos
String auxiliar1 = JOptionPane.showInputDialog ("Insira a nova quantidade de produtos.\nQUANTIDADE ATUAL É DE :" +produtos[i].quantidade_estoque); // Nova quantidade de produtos
novaqtd = Integer.parseInt (auxiliar1); // Conversao de string para int
produtos[i].quantidade_estoque = novaqtd; // Atualizando variável
}
}
}
}MENU();
case 5 : //Modificar preço de compra e de venda de um produto
int novo_preco_compra; // Variáveis
int novo_preco_venda ; // de
int codprod; // Suporte
String auxiliar2 = JOptionPane.showInputDialog ("Digite o Codigo do produto que deseja alterar, caso o codigo seja inexistente o Menu retornará."); // Inserir o codigo do produto
codprod = Integer.parseInt(auxiliar2); // Conversão de String para int
for ( i=1;i<41;i++){
if (codprod == produtos[i].codigo){
for ( i=1;i<41;i++){ // Achar qual código corresponde ao inserido pelo usuário
if (codprod == produtos[i].codigo) { // Condição para que haja a troca de valores de venda e compra
String auxiliar3 = JOptionPane.showInputDialog ("Insira o novo preço de venda.\nPREÇO ATUAL DE VENDA :" +produtos[i].preco_venda); // Troca de valores da venda
novo_preco_venda = Integer.parseInt (auxiliar3); // Conversão de string para int
produtos[i].preco_venda = novo_preco_venda; // Atualizando a variável
String auxiliar4 = JOptionPane.showInputDialog ("Insira o novo preço de compra.\nPREÇO ATUAL DE COMPRA "+produtos[i].preco_compra); // Troca de valores da compra
novo_preco_compra = Integer.parseInt (auxiliar4); // Conversão String para int
produtos[i].preco_compra = novo_preco_compra; // Atualizando a variável
}
}
}
} MENU();
case 6: // Sair do Sistema
System.exit(0); //fechar sistema.
default:
JOptionPane.showMessageDialog(null,"Opção Inexistente");
MENU();
}// Fecha o switch(op)
} //FECHA o public static void MENU()
public static void main(String[] args) { //-------------------------------------------------------------------------------------------------
insercaodedados(); //leitura da funçao
} //Fim do main(String[] args)
}// public class[/code]
Quando abre o menu e clica 1 voce tem que cadastrar 40 produtos . Eu queria que cadastrase 1 PRODUTO POR VEZ, por exemplo, Cadastra 1 produto depois vai pro menu ai o user clica 1 e cadastra mais um, sem que apague o cadastrado anteriormente.
Eu esbocei algumas coisas porem sempre apagava o anterior que eu tinha feito .
Alguem pode ajudar ???
Obrigado !