1
resposta

Meu desafio, não consegui chegar ao resultado

desafio Crie um programa em JavaScript que simule um sistema de controle de estoque de equipamentos. O programa deve permitir ao usuário realizar as seguintes ações: adicionar um novo equipamento, vender um equipamento e exibir o estoque atual.

Regras:

O programa deve iniciar com um array vazio para armazenar os equipamentos. O programa deve exibir um menu para o usuário com as opções: adicionar equipamento, vender equipamento e exibir estoque. A opção "Adicionar Equipamento" deve solicitar ao usuário o nome do equipamento e a quantidade a ser adicionada ao estoque. O equipamento deve ser representado por um objeto com as propriedades "nome" e "quantidade". O objeto deve ser adicionado ao array de equipamentos. A opção "Vender Equipamento" deve solicitar ao usuário o nome do equipamento a ser vendido e a quantidade a ser vendida. O programa deve procurar o equipamento no array, verificar se há a quantidade desejada disponível no estoque e atualizar a quantidade disponível. A opção "Exibir Estoque" deve percorrer o array de equipamentos e exibir o nome e a quantidade de cada equipamento. O programa deve continuar em execução até que o usuário escolha a opção de sair.

meu codigo:

// Array para armazenar os equipamentos let estoque = [];

// Função para adicionar um novo equipamento function adicionarEquipamento(nome, quantidade) { // Verifica se o equipamento já existe no estoque const equipamentoExistente = estoque.find(equipamento => equipamento.nome === nome);

if (equipamentoExistente) {
    // Se o equipamento já existe, atualiza a quantidade
    equipamentoExistente.quantidade += quantidade;
} else {
    // Se o equipamento não existe, adiciona ao estoque
    estoque.push({ nome, quantidade });
}

console.log(`${quantidade} unidades de ${nome} adicionadas ao estoque.`);

}

// Função para vender um equipamento function venderEquipamento(nome, quantidade) { // Verifica se o equipamento existe no estoque const equipamentoExistente = estoque.find(equipamento => equipamento.nome === nome);

if (equipamentoExistente && equipamentoExistente.quantidade >= quantidade) {
    // Se houver quantidade suficiente, realiza a venda
    equipamentoExistente.quantidade -= quantidade;
    console.log(`${quantidade} unidades de ${nome} vendidas.`);
} else {
    console.log(`Não há quantidade suficiente de ${nome} no estoque.`);
}

}

// Função para exibir o estoque atual function exibirEstoque() { console.log("Estoque Atual:"); estoque.forEach(equipamento => { console.log(${equipamento.nome}: ${equipamento.quantidade} unidades); }); }

// Exemplos de uso adicionarEquipamento("Laptop", 10); adicionarEquipamento("Mouse", 20); exibirEstoque();

venderEquipamento("Laptop", 5); exibirEstoque();

1 resposta

Olhei rapidamente e acredito que o erro está nessa linha abaixo, porque está atribuindo o valor na variável auxiliar e não na array de estoque equipamentoExistente.quantidade += quantidade;