Python if语句hackerrank
以下是来自挑战的问题: 如果是奇数,则打印奇数Python if语句hackerrank,python,if-statement,Python,If Statement,以下是来自挑战的问题: 如果是奇数,则打印奇数 如果是偶数且在2到5的范围内,则打印不奇怪 如果为偶数且包含在6到20的范围内,则打印“怪异” 如果是偶数且大于20,则打印不奇怪 我的代码: if __name__ == '__main__': n = int(input().strip()) if (n%2==1): #print Weird for odd number print("Weird") else if(n%2==0 for n in
如果是偶数且在2到5的范围内,则打印不奇怪
如果为偶数且包含在6到20的范围内,则打印“怪异”
如果是偶数且大于20,则打印不奇怪 我的代码:
if __name__ == '__main__':
n = int(input().strip())
if (n%2==1): #print Weird for odd number
print("Weird")
else if(n%2==0 for n in range(6,21)): #to print Weird as output for numbers between 6 to 20
print("Weird")
else if(n%2==0 for n in range(2,6)): #to print No weird for even number between 2 to 5
print("Not Weird")
else if(n>20 and n%2==0): #to print Not Weird for even greater than 20
print("Not Weird")
我得到了24的错误输出。我并没有表现得很奇怪,而是作为输出变得很奇怪。您能告诉我哪里出错了吗?在for循环中,您将迭代器变量取为'n',并且输入也是'n',这是令人困惑和错误的
最重要的是,为什么要运行一个循环来检查一个数字是否在一个范围内 试试这个
N = int(input())
if(N%2!=0):
print("Weird")
elif(N%2==0):
if(N>=2 and N<=5):
print("Not Weird")
if(N>=6 and N<=20):
print("Weird")
if(N>20):
print("Not Weird")
N=int(输入())
如果(N%2!=0):
印刷品(“怪异”)
elif(N%2==0):
如果(N>=2,N=6,N20):
打印(“不奇怪”)
HackerRank确实有论坛部分。因此,如果你问这个问题,你会得到一个更好的答案。检查(n%2==0表示范围(6,21)内的n
。这不是为你的情况设置条件的正确方法。我通过将“for”替换为“and;”进行了检查。但需要理解为什么在此处使用for失败。我正在尝试使用for and range@Ahmed检查条件