앱 인벤터: 조건문 코딩하기

  • 조건문과 조건문 작성 방법에 대해 알아보기
  • 간단한 앱으로 조건부 블록 작성 연습하기

이 단원의 활동은 다음과 같습니다:

조건

모바일 앱은 열 때마다 정확히 같은 방식으로 실행되지 않습니다. 사용자의 상호 작용에 따라 실행되며, 항상 정확히 동일한 것은 아닙니다.

이벤트 핸들러와 이벤트 발생 시 특정 코드 블록이 실행되도록 트리거하는 방법에 대해 이미 알아보았습니다.

이벤트 핸들러 외에도 앱이 실행할 특정 코드 블록과 시기를 결정하는 다른 방법이 있습니다. 이를 조건. 그리고 조건과 관련된 블록을 조건부 블록.

갈림길에 선 남자

모범 모범 사례: 조건문이 얼마나 혼란스러운지 설명하는 데 사용할 수 있는 재미있는 프로그래밍 농담이 있습니다: 아내가 말했습니다: "마트에 가서 우유 한 팩을 사서 달걀이 있으면 여섯 개를 사세요." 저는 우유 6팩을 사서 돌아왔습니다.. 아내는 "왜 우유를 여섯 통이나 샀어?!?!"라고 말했습니다. 

재미있는 수수께끼이며 컴퓨터가 가끔 얼마나 멍청한지를 보여줍니다. 왼쪽의 첫 번째 코드 열은 '우유 6팩을 구매합니다'라는 요청에 따라 일어날 일입니다. 오른쪽의 두 번째 코드 열은 달걀 6개를 구매해야 하는 상황입니다.


"우유를 사면서 계란이 있으면 6개를 사세요."라고 해서 우유 6팩을 샀어요. 그녀의 요청은 실제로 "우유를 사서 매장에 계란이 있으면 우유 6팩을 사세요"로 읽힙니다. "달걀 6개"라고 명시해야 합니다. 

컴퓨터는 사용자가 제공한 정보로만 작동하므로 구체적인 정보를 입력해야 합니다.

학생들에게 물어볼 수 있는 안내 질문 즐겨 사용하는 앱의 조건은 무엇인가요? (예: 틱톡에 로그인한 경우 목록에서 FYP를 가져오고, 그렇지 않은 경우 무작위로 가져오고, 사용자가 다크 모드를 활성화한 경우 모든 것을 검은색으로 전환)

멘토 팁은 AmeriCorps의 지원을 받아 제공됩니다.

양식화된 A, 아메리칸 군단 로고(네이비)

빗속에서 우산을 들고 있는 소녀

실제 조건의 예로 날씨를 들 수 있습니다.

해당 조건에 따라 결정을 내립니다.

비가 오면 우산을 사용합니다.

조건은 '비'입니다.

  1. 날씨 앱을 확인하거나 창밖을 내다보면서 해당 조건이 참인지 거짓인지 판단합니다.
  2. 그런 다음 상태에 따라 조치를 취합니다.
    1. 비가 오면 우산을 가져가세요.
    2. 그렇지 않으면 건너뛰고 문 밖으로 나가면 됩니다.

우리는 주변 상황에 따라 모든 종류의 결정을 내립니다. 모바일 앱도 앱 내의 조건에 따라 결정을 내립니다. 예를 들어 사용자가 비밀번호를 잘못 입력하면 앱은 사용자에게 이를 알리는 메시지를 표시하고 앱에서 더 이상 진행하지 못하도록 합니다.

조건문은 앱 인벤터를 포함한 모든 프로그래밍 언어의 기본입니다.

앱 인벤터에서 조건부 블록의 구조는 다음과 같습니다.

IF 조건

조건부 블록은 Control 서랍에서 찾을 수 있습니다.

앱 인벤터 조건부 블록

이러한 블록의 작동 방식은 다음과 같습니다.

앱 인벤터 차단 시

조건 조건
를 if에 스냅합니다.

조건이 참이면, 조건의 then 슬롯의 코드가 실행됩니다.

 조건이 거짓이면
코드가 건너뛰고 아무 일도 일어나지 않습니다.

앱 인벤토리를 차단하면

if/else를 사용하면 조건이 true이면 then 슬롯의 코드가 실행됩니다.

