Я хотів би створити клас і передати 2 зміннідо цього класу; ширина (x) та довжина (y). За допомогою цих змінних програма повинна встановити або матрицю, або створити x кількість масивів з y кількістю записів.
Проблема в тому, що це не матриця (як?), Якщо масиви найкращі, то як це може працювати, якщо передано, скажімо, 4, 8?
array_name_0 = [0, 1, 2, 3, 4, 5, 6, 7]
array_name_1 = [0, 1, 2, 3, 4, 5, 6, 7]
array_name_2 = [0, 1, 2, 3, 4, 5, 6, 7]
array_name_3 = [0, 1, 2, 3, 4, 5, 6, 7]
де "array_name_x" x буде = x, переданий під час створення, а 0-7 базується на y.
Зразок коду такий:
class Dimensional
attr_reader :width, :length
def initialize(width,length)
@width = width
@length = length
@sqft = width * length
end
def full
"
width : #{@width}
length: #{@length}
sq ft : #{@sqft}
#display array/matrix here
"
end
end
myDimensional = Dimensional.new(4, 8)
print Dimensional.full
так як же, у цьому прикладі, я б створив матрицю з цими значеннями x, y або як би я динамічно призначав "array_name_x" із числом для x на основі x?
Відповіді:
0 для відповіді № 1width.times.map{ length.times.to_a }
спадає на думку, наприклад
matrix = 3.times.map{ 2.times.to_a }
# => [[0, 1], [0, 1], [0, 1]]
matrix.map{ |row| row.join(" ") }.join("n")
# 0 1
# 0 1
# 0 1