1 00:00:00,000 --> 00:00:05,140 2 00:00:05,140 --> 00:00:05,640 괜찮아. 3 00:00:05,640 --> 00:00:08,330 그래서 지금의 뭔가에 대해 이야기하자 programming-- 정말 유용 4 00:00:08,330 --> 00:00:09,914 조건문. 5 00:00:09,914 --> 00:00:11,830 그래서 조건식 프로그램을 허용 6 00:00:11,830 --> 00:00:14,538 결정을 내리고 다른 취할 도로, 뭔가 포크 7 00:00:14,538 --> 00:00:17,670 나는 조금 일찍 언급 변수의 값에 따라, 8 00:00:17,670 --> 00:00:20,990 또는를 기반으로 어떤 사용자 입력에 프로그래머, 명령 줄에서, 9 00:00:20,990 --> 00:00:23,130 또는 당신은 프롬프트가있는 경우 또는 그런 일. 10 00:00:23,130 --> 00:00:26,690 C는 다른 몇 가지 방법으로이 , 조건식을 표현하는 11 00:00:26,690 --> 00:00:29,911 우리는 또한 때때로를 호출합니다 프로그램에서 조건 분기. 12 00:00:29,911 --> 00:00:32,910 그리고 이들 중 일부는 볼거야 처음부터 당신에게 꽤 익숙한, 13 00:00:32,910 --> 00:00:35,190 그래서 우리는 심지어 그들을 끌어 것이다 나란히 최대 단지 14 00:00:35,190 --> 00:00:38,170 당신은 당신의 머리에 그 비유를 만들 수 있습니다. 15 00:00:38,170 --> 00:00:41,250 >> 그래서, 혹시 ... 꽤 경우 조건부 간단합니다. 16 00:00:41,250 --> 00:00:43,560 당신은 기억 경우 여기 오른쪽에 스크래치 17 00:00:43,560 --> 00:00:50,000 그 육각형은 당신이 채울 수 파란색 식 아래로 마우스의 경우와 18 00:00:50,000 --> 00:00:53,010 또는 x가 10보다 작을 경우, 또는 그런 일. 19 00:00:53,010 --> 00:00:57,390 그리고 나서, 만약 X가 10 미만이었다 또는 마우스가 사실이라면, 아래로, 20 00:00:57,390 --> 00:01:01,140 내부의 모든 코드 퍼즐 조각이 실행됩니다. 21 00:01:01,140 --> 00:01:03,720 에 맞게 모든 것들 그 C 모양 내부. 22 00:01:03,720 --> 00:01:07,200 >> 마찬가지로, 우리가 할 이 왼쪽에있는 경우. 23 00:01:07,200 --> 00:01:09,210 부울 표현하면, 난 그냥 사용하고있는 24 00:01:09,210 --> 00:01:13,010 부울 중 하나에 대한 대체 우리가 이전에 논의 된 표현, 25 00:01:13,010 --> 00:01:15,240 열린 중괄호, 가까운 중괄호. 26 00:01:15,240 --> 00:01:17,720 그래서 열린 곱슬 생각 중괄호와 닫힌 중괄호 27 00:01:17,720 --> 00:01:22,720 샌드위치에 같은 종류의 유사 오른쪽에있는 경우 블록의 효과 28 00:01:22,720 --> 00:01:24,070 기스로부터. 29 00:01:24,070 --> 00:01:28,680 >> 부울 식의 경우 if 문에, 사실 30 00:01:28,680 --> 00:01:30,900 코드의 모든 라인 중괄호 31 00:01:30,900 --> 00:01:33,870 순서대로 실행됩니다 위에서 아래로. 32 00:01:33,870 --> 00:01:35,700 부울 식의 경우 거짓, 우리는거야 33 00:01:35,700 --> 00:01:38,610 모두 건너 뛰고 사이에 중괄호, 때문에 우리 만 34 00:01:38,610 --> 00:01:44,570 도로에 그 포크를 내려 가고 싶어 경우 부울 표현은 사실이다. 35 00:01:44,570 --> 00:01:48,540 >> 우리는이 하나의 조치를 취할 수 있습니다 더 다른 경우에. 36 00:01:48,540 --> 00:01:50,820 그래서이 스크래치 블록은 하나 꽤 유사 37 00:01:50,820 --> 00:01:55,884 우리는 제외하고, 잠깐 전에 보았다 이를 기반으로 두 개의 서로 다른 경로를 취 38 00:01:55,884 --> 00:01:56,550 무슨 일에. 39 00:01:56,550 --> 00:02:00,420 마우스가 다운 된 경우에 따라서, 또는 X 미만인 경우는 10이었다 40 00:02:00,420 --> 00:02:04,780 우리 사이의 모든 일을 할 것이다 첫 번째 포크, 첫 번째 다, 41 00:02:04,780 --> 00:02:08,430 >> 그렇지 않은 경우, 마우스는인지 업, 또는 X가 10 이상인, 42 00:02:08,430 --> 00:02:10,460 우리는 두 번째 세트에서 모든 것을 할 것입니다. 43 00:02:10,460 --> 00:02:15,010 그리고는 당신이 보는 것과 유사한의 여기 C. 만약 부울 표현, 44 00:02:15,010 --> 00:02:17,910 사이의 물건을 첫 번째 괄호의 집합입니다. 45 00:02:17,910 --> 00:02:20,550 그 밖에, 사이의 물건을 두 번째 괄호의 집합입니다. 46 00:02:20,550 --> 00:02:22,080 부울 경우에 따라서 표현은 우리가거야, 사실 47 00:02:22,080 --> 00:02:23,580 첫 번째 집합 사이의 무엇이든. 48 00:02:23,580 --> 00:02:27,480 부울 식입니다 경우 거짓, 즉 다른 트리거 것이다, 49 00:02:27,480 --> 00:02:30,100 우리는 무엇에의 할​​ 것 중괄호의 두 번째 세트. 50 00:02:30,100 --> 00:02:34,190 또, 위에서 아래로, 모든 중괄호 사이에 라인. 51 00:02:34,190 --> 00:02:38,130 >> C에서, 생성 할 수있어 IF-다른 경우 - 다른 체인. 52 00:02:38,130 --> 00:02:42,000 사실 당신이 할 수있는 경우 - 다른 경우 - 다른 IF-다른 등등 만일 그렇다면, 등, 그리고 53 00:02:42,000 --> 00:02:42,720 에. 54 00:02:42,720 --> 00:02:44,660 스크래치, 이것은 필수 블록을 중첩. 55 00:02:44,660 --> 00:02:48,280 당신은 IF-다른 추가, 당신은에 있었다 다른 사람의 내부에 또 다른 하나를 넣어, 56 00:02:48,280 --> 00:02:51,110 등, 및 그 종류있어 의 중첩 된 복잡한. 57 00:02:51,110 --> 00:02:52,450 그러나 C, 우리는 그렇게 할 필요가 없습니다. 58 00:02:52,450 --> 00:02:55,300 우리는 실제로 단지 수 있습니다 그것은이 같은 체인합니다. 59 00:02:55,300 --> 00:02:58,350 다시 말하지만, 당신은 모든 예상대로 이 지점은 함께 사용할 수 없습니다. 60 00:02:58,350 --> 00:03:00,750 당신은 지금까지 갈 수있다 가지 중 하나를 아래로. 61 00:03:00,750 --> 00:03:02,270 경우이 사실이다. 62 00:03:02,270 --> 00:03:03,930 그렇지 않으면,이 사실 인 경우. 63 00:03:03,930 --> 00:03:05,700 그렇지 않으면,이 사실 인 경우. 64 00:03:05,700 --> 00:03:07,120 그렇지 않으면,이 작업을 수행. 65 00:03:07,120 --> 00:03:11,010 그래서이있는 지점의 네 예는 상호 배타적입니다. 66 00:03:11,010 --> 00:03:14,900 이 경우 - 다른 경우 - 다른 체인입니다. 67 00:03:14,900 --> 00:03:17,580 >> 그것은, 비록 가능 때로는 매우 유용합니다, 68 00:03:17,580 --> 00:03:20,950 체인을하지 만들 수 있습니다 상호 배타적 가지. 69 00:03:20,950 --> 00:03:24,600 이 예에서, 단지 세 번째 네 번째 지점은 함께 사용할 수 없습니다. 70 00:03:24,600 --> 00:03:27,450 그것은 당신이 할 수 있다고 할 수있다 첫 번째 조건을 만족 71 00:03:27,450 --> 00:03:29,396 당신은 만족 될 수있다 두 번째 조건, 72 00:03:29,396 --> 00:03:31,770 당신은 만족 될 수있다 세 번째 condition--하는 경우 73 00:03:31,770 --> 00:03:35,270 첫 번째 지점을 갈 것입니다, 당신은 두 번째 분기를 아래로 이동 74 00:03:35,270 --> 00:03:37,000 당신은 제 3 분기를 갈 것입니다. 75 00:03:37,000 --> 00:03:40,450 아니면 당신은 첫 번째를 만족 조건과 두 번째 조건, 76 00:03:40,450 --> 00:03:42,770 하지만 당신은 만족하지 않는 세 번째 조건. 77 00:03:42,770 --> 00:03:46,230 이 경우 첫 번째 아래로 이동 분기와 제 2 분기, 78 00:03:46,230 --> 00:03:48,040 다음 네 번째 지점, 79 00:03:48,040 --> 00:03:51,392 >> 그 이유는 다른 점이다 경우에만 가장 가까운에 바인딩됩니다. 80 00:03:51,392 --> 00:03:53,100 그래서 거기에도 불구하고 다른 여기에, 그 81 00:03:53,100 --> 00:03:56,490 반드시 서로를 만들지 않습니다 모든 것을 독점 체인. 82 00:03:56,490 --> 00:04:00,890 이는 단지 표현의 이 부울와 83 00:04:00,890 --> 00:04:05,040 표현 3-- 즉이다 다른 사람과 상호 배타적. 84 00:04:05,040 --> 00:04:07,580 그래서 가능하고, 때로는 매우 유용, 85 00:04:07,580 --> 00:04:11,772 내가 말했듯이,의 체인을 만들 수 있습니다 상호 배타적이지 분기합니다. 86 00:04:11,772 --> 00:04:14,230 의 다른 살펴 보자 조건부 가지, 어떤 87 00:04:14,230 --> 00:04:17,392 당신은 스크래치에 전에 보지 못했어요. 88 00:04:17,392 --> 00:04:19,369 라는 뭔가가있다 스위치 문. 89 00:04:19,369 --> 00:04:21,410 스위치 문이다 이 때문에 종류의 깔끔한 90 00:04:21,410 --> 00:04:25,930 수있는 조건문 당신은 별개의 사례를 지정합니다 91 00:04:25,930 --> 00:04:28,926 대신 부울에 의존 표현은 당신을 위해 결정을 내릴 수 있습니다. 92 00:04:28,926 --> 00:04:31,050 그래서 예를 들어, 말을하자 나는이 프로그램을 가지고, 93 00:04:31,050 --> 00:04:34,110 나는 사용자를 부탁 해요 나에게 입력을 제공합니다. 94 00:04:34,110 --> 00:04:37,170 그래서 내가 말, INT X =) (INT 가져 오기 당신이 아직 익숙하지 않은 경우, 95 00:04:37,170 --> 00:04:40,190 INT 얻을 것은 기능입니다 또한, CS50 라이브러리에 포함 96 00:04:40,190 --> 00:04:44,610 당신이 CS50.H를 #include 할 경우 그래서 당신은 할 수 있습니다 액세스는 지능 (가져 오기)와 모두에 그 97 00:04:44,610 --> 00:04:46,840 cousins​​-- GetFloat, getString에, 등등. 98 00:04:46,840 --> 00:04:52,590 기본적으로 하나마다에 대한 기능을 가져 오기 우리가 이미 언급 한 데이터 유형입니다. 99 00:04:52,590 --> 00:04:53,970 >> 그래서 지능의 X는의 getInt는 같습니다. 100 00:04:53,970 --> 00:04:56,390 기본적으로 무슨 일이 일어나고 있는지 내가 터미널에있어입니다. 101 00:04:56,390 --> 00:04:58,790 나는 숫자를 입력하는 사용자를 부탁 해요. 102 00:04:58,790 --> 00:05:02,300 >> 그리고 여기 스위칭 해요 내가 뭘하는지, 따라 103 00:05:02,300 --> 00:05:05,060 사용자가 프롬프트에 입력 한 내용에. 104 00:05:05,060 --> 00:05:09,147 그들은 하나를 입력한다면, 나는 하나의 인쇄. 105 00:05:09,147 --> 00:05:09,855 그리고 나는 휴식. 106 00:05:09,855 --> 00:05:12,590 107 00:05:12,590 --> 00:05:15,510 그들은 두 가지를 입력하면, 나는 두 인쇄. 108 00:05:15,510 --> 00:05:16,690 그리고 나는 휴식. 109 00:05:16,690 --> 00:05:19,060 그것은에 중요 각각의 경우 사이에 휴식 110 00:05:19,060 --> 00:05:20,890 그렇지 않으면 당신은을 통해 떨어질 것 때문이다. 111 00:05:20,890 --> 00:05:23,380 나는 어떤을 작성하지 않은 경우 거기 바꿈 사용자 112 00:05:23,380 --> 00:05:31,380 입력 된 하나, 그것이 어떤 일이 일어날 것 유감, 하나, 둘, 셋을 출력한다. 113 00:05:31,380 --> 00:05:33,099 그건 바로, 이상한 행동 종류입니까? 114 00:05:33,099 --> 00:05:33,890 당신은 그렇게 생각할 수 있습니다. 115 00:05:33,890 --> 00:05:36,480 그러나 실제로 어떤 경우 곳이 있습니다 이 꽤 유용한 일이 될 수 있습니다. 116 00:05:36,480 --> 00:05:39,730 그래서 여기에 스위치의 또 다른 예이다 내가 휴식을 생략 문. 117 00:05:39,730 --> 00:05:42,030 하지만 목적에 그것을 할. 118 00:05:42,030 --> 00:05:43,030 >> 그래서 여기에 어떻게됩니까? 119 00:05:43,030 --> 00:05:43,821 잠시 생각. 120 00:05:43,821 --> 00:05:45,960 당신은 비디오를 일시 중지 할 수 있습니다. 121 00:05:45,960 --> 00:05:48,230 >> 어떤 경우 여기 발생 사용자 유형 네? 122 00:05:48,230 --> 00:05:51,190 123 00:05:51,190 --> 00:05:53,860 그래서 유저에게 입력을 요청했습니다. 124 00:05:53,860 --> 00:05:56,560 그리고 그들은 값 4를 제공합니다. 125 00:05:56,560 --> 00:05:59,545 나는 그것을 어떻게 인쇄 된 도착하면? 126 00:05:59,545 --> 00:06:02,170 이전 슬라이드에서 있었다 모든 경우 사이의 휴식 시간. 127 00:06:02,170 --> 00:06:04,750 그리고 그것은 단지 것 인쇄 사 후 중지합니다. 128 00:06:04,750 --> 00:06:06,610 그러나이 경우,하지 않을 것이다. 129 00:06:06,610 --> 00:06:10,700 어떤 일이 일어날 것은 당신입니다 각각의 경우를 통해 떨어질 것이다. 130 00:06:10,700 --> 00:06:14,890 >> 따라서이 경우에는 내 경우를 조직했습니다 이러한 방식으로 그 사용자 유형 4의 경우, 131 00:06:14,890 --> 00:06:20,070 나는 인쇄 할 네, 세, 둘, 하나는 떨어져 폭발. 132 00:06:20,070 --> 00:06:22,780 그들은 5를 입력 한 경우, 나는 시작할 것 그리고 5시에 같은 일을. 133 00:06:22,780 --> 00:06:26,410 그들은 1을 입력 한 경우, 나는 것 다만, 폭발 하나를 수행합니다. 134 00:06:26,410 --> 00:06:28,715 >> 이 경우에 그래서, 내가 사용하고 있습니다 스위치 종류의 영리 그래서 135 00:06:28,715 --> 00:06:30,804 나는 가을하려는 않는 것이 모든 경우를 통해. 136 00:06:30,804 --> 00:06:33,720 그러나 일반적으로 당신은 아마거야 그들 모두 사이에 헤어지고 싶어, 137 00:06:33,720 --> 00:06:36,090 당신은 상황이 없으면 당신이있어이 같은 138 00:06:36,090 --> 00:06:40,081 가지 사실을 활용하면거야 그 쉬지 않고 사건을 통해 가을. 139 00:06:40,081 --> 00:06:42,830 그래서 주요의 제입니다 조건문의 종류. 140 00:06:42,830 --> 00:06:47,139 ? 어떤의 마지막은 다음과 같습니다 그래서 여기에 C 코드의 두 조각이있다. 141 00:06:47,139 --> 00:06:48,680 왼쪽에 하나는 오른쪽에 하나. 142 00:06:48,680 --> 00:06:52,330 왼쪽에있는 한해야 아마 꽤 잘 알고. 143 00:06:52,330 --> 00:06:55,110 >> 나는 지능의 X가 있습니다. 144 00:06:55,110 --> 00:06:57,167 그리고 나는 아마해야 사용자 요구했다 145 00:06:57,167 --> 00:07:00,250 for--이 아마 지능의 X이어야한다 의 getInt, 또는 그런 일이 같습니다. 146 00:07:00,250 --> 00:07:03,030 147 00:07:03,030 --> 00:07:05,240 그리고 나는 결정을 만들고있어. 148 00:07:05,240 --> 00:07:11,700 일부 부울 식입니다 경우 사실, 값 5 × 할당합니다. 149 00:07:11,700 --> 00:07:13,590 그렇지 않으면, 값 6 X 할당합니다. 150 00:07:13,590 --> 00:07:16,548 >> 왼쪽에 그건 아마해야 우리의 논의에서 꽤 익숙한 151 00:07:16,548 --> 00:07:18,160 단지 순간 전 그렇지합니다. 152 00:07:18,160 --> 00:07:20,535 당신은 알고 놀랄 것 오른쪽에 선 그 153 00:07:20,535 --> 00:07:22,310 똑같은 일을합니까? 154 00:07:22,310 --> 00:07:26,140 >> ? 그래서이 호출된다 : 또는 때때로 삼항 연산자라고합니다. 155 00:07:26,140 --> 00:07:27,450 그리고 그것은 꽤 멋지다. 156 00:07:27,450 --> 00:07:29,110 이것은 보통 귀여운 트릭으로 사용된다. 157 00:07:29,110 --> 00:07:35,777 >> 하지만 수 있습니다 당신은 무엇을하는 것입니다하기 정말 작은과 그렇지 않은 경우를 시뮬레이션, 158 00:07:35,777 --> 00:07:37,610 정말 사소 짧은 조건 분기. 159 00:07:37,610 --> 00:07:41,470 당신은 일반적으로 사용하지 것이다 : 당신의 경우 각 세트 사이에 코드 여섯 줄을했다 160 00:07:41,470 --> 00:07:42,569 의 중괄호. 161 00:07:42,569 --> 00:07:44,360 그러나 당신은이 있다면 빠른 의사 결정, 162 00:07:44,360 --> 00:07:47,520 당신이 한 일을 할 거라면 또는 다른 그것은 매우 간단합니다, 163 00:07:47,520 --> 00:07:52,240 이 방법의 예가 될 수 있습니다 함께 할 : 삼항 연산자를. 164 00:07:52,240 --> 00:07:56,940 그래서 지능의 X는 표현과 같다? 165 00:07:56,940 --> 00:07:59,470 질문 후 일 마크의 X 어떤 값 166 00:07:59,470 --> 00:08:02,690 표현에 해당하는 경우 일 것이다. 167 00:08:02,690 --> 00:08:05,330 >> 후 일 콜론은 무엇 X의 값입니다 168 00:08:05,330 --> 00:08:07,990 표현식이 거짓 인 경우 일 것이다. 169 00:08:07,990 --> 00:08:11,510 그래서 나는 나 자신을 부탁 해요, 표현은 사실이다? 170 00:08:11,510 --> 00:08:13,870 이 경우, 값 5 × 할당. 171 00:08:13,870 --> 00:08:16,619 그렇지 않은 경우, 값 6 X 할당합니다. 172 00:08:16,619 --> 00:08:17,410 또, 같은 나는 말했다. 173 00:08:17,410 --> 00:08:18,670 이것은 일반적으로 그냥 귀여운 트릭이다. 174 00:08:18,670 --> 00:08:20,430 그리고 때로는 될 경우 정말 편안하게, 175 00:08:20,430 --> 00:08:22,820 보이는 때문에이 작업을 수행합니다 프로그램에서 멋진 가지. 176 00:08:22,820 --> 00:08:25,710 일반적으로 나는 그것을 제시하고있어 당신은 지금 당신이 그것을 잘 알고 177 00:08:25,710 --> 00:08:26,990 당신은 그것을 볼 경우. 178 00:08:26,990 --> 00:08:30,080 그러나 확실히 당신이 알고 있지 코드의 어느를 작성합니다. 179 00:08:30,080 --> 00:08:33,246 하지만 뭔가가 잘 알고 있어야하는 것입니다, 당신은 확실히 발생하는 것이기 때문에 180 00:08:33,246 --> 00:08:36,130 여기에 코드의 조각과 이 곳 : 문법, 181 00:08:36,130 --> 00:08:39,120 삼항 연산자 일명, 사용된다. 182 00:08:39,120 --> 00:08:40,960 >> 에 너무 빨리 요약 어떤 조건문이 있습니다 183 00:08:40,960 --> 00:08:44,210 및 옵션을 사용할 수 있습니다 무엇 당신이 C에서 당신에게 경우 IF-다른, 184 00:08:44,210 --> 00:08:46,860 그리고 만약 다른 경우, 등등. 185 00:08:46,860 --> 00:08:50,880 당신은 부울 표현식을 사용할 수 있습니다 사람들을 위해 의사 결정을 내릴 수 있습니다. 186 00:08:50,880 --> 00:08:53,720 >> switch 문을 사용하면 사용 분리 된 경우는 의사 결정을 내릴 수 있습니다. 187 00:08:53,720 --> 00:08:57,540 그것의 경우 구체적으로 말할 것 하나, 아니면 세의 경우이 두 가지를, 또는 경우, 188 00:08:57,540 --> 00:09:00,870 나는이 일을, 또는 것 이 일, 또는이 일. 189 00:09:00,870 --> 00:09:04,660 그리고 : 대체 할 수있다 아주 간단한 경우 - 다른 지점, 190 00:09:04,660 --> 00:09:08,490 또는 체인을 만들기 위해 - 다른 사람의 경우 코드가 좀 멋진 모습. 191 00:09:08,490 --> 00:09:09,250 >> 나는 더그 로이드입니다. 192 00:09:09,250 --> 00:09:11,410 그리고 이것은 CS50입니다. 193 00:09:11,410 --> 00:09:12,959