Étant donné les nombres (NM) que vous voyez souvent dans les livres de problèmes, Une solution lorsque le résultat de sortie est obtenu par une chaîne de caractères de N lignes x M colonnes.
Exemple) Carte en étoile, table de multiplication de quatre-vingt-dix-neuf, etc.
& + + + +
+ & + + +
+ + & + +
+ + + & +
+ + + + &
N M
import numpy as np
#(N M)= (5 5)Supposons qu'il y ait une entrée sous la forme de
n, m = input().split()
n, m = int(n), int(m)
#Créer un tableau à deux dimensions avec N lignes et M colonnes(Cette fois, toutes les 0 séquences)
hyou = np.zeros((n,m))
#S'il y a plusieurs chaînes de caractères à afficher sur la carte des étoiles, etc., définissez «Nombres dans cette partie du tableau» sur 1.,2,3...Et remplacez-le dans différents cas
#Cette fois, c'est un simple qui met juste 1 lorsque les nombres dans la ligne et la colonne sont les mêmes
for i in range(n):
for j in range(m):
if i == j:
hyou[i][j] = 1
#Valeur numérique indiquant l'élément en fin de ligne(Indice du dernier élément d'une colonne de tableau à deux dimensions)
x = m -1
for i in range(n):
#La fin de la ligne de sortie ou non est déterminée par le fait que j == x
#Fin sinon la fin=" "Sortez un espace vide avec, et à la fin, commencez une nouvelle ligne avec la fonction d'impression telle quelle
#Changer le caractère de sortie pour chaque nombre
for j in range(m):
if hyou[i][j] == 0 and j != x:
print("+", end = " ")
elif hyou[i][j] == 1 and j != x:
print("&", end = " ")
if hyou[i][j] == 0 and j == x:
print("+")
elif hyou[i][j] == 1 and j == x:
print("&" )
C'est simple, mais je pense que c'est facile à oublier, alors je vais l'écrire.
Recommended Posts