国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Go語言實踐案例之猜謎游戲| 青訓(xùn)營

這篇具有很好參考價值的文章主要介紹了Go語言實踐案例之猜謎游戲| 青訓(xùn)營。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

一、程序要實現(xiàn)效果:

二、思路分析:

三、具體代碼

四、可能存在的疑問


一、程序要實現(xiàn)效果:

1.程序首先生成一個0-100的隨機整數(shù)。

2.提示玩家進行猜測。

3.每次玩家需要輸入一個數(shù)字,程序?qū)嬖V玩家輸入的數(shù)字與生成的數(shù)字的大小關(guān)系,并且讓玩家再次猜測。

4.如果猜對了,則會告訴玩家勝利并退出程序。

二、思路分析:

  1. 由于要產(chǎn)生0-100的隨機整數(shù)(且每次運行程序產(chǎn)生的數(shù)字都不同),所以使用當(dāng)前的時間(UnixNano)作為種子來初始化隨機數(shù)生成器(rand)。
  2. 使用隨機數(shù)生成器生成一個在0到maxNum之間的隨機整數(shù),作為要猜測的秘密數(shù)字(secretNumber)。
  3. 提示用戶輸入他們的猜測。

  4. 創(chuàng)建一個從標準輸入(os.Stdin)讀取的緩沖讀取器(bufio.NewReader)。

  5. 進入一個無限循環(huán),直到用戶猜對秘密數(shù)字為止。

  6. 在每次循環(huán)中,首先嘗試從緩沖讀取器中讀取一行輸入,如果讀取過程中發(fā)生錯誤,則打印錯誤信息并跳過本次循環(huán)。

  7. 去除輸入字符串兩端的回車和換行符。

  8. 嘗試將輸入字符串轉(zhuǎn)換為整數(shù),如果轉(zhuǎn)換失?。摧斎氲牟皇钦麛?shù)),則打印錯誤信息并跳過本次循環(huán)。

  9. 如果轉(zhuǎn)換成功,打印用戶的猜測。

  10. 根據(jù)用戶的猜測和秘密數(shù)字的大小關(guān)系,給出相應(yīng)的提示。

  11. 如果用戶猜對了秘密數(shù)字,打印恭喜信息并跳出循環(huán)。

三、具體代碼

package main

import (
	"bufio"
	"fmt"
	"math/rand"
	"os"
	"strconv"
	"strings"
	"time"
)

func main() {
	maxNum := 100
	rand.Seed(time.Now().UnixNano())
	secretNumber := rand.Intn(maxNum)
	// fmt.Println("The secret number is ", secretNumber)

	fmt.Println("Please input your guess")
	reader := bufio.NewReader(os.Stdin)
	for {
		input, err := reader.ReadString('\n')
		if err != nil {
			fmt.Println("An error occured while reading input. Please try again", err)
			continue
		}
		input = strings.Trim(input, "\r\n")

		guess, err := strconv.Atoi(input)
		if err != nil {
			fmt.Println("Invalid input. Please enter an integer value")
			continue
		}
		fmt.Println("You guess is", guess)
		if guess > secretNumber {
			fmt.Println("Your guess is bigger than the secret number. Please try again")
		} else if guess < secretNumber {
			fmt.Println("Your guess is smaller than the secret number. Please try again")
		} else {
			fmt.Println("Correct, you Legend!")
			break
		}
	}
}

四、可能存在的疑問

1.去除字符串兩端回車和換行符是什么意思?

答:在讀取用戶輸入時,通常需要去除字符串兩端的回車和換行符。這是因為這些字符通常是由于用戶在終端或命令行中按下Enter鍵而產(chǎn)生的,而不是用戶實際輸入的內(nèi)容。因此,如果我們不去除它們,將導(dǎo)致程序無法正確解析用戶的輸入,并可能導(dǎo)致意外的行為或錯誤。

2.嘗試將輸入字符串轉(zhuǎn)換為整數(shù),如果轉(zhuǎn)換失?。摧斎氲牟皇钦麛?shù)),則打印錯誤信息并跳過本次循環(huán)。這段思路是什么意思?

答:在Go語言中,對于輸入的處理都是按照字符串進行的,比如我輸入97,其實是輸入數(shù)字字符“97”。文章來源地址http://www.zghlxwxcb.cn/news/detail-707361.html

