diff --git a/main.go b/main.go index 2499d53..83cf3db 100644 --- a/main.go +++ b/main.go @@ -3,16 +3,22 @@ package main import ( "fmt" "os" + "strconv" "github.com/wahyd4/mryum/calculator" ) -const ( - filePath = "./testx3.txt" - topNumber = 4 +var ( + filePath = getEnvWithDefault("INPUT", "./test3.txt") + topNumber = getEnvWithDefault("TOPX", "3") ) func main() { + topNumber, err := strconv.Atoi(topNumber) + if err != nil { + fmt.Println("TOPX must be a number") + } + topNumbers, err := calculator.CalculateLargestNumbers(filePath, topNumber) if err != nil { fmt.Println("Oops: " + err.Error()) @@ -20,3 +26,11 @@ func main() { } fmt.Printf("Top %d numbers are: %v", topNumber, topNumbers) } + +func getEnvWithDefault(key, defaultValue string) string { + value := os.Getenv(key) + if value == "" { + return defaultValue + } + return value +}