Skip to content

Instantly share code, notes, and snippets.

@jnsprnw
Created December 14, 2017 15:23
Show Gist options
  • Save jnsprnw/03f3db545283f8e6ff758e231e245fd9 to your computer and use it in GitHub Desktop.
Save jnsprnw/03f3db545283f8e6ff758e231e245fd9 to your computer and use it in GitHub Desktop.
#!/usr/bin/env ruby
# encoding: utf-8
Dir.chdir(File.dirname(__FILE__))
require "awesome_print"
# Skript um ein Spaltenlayout für zwei unterschiedliche Breiten zu finden
BREITE_1 = 250
BREITE_2 = 200
SPALTEN_1 = (3..30).to_a
SPALTEN_2 = (3..30).to_a
GUTTER = (5..10).to_a
RAND = (5..10).to_a
SOLUTIONS = []
SPALTEN_1.each do |value_spalten_1|
GUTTER.each do |value_gutter|
RAND.each do |value_rand|
netto_1 = BREITE_1 - 2 * value_rand
netto_2 = BREITE_2 - 2 * value_rand
width = (netto_1 - ((value_spalten_1 - 1) * value_gutter)) / value_spalten_1
if (width > 0 and width / 4 >= value_gutter)
SPALTEN_2.each do |value_spalten_2|
rest = netto_2 - ((value_spalten_2 - 1) * value_gutter) - value_spalten_2 * width
if rest.eql? 0
SOLUTIONS.push([width, value_gutter, value_rand, value_spalten_1, value_spalten_2].join('-'))
end
end
end
end
end
end
ap SOLUTIONS
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment