-
分析思路:
j * i = {} , 观察每一行最后一个公式的规律,不难发现,每一行最后的 i 是和j相等的,即有条件if(i==j),就打印一个换行。在每一行中可以发现,i 是不变的,j 会依次不断增加至与行数(i)相等的数值,所以我们第一层循环可以用 for i in range(1,10),而第二层循环则为for j in range(1,i+1) #
for i in range(1,10):
for j in range(1,i+1):
print("{}x{}={}".format(j,i,i*j),end=" ")
if(i==j):
print("\n")for i in range(1,10):
for j in range(1,10):
while j <= i:
print("{}x{}={}".format(j,i,i*j),end=" ")
j += 1
print("\n")
break
2.
分析菱形: | ||
行号 | 前置空格数 | * 数 |
1 | 3 | 1 |
2 | 2 | 3 |
3 | 1 | 5 |
4 | 0 | 7 |
5 | 1 | 5 |
6 | 2 | 3 |
7 | 3 | 1 |
for i in range(3,-1,-1): print("{}{}".format(i*" ",(7-2*i)*"*")) for i in range(1,4): print("{}{}".format(i*" ",(7-2*i)*"*")) | for i in range(-3,4): if i < 0: i = -i print("{}{}".format(' '*i,(7-2*i)*"*")) |
3.
i = 1 j = 0 for a in range(101): number = i + j i = j j = number if number > 100: break else: print(number) |
4.
i = 1 j = 0 for a in range(101): number = i + j i = j j = number print(number) |
5.
for x in range(2,100000): i = 2 while i < x: if x % i == 0: break i += 1 if i == x: print(x,end=" ") |