misaka10928 发表于 2020-5-11 14:46:45

学无止境

心弦。 发表于 2020-5-11 15:23:39

楼主加油!

Herry2020 发表于 2020-5-11 16:08:20

# --coding:GBK--
def fan():
        for i in range(9,0,-1):
                for j in range(9,0,-1):
                        if j>i:
                                continue
                        else:
                                print(str(i) + "*" + str(j) + " = " + str(i*j), end="")
                print("\n")

def zheng():
        for i in range(1,10, 1):
                for j in range(1,10,1):
                        if j>i:
                                continue
                        else:
                                print(str(i) + "*" + str(j) + " = " + str(i*j), end="")
                print("\n")
               

print("=========================我会帮您输出乘法口诀表==========================\n")
shuru = input("您要正向还是反向(正/反):")
while True:
        if shuru == "正":
                zheng()
                break
        elif shuru == "反":
                fan()
                break
        else:
                print("您的输入有误!\n请重新输入\n")
                shuru = input("您要正向还是反向(正/反):")

有谁懂 发表于 2020-5-12 22:48:19

本帖最后由 有谁懂 于 2020-5-12 22:50 编辑

打印正的那段考虑了好久也打印不出来,最后参考了大佬们的思路{:10_250:}
print('==========我会帮您输出乘法口诀表==========')

a =

while 1:
    temp = str(input('您要正向还是反向(正/反):'))
    if temp == '反':
      for i in a[::-1]:
            for j in a:
                n = i * j
                print('%d * %d = %d' % (i, j, n), end=' ')
                if j == 1:
                  print('\n')
      break
    elif temp == '正':
      for i in a:
            for j in a[:i]:
                n = i * j
                print('%d * %d = %d' % (i, j, n), end=' ')
                if i == j:
                  print('\n')
      break
    else:
      print('''您的输入有误!
请重新输入''')

xiaosi4081 发表于 2020-5-14 10:51:33

占楼

七夕七夕 发表于 2020-5-14 14:45:55

谢谢分享

ForPorsche 发表于 2020-5-20 14:55:22

print('==========我会帮您输出乘法口诀表==========')
while True:
    Multiplication = input('您要正向还是反向(正/反):')
    if Multiplication == '正':
      for i in range(1, 10):
            for j in range(1, i + 1):
                print('%d * %d = %-4d' % (i, j, i * j), end='')
            print()
      break
    elif Multiplication == '反':
      for i in range(9, 0, -1):
            for j in range(i, 0, -1):
                print('%d * %d = %-4d' % (i, j, i * j), end='')
            print()
      break
    else:
      print('您的输入有误!\n请重新输入')

aironeng 发表于 2020-12-10 08:48:54

学习

sun8061 发表于 2020-12-10 10:30:20

学习乘法表的正反向输出

呓语荭尘 发表于 2021-7-17 16:08:42

def multi(para):
    if para=='正':
      i=2
      while i<10:
            for sec in range(1,i):
                print('{}*{}={}'.format(i,sec,1*sec),end=" ")
            i+=1
            print('\r')
    elif para=='反':
      i=9
      while i>0:
            for sec in range(i,0,-1):
                print('{}*{}={}'.format(i,sec,i*sec),end=" ")
            i-=1
            print('\r')
    else:
      print("您的输入有误,请重新输入")
while True:
    par = input('您要正向还是反向(正/反):')
    multi(par)

hao9i 发表于 2021-7-20 16:26:36

看看呢

深谙流年 发表于 2021-7-20 20:34:16

{:10_256:}

阿奇_o 发表于 2021-7-20 21:30:40

永恒的蓝色梦想 发表于 2020-5-5 07:20
提供一种思路
这也用到for循环了

秀儿,是你吗

{:10_250:}

阿奇_o 发表于 2021-7-20 21:39:05

看到大家都这么优秀,我也秀一下吧,一行实现。。?
>>> print('\n'.join([ '\t'.join(['{}*{}={}'.format(j, i, j*i) for j in range(1, i+1)]) for i in range(1, 10) ]))

1*1=1
1*2=2        2*2=4
1*3=3        2*3=6        3*3=9
1*4=4        2*4=8        3*4=12        4*4=16
1*5=5        2*5=10        3*5=15        4*5=20        5*5=25
1*6=6        2*6=12        3*6=18        4*6=24        5*6=30        6*6=36
1*7=7        2*7=14        3*7=21        4*7=28        5*7=35        6*7=42        7*7=49
1*8=8        2*8=16        3*8=24        4*8=32        5*8=40        6*8=48        7*8=56        8*8=64
1*9=9        2*9=18        3*9=27        4*9=36        5*9=45        6*9=54        7*9=63        8*9=72        9*9=81
>>> print('\n'.join([ '\t'.join(['{}*{}={}'.format(j, i, j*i) for j in range(1, i+1)]) for i in range(1, 10) ][::-1]))
1*9=9        2*9=18        3*9=27        4*9=36        5*9=45        6*9=54        7*9=63        8*9=72        9*9=81
1*8=8        2*8=16        3*8=24        4*8=32        5*8=40        6*8=48        7*8=56        8*8=64
1*7=7        2*7=14        3*7=21        4*7=28        5*7=35        6*7=42        7*7=49
1*6=6        2*6=12        3*6=18        4*6=24        5*6=30        6*6=36
1*5=5        2*5=10        3*5=15        4*5=20        5*5=25
1*4=4        2*4=8        3*4=12        4*4=16
1*3=3        2*3=6        3*3=9
1*2=2        2*2=4
1*1=1
>>>

Q77 发表于 2021-7-24 12:30:05

我也试一试

moimoi 发表于 2023-8-19 20:03:22

print('我会帮您输出乘法口诀表'.center(71,'='))
m=input('您要正向还是反向(正/反):')
p=q=i=j=0
s=n=''
if m=='正'or m=='正向':
    for i in range(1,10):
      for j in range(1,i+1):
            n+=''+str(i)+'*'+str(j)+'='+str(i*j)
      print(n)
      n=''
elif m=='反'or m=='反向':
    for p in range(9,0,-1):
      for q in range(p,0,-1):
            s+=''+str(p)+'*'+str(q)+'='+str(p*q)
      print(s)
      s=''
else:
    print('您的输入有误!\n请重新输入')
   
页: 1 2 [3]
查看完整版本: 小白Python练习册(14)【鱼币福利】