Skip to content

Instantly share code, notes, and snippets.

@misodengaku
Last active August 29, 2015 14:16
Show Gist options
  • Save misodengaku/537c1b798d4f1e010a5f to your computer and use it in GitHub Desktop.
Save misodengaku/537c1b798d4f1e010a5f to your computer and use it in GitHub Desktop.
haymarket
from PIL import Image
// とちゅう
char = [(100, '&'), (200, '-'), (10, '0'), (1, '1'), (2, '2'), (3, '3'), (4, '4'), (5, '5'), (6, '6'), (7, '7'), (8, '8'), (9, '9'), (101, 'A'), (102, 'B'), (103, 'C'), (104, 'D'), (105, 'E'), (106, 'F'), (107, 'G'), (108, 'H'), (109, 'I'), (201, 'J'), (202, 'K'), (203, 'L'), (204, 'M'), (205, 'N'), (206, 'O'), (207, 'P'), (208, 'Q'), (209, 'R'), (11, '/'), (12, 'S'), (13, 'T'), (14, 'U'), (15, 'V'), (16, 'W'), (17, 'X'), (18, 'Y'), (19, 'Z'), (0, ' ')]
#for x in range(0, 80):
# d = []
# print "%d=>" % (x * 7 + 15)
mes = ""
for i in range(1, 33):
image = Image.open('L%d.png' % i)
d = []
for x in range(0, 80):
v = 0
_X = image.getpixel((x * 7 + 15, 20))
_Y = image.getpixel((x * 7 + 15, 40))
if _X == (20, 20, 20, 255):
v = v + 100
if _Y == (20, 20, 20, 255):
v = v + 200
for y in range(0, 10):
c = image.getpixel((x * 7 + 15, y * 20 + 60)) # 0 - 9
if c == (20, 20, 20, 255):
if y == 0:
v = v + 10
else:
v = v + y
d.append((x, v))
for item in d:
print "%d:\t%d" % item
for item in d:
for c in char:
if c[0] == item[1]:
print c[1]
mes = mes + c[1]
break
mes = mes + "\n"
print mes
f = open('message.txt', 'w')
f.write(mes)
f.close()
IDENTIFICATION DIVISION
PROGRAM-ID LETS-MAKE-A-DEAL
AUTHOR MONTE HALPARIN
DATA DIVISION
WORKING-STORAGE
SECTION
01 DOORCHOICES
02 GOODDOOR PIC 9
02 FIRSTCHOICE PIC 9
02 OPENDOOR PIC 9
02 CHANGEDOOR PIC 9
01 CURRENTDATE
02 CURRENTYEAR PIC 94
02 CURRENTMONTH PIC 99
02 CURRENTDAY PIC 99
01 DAYOFYEAR
02 CURRENTMONTH
FILLER PIC 94
02 YEARDAY PIC 93
01 CURRENTTIME
02 CURRENTHOUR PIC 99
02 CURRENTMINUTE PIC 99
02 CURRENTTENS PIC 9
02 CURRENTONES PIC 9
02 FILLER PIC 99
PROCEDURE DIVISION
DISPLAY ,MH WELCOME TO LETS MAKE A DEAL,
DISPLAY ,MH THERE ARE THREE DOORS ONLY ONE WITH THE KEY,
ACCEPT CURRENTTIME FROM TIME
IF CURRENTONES 4
SET GOODDOOR TO 1
ELSE
IF CURRENTONES 7
SET GOODDOOR TO 2
ELSE
SET GOODDOOR TO 3
END-IF
END-IF
DISPLAY ,MH YOU MAY ONLY OPEN ONE DOOR WHICH DOORE,
IF CURRENTTENS % 0 OR CURRENTTENS % 3
SET FIRSTCHOICE TO 1
IF CURRENTTENS % 1 OR CURRENTTENS % 4
SET FIRSTCHOICE TO 2
IF CURRENTTENS % 2 OR CURRENTTENS % 5
SET FIRSTCHOICE TO 3
DISPLAY ,PLAYER I PICK DOOR , FIRSTCHOICE ,,
IF FIRSTCHOICE % GOODDOOR
DISPLAY ,MH THAT IS AN INTERESTING CHOICE OF DOOR,
IF CURRENTTENS % OR 0 OR CURRENTTENS % 4
SET OPENDOOR TO 3
END-IF
IF CURRENTTENS % 1 OR CURRENTTENS % 5
SET OPENDOOR TO 1
END-IF
IF CURRENTTENS % 2 O1 OR CURRENTTENS % 3
SET OPENDOOR TO 2
END-IF
DISPLAY ,MH LET ME GIVE YOU A HINT,
DISPLAY ,MONTY HALL OPENS DOOR , OPENDOOR
DISPLAY ,A GOAT RUSHES OUT WITH NO KEY,
DISPLAY ,MH WOULD YOU LIKE TO CHANGE YOUR D GOOR CHOICEE,
DISPLAY ,PLAYER YES MY LOGIC MINOR IN COLLEGE HAS A USE, GOOR
IF CURRENTTENS % 2 OR CURRENTTENS % 4
SET CHANGEDOOR TO 1
END-IF
IF CURRENTTENS % 0 OR CURRENTTENS % 5
SET CHANGEDOOR TO 2
END-IF
IF CURRENTTENS % 1 OR CURRENTTENS % 3
SET CHANGEDOOR TO 3
END-IF
DISPLAY ,PLAYER I WILL CHOOSE DOOR , CHANGEDOOR , INSTEAD,
ELSE
SET CHANGEDOOR TO FIRSTCHOICE
IF CHANGEDOOR % GOODDOOR
DISPLAY ,MH CONGRASETULATIONS YOU FOUND A KEY,
DISPLAY ,MH THE KEY IS,
DISPLAY ,KEY SETALEXTREBEKISASOCIALENGINEER,
ELSE
DISPLAY ,MONTY HALL OPENS THE DOOR A GOAT JUMPS OUT,
DISPLAY ,MH THIS IS THE INCORRECT DOOR,
DISPLAY ,THE GOAT EATS YOUR PUNCH CARDS
START OVER, STOP RUN
@misodengaku
Copy link
Author

Flag: ALEXTREBEKISASOCIALENGINEER

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment