Skip to content

Instantly share code, notes, and snippets.

@guites
Last active February 23, 2022 14:23
Show Gist options
  • Save guites/dbb66188640eae009e762878c93f2665 to your computer and use it in GitHub Desktop.
Save guites/dbb66188640eae009e762878c93f2665 to your computer and use it in GitHub Desktop.
Verifica se uma data é um ambigrama
representations = {
'0': ('---', '- -', '- -', '- -', '---'),
'1': (' - ', ' - ', ' - ', ' - ', ' - '),
'2': ('---', ' -', '---', '- ', '---'),
'3': ('---', ' -', '---', ' -', '---'),
'4': ('- -', '- -', '---', ' -', ' -'),
'5': ('---', '- ', '---', ' -', '---'),
'6': ('---', '- ', '---', '- -', '---'),
'7': ('---', ' -', ' -', ' -', ' -'),
'8': ('---', '- -', '---', '- -', '---'),
'9': ('---', '- -', '---', ' -', '---'),
}
# method taken from https://stackoverflow.com/a/58721716/18081350
def seven_segment(number):
digits = [representations[digit] for digit in str(number)]
outpewt=''
for i in range(5):
outpewt+=(" ".join(segment[i] for segment in digits) + "\n")
return outpewt
def ambigrammed_segment(number):
digits = [representations[digit] for digit in str(number)]
block=''
for i in range(4,-1,-1):
for idx, segment in enumerate(digits):
if segment[i] == ' -':
block += '- '
elif segment[i] == '- ':
block += ' -'
else:
block += segment[i]
if (idx < len(str(number)) - 1):
block += ' '
block+='\n'
return block
inpewt = input('Digite uma data (DDMMAAAA): ')
original = seven_segment(inpewt)
reversed = ambigrammed_segment(inpewt)
print(original)
print(reversed)
if original == reversed:
print('Ambigrama(x)')
else:
print('Ambigrama( )')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment