2018 온라인 코딩 파티 시즌2 - 텍스트 코딩 용사가 되자!!!
    • 01
      코딩용사가 되자
    • 첫번째 모험 - 코딩 용사가 돌아왔다!
      두번째 모험 - 새로운 용사의 등장
      세번째 모험 - 용사여 전진하라!
      네번째 모험 - 물러서야할 때도 있는 법
      다섯번째 모험 - 너 자신을 알라
      여섯번째 모험 - 눈치가 빠른 용사가 되자
      일곱번째 모험 - 열번찍어 안넘어가냐?
      여덟번째 모험 - 슬라임 퇴치 작전
      아홉번째 모험 - 쉴 땐 쉬고 싸우자
      열번째 모험 - 새로운 용사와 허수아비가 만났을 때
      열한번째 모험 - 눈에는 눈, 이에는 이
      열두번째 모험 - 두마리 토끼를 잡아라!
      열세번째 모험 - 필! 살! 어! 택!
      열네번째 모험 - 오늘은 내가 소방관
      열다섯번째 모험 - 네크론을 물리쳐라!
      친구와 1:1 코딩배틀
      열여섯번째 모험 - 수비도 전략이다.
      열일곱번째 모험 - 치고 빠지기
      열여덟번째 모험 - 게 섰거라!
      열아홉번째 모험 - 디펜스! 디펜스!
      스무번째 모험 - 이건 입에서 나는 소리가 아니여
      스물한번째 모험 - 지금 만나러 갑니다
      스물두번째 모험 - 공격이 최선의 방어
      스물세번째 모험 - 공격이 최선의 방어2
      스물네번째 모험 - 마을을 구하자!
      스물다섯번째 모험 - 진화한 네크론을 물리쳐라!
      모든 모험 클리어
    열한번째 모험 - 눈에는 눈, 이에는 이
    배우기
    01 코딩용사가 되자
    열한번째 모험 - 눈에는 눈, 이에는 이

    조건문을 이용하여 앞으로 이동하다가 고블린 아처를 만나면 공격해봅시다!

      16턴 내로 모든 적 물리치기

      26턴 내로 모든 적 물리치기

      49턴 내로 모든 적 물리치기

    GAMEOVER
      50턴

    [열네번째 모험]에서 배운 내용을 활용하시면 더 빠르게 클리어 하실 수 있습니다!

    소환 가능한 용사 : 빈센트

    레드나스
    이번 모험의 목표는 숲에 있는 모든 고블린 아처를 물리치는 것입니다. 고블린 아처는 원거리 공격을 하기 때문에 우리도 원거리 공격을 해야합니다.

    레드나스
    만약 근거리처럼 detect_monster()로 바로 앞의 몬스터가 있는지 확인해서 공격한다면, 몬스터 앞까지 움직일 때 원거리 공격을 받게되니 우리도 attack(3)을 할 수 있도록 움직여야 합니다. 

    몬스터 앞까지 바로 가고 있으면, 그 사이 공격을 받게 됩니다.

    레드나스
    고블린 아처를 공격할 수 있을 때까지 가기 위해서는 용사 3칸 앞에 몬스터가 있는지 알아야 합니다.

    js
    레드나스
    용사 3칸 앞까지 몬스터가 있는지 알기 위해서는 search_monster()를 사용해야합니다. search_monster()는 용사 앞으로 첫번째 칸, 두번째 칸, 세번째 칸에 몬스터가 있는지 없는지 알려줍니다. debug를 통해서 어떻게 알 수 있을지 확인해봅시다.


    [파이썬(Python3)]

    py3

    [자바스크립트(Javascript)]

    js
    레드나스
    콘솔을 보면 처음에는 [false, false, false]로 나오다가, 고블린 아처가 용사 3칸 앞에 있자 [false, false, true]로 바뀌는 걸 확인하실 수 있습니다.

    [false, false, false]이다가 [false, false, true]로 바뀌었다.

    레드나스
    콘솔을 보면 처음에는 [false, false, false]로 나오다가, 고블린 아처가 용사 3칸 앞에 있자 [false, false, true]로 바뀌는 걸 확인하실 수 있습니다. 우리는 저 true로 바뀔 때 고블린 아처를 공격해야합니다.

    레드나스
    search_monster()는 [false, false, false]와 같이 []에 false나 true를 담아서 주고 있습니다. 우리는 []를 배열이라고 부릅니다. 배열의 첫번째 값은 용사 첫번째 칸 앞에 몬스터가 있는지를 알려줍니다. 두번째, 세번째 또한 용사 두번째 칸, 세번째 칸 앞에 몬스터가 있는지 알려줍니다.

    js
    레드나스
    배열을 result라는 변수에 저장하고 조건문으로 첫번째 칸에 있는지, 두번째 칸에 있는지, 세번째 칸에 있는지 확인합니다. 값을 확인할 때는 변수[0], 변수[1], 변수[2]와 같이 [0], [1], [2]를 붙여줍니다.

    [파이썬(Python3)]

    py3

    [자바스크립트(Javascript)]

    js
    레드나스
    고블린을 물리치셨나요? 훌륭합니다! 여기서 조금만 더 팁을 드리겠습니다. 코드를 보시면, if가 똑같이 생긴 것이 3개가 반복되고 있습니다. 이럴 땐 "반복문"을 통해 코드를 줄일 수 있습니다.

    [파이썬(Python3)]

    py3
    레드나스
    코드 중 for로 시작되는 것이 바로 "반복문"입니다. 이 반복문은 for로 시작하고 있어 for문이라고 부릅니다. 위의 for문은 "i가 0으로 시작해서 i가 1씩 증가하는데 i가 3보다 작을때까지 반복된다."라는 뜻입니다.

    레드나스
    i가 1씩 증가하는데 3보다 작을 때까지 반복되므로, i가 0, 1, 2가 됩니다. i가 0일 때는 첫번째 if문처럼, i가 1일 때는 두번째 if문처럼, 2일 때는 세번째 if문처럼 동작하게 됩니다. 


    [자바스크립트(Javascript)]

    js
    레드나스
    이 코드 또한 for문이라고 부릅니다. 파이썬(Python3)과는 조금 다르게 생겼습니다만 똑같이 동작합니다.

    레드나스
    조금 다른 점은 "i가 0부터 시작한다.", "i가 3보다 작을 때까지 반복된다", "i는 1씩 증가한다"가 ";"로 구분되어 있다는 점입니다. 이제 전체 코드로 표현해보면 다음과 같습니다.

    [파이썬(Python3)]

    py3

    [자바스크립트(Javascript)]

    js

    레드나스
    수고하셨습니다. 이제 몬스터가 어디에 있던 원거리 용사로 공격을 하실 수 있게 되었습니다. 다음 모험으로 이동해봅시다.



    이번 모험에서 배운 것을 정리해봅시다.

    1. 배열을 배웠습니다.


    배열은 프로그래밍 언어에서 굉장히 중요합니다. 우리가 원하는 변수나 값을 순서대로 가지고 있습니다. 배열은 []으로 표현하고, ['a', 'b', 'c', 'd', ...] 처럼 데이터를 가지고 있습니다. 배열은 특이하게 첫번째 공간0번째 인덱스라고 부릅니다. 두번째 공간1번째 인덱스가 됩니다. 즉, 'a'는 배열의 0번째 인덱스 값, 'b'는 배열의 1번째 인덱스 값으로 부릅니다. 


    2. 반복문 중 for문을 배웠습니다.

    우리는 이번 모험에서 같은 모양, 패턴을 가진 코드를 반복문을 통해 다시 구현해봤습니다. 반복문은 초기값을 설정하고 반복을 언제까지 할 것인지 초기값의 값을 통해 판단합니다. 예를 들어,  i=0; i<100; i++ 라는 조건이라면 초기값 i=0으로 시작하고, i++ 즉, i를 1씩 증가시켜서 i<100, i가 100보다 작을 때까지 반복된다는 뜻입니다. 


    3. search_monster()를 배웠습니다.

    용사 앞 3칸까지 몬스터가 있는지 없는지를 알려줍니다. 배열을 이용하여 있으면 true, 없으면 false로 채워져있습니다.