Menu
Coddy logo textTech

Repaso: panel bursátil

Parte de la sección Lógica y flujo del Journey de R de Coddy. Lección 11 de 64.

challenge icon

Desafío

Intermedio

Completa process_orders(stock, orders). Gestiona los pedidos en orden y devuelve una línea para cada uno:

  • unknown <item> cuando el artículo no está en stock
  • out of <item> cuando su cantidad es 0
  • sold <item> en caso contrario, y su cantidad disminuye en 1

Después de los pedidos, añade una línea por cada artículo en stock en orden alfabético: <item>: <quantity>.

El código proporcionado lee el stock como pares name=quantity y los pedidos como una línea separada por comas, e imprime cada línea devuelta.

Pruébalo tú mismo

process_orders <- function(stock, orders) {
  # Escribe tu código aquí
  character(0)
}

# Código de entrada/salida suministrado: déjalo tal 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 las lecciones de Lógica y flujo

Practica por tu cuenta: Compilador de R online