需要编写程序以打印出具有给定高度和图案的正方形,如下所示。 (这是一个2x2交替块的正方形,“=”模式始终位于左上角)
输入:
Enter the height:
6
输出:
==XX==
==XX==
XX==XX
XX==XX
==XX==
==XX==
代码:
x = eval(input("Enter the height: "))
j=0
i=0
for i in range(x):
for j in range(x):
if(i==0 or i==1):
if(j == 0 or j == 1):
print("=",end="")
elif(j == 2 or j== 3):
print("X",end="")
j=j+1
elif(j==4):
j=0
if(i == 2 or i == 3):
if(j == 0 or j == 1):
print("X",end="")
elif(j == 2 or j == 3):
print("=",end="")
if(i==4):
i=0
i=i+1
print()
仅产生:
==XX
==XX
XX==
XX==
答案 0 :(得分:0)
测试有效输入(必须是偶数)。
计算每行中行和组(对)的组(对)数(输入除以2)。
为所需数量的行组创建一个循环。
在里面创建两行循环。
在里面为所需数量的标志组制作循环。
在其内部为组中所需数量(2)的字符组成循环。
打印一个标志,这是' ='如果是当前行数的奇偶校验'组与当前字符数的奇偶性相同。小组,' X'否则。
在每一行的末尾(在chars group循环之后)打印行尾。
完成。
答案 1 :(得分:0)
当你使用那种模式做事时,你应该使用模数。 在您的代码中,您只处理i< 4,您的身份似乎有点随机的情况。
我认为这会做你想做的事情:
x = input("Enter the height: ")
output = ""
for i in range(x):
for j in range(x):
if (((i/2)%2 == 0 and ((j/2)%2) != 0) or ((i/2)%2 != 0 and ((j/2)%2) == 0)):
output += "X"
else:
output += "="
if (j%x == x-1):
output += "\n"
print(output)