Ulasan: Meja Saham
Termasuk bagian Logika dan Alur dalam perjalanan R di Coddy. Pelajaran 11 dari 64.
Tantangan
SedangSelesaikan process_orders(stock, orders). Tangani pesanan sesuai urutan dan kembalikan satu baris untuk setiap pesanan:
unknown <item>jika item tidak ada distockout of <item>jika jumlahnya 0sold <item>jika tidak, dan jumlahnya berkurang 1
Setelah semua pesanan, tambahkan satu baris untuk setiap item dalam stok, urut berdasarkan abjad: <item>: <quantity>.
Kode yang disediakan membaca stok sebagai pasangan name=quantity dan pesanan sebagai baris yang dipisahkan koma, lalu mencetak setiap baris yang dikembalikan.
Coba sendiri
process_orders <- function(stock, orders) {
# Tulis kodemu di sini
character(0)
}
# Kode input/output yang disediakan: biarkan apa adanya
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")
Semua pelajaran di Logika dan Alur
1Mendalami string
Substring dengan substr()Memformat dengan sprintf()Memisahkan dan MenggabungkanMencari stringMengganti TeksRangkuman: Pembuat Nama Pengguna4Matriks
Membuat MatriksMengakses Elemen MatriksRingkasan Baris dan KolomAritmetika MatriksRangkuman: Denah Tempat Duduk2Pencarian Nilai-Kunci
Pencarian pada Vector BernamaMemeriksa KunciMenambahkan dan Menghapus KunciMenelusuri NamaUlasan: Meja Saham5Proyek, Buku Nilai
Menambahkan SiswaMencatat Nilai3Set dan Penghitungan
Nilai UnikOperasi setPengujian KeanggotaanMenghitung dengan table()Ulasan: Tamu Acara6Fungsi sebagai Nilai
Fungsi AnonimMengirim FungsiMengembalikan FungsiClosure dengan StateRangkuman: Aturan Diskon9Data Frame
Membuat Data FrameKolom dan BarisMemfilter BarisMenambahkan dan MengurutkanRangkuman: Laporan Penjualan12Proyek: Pelacak Pengeluaran
Mencatat PengeluaranTotal PengeluaranLatihan sendiri: Compiler R online