到了這里,關(guān)于Go語言實踐案例之猜謎游戲| 青訓(xùn)營的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Go語言上手(三) | 青訓(xùn)營筆記

    高質(zhì)量: 各種邊界條件考慮完備 異常情況處理,穩(wěn)定性 易讀易維護 編程原則 簡單性 可讀性 生產(chǎn)力 例外:實現(xiàn)接口的方法不需要注釋 使用 gofmt (官方工具)自動格式化 代碼作用(適合公共符號) 代碼如何實現(xiàn) (適合注釋實現(xiàn)過程) 代碼實現(xiàn)的原因(適合解釋代碼的外部

    2023年04月23日
    瀏覽(24)
  • Go 語言進階與依賴管理 | 青訓(xùn)營

    Go 語言進階與依賴管理 | 青訓(xùn)營

    Powered by: NEFU AB-IN GO語言工程實踐課后作業(yè):實現(xiàn)思路、代碼以及路徑記錄 Go可以充分發(fā)揮多核優(yōu)勢,高效運行 Goroutine 是Go語言中的 協(xié)程 ,一種 輕量級的線程 ,由Go語言的運行時管理,可以實現(xiàn)高并發(fā)的程序設(shè)計,由于輕量級的特性,goroutine可以創(chuàng)建成千上萬個,而且消耗

    2024年02月11日
    瀏覽(21)
  • 走進 Go 語言基礎(chǔ)語法 | 青訓(xùn)營 (1)

    走進 Go 語言基礎(chǔ)語法 | 青訓(xùn)營 (1)

    Powered by: NEFU AB-IN Go 語言入門指南:基礎(chǔ)語法和常用特性解析 go.mod 這個文件里記錄了當(dāng)前項目里所有依賴包的 git 倉庫地址以及對應(yīng)的 版本號 ,來解決了包依賴管理的問題,后續(xù)在構(gòu)建編譯時,就會根據(jù)對應(yīng)的版本號去拉取依賴包。 注意, 如果當(dāng)前的項目是要給外部使用的

    2024年02月14日
    瀏覽(29)
  • Go 語言入門指南: 環(huán)境搭建、基礎(chǔ)語法和常用特性解析 | 青訓(xùn)營

    Go 語言入門指南: 環(huán)境搭建、基礎(chǔ)語法和常用特性解析 | 青訓(xùn)營

    Go 是一個開源的編程語言,它能讓構(gòu)造簡單、可靠且高效的軟件變得容易。 Go是從2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持開發(fā),后來還加入了Ian Lance Taylor, Russ Cox等人,并最終于2009年11月開源,在2012年早些時候發(fā)布了Go 1穩(wěn)定版本。現(xiàn)在Go的開發(fā)已經(jīng)是完全開放的,并且

    2024年02月14日
    瀏覽(22)
  • 【字節(jié)跳動青訓(xùn)營】后端筆記整理-1 | Go語言入門指南:基礎(chǔ)語法和常用特性解析

    【字節(jié)跳動青訓(xùn)營】后端筆記整理-1 | Go語言入門指南:基礎(chǔ)語法和常用特性解析

    **本人是第六屆字節(jié)跳動青訓(xùn)營(后端組)的成員。本文由博主本人整理自該營的日常學(xué)習(xí)實踐,首發(fā)于稀土掘金:??Go語言入門指南:基礎(chǔ)語法和常用特性解析 | 青訓(xùn)營 本文主要梳理自 第六屆字節(jié)跳動青訓(xùn)營(后端組)-Go語言原理與實踐第一節(jié)(王克純老師主講) 。同時

    2024年02月13日
    瀏覽(24)
  • 猜謎游戲、彩云詞典爬蟲、SOCKS5代理的 Go(Golang) 小實踐,附帶全代碼解釋

    猜謎游戲、彩云詞典爬蟲、SOCKS5代理的 Go(Golang) 小實踐,附帶全代碼解釋

    猜謎游戲在編程語言實踐都已經(jīng)和 HelloWord 程序成為必不可少的新手實踐環(huán)節(jié),畢竟,它能夠讓我們基本熟悉 for 循環(huán)、變量定義、打印、if else 語句等等的使用,當(dāng)我們基本熟悉該語言基礎(chǔ)之后,就要學(xué)會其優(yōu)勢方面的程序?qū)嵺`,比如 Golang 所具備的爬蟲及其并發(fā)優(yōu)勢。我們

    2024年02月05日
    瀏覽(25)
  • 【字節(jié)跳動青訓(xùn)營】后端筆記整理-4 | Go框架三件套之GORM的使用

    【字節(jié)跳動青訓(xùn)營】后端筆記整理-4 | Go框架三件套之GORM的使用

    **本人是第六屆字節(jié)跳動青訓(xùn)營(后端組)的成員。本文由博主本人整理自該營的日常學(xué)習(xí)實踐,首發(fā)于稀土掘金。 我的go開發(fā)環(huán)境: *本地IDE:GoLand 2023.1.2 *go:1.20.6 *MySQL:8.0 本文介紹Go框架三件套的使用。 Go 框架三件套通常指的是 GORM、Kitex 和 Hertz,它們分別是 Go 語言中數(shù)

    2024年02月10日
    瀏覽(32)
  • 猜謎游戲(Go實現(xiàn))

    解釋: 這段Go代碼是一個簡單的猜數(shù)字游戲。程序開始時會生成一個隨機的秘密數(shù)字,并提示玩家輸入猜測的數(shù)字。玩家每次輸入一個數(shù)字后,程序會告訴玩家這個數(shù)字是偏大還是偏小,直到玩家猜對為止。如果輸入非數(shù)字或者在讀取輸入時出現(xiàn)錯誤,程序會提示玩家重新輸

    2024年02月13日
    瀏覽(10)
  • Python基礎(chǔ)小案例:猜謎游戲

    本教程將演示用Python開發(fā)一個簡單的數(shù)字猜測游戲的過程。 我們正試圖開發(fā)一個游戲,從用戶那里獲取上限和下限,在這個范圍內(nèi)生成一個隨機數(shù),要求用戶猜測這個數(shù)字,并計算用戶用了多少條線索才猜對了。這個游戲?qū)⒅换贑LI。 我們的程序做的第一件事是接受用戶的

    2024年02月12日
    瀏覽(9)
  • 網(wǎng)站常見安全漏洞 | 青訓(xùn)營

    網(wǎng)站常見安全漏洞 | 青訓(xùn)營

    Powered by: NEFU AB-IN 網(wǎng)站常見安全漏洞-網(wǎng)站基本組成及漏洞定義 網(wǎng)站常見安全漏洞-服務(wù)端漏洞介紹 網(wǎng)站常見安全漏洞-客戶端漏洞介紹 網(wǎng)站常見安全漏洞-總結(jié)及強調(diào)網(wǎng)絡(luò)安全法 網(wǎng)關(guān) 在計算機網(wǎng)絡(luò)中指的是連接兩個不同網(wǎng)絡(luò)或協(xié)議的設(shè)備或系統(tǒng)。它的作用是將傳入的數(shù)據(jù)包從

    2024年02月10日
    瀏覽(16)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包