whtmst
@whtmst
https://github.com/whtmst

Обучение Python, стыдно, но нужна помощь. Поможете?

Всем доброго времени суток. Прохожу обучение по пайтон, столкнулся с задачей взять у пользователя 4 числа от 1 до 10 и на выводе сделать из них таблицу умножения. Такого типа:
Где: 5 и 6 это числа диапазона c, d
А 7, 8, 9, 10 это числа диапазона a, b

a863a2af75a5c1541f4081d101eb8c25.png

Я понимаю что для всех кто уже знает пайтон, это решение займет 1 минуту, но я только изучаю, как говорится 5 день только и поставлена задача сделать это только с помощью цикла for и оператора range.
Я накидал код, он выводит форматирование правильно, но сволыч такая, умножает только на последние цифры :(

1d32e06d3494cbdbb0fa7dd05dd430e3.png
Вот код:
for i in range(c, d + 1):
    print('\t', i, end='')
print()
for j in range(a, b + 1):
    print(j, '\t', i * j)


Уже сутки голову ломаю и не пойму как сделать :( Может кто то скажет что не так :(
Буду очень благодарен.
  • Вопрос задан
  • 2721 просмотр
Пригласить эксперта
Ответы на вопрос 2
Ну вам же нужно во втором цикле КАЖДОЕ число из первого диапазона (с, d+1) умножить на КАЖДОЕ число из второго диапазона (a, b+1). Т.е. вам нужны вложенные циклы.
Примерно так:
for j in range(a, b + 1):
    # здесь выводим значение из диапазона 
    print (j, '\t', end = '')
    for i in range(c, d + 1):
        # здесь считаем значения для каждой комбинации
        print( i * j, '\t', end = '')
Ответ написан
Комментировать
@Fidenas
Не хватает цикла for, перебираешь только j в диапазоне (a, b+1), еще один цикл должен также перебирать значения в диапазоне (c, d+1).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы