Ringkasan: list Produk
Termasuk bagian Dasar-Dasar dalam perjalanan R di Coddy. Pelajaran 75 dari 78.
Tantangan
MudahKamu akan menerima empat baris input:
- Nama produk (misalnya,
Wireless Headphones) - Harga (misalnya,
79.99) - Jumlah stok (misalnya,
25) - Persentase diskon yang akan diterapkan (misalnya,
20)
Lakukan operasi berikut:
- Buat named list bernama
productdengan elemen:name(character),price(numeric),stock(numeric), danavailable(atur keTRUEjika stok lebih dari 0, jika tidak, atur keFALSE) - Cetak nama produk menggunakan operator
$ - Hitung harga setelah diskon (harga awal dikurangi persentase diskon) dan perbarui elemen
price - Tambahkan elemen baru bernama
discounteddengan nilaiTRUE - Kurangi
stocksebanyak 1 (untuk menyimulasikan pembelian) - Hapus elemen
availabledari list - Cetak list akhir
Contohnya, jika inputnya adalah:
Smart Watch
150
10
25Outputnya seharusnya:
[1] "Smart Watch"
$name
[1] "Smart Watch"
$price
[1] 112.5
$stock
[1] 9
$discounted
[1] TRUEPenjelasan:
- Harga awal 150 dengan diskon 25%: 150 - (150 * 25/100) = 112.5
- Stok dikurangi dari 10 menjadi 9
- Elemen
availabledihapus dari list akhir
Coba sendiri
# Baca input
con <- file("stdin", "r")
product_name <- suppressWarnings(readLines(con, n = 1))
price <- as.numeric(suppressWarnings(readLines(con, n = 1)))
stock <- as.numeric(suppressWarnings(readLines(con, n = 1)))
discount_percentage <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)
# TODO: Tulis kodemu di bawah ini
# 1. Buat list bernama 'product' dengan elemen: name, price, stock, dan available
# 2. Tampilkan nama produk menggunakan operator $
# 3. Hitung harga setelah diskon dan perbarui elemen price
# 4. Tambahkan elemen baru bernama 'discounted' dengan nilai TRUE
# 5. Kurangi stock sebanyak 1
# 6. Hapus elemen 'available' dari list
# 7. Tampilkan list akhirSemua pelajaran di Dasar-Dasar
4Operator Bagian 2
Operator Logika (AND, OR)Operator Logika Bagian 2 (NOT)Rangkuman: Logika SederhanaLogika Tervektorisasi Bagian 1Logika Tervektorisasi Bagian 27Kalkulator Pembagi Tagihan
Pesan Selamat DatangMenerima Input Pengguna10FizzBuzz dengan Sentuhan Unik
Ikhtisar PermainanFungsi FizzBuzz2Variabel dan Tipe Data
Tipe Data NumerikTipe Data IntegerTipe Data KarakterTipe Data LogikaMemeriksa Tipe DataKonvensi PenamaanNilai yang Hilang: NARingkasan: Membuat Variabel8Perulangan
For LoopWhile LoopBreakBerikutnya (Continue)Ringkasan: FaktorialPembuatan Urutan (seq, :)Loop BersarangRingkasan: Input Dinamis3Operator Bagian 1
Operator AritmetikaPembagian Bilangan Bulat dan ModuloOperator PenugasanRangkuman: Matematika SederhanaOperator Perbandingan6Dasar input/output
Cetak outputcat untuk outputOutput dengan variabelMembaca input dengan readline()Dasar konversi tipe dataRingkasan: Kalkulator usiaRingkasan: Benar atau salah9Fungsi
Mendeklarasikan FungsiArgumen FungsiNilai KembalianUlasan: Fungsi SigmaUlasan: Fungsi ValidasiNilai Parameter Default12Melakukan Iterasi pada Urutan
Mengiterasi Elemen VektorMenggunakan seq_along()Mengiterasi Karakter (strsplitFungsi Manipulasi stringLatihan sendiri: Compiler R online