復習 - 株価管理デスク
CoddyのRジャーニー「ロジックとフロー」セクションの一部。レッスン 11/64。
チャレンジ
中級process_orders(stock, orders) を完成させてください。注文を順番に処理し、それぞれについて1行を返します:
- 商品が
stockにない場合はunknown <item> - 数量が0の場合は
out of <item> - それ以外の場合は
sold <item>とし、数量を1減らす
注文の処理後、在庫にある各商品について、アルファベット順に1行ずつ追加します:<item>: <quantity>。
提供されたコードは、在庫を name=quantity 形式のペアとして読み込み、注文をカンマ区切りの行として読み込み、返された各行を出力します。
自分で試してみよう
process_orders <- function(stock, orders) {
# ここにコードを書いてください
character(0)
}
# 提供された入出力コード:そのままにしておいてください
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")
ロジックとフローのすべてのレッスン
自分で練習してみよう: Rオンラインコンパイラ