如何使用while循环在python中创建乘法表?
这是我的代码,它输出一个乘法表,但它不是我想要的如何使用while循环在python中创建乘法表?,python,python-3.x,while-loop,Python,Python 3.x,While Loop,这是我的代码,它输出一个乘法表,但它不是我想要的 num = int(input("Multiplication using value? : ")) while num <= 10: i = 1 while i <= num: product = num*i print(num, " * ", i, " = ", product, "\n") i = i + 1 print("\n") num =
num = int(input("Multiplication using value? : "))
while num <= 10:
i = 1
while i <= num:
product = num*i
print(num, " * ", i, " = ", product, "\n")
i = i + 1
print("\n")
num = num + 1
这是我第一次学习Python,我可以在网上找到任何帮助,请帮助您有很多逻辑错误。请查看此更新代码:
num = int(input("Multiplication using value : "))
i=1 #you haven't initialized this variable
while i <=num:
j=1
while j <= num:
product = i*j #updated
print(i, " * ", j, " = ", product, "\n") #updated
j = j + 1
print("\n")
i = i + 1
你有很多逻辑错误。请查看此更新代码:
num = int(input("Multiplication using value : "))
i=1 #you haven't initialized this variable
while i <=num:
j=1
while j <= num:
product = i*j #updated
print(i, " * ", j, " = ", product, "\n") #updated
j = j + 1
print("\n")
i = i + 1
即使您发布的代码根本不是pythonic(它非常接近于用C语言编写的代码),它也几乎可以工作:只需最少的修改,就可以按如下方式进行修复,以提供预期的输出:
numInput = int(input("Multiplication using value? : "))
num = 1
while num <= numInput:
i = 1
while i <= numInput:
product = num*i
print(num, " * ", i, " = ", product)
i = i + 1
print("") # no need to add explicit newline character because it is automatically added
num = num + 1
即使您发布的代码根本不是pythonic(它非常接近于用C语言编写的代码),它也几乎可以工作:只需最少的修改,就可以按如下方式进行修复,以提供预期的输出:
numInput = int(input("Multiplication using value? : "))
num = 1
while num <= numInput:
i = 1
while i <= numInput:
product = num*i
print(num, " * ", i, " = ", product)
i = i + 1
print("") # no need to add explicit newline character because it is automatically added
num = num + 1
对于这个问题,它更容易用于循环
num = int(input("Multiplication using value? : "))
for left in range(1,num+1): # 1st loop
for right in range(1,num+1): # 2nd loop (nested)
print(left, " * ", right, " = ", left * right)
print() # newline
要理解这个问题,请查看两个被乘数:左被乘数和右被乘数
左被乘数从(1-->num)开始,因此是第一个for循环
然后,对于左被乘数的每个值,右被乘数从(1-->num)开始,因此第二个循环嵌套在第一个循环中。对于这个问题,更容易用于循环
num = int(input("Multiplication using value? : "))
for left in range(1,num+1): # 1st loop
for right in range(1,num+1): # 2nd loop (nested)
print(left, " * ", right, " = ", left * right)
print() # newline
要理解这个问题,请查看两个被乘数:左被乘数和右被乘数
左被乘数从(1-->num)开始,因此是第一个for循环
然后,对于左被乘数的每个值,右被乘数从(1-->num)开始,因此第二个循环嵌套在第一个循环中。你手上有一个无限循环的原因是因为你每次运行时都将
i
与num
进行比较,同时也会增加num
。如果您确保i
始终是,那么您手上有一个无限循环的原因是您将i
与num
进行比较,同时每次跑步时都会增加num
。如果在Python 3.6+中确保i
始终是,则可以将f字符串与嵌套的一起用于循环:
num = int(input("Multiplication using value? : "))
for i in range(1, num+1):
for j in range(1, num+1):
print(f'{i} * {j} = {i*j}')
Multiplication using value? : 3
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
在Python 3.6+中,可以将f字符串与嵌套的for
循环一起使用:
num = int(input("Multiplication using value? : "))
for i in range(1, num+1):
for j in range(1, num+1):
print(f'{i} * {j} = {i*j}')
Multiplication using value? : 3
1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
2 * 1 = 2
2 * 2 = 4
2 * 3 = 6
3 * 1 = 3
3 * 2 = 6
3 * 3 = 9
乘法表1至10
for x in range(1,11):
for y in range(1,11):
print(x*y, end='\t')
print()
print()
乘法表1至10
for x in range(1,11):
for y in range(1,11):
print(x*y, end='\t')
print()
print()
输入任意数字,以在10次迭代中获得正常的多表(命名法)
num = int(input("Input a number: "))
# use for loop to iterate 10 times
for i in range(1,11):
print(num,'x',i,'=',num*i)
输入任意数字,以在10次迭代中获得正常的多表(命名法)
num = int(input("Input a number: "))
# use for loop to iterate 10 times
for i in range(1,11):
print(num,'x',i,'=',num*i)
num=int(输入('输入您想要乘法表的数字:'))
i=1
而inum=int(输入('输入您想要乘法表的数字:'))
i=1
while i使用while
循环创建乘法表如下所示:
b = int(input('Enter the number of the multiplicaction table : '))
print('The multiplication table of '+ str(b) + 'is : ')
a=0
while a<=11:
a=a+1
c= a*b
print( str(b)+' x '+str(a)+' ='+str(c))
print('done!!!!')
b=int(输入('输入被乘数表的编号:'))
print(“+str(b)+”的乘法表为:”)
a=0
而使用while
循环创建乘法表如下所示:
b = int(input('Enter the number of the multiplicaction table : '))
print('The multiplication table of '+ str(b) + 'is : ')
a=0
while a<=11:
a=a+1
c= a*b
print( str(b)+' x '+str(a)+' ='+str(c))
print('done!!!!')
b=int(输入('输入被乘数表的编号:'))
print(“+str(b)+”的乘法表为:”)
a=0
在python中使用while循环的乘法表
num = int(input("enter the number= "))
i = 1
while i<=10:
print(num, "X", i, "=", num * i)
i = i+1
python中使用while循环的乘法表
num = int(input("enter the number= "))
i = 1
while i<=10:
print(num, "X", i, "=", num * i)
i = i+1
它能做什么?这不是你想要的?@khelwood它能打印10张桌子,但是,我希望它将表格打印到示例中给出的用户输入。如果您在问题中包括您的实际输出以及您的预期输出,它将帮助人们理解您的问题。它的功能不是您想要的吗?@khelwood it将表格打印到10,但是,我希望它将表格打印到示例中给出的用户输入。如果您在问题中包括实际输出以及预期输出,它将帮助人们理解您的问题。问题是“如何使用while
循环”,同时您根据for
提出答案。如果您认为使用while
循环解决问题是不可能的,您应该解释原理,否则您应该针对循环提出答案。如果是这种情况,您可以解释为什么wsingwhile
循环可能效率低下。问题是“如何使用while
循环”,同时您可以根据为提出答案。如果您认为使用while
循环解决问题是不可能的,您应该解释原理,否则您应该针对循环提出答案。如果是这种情况,您可以解释为什么wsingwhile
循环可能是低效的。例如,供将来参考:建议“在末尾加上break只会给出所需的数字表”;这篇编辑的本意是针对这篇文章的作者,作为编辑毫无意义。它应该是作为一个评论或回答来写的。作为将来的参考:建议的“在末尾加上中断只会给出所需的数字表”;这篇编辑的本意是针对这篇文章的作者,作为编辑毫无意义。它应该写为一个评论或回答。欢迎使用堆栈溢出!虽然这段代码可以解决这个问题,但如何以及为什么解决这个问题将真正有助于提高您的帖子质量,并可能导致更多的投票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。欢迎使用堆栈溢出!虽然这段代码可以解决这个问题,但如何以及为什么解决这个问题将真正有助于提高您的帖子质量,并可能导致更多的投票。请记住,你是在将来回答读者的问题,而不仅仅是现在提问的人。请在回答中添加解释,并说明适用的限制和假设。