본문 바로가기

Applications

구글 두들(Google Doodle) - 구글의 기념일 로고

2012/08/10 10:07:45

올림픽기간이라 그런지 스포츠 관련 배너가 많다.

오늘은 축구 결승/3,4위전 경기가 있어서 그런지 배너에서 패널티킥 게임을 할 수 있게 되었다.

 

 

게임 조작은 간단, 키보드(이동키, 스페이스바)나 마우스(이동, 클릭)로 가능하다.

 

3골까지 먹으면 게임이 종료된다.

 

HTML5에 있는 canvas로 구현한듯. 

 

http://www.google.com/doodles/soccer-2012 에서도 가능하다.

 

2012/06/23 19:06:50

튜링탄생 100주년 기념

컴퓨터 과학의 아버지로 불리는 앨런 튜링을 맞이해서 구글에서는 로고에 퀴즈를 넣었다.

그냥 애니메이션인줄 알 수 있지만 연두색 ▶버튼을 누르면 게임(?)이 시작된다.

로고의 개수인 6개의 문제가 나와 있다.

  1. G - 00010을 01011로 만드는 것이다.
    ← 기호는 테이프를 왼쪽으로 →는 오른쪽으로 옮기는 명령어인듯,
    또한 노란색 0은 해당 테이프를 0으로 세팅, 1은 1로 세팅하는 것 같다.
     
    정답은 아래와 같다.
  2. o - 두 번째 문제: 0?011을 00011로 만드는 것
     
    이제 조건문이 등장하기 시작했다.
    테이프의 숫자가 특정 기호이면 분기를 하는 것이다. 분기의 조건은 3가지이다.
    왼쪽으로 한칸간 후에 아무것도 안써있는 것을 0으로 세팅하면 되므로
    아래와 같이 바꾸면 된다.
  3. o - 01011을 00011로 만들기
     
    반복문이 등장하였다. 돼지 코구멍 모양의 아이콘을 누르면 반복을 해서 돌아갈 지점을 변경할 수 있다.
    (사실 동그라미 하나면 한단계 전으로 돌아가는 것이고 2개면 두 단계 전으로 돌아가는 의미이다)
    조건문은 이미 세팅되어 있고 반복문을 통해 원하는 숫자를 만드는 것이다.
    답은 아래와 같다.
  4. g - 11011을 01011로 만들기
     
    반복문은 이미 세팅되어 있고, 조건문의 변화를 주어서 맞추어야 한다.
    우선 맨끝으로 이동한뒤, ?를 만나면 오른쪽으로 한칸 이동한후 0으로 세팅하면 되므로 아래와 같이 하면 된다.
  5. l - 0?001을 01001로 만들기
     
    왼쪽으로 두 칸가고 ?일때만 1로 만들어주면 되므로.. 아래와 같이 하면 된다.
  6. e (끝판) - 01111을 10000으로 만들면 된다.
    INVERT를 만드는 것이다. ~01111 = 10000
     
    끝판왕은 안나오지만, 끝판인만큼 조정할 수 있는 버튼이 모두 4개이다.
    사실 그렇게 어렵지는 않다.
     

그러면 6개의 문제를 모두 맞추면 어떻게 되는가? 설마 구글 입사 지원 페이지라도 넘어갈 줄 알고 해보았다면 실망할지도..

아래와 같은 엔딩이 나온다.