이번 편의 목표: 실행할 때 제목과 연체 일수를 인자로 받아 연체료를 출력합니다.
os.Args는 프로그램 인자의 슬라이스입니다. 0번은 프로그램 이름이고, 그 다음부터가 사용자가 넘긴 값입니다. go run . 생각나무 3 에서 제목은 Args[1], 일수는 Args[2]입니다.
package main
import (
"fmt"
"os"
"strconv"
)
func main() {
if len(os.Args) < 3 {
fmt.Println("사용법: go run . 제목 연체일수")
return
}
title := os.Args[1]
days, err := strconv.Atoi(os.Args[2])
if err != nil || days < 0 {
fmt.Println("연체일수는 0 이상의 정수입니다")
return
}
fee := 0
if days > 0 {
fee = days * 100
}
fmt.Printf("%s %d일 %d원\n", title, days, fee)
}go run . 생각나무 3
출력은 생각나무 3일 300원입니다. 인자가 부족하면 사용법만 출력하고 계산하지 않습니다. 일수가 정수가 아니거나 음수이면 연체일수는 0 이상의 정수입니다. 를 출력합니다. 0일은 정상으로 보고 0원입니다.
직접 해 보기
go run . 도서관 2 를 실행해 도서관 2일 200원이 나오는지 확인하세요.
해설
하루 100원이고 2일이므로 200원입니다. 제목은 Args[1] 그대로 출력됩니다.
COMMENTS
댓글 0
이 글에 대한 의견이나 질문을 남겨 주세요.
댓글은 구글이나 카카오로 시작한 뒤에 남길 수 있습니다.
등록된 댓글이 없습니다.