您好,登錄后才能下訂單哦!
小編給大家分享一下linux中如何用Bash實現猜數字,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
Bash 是大多數 Linux 系統的標準 shell。除了提供豐富的命令行用戶界面外,Bash 還以腳本的形式支持完整的編程語言。
如果你對 Bash 不熟悉,我推薦你看這些介紹:
什么是 Bash?。
開始使用 Bash 編程
系統管理員的 Bash 腳本入門
如何在 Bash 中編寫函數
閱讀更多關于 Bash 的信息
你可以通過編寫一個 Bash 版本的“猜數字”游戲來探索它。這是我的實現:
#!/bin/bash number=$(( $RANDOM % 100 + 1 )) echo "Guess a number between 1 and 100" guess=0 while [ "0$guess" -ne $number ] ; do read guess [ "0$guess" -lt $number ] && echo "Too low" [ "0$guess" -gt $number ] && echo "Too high"done echo "That's right!"exit 0
腳本中的第一行,#!/bin/bash
告訴 Linux 使用 Bash shell 來運行這個腳本。每個腳本都以 #!
字符對(LCTT 譯注:釋伴)開始,這表示它是一個 shell 腳本。緊跟在#!
后面的是要運行的 shell。在本例中,/bin/bash
是指 Bash shell。
要給一個變量賦值,在變量名后面列出 =
號。例如,語句 guess=0
給 guess
變量分配一個零值。
你也可以使用 read
語句提示用戶輸入一個值。如果你寫了 read guess
語句,Bash 會等待用戶輸入一些文本,然后把這個值存儲在 guess
變量中。
要引用一個變量的值,在變量名前使用 $
。所以, 在 guess
變量中存儲了一個值后, 你可以使用 $guess
來檢索它。
你可以使用任何你喜歡的變量名稱,但是 Bash 為自己保留了一些特殊的變量名稱。一個特殊的變量是 RANDOM
,每次引用它都會產生一個很大的隨機數。
如果你想在存儲一個值的同時執行一個操作,你需要用特殊的括號把語句括起來。這將告訴 Bash 先執行該語句,而 =
則將結果值存儲在變量中。要評估一個數學表達式,使用 $(())
圍在你的語句上。雙括號表示一個算術表達式。在我的例子中,number=$(( $RANDOM % 100 + 1 ))
評估表達式 $RANDOM % 100 + 1
,然后將值存儲在 number
變量中。
標準的算術運算符,如 +
(加)、-
(減)、*
(乘)、/
(除)和 %
(模)都適用。
這意味著語句 number=$(( $RANDOM % 100 + 1 ))
產生一個 1 到 100 之間的隨機數。模數運算符(%
)返回兩個數相除后的余數。在這種情況下,Bash 將一個隨機數除以 100,剩下的余數范圍是 0 到 99,通過在這個值上加 1,你可以得到一個介于 1 和 100 之間的隨機數。
Bash 支持像循環這樣的條件表達式和流程控制。在“猜數字”的游戲中,只要 guess
中的值不等于 number
,Bash 就會繼續循環。如果猜的數小于隨機數,Bash 就會打印“太低”,如果猜的數大于數字,Bash 就會打印“太高”。
現在你已經寫好了你的 Bash 腳本,你可以運行它來玩“猜數字”游戲。一直猜,直到你找到正確的數字:
Guess a number between 1 and 10050Too high30Too high20Too high10Too low15Too high13Too low14That's right!
每次運行這個腳本,Bash 都會隨機選擇一個不同的數字。
這個“猜數字”游戲是學習新的編程語言時的一個很好的入門程序,因為它以一種很直接的方式鍛煉了幾個常見的編程概念。通過在不同的編程語言中實現這個簡單的游戲,你可以展示一些核心概念,并比較每種語言的細節。
以上是“linux中如何用Bash實現猜數字”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。