Menu
CoddyTech

Ôn tập: vectơ giá

Thuộc phần Kiến thức nền tảng trong hành trình R của Coddy. Bài học 60 trên 78.

challenge icon

Thử thách

Dễ

Bạn sẽ nhận được hai dòng đầu vào:

  1. Một danh sách giá gốc được phân tách bằng dấu phẩy (ví dụ: 100,200,150,80)
  2. Một phần trăm giảm giá dưới dạng số nguyên (ví dụ: 20 cho mức giảm giá 20%)

Thực hiện các thao tác sau:

  1. Tạo một véc-tơ từ danh sách giá được phân tách bằng dấu phẩy
  2. Quản lý cửa hàng nhận thấy giá của món hàng thứ ba bị nhập sai. Đổi giá thành 125
  3. Áp dụng mức giảm giá cho tất cả các giá (nhân với (100 - discount) / 100)
  4. In véc-tơ giá sau khi giảm
  5. In tổng tất cả giá sau khi giảm bằng sum()
  6. In giá trung bình sau khi giảm bằng mean()

Ví dụ, nếu đầu vào là:

100,200,150,80
20

Đầu ra sẽ là:

[1]  80 160 100  64
[1] 404
[1] 101

Giải thích: Giá của món hàng thứ ba được đổi thành 125, sau đó áp dụng mức giảm giá 20% (nhân với 0.8), cho ra các giá 80, 160, 100 và 64.

Tự làm thử

# Đọc đầu vào
con <- file("stdin", "r")
prices_input <- suppressWarnings(readLines(con, n = 1))
discount <- suppressWarnings(readLines(con, n = 1))
close(con)

# Chuyển đổi các giá trị đầu vào
original_prices <- as.numeric(unlist(strsplit(prices_input, ",")))
discount_percent <- as.numeric(discount)

# TODO: Viết code bên dưới
# 1. Đổi phần tử thứ ba thành 125
# 2. Áp dụng mức giảm giá cho tất cả giá
# 3. In ra vectơ giá sau khi giảm
# 4. In ra tổng bằng sum()
# 5. In ra giá trị trung bình bằng mean()

Tất cả bài học trong Kiến thức nền tảng

Tự luyện tập: Trình biên dịch R online