#python #eclipse #addition
#python #eclipse #добавление
Вопрос:
Вот как это должно выглядеть:
Enter start value: 1
Enter end value: 5
Addition Table
1 2 3 4 5
-------------------------
1| 2 3 4 5 6
2| 3 4 5 6 7
3| 4 5 6 7 8
4| 5 6 7 8 9
5| 6 7 8 9 10
Это то, что у меня есть на данный момент:
start = int(input("Enter start value: "))
end = int(input("Enter end value: "))
increment = int(input("Enter an increment value: "))
limit = end 1 # So that limit can be inclusive in the following loop
# So that we can have a space between "Enter end value" and the results.
print()
total = 0
for top in range(start, limit, increment):
print(" {}".format(top), end="")
total = total 1
print()
print(" {}".format("-" * (total * 6)), end="")
print()
for horizontal in range(start, limit, increment):
print("{}| {} {} {} {} {}".format(horizontal, horizontal increment, horizontal
increment * 2, horizontal increment * 3, horizontal increment * 4, horizontal increment * 5))
*** ПОЖАЛУЙСТА, ОБРАТИТЕ ВНИМАНИЕ ****
От меня требуется использовать только циклы for. Никаких циклов while или любого другого метода. Строго для циклов и операторов if, если требуется. Я действительно застрял в этой программе. Приветствуется любая помощь.
Комментарии:
1. что вы получаете? кстати. эта проблема не имеет ничего общего с eclipse.
2. внутри
for horizontal
вы могли бы использовать другойfor
цикл для отображения любого количества столбцов.3. вы можете использовать ie.
{:>7}
вместо{}
пробелов и. Подробнее: pyformat.info4. @furas Не могли бы вы показать мне, как именно я мог бы это сделать? Я пытался, но, очевидно, безуспешно
Ответ №1:
Вы можете использовать один for
цикл внутри другого for
цикла для создания другого количества столбцов.
Кроме того, вы можете использовать string formatting
(PyFormat.info) если это разрешено в задаче.
start = int(input("Enter start value: "))
end = int(input("Enter end value: "))
increment = int(input("Enter an increment value: "))
limit = end 1 # So that limit can be inclusive in the following loop
# So that we can have a space between "Enter end value" and the results.
print()
total = 0
print(" |", end="")
for top in range(start, limit, increment):
print("{:>6}".format(top), end="")
total = 1
print()
print("--- {}".format("-" * (total*6)))
for y in range(start, limit, increment):
print("{:>3}|".format(y), end="")
for x in range(start, limit, increment):
print("{:>6}".format(x y), end="")
print()
Результат
Enter start value: 1
Enter end value: 15
Enter an increment value: 2
| 1 3 5 7 9 11 13 15
--- ------------------------------------------------
1| 2 4 6 8 10 12 14 16
3| 4 6 8 10 12 14 16 18
5| 6 8 10 12 14 16 18 20
7| 8 10 12 14 16 18 20 22
9| 10 12 14 16 18 20 22 24
11| 12 14 16 18 20 22 24 26
13| 14 16 18 20 22 24 26 28
15| 16 18 20 22 24 26 28 30
Комментарии:
1. Спасибо! Я, наконец, понял, что делаю гораздо больше циклов for, но ваш мне нравится больше. Еще раз спасибо.