From 4e13ad8a1030a736db890dea828bd884aa114bbf Mon Sep 17 00:00:00 2001 From: sebastian Date: Wed, 4 Oct 2023 14:55:12 +0200 Subject: [PATCH] Section6.54 --- Section6/{main.go => 50.go} | 0 Section6/52.go | 21 +++++++++++++++++++++ Section6/54.go | 33 +++++++++++++++++++++++++++++++++ 3 files changed, 54 insertions(+) rename Section6/{main.go => 50.go} (100%) create mode 100644 Section6/52.go create mode 100644 Section6/54.go diff --git a/Section6/main.go b/Section6/50.go similarity index 100% rename from Section6/main.go rename to Section6/50.go diff --git a/Section6/52.go b/Section6/52.go new file mode 100644 index 0000000..b0ae9ce --- /dev/null +++ b/Section6/52.go @@ -0,0 +1,21 @@ +package main + +import ( + "fmt" + "os" + "strconv" +) + +func main() { + /* fmt.Println("os.Args", os.Args) + fmt.Println("Path:", os.Args[0]) + fmt.Println("1st argument:", os.Args[1]) + fmt.Println("2nd argument:", os.Args[2]) + fmt.Println("No if items inside os.Args:", len(os.Args)) */ + + var results, err = strconv.ParseFloat(os.Args[1], 64) + fmt.Println(results) + fmt.Printf("%T\n", os.Args[1]) + fmt.Printf("%T\n", results) + _ = err +} diff --git a/Section6/54.go b/Section6/54.go new file mode 100644 index 0000000..487c416 --- /dev/null +++ b/Section6/54.go @@ -0,0 +1,33 @@ +package main + +import ( + "fmt" + "os" + "strconv" +) + +func main() { + i, err := strconv.Atoi("45") + + if err != nil { + fmt.Println(err) + } else { + fmt.Println(i) + } + + if i, err := strconv.Atoi("20X"); err == nil { //20X can not be converted to int + fmt.Println("No error, i is:", i) + } else { + fmt.Println(err) + } + + if args := os.Args; len(args) != 2 { + fmt.Println("One argument is required") + } else if km, err := strconv.Atoi(args[1]); err != nil { + fmt.Println("The argument must be an integer! Error:", err) + } else { + fmt.Printf("%d km in miles is %v\n", km, float64(km)*0.621) + fmt.Printf("%T\n", args[1]) + } + +}