Skip to content

Instantly share code, notes, and snippets.

@emad-elsaid
Last active May 27, 2016 18:58
Show Gist options
  • Save emad-elsaid/98c7f89916056ec7bab70ee99d5ff091 to your computer and use it in GitHub Desktop.
Save emad-elsaid/98c7f89916056ec7bab70ee99d5ff091 to your computer and use it in GitHub Desktop.
end_char = ARGV.first
characters = ('A'..end_char).to_a + ('A'...end_char).to_a.reverse
max_level = end_char.ord - 'A'.ord
diamond = characters.map do |char|
current_level = char.ord - 'A'.ord
before_spaces = max_level - current_level
if char == 'A'
' ' * before_spaces + char
else
inner_spaces = (current_level - 1) * 2 + 1
' ' * before_spaces + char + ' ' * inner_spaces + char
end
end
puts diamond
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment