Форум сайта python.su
[
, [code], [code]]
задания
Написать программу, generuj_tablice(), которая принимает два числа в качестве входных данных (x,y), и генерирует двухмерный массив x строк и y столбцов. Элементами этого массива являются числа, которое является произведением числа столбца и строки (i*j).
Пример:для вступления: generuj_tablice(3,5), нужен результат:
[[code], [code], [code]]
[[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8]]
Для решения нужно использовать циклы for.
def generuj_tablice(x, y):
for x in range(x):
for y in range(y+1):
print(x * y, end=' ')
generuj_tablice(3,5)
не считает, что не так?
Отредактировано serhii1986 (Ноя. 14, 2016 08:00:34)
Офлайн
оформите код в теги
Офлайн
Простите, но я не понял. Что сделать?
Офлайн
над полем в котором Вы пишете сообщение, слева от смайла, есть возможность выбрать обрамляющие теги для кода, чтобы он выглядел вот так:
def generuj_tablice(x, y): for x in range(x):
Офлайн
serhii1986Напиши задание. Не видишь, что стёрлась матрица в примере? Она не просто так стёрлась, а была воспринята как тег форума.
Что сделать?
[[1, 2, 3],
[4, 5, 6]]
[code][/code]
Отредактировано py.user.next (Ноя. 14, 2016 02:59:05)
Офлайн
“Всегда”, когда речь идет о массивах, нужно использовать numpy
>>> import numpy as np >>> x, y = np.arange(1,10), np.arange(1,6) >>> X,Y = np.meshgrid(x,y) >>> X*Y array([[ 1, 2, 3, 4, 5, 6, 7, 8, 9], [ 2, 4, 6, 8, 10, 12, 14, 16, 18], [ 3, 6, 9, 12, 15, 18, 21, 24, 27], [ 4, 8, 12, 16, 20, 24, 28, 32, 36], [ 5, 10, 15, 20, 25, 30, 35, 40, 45]])
Отредактировано scidam (Ноя. 14, 2016 07:35:26)
Офлайн
Спасибо
Офлайн
>>> def f(x, y): ... return [[i * j for j in range(y)] for i in range(x)] ... >>> f(3, 5) [[0, 0, 0, 0, 0], [0, 1, 2, 3, 4], [0, 2, 4, 6, 8]] >>>
Офлайн
py.user.next
это не массив
Офлайн
izekiaВсегда используются списки для этого, потому что список является основной структурой в питоне.
это не массив
Отредактировано py.user.next (Ноя. 14, 2016 14:12:13)
Офлайн