实现一个程序,该程序从用户请求四个数字(整数或浮点数)。你的程序应该计算前三个数字的平均值,并将平均值与第四个数字进行比较。如果他们是平等的,你的程序应该打印“等于”#39;在屏幕上。
DateTime startDate = Sitecore.DateUtil.IsoDateToDateTime(Event["Start Date"]);
if(startDate.Month == DateTime.UtcNow.Month)
{
// ...
}
答案 0 :(得分:1)
你的例子中的Eval是多余的。解决方案:
from decimal import Decimal, InvalidOperation
def request_number(msg):
number = None
while number is None:
user_input = input(msg)
try:
number = Decimal(user_input)
except InvalidOperation:
pass
return number
n1 = request_number('Enter first number: ')
n2 = request_number('Enter second number: ')
n3 = request_number('Enter third number: ')
n4 = request_number('Enter fourth number: ')
if (n1 + n2 + n3) / 3 == n4:
print('Equal')
答案 1 :(得分:1)
无需使用eval
,接受输入并存储到变量中。
n1 = int(input('Enter first number: '))
n2 = int(input('Enter second number: '))
n3 = int(input('Enter third number: '))
n4 = int(input('Enter fourth number: '))
完成后,如果它们的平均值等于n4则打印。非常简单。
不要使用" "
,这会使它成为一个整体的字符串。
print 'equal: ' if (n4 == (n1 + n2 + n3) / 3) else 0
如果想以自己的方式执行此操作,请修复缩进。如下所示:
n= (n1 + n2 + n3 / 3)
# paranthesis isn't needed here, but it's ok to use
if n== n4:
print ('equal: ')
答案 2 :(得分:0)
你想要这个吗?
n1 = int(input('Enter first number: '))
n2 = int(input('Enter second number: '))
n3 = int(input('Enter third number: ')
n4 = int(input('Enter fourth number: ')
n = (n1 + n2 + n3) / 3
if n == n4:
print('equal: ')
答案 3 :(得分:0)
试试这个解决方案(Python3):
n1 = int(input('[Enter first number: ]'))
n2 = int(input('[Enter second number: ]'))
n3 = int(input('[Enter third number: ]'))
n4 = int(input('[Enter fourth number: ]'))
n = (n1 + n2 + n3) / 3
if n == n4:
print('Equal')
如果需要浮点值,可以使用 float 函数来转换输入值。我认为这比使用 int 更好。