needmoreeasy EN 한국어
배우기

35 — 할 일 목록: 넣고 지우고 보기

★★★★☆ (4/5)프로젝트
선수 지식
22 — 터미널 메뉴, 31 — 은행
결과물
명령을 계속 받으며 할 일을 넣고 지우고 보여 주는 목록

앞의 프로그램들은 한 번 묻고 끝났습니다. 실제로 쓰는 프로그램은 끝내라고 할 때까지 계속 명령을 받습니다. 목록 하나와 계속 도는 반복이면 됩니다.

단계

  1. 끝없이 도는 반복은 계속 반복해입니다. 나가려면 멈춰가 필요합니다:

    계속 반복해
        명령을 물어봐 끝내려면 끝내기
        만약에 명령이 끝내기와 같으면
            멈춰
        끝
        받았습니다 말해줘
    끝
    다 했습니다 말해줘
    
    실행해 보기 →

    멈춰가 없으면 프로그램이 영영 끝나지 않습니다.

  2. 넣는 것은 목록에 넣는 한 줄입니다:

    할일들은 빈 목록
    할일들에 우유 사기 넣어
    할일들에 책 읽기 넣어
    할일들 개수 말해줘
    할일들을 쉼표로 이어 말해줘
    
    실행해 보기 →

    2와 우유 사기, 책 읽기가 나옵니다.

  3. 없는 것을 지우면 프로그램이 멈춥니다. 그래서 먼저 있는지 묻습니다. 찾을 것은 이름에 담아 둡니다 — 여러 낱말로 된 것은 조건에 바로 쓸 수 없기 때문입니다:

    할일들은 빈 목록
    할일들에 우유 사기 넣어
    찾을것은 우유 사기
    만약에 할일들에 찾을것이 있으면
        할일들에서 찾을것 빼
    아니면
        그런 일은 없습니다 말해줘
    끝
    할일들 개수 말해줘
    
    실행해 보기 →

    0이 나옵니다.

  4. 명령이 넷이면 아니면 만약에를 세 번 씁니다. 마지막 아니면이 나가는 자리입니다:

    명령은 보기
    만약에 명령이 넣기와 같으면
        넣습니다 말해줘
    아니면 만약에 명령이 지우기와 같으면
        지웁니다 말해줘
    아니면 만약에 명령이 보기와 같으면
        보여 줍니다 말해줘
    아니면
        끝냅니다 말해줘
    끝
    
    실행해 보기 →
  5. 전체입니다:

    할일들은 빈 목록
    계속 반복해
        명령을 물어봐 넣기 지우기 보기 끝내기 중 하나
        만약에 명령이 넣기와 같으면
            할일을 물어봐 무엇을 할까요
            할일들에 할일 넣어
        아니면 만약에 명령이 지우기와 같으면
            할일을 물어봐 무엇을 지울까요
            만약에 할일들에 할일이 있으면
                할일들에서 할일 빼
            아니면
                그런 일은 없습니다 말해줘
            끝
        아니면 만약에 명령이 보기와 같으면
            할일들 개수 말해줘
            할일들을 쉼표로 이어 말해줘
        아니면
            멈춰
        끝
    끝
    다 했습니다 말해줘
    
    실행해 보기 →

직접 해보기

보기에서 하나씩 줄을 바꿔 보여 주게 해 보세요 — 할일들의 할일마다 순서와 함께 반복해 안에서 순서와 할 일을 함께 보여 주면 번호가 붙은 목록이 됩니다. 프로그램을 끄면 목록이 사라지는데, 파일에 남기는 방법은 37번에서 나옵니다.

배운 것

  • 계속 반복해는 멈춰를 만날 때까지 돕니다. 나가는 길을 반드시 둡니다.
  • 명령이 여럿이면 아니면 만약에를 이어 쓰고, 마지막 아니면이 나가는 자리입니다.
  • 지우기 전에 있는지 묻는 것이 프로그램을 멈추지 않게 하는 방법입니다.
  • 목록 하나로 프로그램 하나가 됩니다. 프로그램을 끄면 사라질 뿐입니다.

GitHub에서 이 문서 보기