我只是一个学习代码的初学者,根本没有任何先验知识。
我在下面编写了一个简单的代码,以应用我的定义函数和for循环的知识。据推测,该代码将允许用户根据其输入获得任意数字。但是,正如您将在下面看到的,我总是得到0的结果。
老实说,我不确定我哪里出错了,并且被告知我的代码不是最易读的代码。因此,我想寻求您的帮助,以启发我这是怎么回事以及如何使它变得更好。
非常感谢你们!
scanf("%f",&num1);
scanf("%f",&num2);
scanf("%f",&num3);
num1 = floor(1000*(num1/999))/1000;
num2 = floor(1000*(num2/999))/1000;
num3 = floor(1000*(num3/999))/1000;
printf("%.3f...\n",num1);
printf("%.3f...\n",num2);
printf("%.3f...\n",num3);
输入基本号码:4
输入电源:4
0
流程结束,退出代码为0
答案 0 :(得分:0)
看起来就是您想要的:
yearCount += 1; print(f'Year {yearCount}:')
示例:
def to_power(base, power):
result = 1
for i in range(power):
result = result * base
return int(result)
答案 1 :(得分:0)
你很近。这是您代码的有效版本。
您的代码存在问题
range(power)
将生成从0
到power-1
的值。您使用base
遍历这些值,并且由于使用result = result * base
,所以要乘以0,这就是得到0的原因解决方案:
power
次,并不断将base
乘以那么多(power
)次。由于此处未使用循环索引,因此我在_
for _ in range(power):
def to_power(base, power):
result = 1
for _ in range(power):
result = result * base
return int(result)
print(to_power(int(input("Enter Base Number: ")), int(input("Enter Power: "))))
# Enter Base Number: 4
# Enter Power: 4
# 256