require 'rubyXL' require 'rubyXL/convenience_methods' PATTERNS = { 'T' => [ [ 1, 1, 1, 1, 1, 1, 1, 1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1] ], 'H' => [ [ 1,-1,-1,-1,-1,-1,-1, 1], [ 1,-1,-1,-1,-1,-1,-1, 1], [ 1,-1,-1,-1,-1,-1,-1, 1], [ 1, 1, 1, 1, 1, 1, 1, 1], [ 1, 1, 1, 1, 1, 1, 1, 1], [ 1,-1,-1,-1,-1,-1,-1, 1], [ 1,-1,-1,-1,-1,-1,-1, 1], [ 1,-1,-1,-1,-1,-1,-1, 1] ], 'E' => [ [ 1, 1, 1, 1, 1, 1, 1, 1], [ 1,-1,-1,-1,-1,-1,-1,-1], [ 1,-1,-1,-1,-1,-1,-1,-1], [ 1, 1, 1, 1, 1, 1,-1,-1], [ 1, 1, 1, 1, 1, 1,-1,-1], [ 1,-1,-1,-1,-1,-1,-1,-1], [ 1,-1,-1,-1,-1,-1,-1,-1], [ 1, 1, 1, 1, 1, 1, 1, 1] ], 'X' => [ [ 1,-1,-1,-1,-1,-1,-1, 1], [-1, 1,-1,-1,-1,-1, 1,-1], [-1,-1, 1,-1,-1, 1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1,-1, 1, 1,-1,-1,-1], [-1,-1, 1,-1,-1, 1,-1,-1], [-1, 1,-1,-1,-1,-1, 1,-1], [ 1,-1,-1,-1,-1,-1,-1, 1] ] } wb = RubyXL::Workbook.new wb.worksheets.delete_at(0) PATTERNS.each do |name, matrix| sheet = wb.add_worksheet(name) matrix.each_with_index do |row, r| row.each_with_index do |val, c| sheet.add_cell(r, c, val == 1 ? 'x' : nil) end end end wb.write('patterns.xlsx') puts "Создан patterns.xlsx (листы: #{PATTERNS.keys.join(', ')})"