사용자 입력 받기
Coddy R 여정의 기초 섹션에 포함된 레슨 — 78개 중 34번째.
챌린지
쉬움이전 레슨에서 Bill Split Calculator를 위한 환영 메시지를 만들었습니다. 이제 청구서 계산을 위해 사용자 입력을 수집하는 기능을 추가해 보겠습니다.
기존 환영 메시지 다음에 사용자로부터 세 가지 입력을 읽어오세요:
- 총 청구 금액
- 팁 백분율 (정수로 입력, 예: 15%인 경우
15) - 비용을 나눌 인원수
(이 플랫폼과 같이) 비대화형으로 실행되는 R 스크립트에서는 표준 입력 스트림에서 입력을 읽습니다. 이를 위해 먼저 file()을 사용하여 stdin에 대한 연결을 열고, readLines()로 각 줄을 읽은 다음, 완료되면 연결을 닫습니다:
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)각 부분의 역할은 다음과 같습니다:
file("stdin", "r")— 읽기를 위해 표준 입력 스트림을 열고 이를con에 저장합니다.readLines(con, n = 1)— 해당 연결에서 정확히 한 줄을 읽습니다.suppressWarnings(...)— 이런 방식으로stdin에서 읽을 때 발생하는 무해한 경고를 숨깁니다.as.numeric(...)— 텍스트 입력을 숫자로 변환합니다.close(con)— 모든 입력을 읽은 후 연결을 닫습니다.
세 개의 값을 bill, tip_percent, people이라는 이름의 변수에 저장하세요.
입력을 읽은 후, 입력된 내용을 다음 형식으로 보여주는 확인 메시지를 표시하세요:
Bill: $[bill]
Tip: [tip_percent]%
People: [people]모든 출력에는 cat()을 사용하고 필요한 곳에 줄 바꿈 문자 \n을 포함하세요. 원치 않는 공백을 피하기 위해 각 cat() 호출에서 sep = ""를 사용하세요.
예를 들어, 입력값이 120, 18, 4인 경우 전체 출력은 다음과 같아야 합니다:
Welcome to the Bill Split Calculator!
Let's split your bill fairly.
Bill: $120
Tip: 18%
People: 4직접 해보기
# 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")