// Copyright © 2018 Inanc Gumus // Learn Go Programming Course // License: https://creativecommons.org/licenses/by-nc-sa/4.0/ // // For more tutorials : https://learngoprogramming.com // In-person training : https://www.linkedin.com/in/inancgumus/ // Follow me on twitter: https://twitter.com/inancgumus package main import ( "fmt" "os" "strconv" ) func main() { args := os.Args if len(args) != 2 { fmt.Println("Give me the size of the table") return } size, err := strconv.Atoi(args[1]) if err != nil || size <= 0 { fmt.Println("Wrong size") return } // print the header fmt.Printf("%5s", "X") for i := 0; i <= size; i++ { fmt.Printf("%5d", i) } fmt.Println() for i := 0; i <= size; i++ { // print the vertical header fmt.Printf("%5d", i) // print the cells for j := 0; j <= size; j++ { fmt.Printf("%5d", i*j) } fmt.Println() } }