a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > Golang > 正文

Go語言計算指定年月天數的方法

2020-04-01 19:18:23
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Go語言計算指定年月天數的方法,實例分析了Go語言操作時間的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
 

本文實例講述了Go語言計算指定年月天數的方法。分享給大家供大家參考。具體實現方法如下:

 

復制代碼代碼如下:
package main
import (
    "fmt"
    "bufio"
    "os"
    "regexp"
    "strconv"
)
func main() {
    year := input("year", "^[0-9]{1}[0-9]{3}$")
    month := input("month", "^(0{1}[0-9]{1}|1{1}[0-2]{1})$")
    count(year, month)
    fmt.Println("Press Enter button to continue ...")
    reader := bufio.NewReader(os.Stdin)
    lastInput, _, err := reader.ReadRune()
    if err != nil {
        fmt.Fprintln(os.Stderr, "Occur error when input (last) '", lastInput, "':", err)
    }
    return
}
func count(year int, month int) (days int) {
    if month != 2 {
        if month == 4 || month == 6 || month == 9 || month == 11 {
            days = 30
 
        } else {
            days = 31
            fmt.Fprintln(os.Stdout, "The month has 31 days");
        }
    } else {
        if (((year % 4) == 0 && (year % 100) != 0) || (year % 400) == 0) {
            days = 29
        } else {
            days = 28
        }
    }
    fmt.Fprintf(os.Stdout, "The %d-%d has %d days./n", year, month, days)
    return
}
func input(name string, regexpText string) (number int) {
    var validNumber = false
    for !validNumber {
        fmt.Println("Please input a", name, ": ")
        reader := bufio.NewReader(os.Stdin)
        inputBytes, _, err := reader.ReadLine()
        if err != nil {
            fmt.Fprintln(os.Stderr, "Occur error when input", name, ":", err)
            continue
        }
        inputText := string(inputBytes)
        validNumber, err = regexp.MatchString(regexpText, inputText)
        if err != nil {
            fmt.Fprintln(os.Stderr, "Occur error when match", name, "(", inputText, "):",err)
            continue
        }
        if validNumber {
            number, err = strconv.Atoi(inputText)
            if err != nil {
                fmt.Fprintln(os.Stderr, "Occur error when convert", name, "(", inputText, "):", err)
                continue
            }
        } else {
            fmt.Fprintln(os.Stdout, "The", name, "(", inputText, ") does not have the correct format!")
        }
    }
    fmt.Println("The input", name, ": ", number)
    return
}

 

希望本文所述對大家的Go語言程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成人看片网 | 欧美亚洲一 | 国产第6页| 欧美一级网址 | 狠狠躁夜夜躁人人爽天天高潮 | 国产99久久久久久免费看农村 | 一色一黄视频 | 国产精品毛片无码 | 91精品自产拍老师在线观看 | 国产区视频在线观看 | 一级黄色国产 | 日本视频网 | 青青草视频免费观看 | 国产视频一区二区在线 | 成人精品鲁一区一区二区 | 最新av中文字幕 | 欧美成人在线免费 | 成人午夜精品一区二区三区 | 在线观看黄av| 久久久久久久91 | 久久综合狠狠综合久久 | 国产高清一区二区 | 99久久精品毛片免费 | 中文字幕精品三级久久久 | 日韩美香港a一级毛片免费 欧美一极视频 | 亚洲午夜精品一区二区三区 | 久久久久久国产精品 | 欧美日本韩国一区二区 | 在线视频一区二区三区 | 日韩精品视频在线观看免费 | 国产精品视频 – 无名网 | 欧美视频亚洲视频 | 欧美日韩黄色一级片 | 在线视频偷国产精品 | 欧美日韩电影一区 | 国产在线一区二区 | 污视频在线观看免费 | 精品视频一区二区三区 | 99精彩视频| av免费网站| 中文字幕不卡av |