Menu
Coddy logo textTech

Adicionando e Atualizando Itens

Parte da seção Lógica & Fluxo do Journey de C++ da Coddy — lição 31 de 56.

challenge icon

Desafio

Fácil

Estenda seu sistema de rastreamento de inventário implementando a funcionalidade para adicionar novos itens ou atualizar as quantidades de itens existentes. Esta lição demonstra como os maps lidam automaticamente tanto com novas entradas quanto com atualizações de entradas existentes.

As seguintes entradas serão fornecidas:

  • Um número inteiro n representando o número de operações de inventário a serem realizadas
  • Em seguida, n pares de entradas:
    • Uma string representando o nome do item
    • Um número inteiro representando a quantidade a ser adicionada

Seu programa deve:

  1. Começar com o seguinte inventário inicial:
    inventory["apples"] = 50;
    inventory["bananas"] = 30;
    inventory["oranges"] = 25;
  2. Ler o número de operações de inventário
  3. Para cada operação, ler um nome de item e uma quantidade
  4. Adicionar a quantidade ao estoque atual do item no map de inventário usando o operador de colchetes
  5. Imprimir uma mensagem de confirmação para cada operação mostrando o nome do item e sua nova quantidade total
  6. Após todas as operações, imprimir o inventário final mostrando todos os itens e suas quantidades atualizadas

Use o seguinte formato de saída exato:

Para cada operação de inventário:

Added [quantity] [item_name]. New total: [new_total]

Inventário final:

Final Inventory:
[item1]: [quantity1]
[item2]: [quantity2]
[item3]: [quantity3]
...

O inventário final deve ser impresso em ordem alfabética pelo nome do item. Use o operador de colchetes para adicionar quantidades - se o item já existir, ele será adicionado à quantidade atual; se for um novo item, ele será criado com a quantidade especificada. Lembre-se de que inventory[itemName] += quantity funcionará tanto para itens novos quanto para existentes, porque o map inicializa automaticamente novas entradas com 0.

Experimente você mesmo

#include <iostream>
#include <map>
#include <string>
using namespace std;

int main() {
    // TODO: Write your code below
    map<string, int> inventory;
    inventory["Laptops"] = 15;
    inventory["Mice"] = 42;
    inventory["Keyboards"] = 28;
    inventory["Monitors"] = 12;
    
    cout << "Initial Inventory Setup:" << endl;
    for (const auto& pair : inventory) {
        cout << pair.first << ": " << pair.second << endl;
    }
    cout << "Inventory system is ready!" << endl;
    
    return 0;
}

Todas as lições de Lógica & Fluxo