注:本文所有代码均经过Python 3.7实际运行检验,保证其严谨性。
Python基础练习题33:大大的“X”
打印出n阶的“X”,这个X图案由字符‘+’和‘X’构成,n越大,这个图案也就越大。
输入格式:
一个正整数n,1<=n<=20
输出格式:
一个n阶叉图案
输入样例:
1
输出样例:
X
输入样例:
3
输出样例:
X+++X
+X+X+
++X++
+X+X+
X+++X
输入样例:
7
输出样例:
X+++++++++++X
+X+++++++++X+
++X+++++++X++
+++X+++++X+++
++++X+++X++++
+++++X+X+++++
++++++X++++++
+++++X+X+++++
++++X+++X++++
+++X+++++X+++
++X+++++++X++
+X+++++++++X+
X+++++++++++X
解答:每行都是由'+'和'X'两种字符组成,且,‘X’在‘+’组成的字符串中游动,因此可以先“铺上”一层'+',在合适的位置用'X'对'+'进行替换。
n = int(input())
for i in range(2 * n - 1):
l = (2 * n - 1) * ['+']
l[i] = 'X'
l[-1-i] = 'X'
print("".join(l))
Python基础练习题34:计算满足条件的a、b的值
a、b是两个介于-100与100之间的整数,如果满足|ab|+|a+b|=1,那么a、b分别是多少?
解答:设立筛选条件,直接暴力循环可也。
for a in range(-100, 100):
for b in range(-100, 100):
if abs(a * b) + abs(a + b) == 1:
print((a, b), end=" ")
<<<(-1, 0) (-1, 1) (0, -1) (0, 1) (1, -1) (1, 0)
To be continued.