/
main.go
68 lines (56 loc) · 1008 Bytes
/
main.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package main
import (
"flag"
"fmt"
"log"
"os"
"strconv"
"GoProjectEuler/euler"
)
var num string
var arg int
func init() {
if len(os.Args) < 2 {
log.Fatal("not enough arguments")
}
flag.StringVar(&num, "num", os.Args[1], "number")
i, err := strconv.Atoi(os.Args[2])
if err != nil {
log.Fatal(err)
}
flag.IntVar(&arg, "arg", i, "argument")
}
func main() {
Routes(num, arg)
}
// Routes returns a function
func Routes(s string, i int) {
switch s {
case "1":
fmt.Println(euler.Euler1(i))
case "2":
fmt.Println(euler.Euler2(i))
case "3":
fmt.Println(euler.Euler3(i))
case "4":
fmt.Println(euler.Euler4(i))
case "5":
fmt.Println(euler.Euler5(i))
case "6":
fmt.Println(euler.Euler6(i))
case "7":
fmt.Println(euler.Euler7(i))
case "8":
fmt.Println(euler.Euler8(i))
case "9":
fmt.Println(euler.Euler9(i))
case "10":
fmt.Println(euler.Euler10(i))
case "11":
euler.Euler11()
case "12":
fmt.Println(euler.Euler12(i))
default:
euler.FizzBuzzPop()
}
}