我目前正在通過John English'「Ada 95:面向對象編程的工藝」。我在task 5.1:Ada:如何定義一個隨機常量?
編寫一個程序來玩簡單的猜謎遊戲。定義一個整數類型,其取值範圍爲1到1000,並將一個祕密值聲明爲這種類型的常量,然後爲用戶提供十次猜測其值的機會。
我寫的(爲存根)現在
procedure je_5_1 is
type guess_value is new Integer range 1..1000;
secret : guess_value;
package random_guess_value is new Ada.Numerics.Discrete_Random(guess_value);
Gen : random_guess_value.Generator;
begin
random_guess_value.Reset(Gen);
secret := random_guess_value.Random(Gen);
end je_5_1;
這顯然沒有實現的要求declare a secret value as a constant
。但由於必須先撥打Reset(Gen)
才能將隨機生成的值分配給secret
,因此我無法在begin
之前將變量secret
定義爲常量。
是否仍可以將secret
定義爲隨機常數?
是的,工作!但是,不(完整)練習明確表示要使用RNG。我只是截斷了文字,專注於我的主要問題。謝謝! – alex