/ / सरणियों के भीतर सरणियों के एकाधिक मानचित्रण - रूबी [बंद] - रूबी, सरणियाँ, मानचित्र, मानचित्रण

सरणी के भीतर सरणी के एकाधिक मैपिंग - रूबी [बंद] - रूबी, सरणी, मानचित्र, मैपिंग

मैं सरणी में उन सरणी के साथ एक सरणी के माध्यम से जाना चाहता हूं।

सरणी में 5 सरणियाँ होनी चाहिए, और प्रत्येक मेंवे सरणियाँ पाँच और सरणियाँ हैं, संख्याओं की पीढ़ी ठीक है, लेकिन जब मैं प्रत्येक सरणियों के माध्यम से उन्हें किसी और चीज़ के साथ मैप करने के लिए जाता हूं, तो मुझे केवल 5 सरणियों के साथ एक सरणी मिलती है।

  def random_map
@row = []
@col = []
@map = []
5.times do |row|
5.times do |col|
@c = rand(3)
@d = [@c]
@col << @d
end
@row << @col
@col = []
end
@map << @row
@map.map! do |row|
row.map! do |col|
col.map! do |element|
case(element[0])
when 0
element[0] = "BG"
when 1
element[0] = "B1"
when 2
element[0] = "TR"
end
end
end
end
end

किसी को पता है कि मानचित्रण के साथ क्या हो रहा है?

उत्तर:

उत्तर № 1 के लिए 1

मैं सकारात्मक नहीं हूं, लेकिन मुझे लगता है कि आप यही कर रहे हैं:

def random_map
Array.new(5) do
Array.new(5) do
Array.new(5) do
%w{BG B1 TR}.sample
end
end
end
end

इसे चलाने से 5 स्ट्रिंग्स के 5 एरे के 5 स्ट्रिंग्स का एक एरे उत्पन्न होता है, तीन स्ट्रिंग्स को यादृच्छिक रूप में चुना "BG", "B1", तथा "TR":

random_map
# => [[["B1", "BG", "BG", "B1", "B1"],
["B1", "B1", "BG", "TR", "B1"],
["B1", "B1", "TR", "TR", "TR"],
["B1", "TR", "TR", "BG", "B1"],
["BG", "TR", "BG", "TR", "TR"]],
[["B1", "TR", "TR", "BG", "TR"],
["BG", "B1", "TR", "BG", "BG"],
["B1", "B1", "BG", "TR", "BG"],
["BG", "BG", "TR", "B1", "B1"],
["B1", "BG", "BG", "BG", "BG"]],
[["B1", "BG", "BG", "B1", "TR"],
["BG", "BG", "B1", "B1", "TR"],
["B1", "BG", "B1", "TR", "TR"],
["BG", "TR", "B1", "B1", "BG"],
["TR", "TR", "BG", "TR", "B1"]],
[["BG", "B1", "BG", "BG", "BG"],
["B1", "B1", "TR", "TR", "B1"],
["BG", "B1", "TR", "B1", "TR"],
["TR", "TR", "TR", "BG", "B1"],
["TR", "B1", "BG", "TR", "BG"]],
[["B1", "B1", "BG", "BG", "TR"],
["TR", "TR", "B1", "BG", "BG"],
["TR", "BG", "B1", "BG", "TR"],
["BG", "B1", "TR", "BG", "TR"],
["B1", "TR", "BG", "B1", "B1"]]]

मैं विशेष रूप से उदाहरण चर का उपयोग नहीं कर रहा हूँ @row, @col, @map, @c, या @d क्योंकि यह स्पष्ट नहीं है कि आप वास्तव में उन्हें स्थापित करना चाहते हैं, ऐसा लगता है कि आप "बस उन्हें स्थानीय चर के रूप में उपयोग कर रहे हैं।"