Menu
CoddyTech

Output Terformat (sprintf)

Termasuk bagian Dasar-Dasar dalam perjalanan R di Coddy. Pelajaran 37 dari 78.

challenge icon

Tantangan

Mudah

Di pelajaran sebelumnya, kamu menyelesaikan Kalkulator Pembagi Tagihan dengan semua perhitungannya. Sekarang, tingkatkan pemformatan output menggunakan sprintf() untuk menampilkan nilai uang dengan tepat 2 angka desimal.

Ubah baris output yang menampilkan jumlah dalam dolar agar menggunakan sprintf() untuk pemformatan. Fungsi sprintf() memungkinkan kamu memformat angka dengan jumlah angka desimal tertentu menggunakan %.2f untuk 2 angka desimal.

Perbarui baris output berikut agar menampilkan tepat 2 angka desimal untuk semua nilai uang:

  • Bill: $[bill]
  • Tip amount: $[tip_amount]
  • Total with tip: $[total]
  • Each person pays: $[per_person]

Pertahankan operasi aritmetika persis seperti di pelajaran sebelumnya: tip_amount <- bill * tip_percent / 100. Mengalikan dengan tip_percent / 100 saja dapat menghasilkan selisih satu sen setelah angka dibulatkan menjadi dua angka desimal.

Gunakan sprintf() untuk memformat setiap nilai uang. Contohnya, sprintf("%.2f", value) memformat angka menjadi 2 angka desimal.

Contohnya, jika inputnya adalah 85.50, 18, dan 3, output lengkapnya seharusnya seperti berikut:

Welcome to the Bill Split Calculator!
Let's split your bill fairly.
Bill: $85.50
Tip: 18%
People: 3
Tip amount: $15.39
Total with tip: $100.89
Each person pays: $33.63

Catatan: Persentase tip dan jumlah orang harus tetap berupa bilangan bulat tanpa pemformatan desimal.

Coba sendiri

# TODO: Write your code below
# Use cat() to display the welcome message
# Remember to use \n for new lines
cat("Welcome to the Bill Split Calculator!\nLet's split your bill fairly.\n")

# Read user inputs
con <- file("stdin", "r")
bill <- as.numeric(suppressWarnings(readLines(con, n = 1)))
tip_percent <- as.numeric(suppressWarnings(readLines(con, n = 1)))
people <- as.numeric(suppressWarnings(readLines(con, n = 1)))
close(con)

# Display confirmation message
cat("Bill: $", bill, "\n", sep = "")
cat("Tip: ", tip_percent, "%\n", sep = "")
cat("People: ", people, "\n", sep = "")

# Calculate tip amount and total
tip_amount <- bill * tip_percent / 100
total <- bill + tip_amount

# Display calculation results
cat("Tip amount: $", tip_amount, "\n", sep = "")
cat("Total with tip: $", total, "\n", sep = "")

# Calculate per person amount
per_person <- total / people

# Display per person amount
cat("Each person pays: $", per_person, "\n", sep = "")

Semua pelajaran di Dasar-Dasar

Latihan sendiri: Compiler R online