40 lines
780 B
Go
40 lines
780 B
Go
// For more tutorials: https://blog.learngoprogramming.com
|
|
//
|
|
// Copyright © 2018 Inanc Gumus
|
|
// Learn Go Programming Course
|
|
// License: https://creativecommons.org/licenses/by-nc-sa/4.0/
|
|
//
|
|
|
|
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
"strings"
|
|
)
|
|
|
|
func main() {
|
|
args := os.Args
|
|
|
|
if len(args) != 2 || len(args[1]) != 1 {
|
|
fmt.Println("Give me a letter")
|
|
return
|
|
}
|
|
|
|
s := args[1]
|
|
if strings.IndexAny(s, "aeiou") != -1 {
|
|
fmt.Printf("%q is a vowel.\n", s)
|
|
} else if s == "w" || s == "y" {
|
|
fmt.Printf("%q is sometimes a vowel, sometimes not.\n", s)
|
|
} else {
|
|
fmt.Printf("%q is a consonant.\n", s)
|
|
}
|
|
|
|
// Notice that:
|
|
//
|
|
// I didn't use IndexAny for the else if above.
|
|
//
|
|
// It's because, calling a function is a costly operation.
|
|
// And, this way, the code is simpler.
|
|
}
|