Menu
Coddy logo textTech

Recapitulação - Mesa de Ações

Parte da seção Lógica e Fluxo do Journey de R da Coddy. Lição 11 de 64.

challenge icon

Desafio

Médio

Complete process_orders(stock, orders). Processe os pedidos na ordem e retorne uma linha para cada um:

  • unknown <item> quando o item não estiver em stock
  • out of <item> quando sua quantidade for 0
  • sold <item> caso contrário, e sua quantidade diminuir em 1

Após os pedidos, adicione uma linha para cada item em estoque em ordem alfabética: <item>: <quantity>.

O código fornecido lê o estoque como pares name=quantity e os pedidos como uma linha separada por vírgulas, e imprime cada linha retornada.

Experimente você mesmo

process_orders <- function(stock, orders) {
  # Escreva seu código aqui
  character(0)
}

# Código de entrada/saída fornecido: mantenha-o como está
input <- suppressWarnings(readLines(file("stdin")))
stock <- c()
for (pair in strsplit(input[1], ",")[[1]]) {
  kv <- strsplit(pair, "=")[[1]]
  stock[kv[1]] <- as.numeric(kv[2])
}
cat(process_orders(stock, strsplit(input[2], ",")[[1]]), sep = "\n")

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

Pratique por conta própria: Compilador de R online