Как скрыть слово в матрице случайных чисел?

Я новичок в Python и застрял здесь. Я написал следующую программу, которая генерирует матрицу случайных чисел.

def randsq(size):
    for i in range(size):
        for j in range(size):
            print(random.randint(0,9), end = '')
        print()

Можно ли в любом случае добавить функцию, которая берет слово из входного параметра и скрывает его по диагонали в матрице? Так что, если пользователь вводит "дождь", вывод выглядит так:

r123
1a45
23i4
989n

Спасибо!

1 ответ

Модифицированный код:

import random
def randsq(word):
    size = len(word)
    for i in range(size):
        for j in range(size):
            if i == j:  # we are at a diagonal-value
                print(word[i], end='')  # it's the i-th diag -> choose i-th char
            else:
                print(random.randint(0, 9), end='')
        print()

randsq('Rain')

Выход:

R757
0a91
02i9
757n

Если вы хотите, чтобы пользователь ввел это слово:

word_to_hide = input('Which word to hide? (+enter) ')  # will wait for user-input + enter
randsq(word_to_hide)
Другие вопросы по тегам