Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 15, 2018 21:30:45

Scorp
Зарегистрирован: 2018-02-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Таблица умножения

Привет всем! Помогите разобраться, где ошибка.

 a = 1
for a in(1,10):
    print("Умножение на", a)
    for b in(1,10):
        b = 1
        c = b * a
        print(b, "*", a, "=", c)
        b += 1
        a += 1
В идеале должна появиться таблица умножения от 1 до 10, но выдает вот что:

Умножение на 1
1 * 1 = 1
1 * 2 = 2
Умножение на 10
1 * 10 = 10
1 * 11 = 11

Отредактировано Scorp (Фев. 15, 2018 21:31:56)

Офлайн

#2 Фев. 15, 2018 22:01:56

Romissevd
От: Счастье
Зарегистрирован: 2015-03-01
Сообщения: 533
Репутация: +  76  -
Профиль   Отправить e-mail  

Таблица умножения

вот возьмите и напишите словами что ваш код делает. Как вы понимаете…

Офлайн

#3 Фев. 16, 2018 02:13:43

Scorp
Зарегистрирован: 2018-02-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Таблица умножения

разобрался, пропустил “range” и начало с “0”

 a = 1
for a in range(0, 10):
    if a <= 10:
        a += 1
        print("Умножение на", a)
        b = 1
        for b in range(0, 10):
            if b <= 10:
                b += 1
                c = b * a
                print(b, "*", a, "=", c)

хотя условия if здесь лишние

Умножение на 1
1 * 1 = 1
2 * 1 = 2
3 * 1 = 3
4 * 1 = 4
5 * 1 = 5
6 * 1 = 6
7 * 1 = 7
8 * 1 = 8
9 * 1 = 9
10 * 1 = 10
Умножение на 2
1 * 2 = 2
2 * 2 = 4
3 * 2 = 6
4 * 2 = 8
5 * 2 = 10
6 * 2 = 12
7 * 2 = 14
8 * 2 = 16
9 * 2 = 18
10 * 2 = 20
….

Офлайн

#4 Фев. 16, 2018 03:48:46

gorodetskiykp
От:
Зарегистрирован: 2012-03-16
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Таблица умножения

 for number_1 in range(1, 11):
    print("Умножение на", number_1)
    for number_2 in range(1, 11):
        print("{:>2} * {} = {}".format(number_2, number_1, number_2 * number_1))



Офлайн

#5 Фев. 16, 2018 08:33:08

Scorp
Зарегистрирован: 2018-02-15
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Таблица умножения

Благодарствую. горизонт обозначен)))

 for a in range(0, 10):
        print("Умножение на", a)
                for b in range(0, 10):
                        print(b, "*", a, "=", b * a)

Отредактировано Scorp (Фев. 16, 2018 09:26:04)

Офлайн

#6 Фев. 16, 2018 14:02:38

spikejke
Зарегистрирован: 2018-02-12
Сообщения: 42
Репутация: +  5  -
Профиль   Отправить e-mail  

Таблица умножения

Я решил так :

 for x in range(1,10):
	print("Умножение на {0}".format(x))
	for z in range(1,10):
		print("{0} * {1} = {2}".format(x,z,z*x)

Отредактировано spikejke (Фев. 16, 2018 17:38:33)

Офлайн

#7 Фев. 16, 2018 15:24:04

gorodetskiykp
От:
Зарегистрирован: 2012-03-16
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Таблица умножения

spikejke
1. Это умножение от 1 до 9?
2. Я стараюсь давать переменным человеческие имена)
3. Зачем в формате используете нумераторы, если переменная подставляется только в одно место?
4. В формате беда с pep8)) пробелы не на своих местах.



Офлайн

#8 Фев. 16, 2018 15:31:24

gorodetskiykp
От:
Зарегистрирован: 2012-03-16
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Таблица умножения

 print("\n".join(
    ["{} * {} = {}".format(num_1, num_2, num_1 * num_2) 
        for num_1 in range(1, 11) 
        for num_2 in range(1, 11)
    ]))



Офлайн

#9 Фев. 16, 2018 17:41:28

spikejke
Зарегистрирован: 2018-02-12
Сообщения: 42
Репутация: +  5  -
Профиль   Отправить e-mail  

Таблица умножения

gorodetskiykp
spikejke1. Это умножение от 1 до 9?2. Я стараюсь давать переменным человеческие имена)3. Зачем в формате используете нумераторы, если переменная подставляется только в одно место?4. В формате беда с pep8)) пробелы не на своих местах.
1. Умышленно, да
2. Думаю в данном случае значение переменной считается явной .
3. Что в этом плохого ? Объясните пожалуйста
4 . Вы правы , исправил.

Отредактировано spikejke (Фев. 16, 2018 17:41:53)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version