成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

通過編寫“猜數字”游戲來學習 Ada 編程語言

開發
這個 "猜數字 "游戲是學習新編程語言的一個很好的入門程序,因為它以一種相當直接的方式鍛煉了幾個常見的編程概念

當你想 ??學習一種新的編程語言?? 時,把注意力放在編程語言的共同點上是很好的:

  • 變量
  • 表達式
  • 語句

這些概念是大多數編程語言的基礎。一旦你理解了它們,你就可以開始琢磨其他的東西了。因為編程語言通常有相似之處,一旦你知道一種語言,你就可以通過了解其差異來學習另一種語言的基礎知識。

學習新語言的一個好方法是用一個標準程序進行練習。這使你能夠專注于語言,而不是程序的邏輯。在這個系列文章中,我使用了一個“猜數字”的程序,在這個程序中,計算機在 1 到 100 之間挑選一個數字,并要求你猜出來。程序循環進行,直到你猜對數字為止。

這個程序鍛煉了編程語言中的幾個概念:

  • 變量
  • 輸入
  • 輸出
  • 條件判斷
  • 循環

這是一個學習新的編程語言的很好的實踐實驗。

安裝 Ada

??Ada 編程語言?? 是一種獨特的、高度結構化的語言,有專門一群開發者使用它。Ada 的工具鏈是 GNU Ada 開發環境,多被稱為 GNAT。

你可以使用你的發行版的包管理器在 Linux 上安裝 GNAT。在 Fedora、CentOS 或類似系統上:

$ sudo dnf install gcc-gnat

在 Debian、Linux Mint 及衍生版上:

$ sudo apt install gnat

在 macOS 和 Windows 上,你可以從 ??Adacore 網站?? 下載一個安裝程序(從下拉菜單中選擇你的平臺)。

在 Ada 中猜數字

創建一個名為 ??game.adb?? 的文件。

這個程序使用的兩個內置 Ada 庫:??Text_IO??? 和 ??Numerics.Discrete_Random??:

with Ada.Text_IO;use Ada.Text_IO;with Ada.Numerics.Discrete_Random;

過程頭

過程procedure

注意,??discrete_random?? 是專門針對特定范圍的。在這里,允許數字范圍:

procedure Game is   type randRange is range 1..100;   package Rand_Int is new ada.numerics.discrete_random(randRange);   use Rand_Int;   gen : Generator;   num : randRange;   incorrect: Boolean := True;   guess: randRange;

過程邏輯

該邏輯從 ??reset(gen)??? 開始。這將初始化隨機數發生器,確保每次運行程序時,用 ??random(gen)?? 初始化的數字將是不同的。

下一步是運行循環:

  • 輸出猜測的指令
  • 讀取該行
  • 將其轉換為??randRange??。
  • 將其與數字進行核對

如果數字匹配,??incorrect??? 被設置為 ??False??,導致循環的下一次迭代退出。

最后,程序在退出前會打印出對猜測正確性的確認:

begin   reset(gen);   num := random(gen);   while incorrect loop       Put_Line ("Guess a number between 1 and 100");       declare          guess_str : String := Get_Line (Current_Input);       begin          guess := randRange'Value (guess_str);       end;       if guess < num then           Put_line("Too low");       elsif guess > num then           Put_line("Too high");       else           incorrect := False;       end if;   end loop;   Put_line("That's right");end Game;

編譯程序

編譯 Ada 程序的最簡單方法是使用 ??gnatmake??:

$ gnatmake game.adbaarch64-linux-gnu-gcc-10 -c game.adbaarch64-linux-gnu-gnatbind-10 -x game.aliaarch64-linux-gnu-gnatlink-10 game.ali

這將生成一個名為 ??game?? 的二進制文件。

運行程序

程序的每次運行都會有一些不同。這是一個例子:

$ ./game Guess a number between 1 and 10050Too lowGuess a number between 1 and 10075Too lowGuess a number between 1 and 10082Too lowGuess a number between 1 and 10090Too highGuess a number between 1 and 10087Too lowGuess a number between 1 and 10088That's right

學習 Ada

這個“猜數字”游戲是學習新的編程語言的一個很好的入門程序,因為它以一種相當直接的方式鍛煉了幾個常見的編程概念。通過在不同的編程語言中實現這個簡單的游戲,你可以展示這些語言的一些核心概念,并比較它們的細節。

你有喜歡的編程語言嗎?你會如何用它來寫“猜數字”的游戲?請關注本系列文章,看看你可能感興趣的其他編程語言的例子吧!

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2022-06-03 16:59:13

編程語言Awk

2021-01-12 06:42:50

Lua腳本語言編程語言

2023-02-23 14:30:27

游戲Tcl

2023-02-13 08:26:28

猜數字Basic

2021-10-04 18:49:46

Fortran 77語言猜數字

2021-04-13 06:35:13

Elixir語言編程語言軟件開發

2021-01-03 16:30:34

Rust編程語言

2021-01-19 09:35:36

Python視頻游戲編程語言

2021-01-01 19:30:21

Python編程語言

2021-01-05 12:38:53

C++編程語言軟件開發

2020-12-28 06:29:31

Bash互動游戲Linux

2021-01-14 08:55:20

C語言編程

2018-03-29 08:30:48

Linux命令BASH

2019-09-23 09:11:02

Python文本編輯器操作系統

2014-02-24 14:34:49

2019-10-08 15:27:18

掃雷BashLinux

2015-09-29 09:38:50

Java程序猜大小

2020-12-09 11:42:18

WiFi IoT鴻蒙開發

2019-09-11 14:16:34

編程語言技術人生第一份工作

2021-04-22 09:57:37

Random方法游戲
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产专区在线 | 欧美色综合一区二区三区 | 日韩成人一区二区 | 日韩不卡在线观看 | 国产在线麻豆精品入口 | 日韩网站在线观看 | 日韩视频一区二区三区 | 日韩高清一区 | 免费观看黄色片视频 | 成人毛片视频在线播放 | 亚洲三级在线 | 一区免费观看 | 成人精品一区二区三区中文字幕 | 一区二区三区在线看 | 精品自拍视频在线观看 | 欧美a区 | 精品国产精品国产偷麻豆 | 日本中文字幕在线视频 | 国产精品高潮呻吟久久久久 | 在线免费观看a级片 | 午夜影院免费体验区 | 玖玖视频免费 | 亚洲视频免费在线观看 | 国产男女视频网站 | 日韩免费福利视频 | 精品国产伦一区二区三区观看说明 | 一级欧美一级日韩片 | 国产高清一二三区 | 日韩一区二区三区在线 | 久久97精品| av男人的天堂在线 | 日本h片在线观看 | 看真人视频一级毛片 | 免费在线观看一区二区三区 | 在线播放国产一区二区三区 | 日韩高清一区 | 亚洲精选一区二区 | 欧美视频一区二区三区 | 男女啪啪高潮无遮挡免费动态 | 久在线| 国产精品一区三区 |