조건이 거짓이면, 조건의 else 슬롯의 코드가 실행됩니다.

앱 인벤터 만약 그렇지 않으면 차단

만약/다른 경우 블록을 사용하면 첫 번째 조건이 참이면 첫 번째 코드의 다음 슬롯의 코드가 실행됩니다.

첫 번째 조건이 거짓이면 다음 조건이 확인됩니다.

 두 번째 조건이 참이면 두 번째 코드의 의 코드가 슬롯이 실행됩니다.

 두 번째 조건이 거짓이면, 코드의 else 슬롯의 코드가 실행됩니다.

두 조건이 모두 거짓이면 블록이 건너뛰고 아무 일도 일어나지 않습니다.

파란색 톱니바퀴 아이콘을 클릭하여 조건부 블록을 변경할 수 있습니다.

그런 다음 다른 항목을 더 드래그하여 차단합니다.

다른 경우 블록을 사용하면 하나의 블록에서 여러 조건을 테스트할 수 있습니다.

앱 인벤터 조건부 블록
앱 인벤터 IF-ELSE 블록
앱 인벤터 if else-if else 블록

비가 오면
우산을 사용하세요.

하나의 조건, 하나의 옵션. 그렇지 않으면 아무것도 하지 마세요.

온도가 22℃보다 높으면
창을 열고
그렇지 않으면 창을 닫습니다.

조건은 하나지만 옵션은 두 가지입니다.
하나는 참, 하나는 거짓입니다.

온도가 22℃보다 높으면
이면 창을 엽니다.
그렇지 않으면 온도가 7C 미만인지 확인합니다.
그렇다면 난방을 켜세요.
을 켜고 창을 닫습니다.

두 가지 조건(
)이 체크되었지만 옵션은 3개입니다.

중요! 여러 조건을 테스트하는 순서는 중요합니다. 조건이 참인 것으로 확인되면 해당 코드를 실행하고 나머지는 건너뜁니다.

따라서 세 번째 예제에서는 온도가 22보다 크면 창을 열고 두 번째 if 블록을 확인하지 않습니다.

코딩 예제를 살펴보겠습니다.

카운팅 게임은 자신(또는 상대방)과 함께 숫자를 계속 더해 100을 정확히 맞추는 간단한 앱입니다. 넘어가면 패배합니다.

카운팅 게임 실행 애니메이션

활동: 숫자 세기 게임

예상 시간: 20분

조건문을 사용하여 숫자 세기 게임 완료

앱 인벤터에서 시작 프로젝트를 열고 '앱 인벤터에 앱 로드' 링크를 눌러 직접 복사본을 만듭니다.

그런 다음 워크시트의 지침에 따라 앱을 완성하세요!
워크시트 열기

조건부 블록을 사용하여 카운팅 게임을 성공적으로 코딩하셨기를 바랍니다!

가능한 해결책을 보려면 이 버튼을 클릭하세요.

총합 기능 블록 확인

도전 과제

앱에 재설정 버튼을 추가합니다.

재설정 버튼은 사용자가 다시 플레이할 수 있도록 합계를 0으로 되돌려야 합니다.

돌아보기 

매일 의사 결정을 내릴 때 사용하는 조건문을 생각해 볼 수 있나요? 다음은 몇 가지 예입니다:

갈 방향이 다른 게시물
날씨가 추우면 재킷을 입으세요.
휴대폰이 방전된 경우 충전하세요.
아프면 병원에 가고, 아프지 않으면 학교에 가세요.
옷이 더러우면 세탁하고 그렇지 않으면 옷장에 보관하세요.

주요 용어 검토

  • 조건 - 무언가가 겪고 있는 상태 또는 상황
  • 조건문 또는 블록 - 컴퓨터가 조건에 따라 의사 결정을 내리는 방법
  • if/else - 는 프로그래밍에서 흔히 사용되는 조건문의 한 형태로, 조건이 참이면 컴퓨터에게 이 작업을 수행하라고 지시합니다. 그렇지 않으면 조건이 거짓이면 다른 작업을 수행합니다.

추가 리소스

좀 더 많은 연습을 원하신다면 Dave Wolber 교수의 이 예제를 확인해 보세요. 그는 조건문을 사용하여 사운드보드 앱에서 사운드 파일을 시작하고 일시 중지합니다.