我正在制作一个非常基本的猜谜游戏,在游戏开始时生成随机数。问题是,如果我猜对了,数字保持不变。我在ALOT附近弄乱了我应该放置RNG的地方,但它要么不起作用,要么代码不会编译。
int all_positive3(int a[], size_t alen) {
if (alen == 0) return 1;
if (a[0] < 0) return 0;
int temp = a[0];
a[0] = -1;
while (a[--alen] >= 0);
a[0] = temp;
return alen == 0;
}
答案 0 :(得分:0)
只需使用:
r = round(random.uniform(1,10))
再次。这会将r
设置为uniform()
现在返回的任何内容。
甚至更好:改变这个:
r = round(random.uniform(1,10))
print (r)
def start():
global r
...
对此:
def start():
r = round(random.uniform(1,10))
print (r)
...
使用全球是不好的做法,对全球的最佳使用根本不是全球性的。如果你想在函数的每次调用中设置一个新的随机变量,只需将放在函数中。
我同意sascha:
再看一遍:这段代码有很多错误。我很高兴 强烈建议先通过基本的python课程!
答案 1 :(得分:-2)
我不知道python
,但解决方法是:
import random
import time
r = round(random.uniform(1,10))
print (r)
def start():
global r
n = int(input("Guess: "))
while (r != n):
if (r < n):
print("Too big")
time.sleep(.1)
start()
if (r > n):
print("Too small")
time.sleep(.1)
start()
if(r == n):
print("You win!")
r = round(random.uniform(1,10))
start()
start()