1 00:00:00,000 --> 00:00:02,880 >> [음악 재생] 2 00:00:02,880 --> 00:00:10,580 3 00:00:10,580 --> 00:00:13,500 >> SPEAKER 1 : 이것은 CS50이고 이것은 두 주의 시작이다. 4 00:00:13,500 --> 00:00:18,400 자, 잘 무언가에 뛰어 보자 즉 말하자면, 버그입니다. 5 00:00:18,400 --> 00:00:24,015 그래서, 이상 여기 CS50의 IDE 내가했습니다 이 빌어 먹을 screen-- 미리 뽑아 6 00:00:24,015 --> 00:00:25,070 그것. 7 00:00:25,070 --> 00:00:25,760 스포일러 경고. 8 00:00:25,760 --> 00:00:26,260 괜찮아. 9 00:00:26,260 --> 00:00:29,060 나는 여기에이 화면을 뽑아했습니다 이는 매우 간단한 프로그램이있다. 10 00:00:29,060 --> 00:00:32,659 우리는 아래로 스크롤하면 가장 이 단지 코멘트된다, 11 00:00:32,659 --> 00:00:36,730 하지만 여기에 라인 13를 통해 17 우리는 프로그램이 있습니다. 12 00:00:36,730 --> 00:00:40,580 >> 이 경우 의미, 구문 적으로 유효한이다 나는 그것이 컴파일 및 실행, 컴파일 13 00:00:40,580 --> 00:00:41,920 하지만 버그입니다. 14 00:00:41,920 --> 00:00:47,330 이 프로그램은 의견 주장 맨 위로는 10 별을 인쇄해야 15 00:00:47,330 --> 00:00:48,870 하지만 그렇지 않습니다. 16 00:00:48,870 --> 00:00:53,290 그리고 당신의 경험을 바탕으로, 또는 곧 C와 경험이 될 수 있습니다, 17 00:00:53,290 --> 00:00:56,820 당신은 논리적으로 식별 할 수있다 이 사실 버그가 왜? 18 00:00:56,820 --> 00:00:57,804 그래? 19 00:00:57,804 --> 00:00:59,220 청중 : 그것은 0에서 10로 이동합니다. 20 00:00:59,220 --> 00:01:01,884 즉 11의 반복이다. 21 00:01:01,884 --> 00:01:02,550 스피커 1 : 그래. 22 00:01:02,550 --> 00:01:06,030 그래서, 0에서거야 10을 통해 평등, 23 00:01:06,030 --> 00:01:08,140 물론 이는 11의 반복이다. 24 00:01:08,140 --> 00:01:10,020 그래서, 그것은 것 인쇄, 참으로, 11 개입니다. 25 00:01:10,020 --> 00:01:13,040 따라서, 컴퓨터 과학 협약 대부분의 프로그래밍 언어 26 00:01:13,040 --> 00:01:15,270 단지에, 참입니다 제로 카운트 시작 27 00:01:15,270 --> 00:01:18,800 이에 아니라 통해 계산 당신이 실제로 걱정 값. 28 00:01:18,800 --> 00:01:21,216 >> 자,이 한 가지입니다 조금 익숙해 걸립니다 29 00:01:21,216 --> 00:01:25,350 그리고 디자인도 스크래치, 그것은 그대로 비 프로그래머 또는 비 컴퓨터 30 00:01:25,350 --> 00:01:28,070 과학자와 어린이를위한 대체로,이 설계 31 00:01:28,070 --> 00:01:29,570 당신은 하나 일반적으로 계산 시작합니다. 32 00:01:29,570 --> 00:01:30,277 그리고 괜찮아요. 33 00:01:30,277 --> 00:01:33,110 당신은 절대적으로 계산 시작할 수 있습니다 하나가 더 편안합니다. 34 00:01:33,110 --> 00:01:37,210 그리고에 10를 통해 계산하지만, 당신은 이번 주에 특히 실현합니다 35 00:01:37,210 --> 00:01:39,950 그 이후 너무 프로그래밍에서 많은 것을 36 00:01:39,950 --> 00:01:42,465 0은 최초라고 가정 당신이 계산되는 자리, 37 00:01:42,465 --> 00:01:45,590 당신은 쉽게 찾을 거라고 단지 시작의 습관에 들어가 38 00:01:45,590 --> 00:01:49,490 및 0부터 카운트 값까지 당신은에서 지금 걱정 39 00:01:49,490 --> 00:01:49,990 이동 얻을. 40 00:01:49,990 --> 00:01:50,990 >> 그래서, 그 고정했다. 41 00:01:50,990 --> 00:01:53,670 우리는보다 적은을 변경하거나 보다 단지 이하로 동일합니다. 42 00:01:53,670 --> 00:01:56,050 이제 살펴 보자 여기에 두 번째 예. 43 00:01:56,050 --> 00:01:59,585 >> 그래서,이 프로그램은 너무에서 주장의 이 인쇄되어야 함을 상단까지 코멘트 44 00:01:59,585 --> 00:02:02,260 열 개 있지만 지원하지 않습니다. 45 00:02:02,260 --> 00:02:05,540 여기에 버그가 무엇입니까? 46 00:02:05,540 --> 00:02:07,930 >> 그래서, 뭐 ... 그리고 죄송합니다,의는 명확하게 할 수 있습니다. 47 00:02:07,930 --> 00:02:08,610 10 개입니다. 48 00:02:08,610 --> 00:02:11,644 한 줄에 하나씩,하지만하지 않습니다. 49 00:02:11,644 --> 00:02:14,810 그래서, 사실, 내가 가서 컴파일하자 조금 덜 때문에이 하나 50 00:02:14,810 --> 00:02:16,900 그 설명을 기반으로 취소합니다. 51 00:02:16,900 --> 00:02:18,720 내가 우리의 소스 디렉토리로 가자. 52 00:02:18,720 --> 00:02:25,110 버그를 하나의 점 슬래시, 버그를 확인합니다. 53 00:02:25,110 --> 00:02:28,680 좋아, 내가 11 별을 볼 수있는 여전히 문제가 54 00:02:28,680 --> 00:02:30,090 그러나 그들은 한 줄에 모든 것. 55 00:02:30,090 --> 00:02:31,500 여기에서 문제는 무엇입니까? 56 00:02:31,500 --> 00:02:32,339 그래. 57 00:02:32,339 --> 00:02:33,255 청중 : [들림]. 58 00:02:33,255 --> 00:02:36,194 59 00:02:36,194 --> 00:02:36,860 스피커 1 : 그래. 60 00:02:36,860 --> 00:02:40,210 그래서이 미묘는 당신이 할 수있다이다 나에 대한 간단한 언급을 기억합니다. 61 00:02:40,210 --> 00:02:42,793 심지어 모든 보이지만 예쁜, 그리고 멋지게 들여있어, 62 00:02:42,793 --> 00:02:45,850 그것은 종류의 스크래치처럼 보이는 16, 17은 그 라인에서, 63 00:02:45,850 --> 00:02:47,600 실제로, 루프 그 아래에 들여 쓰기. 64 00:02:47,600 --> 00:02:48,400 즉 비 물질적이다. 65 00:02:48,400 --> 00:02:50,460 컴퓨터가하지 않습니다 알고 있거나 공백을 참조하십시오. 66 00:02:50,460 --> 00:02:52,910 공백은 단지입니다 우리는 문체, 인간. 67 00:02:52,910 --> 00:02:57,010 당신이 때 컴퓨터가 알 수 있습니까 실제로 중괄호, 어떤이 것, 68 00:02:57,010 --> 00:02:58,280 이 문제를 해결. 69 00:02:58,280 --> 00:03:02,350 >> 그래서, 우리가 실제로 갔던 경우 명시 적으로 괄호에 넣어 70 00:03:02,350 --> 00:03:05,220 즉,이 문제를 해결하는 것 컴파일러 분명하게 71 00:03:05,220 --> 00:03:07,930 실제로 실행하도록 다시 두 줄의 코드, 72 00:03:07,930 --> 00:03:09,220 다시, 다시. 73 00:03:09,220 --> 00:03:11,680 그러나 기본적인 설명은 무엇입니까? 74 00:03:11,680 --> 00:03:12,180 권리? 75 00:03:12,180 --> 00:03:15,260 우리는 엄격하게 필요하지 않습니다 곱슬 모든 시간 교정기 76 00:03:15,260 --> 00:03:18,210 아마 가장 비록 연습 어쨌든 그 습관에 들어가 77 00:03:18,210 --> 00:03:20,878 심지어 두 개의 추가 비록 코드 문자. 왜? 78 00:03:20,878 --> 00:03:22,380 >> 청중 : [들리지]? 79 00:03:22,380 --> 00:03:24,630 스피커 1 : 그래, 그래서 그건 모두 다른 솔루션입니다. 80 00:03:24,630 --> 00:03:25,130 권리? 81 00:03:25,130 --> 00:03:28,250 첫눈에 당신은하지 특히​​ 경우 정말 무슨 일이 일어나고 있는지에 감사드립니다. 82 00:03:28,250 --> 00:03:31,070 음, 확실히 우리는 할 수 단 한 번에 두 가지 일을 할 83 00:03:31,070 --> 00:03:32,710 그냥 모두 문제를 피할 수 있습니다. 84 00:03:32,710 --> 00:03:36,080 그리고, 지금은 괜찮습니다,하지만 오늘의 목적은 무엇 85 00:03:36,080 --> 00:03:38,200 버그에 대한 설명은? 86 00:03:38,200 --> 00:03:39,810 왜 한 줄에 모든 별이었다? 87 00:03:39,810 --> 00:03:40,806 그래? 88 00:03:40,806 --> 00:03:43,296 >> 청중 :이 경우 것 같다 당신은, 한 줄의 코드를 89 00:03:43,296 --> 00:03:46,649 당신은 그없이 그것을 할 수 있습니다. 90 00:03:46,649 --> 00:03:47,440 스피커 1 : 맞아요. 91 00:03:47,440 --> 00:03:48,750 이 단지 인간의 규칙입니다. 92 00:03:48,750 --> 00:03:50,750 사람들은 A의 실현 조금 귀찮은 또는 지루한 93 00:03:50,750 --> 00:03:53,470 모든 중괄호를 넣어해야합니다 당신이 원하는 모든 경우의 시간 94 00:03:53,470 --> 00:03:55,090 한 줄의 코드를 실행할 수 있습니다. 95 00:03:55,090 --> 00:03:57,660 그래서, 인간이 결정 일부 그 괜찮아요 전 시간입니다. 96 00:03:57,660 --> 00:04:01,180 당신은 당신의 루프를 모두 넣어하려는 경우 이 같은 단지 한 줄에, 97 00:04:01,180 --> 00:04:04,030 즉, 하나와 괜찮아요 마지막에 세미콜론. 98 00:04:04,030 --> 00:04:07,210 그러나 당신은 단지 하나의 작업을 수행 할 수 있습니다 중괄호가없는 라인. 99 00:04:07,210 --> 00:04:09,900 >> 그래서, 때 CS50 스타일 가이드 , 당신을 가리 킵니다로 100 00:04:09,900 --> 00:04:11,980 당신은 일반적으로 그를 볼 수 있습니다 그것은 좋은 습관이다 101 00:04:11,980 --> 00:04:14,920 당신이 때까지이 들어가 아주 편안 길 잃은 102 00:04:14,920 --> 00:04:17,404 규칙의 이러한 종류의에서 당신의 자신의 일을하고. 103 00:04:17,404 --> 00:04:18,820 그래서 당신이 일관된 자기를있는 한. 104 00:04:18,820 --> 00:04:21,540 그리고 우리에 대한 자세한 내용을 얘기하자 오늘 나중에 조금 스타일. 105 00:04:21,540 --> 00:04:23,200 >> 그래서, 내가 한 다른 프로그램을 열 수 있습니다. 106 00:04:23,200 --> 00:04:24,930 물론, 우리는해야 뿐만 아니라 그 (10)를 고정한다. 107 00:04:24,930 --> 00:04:32,470 내가 앞서 가자 진짜 쓰기 내가 전화 할게 빠른 프로그램, 108 00:04:32,470 --> 00:04:38,140 의 말을하자, 루프는 C. 그래서, 루프 C를 점 점 그리고 루프 점 C에서 내가 가지고거야 109 00:04:38,140 --> 00:04:41,970 표준 I 포함 / O 점 H 주 공백을 int로. 110 00:04:41,970 --> 00:04:44,020 그리고 지금은 그냥 참, 루프, 할 수 있습니다. 111 00:04:44,020 --> 00:04:46,020 그래서, 4 INT의 난 제로 가져옵니다. 112 00:04:46,020 --> 00:04:48,660 I 50 가령 미만이다. 113 00:04:48,660 --> 00:04:49,950 나는 플러스, 플러스. 114 00:04:49,950 --> 00:04:53,350 그리고 여기에하자 가서 F를 인쇄합니까 115 00:04:53,350 --> 00:04:56,400 그리고 내가를 인쇄하려면 새로운 라인, 세미콜론. 116 00:04:56,400 --> 00:05:00,015 >> 그리고이 모든 인쇄한다 0에서 숫자 50까지? 117 00:05:00,015 --> 00:05:02,900 118 00:05:02,900 --> 00:05:03,680 몇 머리를 끄덕. 119 00:05:03,680 --> 00:05:04,270 몇 호. 120 00:05:04,270 --> 00:05:05,339 이미 버그가 무엇입니까? 121 00:05:05,339 --> 00:05:06,630 내가 만든 쉬운 실수는 무엇입니까? 122 00:05:06,630 --> 00:05:07,170 그래. 123 00:05:07,170 --> 00:05:08,544 >> 청중 : [들림]. 124 00:05:08,544 --> 00:05:09,210 스피커 1 : 그래. 125 00:05:09,210 --> 00:05:11,520 그래서 심지어 보이지만 이것이 내가하고자하는 것입니다처럼, 126 00:05:11,520 --> 00:05:13,920 나는 또한 리콜 그냥 ASCII 문자. 127 00:05:13,920 --> 00:05:14,955 >> 그래서, 내가 말할 경우, 인쇄 "I." 128 00:05:14,955 --> 00:05:16,670 말 그대로거야 경우에, 나도를 인쇄 나는 129 00:05:16,670 --> 00:05:20,030 Plug-in에 자리합니다 값 사실이 작업을 수행 할 필요가 130 00:05:20,030 --> 00:05:22,630 다음 플러그인 동적 I의 값입니다. 131 00:05:22,630 --> 00:05:25,200 그렇지 않으면 난 그냥 갈거야 화면에 (50) 나는 년대를 얻을. 132 00:05:25,200 --> 00:05:28,140 >> 그래서, 내가 가서하자 이 루프을, 실행, 133 00:05:28,140 --> 00:05:30,650 그리고, 참으로, 우리는이 49을 통해 방법. 134 00:05:30,650 --> 00:05:34,140 나는 시간을 거슬러 이동하면 내가 참조 처음에 수가 제로. 135 00:05:34,140 --> 00:05:36,050 >> 글쎄, 난 종류의 무엇을 망치면? 136 00:05:36,050 --> 00:05:37,800 내가 이렇게하면? 137 00:05:37,800 --> 00:05:40,120 그냥 내가 생각하고 있지 않다 때문이다. 138 00:05:40,120 --> 00:05:40,970 이 프로그램은 무엇입니까. 139 00:05:40,970 --> 00:05:43,970 일단 컴파일 및 다시 실행, 논리적으로 할 거? 140 00:05:43,970 --> 00:05:44,870 >> 청중 : 없음. 141 00:05:44,870 --> 00:05:45,661 >> 스피커 1 : 아무것도. 142 00:05:45,661 --> 00:05:47,156 그 이유는 무엇입니까? 143 00:05:47,156 --> 00:05:49,124 >> 청중 : 나는 제로를 위해 설계되었습니다. 144 00:05:49,124 --> 00:05:51,899 따라서, 조건은 false입니다. 145 00:05:51,899 --> 00:05:52,940 스피커 1 : 그래, 정확하게. 146 00:05:52,940 --> 00:05:55,110 모든 코드는 문법적으로 정확하다. 147 00:05:55,110 --> 00:05:57,310 이것은,이 컴파일 코드를 실행하지만 아니다 148 00:05:57,310 --> 00:06:00,110 유용한 작업을 수행 할 것 내가 초기화 때문에 0으로. 149 00:06:00,110 --> 00:06:02,240 우리는 그때가 50보다 큰 경우, 확인? 150 00:06:02,240 --> 00:06:03,810 분명히, 아니, 아니에요. 151 00:06:03,810 --> 00:06:05,760 그래서 루프가 전혀 실행되지 않습니다. 152 00:06:05,760 --> 00:06:09,580 >> 우리는 무언가를 할 경우 좀 더 무모? 153 00:06:09,580 --> 00:06:12,890 우리가 INT처럼한다면 그래서 나는 제로를 가져옵니다. 154 00:06:12,890 --> 00:06:15,640 그리고 지금 나에게 동안을 사용할 수 있도록 다른 조건이었다 루프. 155 00:06:15,640 --> 00:06:21,810 나는이 말을하는 동안 그리고보다 큰 동안 또는 0과 같지 한 다음 여기에 내가 156 00:06:21,810 --> 00:06:26,070 루프를 만들 가서 파일을 저장합니다. 157 00:06:26,070 --> 00:06:27,070 그리고 나는 그것을 실행하려고 해요. 158 00:06:27,070 --> 00:06:30,230 어떻게 이걸 볼려고하고있다 while 루프와 시간? 159 00:06:30,230 --> 00:06:30,852 그래. 160 00:06:30,852 --> 00:06:32,120 >> 청중 : 무한 루프? 161 00:06:32,120 --> 00:06:35,360 >> 스피커 1 : 무한 루프? 162 00:06:35,360 --> 00:06:36,662 예, 그 이유는 무엇입니까? 163 00:06:36,662 --> 00:06:38,120 청중 : 그것은 항상 0이기 때문에. 164 00:06:38,120 --> 00:06:38,786 스피커 1 : 그래. 165 00:06:38,786 --> 00:06:40,100 그래서 나는 0으로 초기화된다. 166 00:06:40,100 --> 00:06:44,470 물론 나는 항상 큰 이상의 결과로 또는 0과 동일. 167 00:06:44,470 --> 00:06:46,460 그래서, 난 그냥 갈거야 무한이를 참조하십시오. 168 00:06:46,460 --> 00:06:49,850 그리고 지금,이 번에 도달했습니다 두 번 과정의 머리에. 169 00:06:49,850 --> 00:06:52,417 어떤 때 일어난다 무한 루프가? 170 00:06:52,417 --> 00:06:53,314 >> 청중 : 제어 C. 171 00:06:53,314 --> 00:06:53,980 스피커 1 : 그래. 172 00:06:53,980 --> 00:06:56,250 그래서 컨트롤 C는 결국 응답합니다. 173 00:06:56,250 --> 00:06:59,520 불행하게도, 우리는 인쇄했다 수백만 이미 제로의 수백만 174 00:06:59,520 --> 00:07:01,520 그래서 컴퓨터 갖는다 종류의 나보다 앞서있어. 175 00:07:01,520 --> 00:07:03,394 그래서, 그것은 무시하는거야 나를 조금합니다. 176 00:07:03,394 --> 00:07:06,560 하지만 당신은 컨트롤 C 몇 충돌하는 경우 Mac 또는 PC 키보드의 시간, 177 00:07:06,560 --> 00:07:08,790 결국은, 참으로, 종료한다. 178 00:07:08,790 --> 00:07:11,770 그리고하지 않을 경우하면, 우리는 당신에게 몇 가지를 보여 드리겠습니다 긴 어디를하기 전에 기술 179 00:07:11,770 --> 00:07:14,850 실제로 강제로 프로그램을 죽일 수있다, 많은 Windows 및 Mac OS처럼, 180 00:07:14,850 --> 00:07:15,562 경우가 될 필요는 없다. 181 00:07:15,562 --> 00:07:16,770 그러나의 다른 무언가를 시도 할 수 있습니다. 182 00:07:16,770 --> 00:07:19,895 의 실제 I.인가 증가하자 이 여전히 무한 될 것? 183 00:07:19,895 --> 00:07:22,870 184 00:07:22,870 --> 00:07:25,140 날이 실행하자. 185 00:07:25,140 --> 00:07:27,090 그리고 지금 당신은 종류의 수 무슨 일이 일어나고 있는지를 참조하십시오. 186 00:07:27,090 --> 00:07:30,140 이것도 무한 루프이다. 187 00:07:30,140 --> 00:07:33,080 하지만이 트릭 질문의 비트입니다. 188 00:07:33,080 --> 00:07:35,460 이 영원히 번호를 인쇄 할거야? 189 00:07:35,460 --> 00:07:36,647 >> 청중 : 호 190 00:07:36,647 --> 00:07:37,230 스피커 1 호 191 00:07:37,230 --> 00:07:37,620 왜? 192 00:07:37,620 --> 00:07:38,820 나는 여기에 어떤 번호를 들었다. 193 00:07:38,820 --> 00:07:41,859 네 누굴. 194 00:07:41,859 --> 00:07:44,275 청중 : 당신은 충분하지 않습니다 비트는 정말 계속합니다. 195 00:07:44,275 --> 00:07:44,730 스피커 1 : 좋아. 196 00:07:44,730 --> 00:07:46,000 그래서 충분하지 않습니다 비트는 계속합니다. 197 00:07:46,000 --> 00:07:47,124 그럼, 무슨 일이야? 198 00:07:47,124 --> 00:07:49,320 그것은 단지 중지거야? 199 00:07:49,320 --> 00:07:52,542 >> 청중 : 어떤 점에서 이 짓이야 종료됩니다 200 00:07:52,542 --> 00:07:54,500 스피커 1 : 그것은 종료됩니다 루프 아래로, 그런데 왜? 201 00:07:54,500 --> 00:07:57,950 무엇 일어날 것 그 경계의 맨 끝? 202 00:07:57,950 --> 00:07:58,479 그래? 203 00:07:58,479 --> 00:08:00,520 청중 : 그것은주기 것 다시 음수에. 204 00:08:00,520 --> 00:08:02,900 스피커 1 : 음수, 또는 우리가 긍정적 인 치료 것처럼, 205 00:08:02,900 --> 00:08:03,570 제로 이상. 206 00:08:03,570 --> 00:08:04,550 그래서 그래, 절대적으로. 207 00:08:04,550 --> 00:08:08,059 우리가 지난 시간에 보았던 것을 기억하면 경우 당신의 비트 너무 많은 시간을 증가 208 00:08:08,059 --> 00:08:10,225 당신은 오버 플로우가 이물 지능의 용량 209 00:08:10,225 --> 00:08:13,058 또는 데이터 유형은있어, 무엇이든 랩 어라운드 것, 아마, 210 00:08:13,058 --> 00:08:14,020 두 개의 음수. 211 00:08:14,020 --> 00:08:16,644 아니면 지정 한 경우 범위는 긍정적이어야한다 212 00:08:16,644 --> 00:08:18,560 당신이 할 수있는,하지만 우리는 아직 보지 못했습니다 213 00:08:18,560 --> 00:08:21,420 적어도 다시 제로에서 끝낼 수 있습니다. 214 00:08:21,420 --> 00:08:22,410 , 비록 실제로 그렇습니다. 215 00:08:22,410 --> 00:08:24,320 이 경우, 마이너스 수 있으며,이 경우에 216 00:08:24,320 --> 00:08:26,870 루프가 종료 예정 I가 없기 때문에, 사실상, 217 00:08:26,870 --> 00:08:29,220 이상인 제로는 부정적인 있다면. 218 00:08:29,220 --> 00:08:31,780 >> 그래서, 불행하게도, 방법 오랫동안 우리는 기다려야 할 것인가? 219 00:08:31,780 --> 00:08:35,490 지금 우리는까지있어 무엇을, 200 만 흉내? 220 00:08:35,490 --> 00:08:37,705 우리는 20 억 같다 우리는 기다려야 할거야 221 00:08:37,705 --> 00:08:39,330 때까지 우리는 실제로이 현상을 볼 수 있습니다. 222 00:08:39,330 --> 00:08:46,200 그러나 우리는, 조금 더 빨리 볼 수 있습니다 우리가 방해 할 수 있는지 보자 봐 주길. 223 00:08:46,200 --> 00:08:46,700 어서. 224 00:08:46,700 --> 00:08:49,500 225 00:08:49,500 --> 00:08:51,331 심지어 메뉴가 서서히 나타나고있다. 226 00:08:51,331 --> 00:08:51,830 괜찮아. 227 00:08:51,830 --> 00:08:54,270 그래서, 우리는 오래 전에 다시 그에게 올 것이다. 228 00:08:54,270 --> 00:08:56,320 그것은, 강아지 젠장 time-- 좋다. 229 00:08:56,320 --> 00:08:58,280 >> 그것은 몇 가지 발표를위한 좋은 시간이다. 230 00:08:58,280 --> 00:09:01,225 그래서, 당신은 좋아할 경우 YHack에 종사하는, 231 00:09:01,225 --> 00:09:03,600 이벤트는 인된다 예일에서 우리의 친구에 의해 후원했다. 232 00:09:03,600 --> 00:09:05,990 그리고는, 참으로, 일부 과정의 예일에서 TF가이 참여한다. 233 00:09:05,990 --> 00:09:08,610 YHack 국제이다 해킹 - 마라톤은 주최 및 개최 234 00:09:08,610 --> 00:09:12,395 예일에서, 1,500 소집 마음 해커 모든 광고와 같은 235 00:09:12,395 --> 00:09:13,120 세계. 236 00:09:13,120 --> 00:09:14,610 이 관심 있다면, 여기 좀 봐. 237 00:09:14,610 --> 00:09:17,401 이것은 너무 짧게 경우 화면은, 오늘날의 슬라이드를 살펴 238 00:09:17,401 --> 00:09:19,622 yhack.org의 URL에 대한. 239 00:09:19,622 --> 00:09:21,080 그래서, 또한 몇 가지 간단한 발표. 240 00:09:21,080 --> 00:09:24,410 그래서 공식적으로 섹션이 시작됩니다 다음 주에 모두 여기 뉴 헤이븐. 241 00:09:24,410 --> 00:09:27,660 당신이 점점 될 것 명심하십시오 이메일 이번 주말 가능성이 높습니다. 242 00:09:27,660 --> 00:09:29,390 이는 시간이 오래 걸리는 섹션 CS50에 대한, 243 00:09:29,390 --> 00:09:32,080 에 주어진 모든 사람 클래스 모두가 주위에 이동. 244 00:09:32,080 --> 00:09:34,871 그리고 모든 교육 휄로우 ' 일정은 아직 응고되어, 245 00:09:34,871 --> 00:09:38,110 하지만 이메일과 필요한 경우 계속 지켜봐 주시기 바랍니다 , 당신은 다시 절을 할 수 있습니다 할 수 있습니다 후. 246 00:09:38,110 --> 00:09:39,580 >> Study.cs50.net. 247 00:09:39,580 --> 00:09:43,280 그래서, 당신은 일정한 참석자 경우에도 섹션에서, 거의 모든 것을 실현 248 00:09:43,280 --> 00:09:46,786 자원을 우리는 절에서 사용 CS50에서 공개적으로 사용할 수 있습니다 249 00:09:46,786 --> 00:09:48,460 여기에이 URL에서 공부한다. 250 00:09:48,460 --> 00:09:51,630 그래서, 당신은 지금까지 검토를 다시하고 싶은 경우 또는 미리 읽기 섹션에서 소재, 251 00:09:51,630 --> 00:09:54,170 또는 당신은 몇 주 할 수 없습니다, 그 샘플 슬라이드를 실현, 252 00:09:54,170 --> 00:09:58,210 문제 및 정의, 더뿐만 아니라 모든있다. 253 00:09:58,210 --> 00:10:00,645 >> 근무 시간은 오늘 재개 내일, 수요일, 254 00:10:00,645 --> 00:10:03,020 목요일 코스의를 확인 일정에 대한 웹 사이트. 255 00:10:03,020 --> 00:10:05,690 >> 또한, 지금 시작 오늘은 CS50는 토론이다. 256 00:10:05,690 --> 00:10:09,230 그래서, 만약 당신이에 대한 질문이있을 때 서로 또는 과정의 직원, 257 00:10:09,230 --> 00:10:12,099 일반적으로 작업 일부 문제 세트에, 258 00:10:12,099 --> 00:10:15,015 당신이 필요하지 않는 것이 실현 당신 옆에있는 사람을 설정해야합니다. 259 00:10:15,015 --> 00:10:17,810 아무도 거기에 없다면, 당신은 할 수 우리와 친구들에게 다가 260 00:10:17,810 --> 00:10:19,890 온라인 CS50를 통해 토론한다. 261 00:10:19,890 --> 00:10:22,600 그래서,이 토론은 코스 보드, 262 00:10:22,600 --> 00:10:24,550 이 실현 아마도 최고 263 00:10:24,550 --> 00:10:28,480 당신이있을 때 시작하는 배치 근무 시간의 질문을 할 때 외부 264 00:10:28,480 --> 00:10:29,470 특히. 265 00:10:29,470 --> 00:10:31,070 >> 점심도 이번 주에 시작됩니다. 266 00:10:31,070 --> 00:10:33,170 불과 얼음에서 [들림] 뉴 헤이븐에서. 267 00:10:33,170 --> 00:10:35,379 과정의에서보세요 위해 웹 사이트는 답장합니다. 268 00:10:35,379 --> 00:10:36,753 우선 먼저 와서 그것을 위해 역할을한다. 269 00:10:36,753 --> 00:10:39,380 이 주에 도착하지 않는 경우 우리는 이러한 대부분의 매주 금요일 다하겠습니다 270 00:10:39,380 --> 00:10:40,400 기간 동안. 271 00:10:40,400 --> 00:10:41,830 >> 확인을 해주기 등급에 대한 단어. 272 00:10:41,830 --> 00:10:44,690 우리는 문제를 입력 특별히 이 주에있는, 한 세트 273 00:10:44,690 --> 00:10:46,670 그리고 문제는 두 이후를 설정합니다. 274 00:10:46,670 --> 00:10:51,680 우리는 어떻게 P 세트를 평가 가야합니까 그 품질을 평가? 275 00:10:51,680 --> 00:10:55,560 그래서, 우리가 사용하는 네 개의 축입니다 CS50, 그들은 여기에이 네 가지입니다. 276 00:10:55,560 --> 00:10:59,200 >> 숫자에 포착 범위, P 세트의 얼마나 많은 기초 277 00:10:59,200 --> 00:10:59,860 당신은 태클 않았다. 278 00:10:59,860 --> 00:11:02,890 그것은 약에 해당하는 것 노력, 그리고 그것을 캡처 우리의 방법 279 00:11:02,890 --> 00:11:05,190 당신은 시도의 절반 P 않았다 , P 세트의 모든 설정합니다. 280 00:11:05,190 --> 00:11:08,860 이 완벽 얻을 수있는 쉬운 일입니다 당신이 경우에 점수, 참으로, 281 00:11:08,860 --> 00:11:11,020 P 세트의 모든 측면을보십시오. 282 00:11:11,020 --> 00:11:12,010 그래서, 마음에 보관하십시오. 283 00:11:12,010 --> 00:11:13,420 >> 정확성은 정확하게이다. 284 00:11:13,420 --> 00:11:17,760 사양으로 코드 작동합니까 그리고 직원 '샘플 솔루션으로 285 00:11:17,760 --> 00:11:19,730 코드 제안 사실, 작동합니다. 286 00:11:19,730 --> 00:11:23,260 당신이 그것을 충족하지 않은 경우, (50)를 확인 아직, P에 하나의 규격을 설정 287 00:11:23,260 --> 00:11:25,060 일반적으로 것입니다 당신에게 예 / 아니오 대답을주지 288 00:11:25,060 --> 00:11:26,518 여부에 대한 사용자의 코드는 올바른 것입니다. 289 00:11:26,518 --> 00:11:30,680 적어도 지금까지 우리가 가고있는 한 이 테스트를 기반으로 평가하기 위해 290 00:11:30,680 --> 00:11:32,430 우리는 프로그램 내에서 실행하는 것이. 291 00:11:32,430 --> 00:11:33,850 >> 디자인은 매우 주관적이다. 292 00:11:33,850 --> 00:11:35,994 이 얼마나 잘 작성하는 코드입니다. 293 00:11:35,994 --> 00:11:38,410 그리고 이것은 뭔가입니다 당신은 시간이 지남에 따라 더 나은거야 294 00:11:38,410 --> 00:11:41,201 그것은 뭔가 우리가 정액의 에 대한 질적 인 피드백을 제공한다. 295 00:11:41,201 --> 00:11:43,350 그리고 디자인에 의해 나는 수도 오래 전에 의미 당신 296 00:11:43,350 --> 00:11:47,650 일부 P에 유혹 될 수 있습니다 loopingly 뭔가를 설정, 297 00:11:47,650 --> 00:11:51,590 하지만 어쩌면 세 또는 4, 또는을 가지고 다섯 중첩 앞 루프 또는 중첩 동안 298 00:11:51,590 --> 00:11:52,090 루프. 299 00:11:52,090 --> 00:11:54,130 즉, 일반적으로해야 당신은 싫증이 나다 만드는 시작 300 00:11:54,130 --> 00:11:56,070 일반적으로 것 고려 나쁜 디자인. 301 00:11:56,070 --> 00:11:59,490 그리고 수업 시간에보고 시작합니다 및 일을하는 클래스 좋은 방법 중, 302 00:11:59,490 --> 00:12:02,920 일을하는 나쁜 방법이 모든 정확하지만,하지 않을 수도 있습니다 303 00:12:02,920 --> 00:12:04,304 반드시 잘 설계. 304 00:12:04,304 --> 00:12:05,220 에세이를 작성처럼. 305 00:12:05,220 --> 00:12:08,100 당신은에 단어를 넣어 할 수있을 것 문법적으로 정확 페이지, 306 00:12:08,100 --> 00:12:10,016 에세이 나 있지만, 그들이에있어 논문은 그냥 307 00:12:10,016 --> 00:12:11,810 완전 조리 또는 설득력. 308 00:12:11,810 --> 00:12:15,930 그리고 그에서 아날로그 수 있습니다 나쁜 또는 좋은 디자인의 월드. 309 00:12:15,930 --> 00:12:18,490 >> 그리고 스타일도 상당히 주관적이다. 310 00:12:18,490 --> 00:12:20,060 그러나 적어도 우리는 일관성을 기대합니다. 311 00:12:20,060 --> 00:12:21,480 이 방법을 꽤하는 코드입니다. 312 00:12:21,480 --> 00:12:22,840 일이 잘 들여? 313 00:12:22,840 --> 00:12:26,600 당신의 변수가 아니라 이름을 지정하는 / 모두 당신의 괄호와 중괄호 314 00:12:26,600 --> 00:12:27,920 그들이해야으로 정렬? 315 00:12:27,920 --> 00:12:31,490 우리는 CS50 스타일 가이드가 있습니까 문제 세트에서 당신을 가리 킵니다. 316 00:12:31,490 --> 00:12:33,730 그 더 편안입니다 그에서 이탈에 오신 것을 환영합니다 317 00:12:33,730 --> 00:12:35,771 그래서 당신이 자기 ​​일관성이있다. 318 00:12:35,771 --> 00:12:38,020 그리고 이것은, 너무, 교훈 우리는 절에서 강화됩니다. 319 00:12:38,020 --> 00:12:40,990 그래서,이 모든 조금 경우였다 빠르고 실현 P 세트와 섹션 320 00:12:40,990 --> 00:12:42,900 오래 전에 더 깊이로 이동합니다. 321 00:12:42,900 --> 00:12:45,490 >> 그러나 일반적으로 우리는이 CS50에 대한 거의 버킷. 322 00:12:45,490 --> 00:12:48,170 점수는 규모에 일반적으로 1-3, 또는 1-5의. 323 00:12:48,170 --> 00:12:50,836 우리는 - 말 그대로이고 나는 말할 수 없다 첫 주에이 정도. 324 00:12:50,836 --> 00:12:51,582 세이 좋다. 325 00:12:51,582 --> 00:12:54,290 그래서, 비록, 예, 세 아웃 다섯 일반적 수학적 326 00:12:54,290 --> 00:12:57,240 60 % 또는 D 마이너스처럼 될 수 있습니다. 327 00:12:57,240 --> 00:12:58,840 셋, 실제로 좋다. 328 00:12:58,840 --> 00:13:01,050 그리고, 사실, 우리는 기대 클래스에서 대부분의 학생들 329 00:13:01,050 --> 00:13:04,280 주위의 용어를 시작합니다 조로와 열로, 그리고 발로. 330 00:13:04,280 --> 00:13:05,510 아마 많은하지 파이브. 331 00:13:05,510 --> 00:13:06,661 너무 많이하지 것들. 332 00:13:06,661 --> 00:13:08,910 그러나 일반적에서 시작 곡선이 스위트 스폿 (sweet spot) 333 00:13:08,910 --> 00:13:11,694 그래서 시간이 진행됨에 따라 그, 실내가 실제로있다, 334 00:13:11,694 --> 00:13:13,360 상위 진행을위한 기회. 335 00:13:13,360 --> 00:13:15,810 그래서, 60 %로 세 가지를 동일시하지 말아 주시기 바랍니다. 336 00:13:15,810 --> 00:13:17,410 그것은 훨씬 더 추상적 인 것보다입니다. 337 00:13:17,410 --> 00:13:20,160 우리가 계산되는 식 다음과 같이 등급은 가중된다. 338 00:13:20,160 --> 00:13:21,610 정확성이 가장 가치가있다. 339 00:13:21,610 --> 00:13:23,010 디자인은 좀 덜 가치가있다. 340 00:13:23,010 --> 00:13:24,490 스타일은 좀 덜 가치가있다. 341 00:13:24,490 --> 00:13:26,950 그리고이 일반적으로 시간을 포착 342 00:13:26,950 --> 00:13:29,800 즉, 각을 얻기로 전환 이 축이 바로. 343 00:13:29,800 --> 00:13:31,810 스타일, 슈퍼 쉽다 슈퍼 빠른해야한다, 344 00:13:31,810 --> 00:13:33,657 그러나 그것은 쉬운 습관 대한 게으른 얻을 수 있습니다. 345 00:13:33,657 --> 00:13:35,490 정확성이 걸릴 수 있습니다 당신이 대부분의 시간. 346 00:13:35,490 --> 00:13:38,990 일부 버그 힘을 쫓는 그 여분의 시간 이상을 347 00:13:38,990 --> 00:13:41,737 그래서, 득점 궁극적으로 그를 캡처합니다. 348 00:13:41,737 --> 00:13:43,070 그래서, 지금 더 심각한 단어. 349 00:13:43,070 --> 00:13:45,240 CS50을 갖기 때문에 구별, 더 나은 350 00:13:45,240 --> 00:13:47,440 또는 악화, 존재의 아마 더 잘 알고 351 00:13:47,440 --> 00:13:50,065 교육의 문제와 대부분의 다른 코스보다 정직. 352 00:13:50,065 --> 00:13:53,720 그리고 실제로, 그것은 내 지식입니다 우리는 불행하게도, 더 많은 학생들을 보내 353 00:13:53,720 --> 00:13:56,690 징계 목적 결과로서 매년. 그래서, 354 00:13:56,690 --> 00:13:59,040 전체의 이익에 공개의 간단히 얘기해 보자 355 00:13:59,040 --> 00:14:02,820 CS50에서 일어나는, 그리고 무엇을 무엇에 대한 수행 할 수 있습니다 당신은 무엇을 염두 수 있습니다. 356 00:14:02,820 --> 00:14:05,530 >> 그래서, 여기에 이​​후 2007 년 때 나는 과정을 상속 357 00:14:05,530 --> 00:14:07,870 광고 보드의 경우의 수이다. 358 00:14:07,870 --> 00:14:10,690 광고 보드는 하버드의 징계이다 몸, 또는 이제 명예 고문, 359 00:14:10,690 --> 00:14:13,790 되는 경우가 경우라고 학생들은 그 과정의 일을 360 00:14:13,790 --> 00:14:15,470 강의는 불합리한 생각한다. 361 00:14:15,470 --> 00:14:17,220 실제 패턴이 없습니다 여기에, 나는 말할 것입니다. 362 00:14:17,220 --> 00:14:19,530 그것은 이상 변동 년 있지만, 일반적으로 363 00:14:19,530 --> 00:14:22,262 이 수입니다 언급되는 경우. 364 00:14:22,262 --> 00:14:23,970 학생의 수 관련되는? 365 00:14:23,970 --> 00:14:25,290 너무 다릅니다. 366 00:14:25,290 --> 00:14:27,930 대한 일반적으로, 지난해 하버드 예, (29) 학생 367 00:14:27,930 --> 00:14:29,740 말하자면 광고 승선이 있었다. 368 00:14:29,740 --> 00:14:32,670 그들 재학생의 29, 그 이전에 학생들이, 369 00:14:32,670 --> 00:14:35,610 사람을 협력했다 어떤 부적당 한 방법. 370 00:14:35,610 --> 00:14:38,400 그리고 측면에서 비율은, 일반적으로 약 3 %의 371 00:14:38,400 --> 00:14:41,360 클래스의 불행하게도, 이런 결정을합니다. 372 00:14:41,360 --> 00:14:44,470 >> 그래서, 작년 3.5 %였다 CS50의 학생 신체의 373 00:14:44,470 --> 00:14:46,820 즉 말하자면 광고 승선했다. 374 00:14:46,820 --> 00:14:48,490 >> 그래서,이 모든 것은 무엇을 의미 하는가? 375 00:14:48,490 --> 00:14:49,660 그리고 우리가 실제로 무엇을해야합니까? 376 00:14:49,660 --> 00:14:52,930 >> 그래서, 전체 공개, 우리 절대적으로, 컴퓨터 과학자로서, 377 00:14:52,930 --> 00:14:57,620 우리의 처분에 소프트웨어 도구를 그리고 공평하게, 우리를 위해 아주 쉽게, 378 00:14:57,620 --> 00:15:00,980 하지의 다른 급우 이 선을 교차하는 비교 십자가에 379 00:15:00,980 --> 00:15:04,570 모든 제출 매에 대해 올해 지난 8 년 동안 제출. 380 00:15:04,570 --> 00:15:05,445 소프트웨어는이 작업을 수행합니다. 381 00:15:05,445 --> 00:15:07,440 그리고 궁극적으로이다 결정 인간의 눈 382 00:15:07,440 --> 00:15:11,410 일부를 참조 할 수 있는지 여부 또한 판결에 대한 문제, 383 00:15:11,410 --> 00:15:12,737 하지만 소프트웨어는 확실히 도움이됩니다. 384 00:15:12,737 --> 00:15:15,820 그리고 이것은, 솔직히, 난 왜 생각입니다 우리는 CS50 이러한 많은 수 있습니다. 385 00:15:15,820 --> 00:15:18,540 그것은 CS50 때문이 아니다 학생이나 CS 학생보다 386 00:15:18,540 --> 00:15:20,840 일반적으로 덜 정직 다른 학생들보다, 387 00:15:20,840 --> 00:15:22,340 그것은 단지 우리가 가지고있는 도구 및 기술 388 00:15:22,340 --> 00:15:24,095 있는 첫 번째 패스를 촬영합니다. 389 00:15:24,095 --> 00:15:25,960 >> 그러나 우리는 눈을 계속 수행 이 모든 일에 390 00:15:25,960 --> 00:15:30,340 의뿐만 아니라, 다시,에 관심 넣어되고있는 일을 인식 391 00:15:30,340 --> 00:15:32,397 클래스의 슈퍼 과반수에. 392 00:15:32,397 --> 00:15:34,230 그리고 물론 정책 학술 정직에, 393 00:15:34,230 --> 00:15:37,021 이 단락의 무리 비록 글 머리 기호의 무리와 함께 긴 394 00:15:37,021 --> 00:15:40,490 즉, 잘하면 꽤 읽을 수 정말 합리적 졸이다 않습니다. 395 00:15:40,490 --> 00:15:44,000 그리고 엄지 손가락의 가장 좋은 규칙이 우리는 강의 계획서 내에 제공 396 00:15:44,000 --> 00:15:46,020 이 본질이다 모든 일의 당신을 397 00:15:46,020 --> 00:15:47,850 자신의해야이 과정에 제출합니다. 398 00:15:47,850 --> 00:15:51,510 그리고 사실, 거의 모든 사람들의 경우 징계 조치에 대한 언급 399 00:15:51,510 --> 00:15:55,640 이 때문에 일부 학생 늦은이었다 밤은 일반적으로 자신의 코드를 설정 400 00:15:55,640 --> 00:15:58,130 크게 동급생을 통해, 누가 다음을 채택 401 00:15:58,130 --> 00:16:00,840 그 전체 또는 크게 그. 402 00:16:00,840 --> 00:16:02,680 >> 하지만 실제로는,이 OK입니다. 403 00:16:02,680 --> 00:16:04,684 그리고 실제로, 사무실에서 종이의 시간, 슬립 404 00:16:04,684 --> 00:16:07,850 당신이 사무실에왔다면 당신은 손으로했습니다 시간 지난 주만큼을 권장합니다. 405 00:16:07,850 --> 00:16:09,710 당신은 절대적으로있어 환영과 격려 406 00:16:09,710 --> 00:16:12,340 친구들과 함께 문제 세트를 논의하기 위해. 407 00:16:12,340 --> 00:16:14,461 비틀 때 서로 도움이됩니다. 408 00:16:14,461 --> 00:16:17,710 그러나 일반적으로 엄지 손가락의 규칙은해야 이 수, "당신이 도움을 요청하는 경우, 409 00:16:17,710 --> 00:16:20,412 당신은 다른 사람에게 코드를 표시 할 수 있습니다, 하지만 당신은 그들의를 볼 수 있습니다. " 410 00:16:20,412 --> 00:16:22,620 그래서, 즉, 내가 해요 경우 일부 P 세트로 어려움을 겪고 411 00:16:22,620 --> 00:16:25,290 나는 거기에 앉아있어 홀 식사, 또는 도서관에서, 412 00:16:25,290 --> 00:16:28,470 또는 교실에서 몇 가지 오류를 찾기 위해 노력하고, 413 00:16:28,470 --> 00:16:30,340 나는 확실히 표시 할 수 있습니다 내 화면에 내 코드 414 00:16:30,340 --> 00:16:32,590 사람이 옆에 앉아에 나에게, 확실히 직원, 415 00:16:32,590 --> 00:16:33,600 뿐만 아니라 동급생. 416 00:16:33,600 --> 00:16:36,580 그러나 해결책이있는 경우 나의 동급생, 오,이다 제공 417 00:16:36,580 --> 00:16:39,200 여기에 단지를 살펴 무엇을 나는 선을 교차하는,했다. 418 00:16:39,200 --> 00:16:43,120 >> 그리고 나는 그것이 일반적으로 말할 감히 대부분의 사람들을위한 합리적인 것 419 00:16:43,120 --> 00:16:45,030 아주 쉽게 줄을 발견한다. 420 00:16:45,030 --> 00:16:47,195 그리고, 강의 계획서 참조 더 자세한 사항. 421 00:16:47,195 --> 00:16:49,070 이상 이제 하나 논쟁의 양상 422 00:16:49,070 --> 00:16:52,529 CS50 교과의 내가 생각하는 여기에 결론을 말할 것 423 00:16:52,529 --> 00:16:53,820 소위 후회 절입니다. 424 00:16:53,820 --> 00:16:55,340 그래서, 여기에 모든 글씨입니다. 425 00:16:55,340 --> 00:16:58,090 그러나 일반적으로 우리는 보았다 지난 8 년 이상의 이상 426 00:16:58,090 --> 00:17:01,510 실제로, 거의 모든 CS50의, 그 학문적 부정직 사례 427 00:17:01,510 --> 00:17:04,390 단지 가난의 결과되었습니다 밤 늦게 의사 결정. 428 00:17:04,390 --> 00:17:07,144 스트레스, 결과의 결과 식사의 부족, 수면 부족, 429 00:17:07,144 --> 00:17:09,560 너무 많은 P 세트,​​ 너무 많은 마감, 너무 많은 약속. 430 00:17:09,560 --> 00:17:13,520 오전 2시에 구축 스트레스 3:00 오전, 마감 어렴풋한와 오전 4시. 431 00:17:13,520 --> 00:17:17,020 이러한 경우 대부분의 학생들 단지 나쁜 결정을 한 432 00:17:17,020 --> 00:17:20,619 그들은 매우 잘 후회 수도 다음날 아침 분 후에없는 경우, 433 00:17:20,619 --> 00:17:25,490 하지만 지난해까지 있었다 더 개방 밸브 이들 학생들이 수 434 00:17:25,490 --> 00:17:29,140 실제로 실제로를 해결하기 위해 열 되는없이 두려움에 문제 헤드 435 00:17:29,140 --> 00:17:30,850 모두 대학에서 부팅. 436 00:17:30,850 --> 00:17:33,260 >> 그리고, 참으로, 우리는 도입 이 후회 절 작년, 437 00:17:33,260 --> 00:17:35,970 이는 말로는 내 경우 72시간, 삼일, 438 00:17:35,970 --> 00:17:37,970 어떤 선을 넘어의 강의 계획서에 규정 439 00:17:37,970 --> 00:17:41,178 당신은 과정의 중 하나에 앞으로 나와 머리는 그리고 우리는 그것에 대해 대화를해야합니다. 440 00:17:41,178 --> 00:17:43,720 여전히있을 수 일부 무엇에 대한 결과, 반대 441 00:17:43,720 --> 00:17:44,990 반대로보고되었다. 442 00:17:44,990 --> 00:17:49,190 일부 결과는 아직입니다 코스에 의해 실행 가능한 것입니다 443 00:17:49,190 --> 00:17:51,611 일반적으로 P 세트를 제로화 또는 다른 조치를 취하기, 444 00:17:51,611 --> 00:17:53,610 그러나 우리는, 참으로, 윌 그것을 자신을 처리하지 445 00:17:53,610 --> 00:17:58,460 더 높은 결과를 참조했다 훨씬 더 심각 할 수 있습니다. 446 00:17:58,460 --> 00:18:01,810 그리고, 참으로, 무슨 일이 있었는지 공유 지난해 8 년, 이제 447 00:18:01,810 --> 00:18:04,950 이 과정을 가르치는 구년 다양한 노브 땜질 후, 448 00:18:04,950 --> 00:18:07,866 과거를 통해 다양한 다이얼을 돌려 학문적 정직성에 몇 년 동안, 449 00:18:07,866 --> 00:18:11,920 데이터 뚜렷한에게 당보고 심지어이 같은 연설의 영향, 450 00:18:11,920 --> 00:18:15,490 이것은 가장 좋은 것은 아래로 손이었다 우리는 교육적 도입 한 451 00:18:15,490 --> 00:18:18,090 에서 팔년을 따라 CS50에서이 라인. 452 00:18:18,090 --> 00:18:21,010 >> (19) 학생은 앞으로왔다 이 절 마지막 세 미만. 453 00:18:21,010 --> 00:18:23,389 우리를 위해 어떤 조치를 취 없습니다 학생들의 일곱, 454 00:18:23,389 --> 00:18:25,430 그들이이라고 결정 불필요하게 걱정. 455 00:18:25,430 --> 00:18:27,304 그들은 실제로 않았다 선을 넘어하지만, 456 00:18:27,304 --> 00:18:28,960 좋은 채팅 그럼에도 불구 것이 었습니다. 457 00:18:28,960 --> 00:18:31,190 우리는 점수의 11 제로화 그 제출했다. 458 00:18:31,190 --> 00:18:33,840 그리고 한 경우에 우리가 요구 학생은 설정에 문제가해야 할 일. 459 00:18:33,840 --> 00:18:36,370 하지만 더 강력한, 솔직히,이 19 채팅과, 460 00:18:36,370 --> 00:18:39,020 이는 나보다 훨씬 더이었다 그들 각각을 가질 것으로 예상 461 00:18:39,020 --> 00:18:41,370 아마 10 분 시간 길고도 가져 462 00:18:41,370 --> 00:18:44,920 에 관한 문제의 숫자에 불을 가족 문제, 친구 문제, 463 00:18:44,920 --> 00:18:46,940 정신 건강 문제 우리는 다음 종사하는 것을, 464 00:18:46,940 --> 00:18:50,200 학생의 축복, 주민과 함께 학장, 또는 친구, 또는 다른 번호 465 00:18:50,200 --> 00:18:51,450 지원 리소스. 466 00:18:51,450 --> 00:18:54,454 수 있도록이 훨씬 하나였다 우리 시대의 최고의 용도 467 00:18:54,454 --> 00:18:55,870 최고의 개입 중 하나. 468 00:18:55,870 --> 00:18:58,870 >> 그렇게 말한다면, 그것은 전혀 없었다 검출 속도에 입력 469 00:18:58,870 --> 00:19:00,909 학문적 부정직의 더 일반적. 470 00:19:00,909 --> 00:19:02,950 그리고 나는, 말을이 부분 집합을 감히 학생들 지난해 471 00:19:02,950 --> 00:19:06,350 인구 통계를했다 그 우리 이전하기 전에 확인되지 않았다 472 00:19:06,350 --> 00:19:08,140 그리고 이전에 연결된 적이 없었다. 473 00:19:08,140 --> 00:19:10,020 그리고, 이들이었다 멋진 성공 사례 474 00:19:10,020 --> 00:19:13,390 그들은 빛을 주어졌다하더라도 최적의 상황 미만. 475 00:19:13,390 --> 00:19:15,640 그래서,이 점을 명심 당신이 만드는으로, 아마, 476 00:19:15,640 --> 00:19:17,390 형편없는 결정 자신 늦은 밤, 477 00:19:17,390 --> 00:19:20,151 의지 너무 오래가 있음 그 상황에서 학생으로 478 00:19:20,151 --> 00:19:23,400 최대 소유하고 앞으로 와서 우리가 할 수 있도록 채팅의 종류가 있으며 처리 479 00:19:23,400 --> 00:19:27,310 방법으로 그 교육의 다음 다음날 우리 뒤에 그것을 넣을 수 있습니다. 480 00:19:27,310 --> 00:19:30,335 >> 속히 그래서,을 이 대화 떨어져 가장자리, 481 00:19:30,335 --> 00:19:35,080 강아지가 최대 인 이유 단지 잠시 동안 얼음을 깰 수 있습니다. 482 00:19:35,080 --> 00:19:39,560 그리고 불행하게도, 그들은 모두 잠있어, 하지만했는데 여기에서 발생하는 483 00:19:39,560 --> 00:19:41,760 있었다 모든 사람이되어 있었다 경외와 종류의 휴식 484 00:19:41,760 --> 00:19:43,910 바로 그 무거운 대화 후. 485 00:19:43,910 --> 00:19:46,930 하지만 분명히 내가 넣어 강아지는 잠을. 486 00:19:46,930 --> 00:19:50,070 하지만 당신은 CS50의 가면 웹 사이트 슬래시 강아지, 487 00:19:50,070 --> 00:19:51,610 당신은 하루 종일을 볼 수 있습니다. 488 00:19:51,610 --> 00:19:55,280 특히 아마 2시, 또는 3시, 또는 밤에 오전 4시 489 00:19:55,280 --> 00:19:57,480 거기에 약간의 스트레스 해소를 볼 수 있습니다. 490 00:19:57,480 --> 00:19:58,805 그래서 강아지를 슬래시입니다. 491 00:19:58,805 --> 00:20:01,700 492 00:20:01,700 --> 00:20:02,200 괜찮아. 493 00:20:02,200 --> 00:20:03,020 되지는 재미 있었나요? 494 00:20:03,020 --> 00:20:04,200 그래. 495 00:20:04,200 --> 00:20:07,140 그래서, 다시 일부 컴퓨터에 과학, 만약 내가 할 수있다. 496 00:20:07,140 --> 00:20:10,600 >> 그래서, 우리가 시작 마지막 시간을 기억 그냥 메인에 있지 찾고있는 497 00:20:10,600 --> 00:20:13,930 기본 함수 때이었다 녹색 깃발은, 동등한 클릭 498 00:20:13,930 --> 00:20:16,999 그러나 우리는 또한 간단히 시작 우리 자신의 일부 기능을 작성. 499 00:20:16,999 --> 00:20:20,040 이러한 기능 그리고 지금까지 없음 특히 크거나 고기왔다. 500 00:20:20,040 --> 00:20:24,570 당신은 그 큰 들어갈 것이다 기능은 아마, P 2, P 3, 설정 501 00:20:24,570 --> 00:20:26,410 확실히 P는 4와 이후를 설정합니다. 502 00:20:26,410 --> 00:20:29,340 지금 당신의 대부분의 프로그램, 확실히 그들 모두, P에 대한 아니라면 503 00:20:29,340 --> 00:20:31,550 세트 1 주에서 완전히 수행 할 수 있습니다. 504 00:20:31,550 --> 00:20:33,810 프로그램 만 있다면 다섯 줄, 10 줄, 505 00:20:33,810 --> 00:20:37,070 심지어 20 행으로, 완벽하게 를 작성하는 것이 합리적 506 00:20:37,070 --> 00:20:40,930 모든 주에서가 아니라 복잡한 위로하기 코드,하지만 우리는 오늘 무슨 일을하는지 507 00:20:40,930 --> 00:20:44,360 그리고 이후도에 노력하고있다 좋은 디자인 기술을 소개 508 00:20:44,360 --> 00:20:48,660 그래서 코드는 더수록 복잡하고 문제와 같은 509 00:20:48,660 --> 00:20:51,690 당신이 열심히 얻을 해결하고 싶은 더 흥미로운 당신은, 일종의, 510 00:20:51,690 --> 00:20:55,850 당신의 도구 상자에서 도구있는 사람들에게 좋은 솔루션을 설계합니다. 511 00:20:55,850 --> 00:21:01,210 >> 자, 얼핏를 다시 보자 마지막 주에서이 프로그램하는 512 00:21:01,210 --> 00:21:06,550 이었다 기능 제로 점 C. 그리고 아주 간단하게, 그 통지, 513 00:21:06,550 --> 00:21:10,310 두 개의와 같다 기능, 주 및 인쇄 이름. 514 00:21:10,310 --> 00:21:13,160 그리고 다시 혹은 생각 오늘 리버스 엔지니어링, 515 00:21:13,160 --> 00:21:16,880 도입 동기 것이었다 라인이라고 28의 기능, 516 00:21:16,880 --> 00:21:18,180 이름을 새기다? 517 00:21:18,180 --> 00:21:21,745 또는이에서의 예 것이었다 원칙이나 테이크 아웃의 관점, 518 00:21:21,745 --> 00:21:22,605 당신이하고자하는 경우. 519 00:21:22,605 --> 00:21:26,560 520 00:21:26,560 --> 00:21:27,300 일부 들려오. 521 00:21:27,300 --> 00:21:28,830 뭐? 522 00:21:28,830 --> 00:21:32,210 >> 그래, 그래서 기능 분해 말의 멋진 방법 종류, 523 00:21:32,210 --> 00:21:34,690 프로그램을 분해 그 구성 부분으로 524 00:21:34,690 --> 00:21:37,530 다음 해당 부품을 사용 전체를 조립합니다. 525 00:21:37,530 --> 00:21:39,620 그래서, 너무 단지 종류 이미 입의, 526 00:21:39,620 --> 00:21:42,050 그러나 이것은 어쩌면이다 뭔가 더 나은 예 527 00:21:42,050 --> 00:21:43,081 단지 추상화했다. 528 00:21:43,081 --> 00:21:43,580 권리? 529 00:21:43,580 --> 00:21:46,950 추상화는 하나가 될 것입니다 CS50에서 반복되는 주제 530 00:21:46,950 --> 00:21:49,085 또한 컴퓨터 과학 더 일반적으로는 이후 531 00:21:49,085 --> 00:21:53,060 당신이 해결할 수있는 기술 문제를 더 효과적으로 때문에 532 00:21:53,060 --> 00:21:56,807 더 솔루션을 쓸 수 있습니다 직관적으로와 방법으로 그 저울 533 00:21:56,807 --> 00:21:58,390 다른 사람들이 이해할 수있다. 534 00:21:58,390 --> 00:21:59,860 나는 무엇을 의미합니까? 535 00:21:59,860 --> 00:22:04,340 >> 그래서, 틀림없이 훨씬 더 읽을 수 이 같은 프로그램을보고, 536 00:22:04,340 --> 00:22:05,990 그것이 비록 슈퍼 짧은. 537 00:22:05,990 --> 00:22:10,050 당신이 라인 (22)에 볼 때이 있다는 라는 함수, 인쇄 이름. 538 00:22:10,050 --> 00:22:12,620 혼자 이름은 무엇을 말한다. 539 00:22:12,620 --> 00:22:15,780 이 함수는 분명히한다 그 괄호 사이의 입력, 540 00:22:15,780 --> 00:22:18,600 분명히 무언가를, 아마도 이름을 인쇄합니다. 541 00:22:18,600 --> 00:22:20,880 그리고, 심지어 우리하지만 절대적으로 할 수 542 00:22:20,880 --> 00:22:25,280 우리가 있던, 일주일 전에 무슨 짓을했는지 다 다만,이 코드의 실제 라인을 543 00:22:25,280 --> 00:22:28,710 이 없애 얻을 모두 함께이 제거, 544 00:22:28,710 --> 00:22:31,436 우리는 종류의 거리 추상화 이름을 인쇄하는 개념. 545 00:22:31,436 --> 00:22:33,060 당신이 인쇄 DEF를 사용하는 경우 난 상관 없어. 546 00:22:33,060 --> 00:22:35,601 당신이있는 경우 난 상관 없어 퍼센트 S와이 백 슬래시 (N) 547 00:22:35,601 --> 00:22:37,270 믿을 수 없을만큼 난해한 세부 사항은. 548 00:22:37,270 --> 00:22:40,090 나는 약 상관이야 무엇 프로그래머의 이름을 인쇄하고 있습니다. 549 00:22:40,090 --> 00:22:43,414 그래서, 더 나은 어떤 방법으로하는 것은 그렇게하는 기능, 인쇄 이름을 호출하여보다? 550 00:22:43,414 --> 00:22:46,330 그리고, 그 동기 중 하나였다 이 같은 일을합니다. 551 00:22:46,330 --> 00:22:50,370 코드를 읽기 쉽게 만들기, 더 재사용하고, 또한 자기 설명. 552 00:22:50,370 --> 00:22:52,120 이제, 살펴 보자 또 다른 예에서, 553 00:22:52,120 --> 00:22:56,220 이는, 기능 하나 이는 우리가 여기에 있었다. 554 00:22:56,220 --> 00:23:00,367 >> 그래서,이 사람은 아마도 더 강제적 때문에,이 경우, 555 00:23:00,367 --> 00:23:01,700 난 그냥 int를 얻을 싶지 않아요. 556 00:23:01,700 --> 00:23:03,320 나는 긍정적 INT를 얻을합니다. 557 00:23:03,320 --> 00:23:06,470 그리고는 양을 얻을 밝혀 당신이 취재의 무리를 할 필요가 int로. 558 00:23:06,470 --> 00:23:06,969 권리? 559 00:23:06,969 --> 00:23:09,600 그것은 간단한 한 줄이 아니다 인쇄 이름처럼 전화 560 00:23:09,600 --> 00:23:11,480 이는 일반적으로 인정 하듯이 덜 강제적이다. 561 00:23:11,480 --> 00:23:16,000 >> 긍정적 INT를 얻을, logically-- 날이 숨길 다시 아래로 스크롤 할 수 있습니다. 562 00:23:16,000 --> 00:23:18,887 당신은 무엇을해야합니까? 563 00:23:18,887 --> 00:23:20,720 모든 도구와 마찬가지로 우리 순간에있다가 564 00:23:20,720 --> 00:23:24,440 표준에서 인쇄 데프 같은 것들 도서관도 CS50 라이브러리 565 00:23:24,440 --> 00:23:26,990 우리는 지능을 가져 오기가 있고, 플로트를 가져옵니다 긴 긴 문자열을 가져 오기, 566 00:23:26,990 --> 00:23:29,260 하지만 단 하나, 게르만, 지금 지능을 가져 오기입니다. 567 00:23:29,260 --> 00:23:32,970 그래서, 유일한 도구 당신이있는 경우 당신의 도구 상자에 지능을 가져 오기입니다, 568 00:23:32,970 --> 00:23:35,505 우리는 구현 가야합니까 방법 그것은 긍정적 INT를 얻을 수 있습니까? 569 00:23:35,505 --> 00:23:35,929 >> 청중 : 로그를 작성하고 확인 에 대한 여부가 준 입력 570 00:23:35,929 --> 00:23:36,762 긍정적 인 또는 아니었다. 571 00:23:36,762 --> 00:23:39,390 572 00:23:39,390 --> 00:23:40,640 >> 스피커 1 : 적합합니다. 573 00:23:40,640 --> 00:23:41,200 정확히. 574 00:23:41,200 --> 00:23:43,950 우리가해야하는 또 다른 도구를 우리의 두 주 전에에서 도구 상자 575 00:23:43,950 --> 00:23:45,419 단지 루프 구조입니다. 576 00:23:45,419 --> 00:23:48,210 그래서, 그래, 우리는 잠시를 사용하는 경우 루프, 또는 루프 동안 DO, 또는 앞 577 00:23:48,210 --> 00:23:50,850 우리는 아마 멀리 얻을 수있는 루프 어떤 형태로 그의와. 578 00:23:50,850 --> 00:23:55,140 우리는 GET의 개념을 구현할 수 있습니다 그냥 가져 지능을 사용하여 긍정적 INT, 579 00:23:55,140 --> 00:23:57,830 다음 그냥 계속 전화 다시 사용자를 귀찮게 계속 580 00:23:57,830 --> 00:24:00,320 때까지 그 또는 실제로 그녀 우리가 원하는 것을 우리에게 제공합니다. 581 00:24:00,320 --> 00:24:03,260 >> 그리고 지금,이 프로세스의 추상화 582 00:24:03,260 --> 00:24:05,680 INT의 양을 얻는 라는 함수에 583 00:24:05,680 --> 00:24:08,930 가져 오기 긍정적 인 지능은 조금 더있다 설득력이보고 있기 때문이다. 584 00:24:08,930 --> 00:24:10,990 다음은 10 플러스처럼 코드 라인이 585 00:24:10,990 --> 00:24:15,090 긍정적 INT를 얻기에 참여하고, 난 정말 당신이 그것을 어떻게 상관 없어. 586 00:24:15,090 --> 00:24:17,850 난 상관 모두는 당신이다 그것을 할, 그리고 나는했습니다 수 있습니다 587 00:24:17,850 --> 00:24:21,660 뒤에 숨겨진 모든 세부 사항 호출 된 함수는 INT 긍정적 가져 오기 588 00:24:21,660 --> 00:24:23,430 실제로, 루프 동안이 할 일이있다. 589 00:24:23,430 --> 00:24:27,660 >> 그리고 구문 지난 주 참조 거기에,하지만 그것은 단지 N 선언, 590 00:24:27,660 --> 00:24:29,800 그리고 출력한다 사용자에게 지시. 591 00:24:29,800 --> 00:24:33,330 그것은 지능을 가져 오기를 호출 한 다음 그것을 확인 이 조건을 다시, 다시, 592 00:24:33,330 --> 00:24:35,230 사용자는 협력 다시 때까지. 593 00:24:35,230 --> 00:24:38,000 >> 그래서 지금, 몇 가지 정신을 확인합니다. 594 00:24:38,000 --> 00:24:40,370 아마도 익숙한 사람들을 위해 일부 프로그래밍, 595 00:24:40,370 --> 00:24:46,410 N 선언 왜, 왜 만듭니 까 루프 동안 DO N 개의 외부? 596 00:24:46,410 --> 00:24:50,370 왜 라인에 인 (29)이 아닌 예를 들어 같은 33에. 597 00:24:50,370 --> 00:24:53,529 >> 청중 : 때를하기 때문에 종류, 외부 그것을 선언 598 00:24:53,529 --> 00:24:56,688 더 큰 scope--의 599 00:24:56,688 --> 00:24:58,146 >> 스피커 1 : 좋은. 600 00:24:58,146 --> 00:24:59,604 >> 청중 : - 그리고 당신은 선언하는 경우 그 루프 내부, [들림] 601 00:24:59,604 --> 00:25:00,979 그것에 대해 알고하지 않기 때문에. 602 00:25:00,979 --> 00:25:02,819 603 00:25:02,819 --> 00:25:03,610 스피커 1 : 맞아요. 604 00:25:03,610 --> 00:25:06,330 나는 simplify-- 경우 이 범위의 문제이다. 605 00:25:06,330 --> 00:25:11,530 그리고 범위는 문맥을 말한다 어떤 변수가 존재하거나 사용할 수있다. 606 00:25:11,530 --> 00:25:15,050 그리고 여기 엄지 손가락의 좋은 규칙이다 일반적으로이 선언하거나 만들 때 607 00:25:15,050 --> 00:25:21,642 변수는 단지 내부 사용할 수 있습니다 가장 가까운의 중괄호를 포용. 608 00:25:21,642 --> 00:25:22,600 그래서 무엇을 의미합니까? 609 00:25:22,600 --> 00:25:26,551 나는 대신에,이를 취소하고 함께 갈 경우 조금 더 간단 느낌 뭔가. 610 00:25:26,551 --> 00:25:27,050 권리? 611 00:25:27,050 --> 00:25:29,360 >> 선 (32)는 지금 나에게 청소기 보인다. 612 00:25:29,360 --> 00:25:31,500 나는 양쪽 일을하고 있어요 한 번 다음 할당 613 00:25:31,500 --> 00:25:33,070 왼손으로 오른손. 614 00:25:33,070 --> 00:25:35,180 문제는 지금 기초 범위의 정의 615 00:25:35,180 --> 00:25:41,130 N은 그 라인에서 사용될 수있다 (31)이 루프의 내부 (32) 616 00:25:41,130 --> 00:25:45,100 하지만 어디 그 정의에 의해 이를 사용할 수 없다? 617 00:25:45,100 --> 00:25:45,660 라인에서 무엇? 618 00:25:45,660 --> 00:25:46,160 그래. 619 00:25:46,160 --> 00:25:47,490 >> 청중 : 35. 620 00:25:47,490 --> 00:25:49,180 >> 스피커 1 : 35. 621 00:25:49,180 --> 00:25:50,480 확실히 35. 622 00:25:50,480 --> 00:25:52,349 또한 다른 어디? 623 00:25:52,349 --> 00:25:52,890 청중 : 34. 624 00:25:52,890 --> 00:25:55,040 스피커 1 : 심지어 34 인 이 때문에 문제 625 00:25:55,040 --> 00:25:56,450 중괄호의 외부. 626 00:25:56,450 --> 00:25:58,200 그리고 사실, 이제 어떻게되는지 보자. 627 00:25:58,200 --> 00:25:58,700 권리? 628 00:25:58,700 --> 00:26:00,722 이것은 조금 보일 수 있습니다 직관적하거나, 그렇지 않을 수도 629 00:26:00,722 --> 00:26:02,680 하지만 이제 무엇을 보자 컴파일러는 때 말해야하는 630 00:26:02,680 --> 00:26:04,730 우리는 오늘의 소스 디렉토리로 이동합니다. 631 00:26:04,730 --> 00:26:08,950 기능을 확인하십시오. 632 00:26:08,950 --> 00:26:11,231 맙소사. 633 00:26:11,231 --> 00:26:12,980 글쎄, 나는 마침내 완료 그 방법으로. 634 00:26:12,980 --> 00:26:14,030 괜찮아. 635 00:26:14,030 --> 00:26:15,510 그리고 문제는 여기에 무엇입니까? 636 00:26:15,510 --> 00:26:17,430 보면 아주 비밀. 637 00:26:17,430 --> 00:26:19,570 그러나 여기에 내가 typed-- 무엇 기능을 확인하십시오. 638 00:26:19,570 --> 00:26:21,640 여기 수 있도록 유도 무엇을, 이는 실제로 639 00:26:21,640 --> 00:26:23,705 컴파일러 연타를 사용하여 그 플래그의 일부 640 00:26:23,705 --> 00:26:25,080 우리는 오래 전에 다시 볼 수있다. 641 00:26:25,080 --> 00:26:26,829 그리고 또, 항상 봐 첫 번째 오류에서, 642 00:26:26,829 --> 00:26:30,540 그냥 계단식가있을 수 있기 때문에 다른 라인에 의미가 효과. 643 00:26:30,540 --> 00:26:34,410 >> 그래서 이것이 의미하는 것은 그 문제는 함수 1.c.에 644 00:26:34,410 --> 00:26:36,890 이 라인 (32)에 있습니다. 645 00:26:36,890 --> 00:26:39,712 그리고 열, 또는 문자 (13)에 있어요. 646 00:26:39,712 --> 00:26:42,670 그래서 때 텍스트 편집기는 수 문제가있는 위치를 식별하는 데 도움이. 647 00:26:42,670 --> 00:26:47,079 내가 스크롤 그래서 경우, 라인 (32) 무엇인가? 648 00:26:47,079 --> 00:26:49,120 즉, 실제로이 하나 그 이미 강조 있어요 649 00:26:49,120 --> 00:26:50,607 바로 here--되지 않은 변수 (n). 650 00:26:50,607 --> 00:26:51,440 그러나 사용되지 않는 아니다. 651 00:26:51,440 --> 00:26:52,320 나는 그것을 사용하고 있습니다. 652 00:26:52,320 --> 00:26:56,110 그러나 컴파일러가 있기 때문에, 혼동 그것은 단지이 범위 안에 존재한다. 653 00:26:56,110 --> 00:26:57,727 그래서 내가 여기에 사용할 수 없습니다. 654 00:26:57,727 --> 00:26:58,560 난 여기가 사용할 수 없습니다. 655 00:26:58,560 --> 00:27:01,320 그리고 컴파일러에 따라서, 심지어 내가 노력하고있어 것을 상관하지 않는다. 656 00:27:01,320 --> 00:27:03,940 사용하지 않은 것 같다 실제 범위 내에서. 657 00:27:03,940 --> 00:27:08,854 >> 그래서 우리는 수행하여 범위를 확장 할 수 있습니다 정확히 우리가 시작한 일을 일 해요는 N 값 int. 658 00:27:08,854 --> 00:27:11,020 그리고 그것은하지 않더라도 아마도, 우아한 보면, 659 00:27:11,020 --> 00:27:15,110 우리는 여분의 라인을 가지고있어 여기에, 지금은 사방 범위에있다. 660 00:27:15,110 --> 00:27:15,970 그럼 다시 시도 할 수 있습니다. 661 00:27:15,970 --> 00:27:19,040 그래서 기능을합니다. 662 00:27:19,040 --> 00:27:19,610 반갑습니다. 663 00:27:19,610 --> 00:27:23,370 그리고 지금 나는 경우 어떻게 기능을 실행하는 경우 하나는,의 10 음을 줄 수 있습니다 664 00:27:23,370 --> 00:27:27,170 음의 1, 0, 1, 그리고 실제로 작동한다. 665 00:27:27,170 --> 00:27:28,610 >> 그래서 여기에 다른 해결책이있다. 666 00:27:28,610 --> 00:27:29,280 당신은 무엇을 알아? 667 00:27:29,280 --> 00:27:31,230 난 정말이 무엇을 씨름하고 있다면? 668 00:27:31,230 --> 00:27:33,140 나는 어디를 모르는 N 이동하기로했다. 669 00:27:33,140 --> 00:27:33,723 당신은 무엇을 알아? 670 00:27:33,723 --> 00:27:39,220 난 그냥 넣어 갈거야 모든 여기에 내 파일의 맨 위에있는 방법. 671 00:27:39,220 --> 00:27:42,835 이, 당신은 어떻게 생각합니까까요? 672 00:27:42,835 --> 00:27:43,335 그래? 673 00:27:43,335 --> 00:27:44,251 >> 청중 : [들림]. 674 00:27:44,251 --> 00:27:47,964 675 00:27:47,964 --> 00:27:48,630 스피커 1 : 그래. 676 00:27:48,630 --> 00:27:50,560 그래서 말하자면, 그것은 글로벌했습니다. 677 00:27:50,560 --> 00:27:54,430 당신이 변수가있는 경우 그 외부의 허용되는 당신의 모든 기능, 678 00:27:54,430 --> 00:27:58,780 그리고 코드를 컴파일해야하며, N 지금 취득으로뿐만 아니라 액세스 할 수 있습니다 679 00:27:58,780 --> 00:28:02,490 물론 main-- 긍정적 INT 어느 이 때문에 조금 걱정이다 680 00:28:02,490 --> 00:28:04,864 주에서 이미 N, 그래서 더 단지 moment--에 그에 681 00:28:04,864 --> 00:28:06,530 그러나 이것은 나쁜 디자인으로 간주됩니다. 682 00:28:06,530 --> 00:28:06,910 괜찮아. 683 00:28:06,910 --> 00:28:08,570 당신은에 의존해야하는 경우 뭔가 오, 나는거야, 같은 684 00:28:08,570 --> 00:28:10,125 여기 때문에 올려 코드를 컴파일 할 것 685 00:28:10,125 --> 00:28:12,180 일반적으로 가장 좋은 방법이 아닙니다. 686 00:28:12,180 --> 00:28:14,590 오히려 당신이 선택합니다 좁은 가능한 범위 687 00:28:14,590 --> 00:28:18,720 당신의 변수, 어느 의미 우리의 초기 설계와 진행하는 688 00:28:18,720 --> 00:28:19,920 바로 여기에있다. 689 00:28:19,920 --> 00:28:24,400 >> 이제 옆으로, 당신은 할 않은 경우 여기에 변수 동일 이름의, 690 00:28:24,400 --> 00:28:27,750 방법 C는이 항아리 처리 할 것 이 너무 often-- 일어나지 않을 것입니다하지만 691 00:28:27,750 --> 00:28:30,150 이 여전히 있다는 것이다 여기에 완벽하게 정상적으로. 692 00:28:30,150 --> 00:28:35,000 하지만 라인에서 N의 정의 도 22는 글로벌 한 그림자 것이다. 693 00:28:35,000 --> 00:28:38,190 그래서이 사람은 내에서 작동합니다 주, 글로벌 한 694 00:28:38,190 --> 00:28:41,670 당신이있을 때 실제로 적용됩니다 긍정적 INT하지만 더 많은 수 695 00:28:41,670 --> 00:28:43,890 다른 시간, 그러나 다만 호기심 사람들을 위해. 696 00:28:43,890 --> 00:28:45,970 >> 그래서 한마디로, 우리는 여기에이 문제를 해결. 697 00:28:45,970 --> 00:28:49,220 이제 다른 두 조각 떨어져 애타게하자 우리는 하나의 코드 마지막 줄을 살펴보기 전에 698 00:28:49,220 --> 00:28:50,170 이 프로그램에서. 699 00:28:50,170 --> 00:28:52,170 긍정적 INT를 가져옵니다. 700 00:28:52,170 --> 00:28:54,450 의 좌측에 그 단어는 단어 INT이다. 701 00:28:54,450 --> 00:28:56,860 그건 당신이 어떻게 생각하십니까을 의미합니까? 702 00:28:56,860 --> 00:28:58,900 지금까지 우리는 주로 무효 보았다. 703 00:28:58,900 --> 00:28:59,400 그래? 704 00:28:59,400 --> 00:29:01,810 >> 청중 : 그것은 유형의 당신에 대해 질문하고 변수입니다. 705 00:29:01,810 --> 00:29:04,550 >> 스피커 1 : 그래, 그것의 종류의, 저를 보자 하지 변수 말하지만, 값의 유형 706 00:29:04,550 --> 00:29:05,990 것을 나는 위해 다시 부탁 해요. 707 00:29:05,990 --> 00:29:08,070 그리고 사실, 그건 여기에 직관적, 희망. 708 00:29:08,070 --> 00:29:08,200 권리? 709 00:29:08,200 --> 00:29:10,250 당신을 얻고 싶은 경우에 긍정적 INT, 당신이 무엇을 710 00:29:10,250 --> 00:29:12,920 같은 function--를 원하는 우리 지난 주에서 자원 봉사자 711 00:29:12,920 --> 00:29:15,720 조각을 다시 손에 그것에 INT와 종이? 712 00:29:15,720 --> 00:29:19,190 그래서 우리가 지정한 그 이 함수의 소위 반환 형식 713 00:29:19,190 --> 00:29:20,450 긍정적 INT를 얻을 수있다. 714 00:29:20,450 --> 00:29:22,990 우리는 그것을 원하지 않은 경우 당신이 무효라고, 아무것도 반환. 715 00:29:22,990 --> 00:29:25,270 당신이 원하는 경우 반환 할 문자열, 당신은 문자열을 말한다. 716 00:29:25,270 --> 00:29:27,310 당신이 원하는 경우 반환 할 플로트, 당신은 플로트를 말한다. 717 00:29:27,310 --> 00:29:30,440 그러나 여기에 적용되는 하나의 논리적으로, 내가 가져 오기 INT를 사용하고 있기 때문에, 718 00:29:30,440 --> 00:29:34,130 나는 그것을 제한하고있어 비록 양의 값은 int를 반환하는 것입니다. 719 00:29:34,130 --> 00:29:38,380 >> 그래서 반대로, 그것은 무엇을 의미 하는가 것을 괄호 안에 빈 공간이있다? 720 00:29:38,380 --> 00:29:40,130 괄호는 어떻게 일반적으로 정의? 721 00:29:40,130 --> 00:29:40,588 그래? 722 00:29:40,588 --> 00:29:42,880 >> 청중 : 그것은 함수의 의미 실제로을받지. 723 00:29:42,880 --> 00:29:44,650 >> 스피커 1 : 그것은 함수의 의미 실제로 무엇을 얻고 있지? 724 00:29:44,650 --> 00:29:45,430 >> 청중 : 입력. 725 00:29:45,430 --> 00:29:46,763 >> 스피커 1 : 무엇이든지 입력. 726 00:29:46,763 --> 00:29:49,870 그래서 참으로, 경우 괄호 여기에 당신은, 무효 지정 727 00:29:49,870 --> 00:29:51,650 그 그냥 내가 모든 입력을 원하지 않는 것을 의미한다. 728 00:29:51,650 --> 00:29:53,269 나는 문제 나 자신을 처리합니다. 729 00:29:53,269 --> 00:29:55,810 그리고 실제로, 당신은 필요가 없습니다 긍정적 INT 아무것도 얻을 말한다. 730 00:29:55,810 --> 00:29:59,630 당신은, 말을 긍정적 INT를 얻고, 그 기능이 떨어져 가서 그 일을 할 것입니다. 731 00:29:59,630 --> 00:30:02,970 >> 하지만했습니다 약간의 트릭이되었습니다 여기에 모든 시간을 연주 732 00:30:02,970 --> 00:30:04,970 이 코드는 컴파일 확인합니다. 733 00:30:04,970 --> 00:30:09,620 즉 긍정적 인 얻을 int-- 주목 INT의 void-- 라인 (27)에 있습니다. 734 00:30:09,620 --> 00:30:14,530 그러나 일부 겉으로는 이상한 이유 이 라인 (16)에 여기까지도있다. 735 00:30:14,530 --> 00:30:18,530 그냥 좋은 측정을 위해 내가 반복합니다 이 때문에 완벽하게 동일합니다. 736 00:30:18,530 --> 00:30:21,640 그리고 내가 말한 프로토 타입 작은 한 줄 코멘트. 737 00:30:21,640 --> 00:30:28,850 내가 그 삭제하면 어떻게, 그리고 지금은 기능 1, 입력하게 ​​다시 실행하십시오. 738 00:30:28,850 --> 00:30:29,350 으악. 739 00:30:29,350 --> 00:30:32,527 740 00:30:32,527 --> 00:30:33,110 분을 기다립니다. 741 00:30:33,110 --> 00:30:34,764 내 탭은 어디? 742 00:30:34,764 --> 00:30:35,263 응? 743 00:30:35,263 --> 00:30:37,969 744 00:30:37,969 --> 00:30:39,620 대기. 745 00:30:39,620 --> 00:30:41,570 기능 1을 확인합니다. 746 00:30:41,570 --> 00:30:42,150 우리는 거기에 갈. 747 00:30:42,150 --> 00:30:42,310 그래. 748 00:30:42,310 --> 00:30:43,400 제대로 저장하지 않았다. 749 00:30:43,400 --> 00:30:45,220 그래서 나는 조금 있다고 생각 여기에 버그가 난 아니에요 곳 750 00:30:45,220 --> 00:30:46,636 순간 탭 이름을보고. 751 00:30:46,636 --> 00:30:47,940 그래서 여기 일이야? 752 00:30:47,940 --> 00:30:52,210 함수의 암시 적 선언 긍정적 INT를 얻을하는 C99에서 유효하지 않습니다. 753 00:30:52,210 --> 00:30:53,940 그래서 다시 혼란. 754 00:30:53,940 --> 00:30:55,200 그래서이 나타내는 무엇인가? 755 00:30:55,200 --> 00:30:57,287 글쎄, 그것은 밝혀 C는 매우 어리 석다. 756 00:30:57,287 --> 00:30:59,912 음, 프로그래밍의 언어, 또는 오히려 컴파일러이다. 757 00:30:59,912 --> 00:31:02,940 그것은 단지 당신이 알고 그것을 가르쳐, 그리고 그것은 단지이다 758 00:31:02,940 --> 00:31:05,640 뭔가를 알고있는 것 당신이 전에 그것을 가르쳐 경우. 759 00:31:05,640 --> 00:31:07,960 즉,의 순간 주, 나는 해요 760 00:31:07,960 --> 00:31:10,900 함수를 호출하려고 라는 긍정적 INT를 얻을. 761 00:31:10,900 --> 00:31:14,120 그러나 컴파일러는 않을 것이다 즉 긍정적 INT를 얻을주의 사항 762 00:31:14,120 --> 00:31:16,500 라인 (26)까지 존재한다. 763 00:31:16,500 --> 00:31:21,360 그래서 컴파일러가하는 것입니다 오류가 즉시 17 줄을수록, 764 00:31:21,360 --> 00:31:23,700 암시 적 선언을 말 긍정적 INT를 얻을 수있는 765 00:31:23,700 --> 00:31:27,740 말하는 단지 멋진 방법입니다, 내가하지 긍정적 INT는 아직 것을 얻을 알고있다. 766 00:31:27,740 --> 00:31:31,240 >> 자바와 같은 다른 언어와 파이썬과 루비는 미리 볼 수 있습니다. 767 00:31:31,240 --> 00:31:32,240 C하지 않습니다. 768 00:31:32,240 --> 00:31:35,110 그리고 방법 우리는 수정 이 두 가지 방법 중 하나입니다. 769 00:31:35,110 --> 00:31:40,160 어느 하나가 문제가 될 경우에는 그 얻을 긍정적 INT는 전에 보지되지 않았습니다 770 00:31:40,160 --> 00:31:42,150 물론, 내가 바로 가기로 이동 할 수 있습니다. 771 00:31:42,150 --> 00:31:43,650 즉,이 문제를 해결하는 것입니다. 772 00:31:43,650 --> 00:31:46,790 그러나 일반적으로,의 고려 더 나은 기술 773 00:31:46,790 --> 00:31:50,220 아주에서 주요 기능을 넣어 인간이 코드를 읽을 수 있도록 최고 774 00:31:50,220 --> 00:31:52,710 프로그램이 무엇을 알고 주 모든 매장되지 않기 때문에 775 00:31:52,710 --> 00:31:53,960 맨 아래에 또는 중간에 길. 776 00:31:53,960 --> 00:31:55,130 그것은 매우 상단에 있습니다. 777 00:31:55,130 --> 00:31:56,410 그래서 이상적인 생각하지 않습니다. 778 00:31:56,410 --> 00:31:58,326 그리고 당신은 실제로 얻을 수 있습니다 상황 곳으로 779 00:31:58,326 --> 00:32:00,820 하나의 함수를 호출하는 경우 서로를 호출하는 다른, 780 00:32:00,820 --> 00:32:04,630 당신이 문제로 얻을 수있는하지도 않습니다 논리적으로, 다른 이상 갈 수 있습니다. 781 00:32:04,630 --> 00:32:05,920 그것은 단지 수 없습니다. 782 00:32:05,920 --> 00:32:09,290 >> 그래서 방법이 작동합니다 이것은 단지 걸릴 것입니다 주위에 783 00:32:09,290 --> 00:32:13,200 함수의 서명, 그래서 speak--하기 이 declared--의 첫 번째 줄 784 00:32:13,200 --> 00:32:16,850 그냥 복사에서 붙여 넣기 곱슬 braces-- 상위 있지만 785 00:32:16,850 --> 00:32:17,980 단지 세미콜론. 786 00:32:17,980 --> 00:32:20,840 그것은 약간의 힌트처럼 올 무엇. 787 00:32:20,840 --> 00:32:26,630 실제로,이 때 모든 때 표준 io.h 같은 것들을 보았다 788 00:32:26,630 --> 00:32:33,040 및 cs50.h, 유사에 그 점 H 파일이 다른 프로토 타입입니다. 789 00:32:33,040 --> 00:32:35,250 그리고 우리는 오래 전에를 볼 수 있습니다. 790 00:32:35,250 --> 00:32:39,340 >> 짧은에 따라서는 프로그램이있을 때 여러 기능을 가진 파일 791 00:32:39,340 --> 00:32:42,300 주요 게다가, 당신 거의 항상 그들을 선언 할 792 00:32:42,300 --> 00:32:45,360 그들의 첫 번째의 방법으로 세미콜론 다음에 라인, 793 00:32:45,360 --> 00:32:48,410 파일의 맨 위에. 794 00:32:48,410 --> 00:32:50,460 즉, 한 번에 많은했다. 795 00:32:50,460 --> 00:32:53,130 질문? 796 00:32:53,130 --> 00:32:53,920 질문? 797 00:32:53,920 --> 00:32:54,530 괜찮아. 798 00:32:54,530 --> 00:32:59,760 >> 그럼 이동하자 기침과 같은 것이다. 799 00:32:59,760 --> 00:33:00,260 오. 800 00:33:00,260 --> 00:33:00,570 어떻게 피팅. 801 00:33:00,570 --> 00:33:01,220 괜찮아. 802 00:33:01,220 --> 00:33:02,260 기침. 803 00:33:02,260 --> 00:33:05,080 그래서 여기에 C입니다 프로그램의 구현 804 00:33:05,080 --> 00:33:07,560 우리의 다른 일을했다 스크래치가 매우 간단 단지 805 00:33:07,560 --> 00:33:08,691 기침, 기침, 기침 말한다. 806 00:33:08,691 --> 00:33:09,190 괜찮아. 807 00:33:09,190 --> 00:33:11,136 그리고 누군가가 몇 말했다 일 전이 있다고 808 00:33:11,136 --> 00:33:12,760 이미이 코드를 청소하는 방법. 809 00:33:12,760 --> 00:33:12,880 괜찮아? 810 00:33:12,880 --> 00:33:15,440 최대한 빨리 복사하는 바와 같이 아마 나쁜 디자인을 붙여. 811 00:33:15,440 --> 00:33:18,725 적어도 한 번 우리는 네다섯에 도착 20 기침, 나쁜 관행을 느낀다. 812 00:33:18,725 --> 00:33:19,850 우리는 단지, 붙여 넣기 사본을 보관. 813 00:33:19,850 --> 00:33:22,213 확실한 해결책은 무엇인가 이 프로그램을 위로 청소에? 814 00:33:22,213 --> 00:33:23,120 >> 청중 : 루프. 815 00:33:23,120 --> 00:33:23,350 >> 스피커 1 : 그래. 816 00:33:23,350 --> 00:33:24,070 그래서 루프를 사용합니다. 817 00:33:24,070 --> 00:33:27,697 그리고 우리는, 동안을위한 루프를 사용할 수 있습니다 루프, 접근 방법의 수. 818 00:33:27,697 --> 00:33:29,780 그리고 사실, 그게 무슨이다 우리는 여기에 버전 하나 않습니다. 819 00:33:29,780 --> 00:33:32,250 내가 대신 그것을 다시 작성했습니다 cough.c 버전 하나 820 00:33:32,250 --> 00:33:35,170 대한 루프 내에서 단지 기침한다. 821 00:33:35,170 --> 00:33:38,240 좋아,하지만 거기에 시작 가지 지금 기회 822 00:33:38,240 --> 00:33:41,630 더 같은이 작은 디자인을 교훈은 우리가 잠시 전에 가르쳐 823 00:33:41,630 --> 00:33:46,190 내가 원하는 것을 가정이 항아리 인 기침라는 함수를 만들려면 824 00:33:46,190 --> 00:33:49,730 그냥 잠시 생각해 보자 그것은 무엇처럼 보일 것입니다. 825 00:33:49,730 --> 00:33:51,900 내가 뭔가를 원한다면 난 그냥 필요, 기침 826 00:33:51,900 --> 00:33:53,800 함수 내에서 인쇄 F를 사용합니다. 827 00:33:53,800 --> 00:33:55,030 그리고 실제로 나는 생각합니다. 828 00:33:55,030 --> 00:33:56,990 그리고 사실,이 모든 시간, 언제 당신이있어 829 00:33:56,990 --> 00:33:59,000 뭔가를 인쇄 화면, 프로그래머 830 00:33:59,000 --> 00:34:00,610 부작용 있음을 부를 것이다. 831 00:34:00,610 --> 00:34:02,990 그것은 내게는 나눠 아니에요 다시 누군가 값. 832 00:34:02,990 --> 00:34:06,170 그것은 내게 어떤 조치를 취할 것 그 시각적으로 분명있을 수 있습니다. 833 00:34:06,170 --> 00:34:10,672 그러나 이러한 기능은 기침, 그것을 반환하지 첫 번째 라인을 기반으로 아무것도? 834 00:34:10,672 --> 00:34:12,880 아니, 그것의 반환 형식 때문에 그냥 의미, 무효입니다 835 00:34:12,880 --> 00:34:14,250 그것은 다시 나에게 아무것도 전달 아니에요. 836 00:34:14,250 --> 00:34:16,791 이 일을 할 수 있습니다 시각적으로, 그러나 그것은 나를 나눠 아니에요 837 00:34:16,791 --> 00:34:18,639 지난 주처럼 종이를 백업합니다. 838 00:34:18,639 --> 00:34:21,310 >> 그것은 어떤 입력을해야합니까? 839 00:34:21,310 --> 00:34:21,810 아니. 840 00:34:21,810 --> 00:34:23,134 그리고 그것은 너무 여기 무효입니다. 841 00:34:23,134 --> 00:34:25,600 그래서이 너무 가지입니다 이 문제를 오버 엔지니어링. 842 00:34:25,600 --> 00:34:26,099 권리? 843 00:34:26,099 --> 00:34:28,820 나는 더 많은 프로그램을 만들었어요 코드의 복잡한, 더 선, 844 00:34:28,820 --> 00:34:31,889 나는 어떤을 만든하지 않은 이상의 기능 있지만 845 00:34:31,889 --> 00:34:34,210 디딤돌이 될 것입니다, 아마도위한 광범위한 846 00:34:34,210 --> 00:34:36,830 더 복잡한 코드 상황. 847 00:34:36,830 --> 00:34:38,150 하지만 이것에 대해 무엇? 848 00:34:38,150 --> 00:34:42,050 나는 단지에서 무엇을이기는 done-- 한 이 댓글을보고하지 않고 849 00:34:42,050 --> 00:34:46,076 무슨 file--의 맨 위에 나는 기본적으로 내 기침 여기 다 850 00:34:46,076 --> 00:34:47,409 다른 구현? 851 00:34:47,409 --> 00:34:48,327 그래, 다시? 852 00:34:48,327 --> 00:34:51,384 >> 청중 : 당신이 할 수 있도록합니다 문자를 해제해야합니다. 853 00:34:51,384 --> 00:34:52,050 스피커 1 : 그래. 854 00:34:52,050 --> 00:34:53,270 그래서이 종류의 좋은 느낌. 855 00:34:53,270 --> 00:34:53,389 권리? 856 00:34:53,389 --> 00:34:56,600 그것은에 기능을 추가처럼 당신의 프로그램이나이 경우 함수. 857 00:34:56,600 --> 00:34:57,830 아직 아무 것도 반환하지 않습니다. 858 00:34:57,830 --> 00:35:00,538 그것은 시각적 부작용을 가질 수 이 인쇄 F를 부르고 있기 때문이다. 859 00:35:00,538 --> 00:35:02,800 하지만 지금은 매개 변수화 한 기능을하는 860 00:35:02,800 --> 00:35:06,470 내가 찍은 지정한 의미 int 형의 입력, N 호출 861 00:35:06,470 --> 00:35:08,510 하지만 난 내가 원하는 무엇이든 그것을 호출 할 수 있습니다. 862 00:35:08,510 --> 00:35:11,550 사실, 단지 수 시간은 훨씬 더 명시합니다. 863 00:35:11,550 --> 00:35:13,310 그리고 난 그냥 여기를 변경할 수 있습니다. 864 00:35:13,310 --> 00:35:16,450 그러나 포인트는 어떻게이 있다는 것이다 입력을받는 함수를 만들 수 있습니다. 865 00:35:16,450 --> 00:35:19,530 그리고 당신은 내리고 기억 경우 하나 아마도 온라인을 통해 866 00:35:19,530 --> 00:35:23,000 워크 스루의, 네 번째이자 마지막 기침 예를 들어, 867 00:35:23,000 --> 00:35:27,150 여기서 알 수 나는 일반화했습니다 추상화의 내 코드 further-- 종류 868 00:35:27,150 --> 00:35:27,690 더 나아가. 869 00:35:27,690 --> 00:35:31,390 기침, 재채기와 마찬가지로 모두는 에 대해 뭔가를 말하거나 만들기 등 870 00:35:31,390 --> 00:35:32,330 소리의 일종. 871 00:35:32,330 --> 00:35:34,725 저장 될 것이다 스크래치 해당 블록. 872 00:35:34,725 --> 00:35:37,350 그리고이 버전에서했던 그래서, 이는 우리가에서 바로 눈에 수 873 00:35:37,350 --> 00:35:43,170 , 기침 그냥 [기침] 말하는 것과입니다 기침, 그리고 그 사이에, 재채기입니다 874 00:35:43,170 --> 00:35:44,570 말처럼, [ACHOO]. 875 00:35:44,570 --> 00:35:46,900 그래서 나는 일반화했습니다 이러한 구현 876 00:35:46,900 --> 00:35:48,970 지금 구현하여 이 일반적인 기능, 877 00:35:48,970 --> 00:35:51,490 재미있는 말 오늘의 목적을 위해 878 00:35:51,490 --> 00:35:54,300 만 여전히 때문에 반환 형식이 없습니다. 879 00:35:54,300 --> 00:35:56,398 그러나 얼마나 많은 입력을해야합니까? 880 00:35:56,398 --> 00:35:56,981 청중 : 두. 881 00:35:56,981 --> 00:35:57,430 스피커 1 : 두. 882 00:35:57,430 --> 00:35:59,263 그리고 당신이 원하는 경우 두 개의 인수를 받아, 883 00:35:59,263 --> 00:36:00,710 그냥 쉼표로 구분합니다. 884 00:36:00,710 --> 00:36:03,110 그리고 당신은 원하는 경우 그 함수를 호출, 885 00:36:03,110 --> 00:36:05,800 알 당신이 단지 , 인용을 끝내, 견적, 말 전화 886 00:36:05,800 --> 00:36:09,090 첫 번째 인수에 대한 공통 N, 두 번째 인수에 대해. 887 00:36:09,090 --> 00:36:12,130 그래서 다시, 우리는 지금이 빌딩 블록 우리가 실제로 할 수 있도록 888 00:36:12,130 --> 00:36:15,686 우리 자신의 일부 기능을 구현합니다. 889 00:36:15,686 --> 00:36:16,570 괜찮아. 890 00:36:16,570 --> 00:36:19,690 이들에 대한 질문? 891 00:36:19,690 --> 00:36:22,400 >> 그래서 지금의 레이어 그렇다면 다시 벗겨 보자. 892 00:36:22,400 --> 00:36:24,840 그리고 목표, 궁극적으로, 다음 주 문제 세트입니다 893 00:36:24,840 --> 00:36:27,710 cryptogrophy--에있을 것입니다 스크램블링 정보 기술. 894 00:36:27,710 --> 00:36:30,640 구체적으로, 정보 당신은 암호화 또는 암호 해독해야합니다 895 00:36:30,640 --> 00:36:31,605 텍스트가 될 것입니다. 896 00:36:31,605 --> 00:36:33,980 초대의 그리고 그런 종류의 질문 오늘 잘 같은, 897 00:36:33,980 --> 00:36:38,480 무슨 일이 후드 아래 벌어지고 주 0에서 ASCII 이상으로 텍스트, 898 00:36:38,480 --> 00:36:40,730 방법은 실제로 우리가 할 수 이를 조작하기 시작? 899 00:36:40,730 --> 00:36:43,070 그래서 여기에 Zamyla의 이름입니다. 900 00:36:43,070 --> 00:36:47,380 그리고 텍스트, 즉 입력 될 수 있습니다 GET 문자열 기능 등으로. 901 00:36:47,380 --> 00:36:52,540 당신이 볼 때, 이제 시작 이 항아리 Z-A-M-Y-L-할까 .. 같은 문자열 902 00:36:52,540 --> 00:36:56,550 각 것처럼 생각하고 시작 그 문자의 상자에 그 903 00:36:56,550 --> 00:36:57,050 자신의. 904 00:36:57,050 --> 00:36:59,460 그리고 실제로, 일주일 정도의 시간,이 상자의 각 905 00:36:59,460 --> 00:37:04,280 아주 구체적으로 표현하는 것입니다 메모리의 물기를 memory--의 블록. 906 00:37:04,280 --> 00:37:07,050 그래서이 편지의 각, 궁극적으로, 8 비트를 나타냅니다. 907 00:37:07,050 --> 00:37:10,560 그리고 우리가 실제로 무슨 일이야 볼 수 있습니다 내 컴퓨터에 후드 아래에. 908 00:37:10,560 --> 00:37:13,440 >> 아닌 것은 충분 다만 Zamyla 보는 909 00:37:13,440 --> 00:37:17,520 의 이에 각이 렌즈를 통해 이 편지는 자신의 상자입니다. 910 00:37:17,520 --> 00:37:22,697 그리고 멋지게 충분히 C로 우리는 할 수 바로이 상자의 각 액세스 할 수 있습니다. 911 00:37:22,697 --> 00:37:25,530 첫 번째를 얻고 싶은 경우에 따라서 그녀의 이름의 편지, C에서 아주 쉽게 912 00:37:25,530 --> 00:37:28,410 당신은 마지막을 얻고 싶다면 편지, 아주 쉽게뿐만 아니라 913 00:37:28,410 --> 00:37:30,240 새 구문의 조각. 914 00:37:30,240 --> 00:37:36,250 >> 그래서 CS50로 진행거야 IDE와 문자열을 제로 점 C를 열어 915 00:37:36,250 --> 00:37:40,270 여기에서 본 실시 예에서, 존재 새로운 몇 가지 일이 일어나고. 916 00:37:40,270 --> 00:37:44,360 그래서 첫 번째 줄 19, 우리는했습니다 이 before-- GET 문자열을 본. 917 00:37:44,360 --> 00:37:49,840 그래서 그냥 빨리 전성 검사로, 누군가가 구두까지 제공 할 수있는 경우 918 00:37:49,840 --> 00:37:52,662 의 평신도의 설명 무슨 일이 라인 19에서 일어나는. 919 00:37:52,662 --> 00:37:55,370 바로이 점을 번역처럼 영어 그 CS50의 룸메이트하지 920 00:37:55,370 --> 00:37:56,416 이해할 수 있습니다. 921 00:37:56,416 --> 00:37:56,916 그래. 922 00:37:56,916 --> 00:37:59,749 >> 청중 : 사용자 입력을 가지고 문자열 변수들에 저장하고. 923 00:37:59,749 --> 00:38:01,934 924 00:38:01,934 --> 00:38:02,600 스피커 1 : 좋은. 925 00:38:02,600 --> 00:38:05,579 사용자 입력을 문자열을 가지고 과 변수들에 보관하십시오. 926 00:38:05,579 --> 00:38:06,120 잘 됐네요. 927 00:38:06,120 --> 00:38:08,090 오른쪽에 따라서 면, 우리는 GET 문자열을 호출합니다. 928 00:38:08,090 --> 00:38:10,340 즉, 값을 반환 그가 할당되지 않았다 929 00:38:10,340 --> 00:38:14,230 오른쪽에서 왼쪽 손을합니다 의 변수라고들로 측 930 00:38:14,230 --> 00:38:15,950 문자열을 저장하도록 설계. 931 00:38:15,950 --> 00:38:16,800 정확히. 932 00:38:16,800 --> 00:38:20,000 >> 그래서 지금 당, 22 라인 라인 (21)의 주석, 933 00:38:20,000 --> 00:38:22,780 분명히 그 문자열을 출력 한 줄에 하나의 문자. 934 00:38:22,780 --> 00:38:23,740 하지만 어떻게? 935 00:38:23,740 --> 00:38:27,040 그래서 우선, 우리는 내가 0으로 초기화. 936 00:38:27,040 --> 00:38:31,061 그리고 우리가 어떻게에받을 수 있나요 Zamyla의 이름의 끝? 937 00:38:31,061 --> 00:38:32,810 음의 끝에 Zamyla의 이름, 나는 할 수 938 00:38:32,810 --> 00:38:38,151 수동의 마지막 문자를 입력 그녀의 어떻게 든 이름, 또는 그것의 수입니다. 939 00:38:38,151 --> 00:38:38,650 권리? 940 00:38:38,650 --> 00:38:43,500 우리는 다시 here-- Z-A-M-메디슨 가면 Y-L-할까 .. 그래서 난에 입력 할 수 있습니다. 941 00:38:43,500 --> 00:38:47,340 의 인덱스 기능 Zamyla의 마지막 편지? 942 00:38:47,340 --> 00:38:52,517 이 경우 0--처럼 말하기 programmer-- 0, 1, 2, 3, 4, 5, 943 00:38:52,517 --> 00:38:56,570 나는, 그래서 참으로 마지막 편지를 heard-- Zamyla의 이름으로 여섯 번째는, 944 00:38:56,570 --> 00:38:58,890 하지만 우리는 0부터 계산하면, 이 숫자 5가 될 것. 945 00:38:58,890 --> 00:39:01,320 그래서 여기에 마음에 보관하십시오. 946 00:39:01,320 --> 00:39:04,929 >> 함수에 거기에서 그것은집니다 C는 strlen 함수를 호출, 다시 하루에 947 00:39:04,929 --> 00:39:06,720 아직도이 일에, 프로그래머의 많은 948 00:39:06,720 --> 00:39:09,524 의 이름을 동기화하도록 선택할 그들의 말 같은 소리 기능 949 00:39:09,524 --> 00:39:10,440 그들이 말하고자하는 것입니다. 950 00:39:10,440 --> 00:39:12,590 그래서 나 strlen 문자열의 길이입니다. 951 00:39:12,590 --> 00:39:18,168 그래서 무슨 일이 문자열 길이의 것 Zamyla가 입력되면 S 반환? 952 00:39:18,168 --> 00:39:19,569 >> 청중 : 다섯. 953 00:39:19,569 --> 00:39:22,090 >> 스피커 1 : Z-A-M-Y-L. 여섯. 954 00:39:22,090 --> 00:39:22,590 권리? 955 00:39:22,590 --> 00:39:23,940 Zamyla 이름의 길이는 얼마입니까? 956 00:39:23,940 --> 00:39:24,440 권리? 957 00:39:24,440 --> 00:39:26,240 단지 현실에서, 여섯 글자. 958 00:39:26,240 --> 00:39:26,740 권리? 959 00:39:26,740 --> 00:39:28,940 그리고 그것은 우리의 루프 무엇을 의미 하는가? 960 00:39:28,940 --> 00:39:32,130 우리는에서 갈거야 여섯 0, 어떤 961 00:39:32,130 --> 00:39:33,650 우리에게 다섯 반복을 줄 것입니다. 962 00:39:33,650 --> 00:39:34,890 우리는 각각의 반복에 무엇을해야합니까? 963 00:39:34,890 --> 00:39:36,870 음, 퍼센트 C, 사람 다른 날 추측, 964 00:39:36,870 --> 00:39:38,710 무엇을위한 자리를 의미한다? 965 00:39:38,710 --> 00:39:39,335 >> 청중 : 샤아. 966 00:39:39,335 --> 00:39:40,293 스피커 1 : 그냥 문자. 967 00:39:40,293 --> 00:39:42,877 그래서 하나의 character--하지 문자열과 같은 여러 문자. 968 00:39:42,877 --> 00:39:45,251 그리고 여기에 새로운 라인이다 우리는 밖으로 인쇄를 가지고있다. 969 00:39:45,251 --> 00:39:46,580 그리고 여기에 새 구문입니다. 970 00:39:46,580 --> 00:39:51,130 당신은 i 번째를 인쇄하려면 문자열 S의 문자는, 그래서, 말하자면 971 00:39:51,130 --> 00:39:54,060 당신은 단순히 말을 할 수 문자열 S의 이름, 972 00:39:54,060 --> 00:39:58,230 다음 대괄호를 열고, 다음 내가 함께, 대괄호를 폐쇄 973 00:39:58,230 --> 00:39:58,780 중간. 974 00:39:58,780 --> 00:40:01,430 그리고는 점에서 일종의 좋다 그것은 종류의 사각형 모양 975 00:40:01,430 --> 00:40:06,210 그냥 사각형 등 Zamyla의있는 문자가 그 사진에 존재합니다. 976 00:40:06,210 --> 00:40:09,970 >> 내가 실제로 실행한다면 자, 어떻게 볼 수 있습니다. 977 00:40:09,970 --> 00:40:15,190 문자열 0 점 슬래시를 확인 문자열 0을 입력 한 다음 난 978 00:40:15,190 --> 00:40:16,720 Zamyla의 이름을 입력하는 것. 979 00:40:16,720 --> 00:40:19,428 내가하지 않았기 때문에 어떤 프롬프트는 없다 인쇄 F를 사용하지만 괜찮아요. 980 00:40:19,428 --> 00:40:20,660 난 그냥 어떻게 해야할지. 981 00:40:20,660 --> 00:40:23,240 그리고 실제로, 그것은 출력한다 Zamyla의 이름, 한 줄에 하나씩. 982 00:40:23,240 --> 00:40:25,760 >> 이제 조금 무모 할 수 있습니다. 983 00:40:25,760 --> 00:40:28,461 내가 아는하지 않았다고 가정하자 대한 나 strlen 내가 생각, 984 00:40:28,461 --> 00:40:31,460 모든 권리, 아무도를해야 할 것없는 것 50 자와 같은보다 더 큰 이름을 지정합니다. 985 00:40:31,460 --> 00:40:36,360 이제 가서이를 다시 컴파일하자 그것을 다시 실행 한 다음 Zamyla을 입력 986 00:40:36,360 --> 00:40:37,160 다시. 987 00:40:37,160 --> 00:40:40,850 논리적으로, 무엇 인 이 프로그램은 인쇄하려고하는 것? 988 00:40:40,850 --> 00:40:49,545 Z-A-M-Y-L-다음을 추천 메모리의 알 수없는 바이트. 989 00:40:49,545 --> 00:40:51,670 그리고 실제로, 우리는 다시 올 것이다 메모리의 아이디어. 990 00:40:51,670 --> 00:40:54,180 그러나 단지 논리적으로, 경우 Zamyla의 이름은, 이렇게 오래입니다 991 00:40:54,180 --> 00:40:56,450 그림에 따라 여기에, 우리는 무엇을 말을하는지 992 00:40:56,450 --> 00:40:59,810 인쇄를 계속 인쇄를 유지하고, 유지 인쇄, 인쇄를 계속 인쇄를 유지 993 00:40:59,810 --> 00:41:03,781 50 문자까지 모든 방법, 어떤 일이 일어나고 있는지 알고있는 사람. 994 00:41:03,781 --> 00:41:05,030 그래서 실제로 살펴 보자. 995 00:41:05,030 --> 00:41:06,720 의는 Zamyla을 입력 할 수 있습니다. 996 00:41:06,720 --> 00:41:07,250 흥미. 997 00:41:07,250 --> 00:41:08,190 우리는 운이 있어요. 998 00:41:08,190 --> 00:41:09,700 공백의 단지 전체 무리. 999 00:41:09,700 --> 00:41:09,930 오. 1000 00:41:09,930 --> 00:41:11,120 한 펑키 문자가있다. 1001 00:41:11,120 --> 00:41:14,577 그것은 이상한 질문 같은 종류의 보이는 이 표시하지만, Zamyla의 이름이있다. 1002 00:41:14,577 --> 00:41:15,660 의 정말 무모한하자. 1003 00:41:15,660 --> 00:41:20,000 우리는 500을 인쇄에 대해 어떻게 미지의 블록? 1004 00:41:20,000 --> 00:41:24,380 이제 가서이를 만들어 보자 뿐만 아니라 한 후 다시 실행. 1005 00:41:24,380 --> 00:41:27,980 그리고의 그것 때문에 전체 화면을하자 우리는 더 많은 공간을 볼 필요가있다. 1006 00:41:27,980 --> 00:41:30,460 Zamyla. 1007 00:41:30,460 --> 00:41:31,830 다시 행운이있어. 1008 00:41:31,830 --> 00:41:33,070 >> 우리가 더 무모 얻을 수있어? 1009 00:41:33,070 --> 00:41:36,070 좀 더 무모하자. 1010 00:41:36,070 --> 00:41:39,350 50,000 문자. 1011 00:41:39,350 --> 00:41:41,390 이것은 대부분의 확실히 좋은 생각이 아니다. 1012 00:41:41,390 --> 00:41:41,890 괜찮아. 1013 00:41:41,890 --> 00:41:42,990 문자열 0을 확인합니다. 1014 00:41:42,990 --> 00:41:44,720 이것은 우리의 마지막 데모 될 것입니다. 1015 00:41:44,720 --> 00:41:47,261 Zamyla. 1016 00:41:47,261 --> 00:41:48,632 윽. 1017 00:41:48,632 --> 00:41:50,010 윽. 1018 00:41:50,010 --> 00:41:50,680 그래. 1019 00:41:50,680 --> 00:41:54,407 그래서 내 기억은 지금 정말로 비어 이는 실제로 종류의 편리합니다. 1020 00:41:54,407 --> 00:41:55,990 나는 모든 권리를 이러시면 얻기 위해 노력하고있어. 1021 00:41:55,990 --> 00:41:57,614 그리고 지금 난 그냥 무모 얻을거야. 1022 00:41:57,614 --> 00:41:58,570 50. 1023 00:41:58,570 --> 00:42:03,860 전체 화면에게의를하자 Make--. 1024 00:42:03,860 --> 00:42:04,990 입력합니다. 1025 00:42:04,990 --> 00:42:05,490 Zamyla. 1026 00:42:05,490 --> 00:42:12,050 1027 00:42:12,050 --> 00:42:13,390 우리는 거기에 갈. 1028 00:42:13,390 --> 00:42:15,610 나는 아무 생각 그 무엇을 가지고 이지만 나쁜 들린다. 1029 00:42:15,610 --> 00:42:16,110 괜찮아. 1030 00:42:16,110 --> 00:42:20,322 그리고 사실, 곧, 당신은 사이 인 경우에 근무 시간에 운이 몇 1031 00:42:20,322 --> 00:42:22,780 그리고 문제에서 당신을 하나를 설정 잘이 발생할 수 있습니다. 1032 00:42:22,780 --> 00:42:25,490 분할 오류가 실제로 수행 잘 정의 된 의미를 가지고있다. 1033 00:42:25,490 --> 00:42:28,450 그것은 실수의 일종을 의미한다 메모리 세그먼트에 관한. 1034 00:42:28,450 --> 00:42:30,490 그리고 평신도의 관점에서, 우리가 감동을 의미합니다 1035 00:42:30,490 --> 00:42:34,780 memory-- 우리는 내 컴퓨터에 RAM을 사용 나는에 액세스 할 수 없었을 것을. 1036 00:42:34,780 --> 00:42:37,050 그리고 그 둘의 무슨 강력하고도 위험한 1037 00:42:37,050 --> 00:42:39,910 C에 대해 당신이 실제로 자유롭게 액세스 할 수 있습니다 1038 00:42:39,910 --> 00:42:45,910 프로그램 메모리의 전체에 또는 바이트 RAM,보다 구체적으로는. 1039 00:42:45,910 --> 00:42:49,510 >> 그래서 심지어 Zamyla의 이름하지만 만 6 자 길이 1040 00:42:49,510 --> 00:42:51,450 난 아직 아무데도 갈 수 있습니다 메모리에 내가 원하는. 1041 00:42:51,450 --> 00:42:53,491 그리고 옆으로, 당신은했습니다 것처럼 지금까지 몇 가지 기사를 읽고 1042 00:42:53,491 --> 00:42:55,610 일부에 대한 지난 몇 년 동안 서버 또는 일부 프로그램 1043 00:42:55,610 --> 00:42:58,654 금 또는 해킹 점점 그건 무언가의 촬영 이점 1044 00:42:58,654 --> 00:43:00,820 버퍼 오버 플로우라고 우리가 실제로 것이라는 점을 악용 1045 00:43:00,820 --> 00:43:04,970 그건, 몇 주에 대해 이야기 일반적으로 어떻게 든 속여 참조 1046 00:43:04,970 --> 00:43:09,090 잘 진행에 컴퓨터 메모리의 경계를 넘어 1047 00:43:09,090 --> 00:43:11,410 이 가져야하고, 달콤한 무언가를 찾는 1048 00:43:11,410 --> 00:43:13,530 그 memory--에 암호, 아마도 방법 1049 00:43:13,530 --> 00:43:16,990 일부 일련 번호를 우회의 확인, 또는 일반적으로 수 만 1050 00:43:16,990 --> 00:43:20,360 컴퓨터가 실행 속여 의도하지 않은 코드입니다. 1051 00:43:20,360 --> 00:43:22,360 그러나 이제 다시 오게 단지 잠시 현실 1052 00:43:22,360 --> 00:43:24,550 이 프로그램은 어디에 strlen 함수로 구현, 1053 00:43:24,550 --> 00:43:26,110 여기에 한 가지를 소개합니다. 1054 00:43:26,110 --> 00:43:30,030 이들 상위 세 라인 중 새로운 무엇입니까? 1055 00:43:30,030 --> 00:43:30,910 >> 그래서 문자열 도트 시간. 1056 00:43:30,910 --> 00:43:35,490 그것은이라는 라이브러리가있다 밝혀 문자열 점 H, 또는 문자열 라이브러리, 1057 00:43:35,490 --> 00:43:38,490 그 헤더 파일, 말하자면, 저를주는 캐릭터 도트 시간이다 1058 00:43:38,490 --> 00:43:40,860 이 나 strlen 기능에 액세스 할 수 있습니다. 1059 00:43:40,860 --> 00:43:43,841 나는 그것을 생략하면, 컴파일러는 어떤 형태 나 소리 것. 1060 00:43:43,841 --> 00:43:44,590 하지만 당신은 알아? 1061 00:43:44,590 --> 00:43:46,090 이제 정말 미묘한하자. 1062 00:43:46,090 --> 00:43:50,820 라인 (22)에서, 어떤 종류있다 의 inefficient-- 심하게 설계, 1063 00:43:50,820 --> 00:43:53,990 코드 행에 대해 arguably--. 1064 00:43:53,990 --> 00:43:56,280 방법을 다시 생각 대한 루프 구현 1065 00:43:56,280 --> 00:44:00,140 어떤 단계가 다시 발생하고 다시 초기화 again--, 1066 00:44:00,140 --> 00:44:04,110 조건 코드 그 실행 후 증가를 가져옵니다 1067 00:44:04,110 --> 00:44:07,880 또는 변경, 다음 조건, 다음, 다음 코드, 다음의 변화, 1068 00:44:07,880 --> 00:44:11,280 조건, 다음 코드, 다음 등 변경합니다. 1069 00:44:11,280 --> 00:44:15,320 그래서 조금이 될 수 있습니다 걱정 또는 가난하게 여기 다? 1070 00:44:15,320 --> 00:44:16,387 네, 파란색. 1071 00:44:16,387 --> 00:44:18,220 청중 : STRLEN입니다 많은, 여러 번했다. 1072 00:44:18,220 --> 00:44:20,654 1073 00:44:20,654 --> 00:44:21,320 스피커 1 : 그래. 1074 00:44:21,320 --> 00:44:23,700 라고 그래서 나 strlen 여러 번,하지만 무엇 1075 00:44:23,700 --> 00:44:27,113 Zamyla의 이름의 길이 처음으로 루프가 실행? 1076 00:44:27,113 --> 00:44:27,860 >> 청중 : 여섯. 1077 00:44:27,860 --> 00:44:28,110 >> 스피커 1 : 여섯. 1078 00:44:28,110 --> 00:44:30,976 글쎄, 그녀의 이름의 길이 무엇인가 코드가 실행 번째? 1079 00:44:30,976 --> 00:44:31,432 >> 청중 : 여섯. 1080 00:44:31,432 --> 00:44:31,890 >> 스피커 1 : 좋아. 1081 00:44:31,890 --> 00:44:32,720 아직 여섯입니다. 1082 00:44:32,720 --> 00:44:33,220 권리? 1083 00:44:33,220 --> 00:44:35,260 Zarla의 이름은되지 않았습니다 내가 찾고 있어요 경우에도 변경 1084 00:44:35,260 --> 00:44:38,240 그녀의 이름에서 문자의 부분에. 1085 00:44:38,240 --> 00:44:41,349 그리고 사실 나는 효과적으로 해요 것을 이 질문을, 무엇이다 1086 00:44:41,349 --> 00:44:44,640 Zamyla의 길이는, 길이 무엇 Zamyla의, Zamyla의 길이 무엇, 1087 00:44:44,640 --> 00:44:47,990 여섯 별도의 시간, 또는 일곱도, 그냥 바보 1088 00:44:47,990 --> 00:44:50,390 즉 그 대답은 변하지 왜냐하면. 1089 00:44:50,390 --> 00:44:53,550 그래서 내가 실제로 할 수 문자열 하나에이 항아리 할 것입니다 1090 00:44:53,550 --> 00:44:55,680 여기 변두리에 더 나은 버전이있다. 1091 00:44:55,680 --> 00:45:00,110 ... 이렇게 whoops-- 문자열이 내가 가진 변두리에 더 나은 버전 특징 1092 00:45:00,110 --> 00:45:05,010 내가 대신 그냥이 항아리 수행 나는 쉼표로도 0으로 나는 초기화 1093 00:45:05,010 --> 00:45:07,990 라는 두 번째 변수를 선언 N-- 난 다시 INT 말을 할 필요가 없습니다. 1094 00:45:07,990 --> 00:45:09,220 나는 사실, 안된다. 1095 00:45:09,220 --> 00:45:10,380 하지만 N 말한다. 1096 00:45:10,380 --> 00:45:13,610 그리고 나는 N에 초기화 그래서 N의 나 strlen, 지금 1097 00:45:13,610 --> 00:45:17,110 얼마나 많은 시간을 나 strlen 않습니다 총 실행 얻을? 1098 00:45:17,110 --> 00:45:17,610 딱 한번. 1099 00:45:17,610 --> 00:45:20,257 그리고 이것은 우리가 무엇을 의미하는지입니다 이전의 더 나은 디자인에 대한. 1100 00:45:20,257 --> 00:45:23,090 실제로 코드는 올바른되면 다시 가서 통해 생각, 1101 00:45:23,090 --> 00:45:26,820 내가 적게 사용하고 메모리 또는 몇 초 1102 00:45:26,820 --> 00:45:30,409 컴퓨터 시간 또는 밀리 초 일부 문제점을 실현할 수? 1103 00:45:30,409 --> 00:45:32,200 그리고 스크롤거야 최대 단지 언급 1104 00:45:32,200 --> 00:45:34,283 이 언급이 있다고 이 버전은 NULL, 1105 00:45:34,283 --> 00:45:36,390 그러나 우리는 오래 전에 다시 그에게 올 것이다. 1106 00:45:36,390 --> 00:45:41,010 지금 때문에, 이제 살펴 보자 어디에서이 우리를 이끌 것입니다. 1107 00:45:41,010 --> 00:45:44,110 그래서 하나, 그것은 밝혀 우리는 능력이 이제 1108 00:45:44,110 --> 00:45:46,860 개별 문자 보는, 우리는 무언가를 활용할 수 있습니다 1109 00:45:46,860 --> 00:45:50,807 주 0에서 이들은 매우 비밀이었고, 당시 재미의 일종. 1110 00:45:50,807 --> 00:45:53,390 하지만 지금은, 특히 때를 일주일에 암호화에 도착, 1111 00:45:53,390 --> 00:45:54,820 그것은 꽤 강력한 될 것. 1112 00:45:54,820 --> 00:45:57,450 그것은 몇 가지와 그것을 밝혀 데이터 types-- 정수와 수레 1113 00:45:57,450 --> 00:46:00,300 및 문자 및 문자열과 그들 중 일부 things-- 다른 1114 00:46:00,300 --> 00:46:02,800 아주 쉽게 서로 전환 될 수있다. 1115 00:46:02,800 --> 00:46:05,840 >> 예를 들어, 우리가 이야기 할 때 ASCII에 대해 약간의 시간이 ago-- 여기 1116 00:46:05,840 --> 00:46:07,796 대문자의 M을 통해, 점, 점, 1117 00:46:07,796 --> 00:46:12,530 dot-- 우리는 매핑이 있다고 말했다 이러한 문자와 숫자 사이. 1118 00:46:12,530 --> 00:46:14,970 사실, 그것은 성립 뿐만 아니라 소문자합니다. 1119 00:46:14,970 --> 00:46:17,470 소문자 a가 97이며, 자본은 65입니다. 1120 00:46:17,470 --> 00:46:20,860 그리고 ASCII의 수는있다 이는 단지이 매핑 1121 00:46:20,860 --> 00:46:23,240 그 다른 문자의 모든 시스템. 1122 00:46:23,240 --> 00:46:25,030 그래서 무엇을 의미합니까? 1123 00:46:25,030 --> 00:46:28,390 음, 앞서 열린 갈거야 라는 진짜 빨리 뭔가 최대 1124 00:46:28,390 --> 00:46:31,240 의견이다 대부분의 ASCII 0,. 1125 00:46:31,240 --> 00:46:33,860 그리고 다시 온라인 당신은 항상 수 코멘트를 통해 한눈에. 1126 00:46:33,860 --> 00:46:36,180 >> 그리고 봐 무엇 이 수행 할 것입니다. 1127 00:46:36,180 --> 00:46:38,410 그래서 주요 기능을 가지고있다. 1128 00:46:38,410 --> 00:46:41,490 난 단지에 대한 숫자를 하드 코딩했습니다 지금, 때문에 내가 뭘하는지 알고있다. 1129 00:46:41,490 --> 00:46:42,950 나는 여기에서보고 싶은 알고있다. 1130 00:46:42,950 --> 00:46:45,220 그리고 나는 65에 나는 초기화했습니다. 1131 00:46:45,220 --> 00:46:48,490 그리고 최대 믿고있어 (26)를 통해 문자 총. 1132 00:46:48,490 --> 00:46:52,990 그리고 나는 무슨 예정 한 번에 한 라인을 인쇄 1133 00:46:52,990 --> 00:46:54,930 당신이 해석 할 수있는 경우 이 라인을 강조? 1134 00:46:54,930 --> 00:46:55,970 무엇을 인쇄됩니다? 1135 00:46:55,970 --> 00:46:56,797 그래. 1136 00:46:56,797 --> 00:46:57,264 >> 청중 : 당신은 건가요 편지를 인쇄하는 1137 00:46:57,264 --> 00:46:59,805 의지도에 해당 문자 값 및 정수 값? 1138 00:46:59,805 --> 00:47:01,199 1139 00:47:01,199 --> 00:47:01,990 스피커 1 : 맞아요. 1140 00:47:01,990 --> 00:47:04,740 나는 편지를 인쇄 할거야 정수 값에 대응 1141 00:47:04,740 --> 00:47:06,131 그 반대로, 다음과 같이. 1142 00:47:06,131 --> 00:47:08,880 그럼이, 누군가가 말했듯이 숯불 단지 자리 표시 자입니다. 1143 00:47:08,880 --> 00:47:09,490 그것은 아직도있다. 1144 00:47:09,490 --> 00:47:12,280 이것은 물론, 자리 표시 자입니다 새로운 라인 int--하지 않는. 1145 00:47:12,280 --> 00:47:18,140 그리고 지금, 내 첫 번째 값을 알 그 나는 그 자리에 대한에 연결 해요 1146 00:47:18,140 --> 00:47:22,320 다만 I. 말인지되지 않습니다, 괄호, 숯불 나는, 1147 00:47:22,320 --> 00:47:26,700 이는 괄호 문자 인 컴파일러를 말하고, 내가 치료 1148 00:47:26,700 --> 00:47:28,490 하지가 다수 인 내용과. 1149 00:47:28,490 --> 00:47:30,490 실제 문자로 취급. 1150 00:47:30,490 --> 00:47:34,490 두 번째 값 반면 내가 연결 해요 in-- 난 - 그냥 수 있어야한다. 1151 00:47:34,490 --> 00:47:38,140 >> 그래서 나는이 program--를 컴파일하는 경우 그래서 이것은 ASCII는 0이다, 1152 00:47:38,140 --> 00:47:41,720 점 슬래시 ASCII 0-- 난 그냥 얻을 이 편리한 작은 차트 그 1153 00:47:41,720 --> 00:47:44,950 나 가능한 모든 표시 그것을 생각하지 않고 매핑 1154 00:47:44,950 --> 00:47:46,450 를 통해 또는 내 자신에 그것을 알아낼. 1155 00:47:46,450 --> 00:47:48,783 그리고 또한, 밖으로 인쇄하고 있습니다 소문자를 발견, 1156 00:47:48,783 --> 00:47:51,410 나중에 몇 줄 때문에, 나는 이지도를 인쇄 1157 00:47:51,410 --> 00:47:53,737 뿐만 아니라, 단지에있는 당신이 이해하면 말 1158 00:47:53,737 --> 00:47:55,570 아래에 무슨 일이야 후드, 당신이 할 수있는 1159 00:47:55,570 --> 00:47:57,111 자동으로 앞뒤로 변환합니다. 1160 00:47:57,111 --> 00:48:00,160 그리고 사실, 당신의있는 경우 어느 초등학교에서 이런 짓을 1161 00:48:00,160 --> 00:48:03,490 또는 사람에 대해 들어 신화 적 메모를 복용 1162 00:48:03,490 --> 00:48:05,620 과에 전달 그의 또는 클래스에서 그녀의 친구, 1163 00:48:05,620 --> 00:48:08,300 하지만 당신은 스크램블 B가된다 등에 의한 문자, 1164 00:48:08,300 --> 00:48:11,240 B는 C, 또는 무언가가된다 그보다 더 복잡, 잘, 1165 00:48:11,240 --> 00:48:13,410 당신은 어떻게 가겠어요 어릴 때 그 구현? 1166 00:48:13,410 --> 00:48:16,340 글쎄, 당신은 단지 종류의 알 A는 B가되고, B는 C가되고, 1167 00:48:16,340 --> 00:48:19,700 하지만 수학적으로, 그 아이는 무슨 일을했다? 1168 00:48:19,700 --> 00:48:22,050 무엇 당신은 각 문자에 추가했다? 1169 00:48:22,050 --> 00:48:23,340 효과적으로, 1. 1170 00:48:23,340 --> 00:48:27,740 >> 당신은 B를 변경할 때, 그건 가지 (66) (65)을 변경하는 등, 1171 00:48:27,740 --> 00:48:29,590 이는 수학적으로 단지 1을 추가 의미한다. 1172 00:48:29,590 --> 00:48:33,300 그래서 당신은 구현한다면 그 작은기만적인 기술 1173 00:48:33,300 --> 00:48:36,380 코드에서 선생님를 들어, 그 바로 바로 할 수 있습니다 1174 00:48:36,380 --> 00:48:38,552 함께 단일 문자를 추가하여. 1175 00:48:38,552 --> 00:48:40,260 너무 오래 전에, 우리는있어 우리는 어떻게 볼 것 1176 00:48:40,260 --> 00:48:43,300 실제로 해당 활용할 수 진정으로 스크램블과 챙기다 1177 00:48:43,300 --> 00:48:43,991 정보. 1178 00:48:43,991 --> 00:48:47,240 한편, 우리가 시작되었음을 알려 몇 가지 다른 라이브러리를 소개합니다 1179 00:48:47,240 --> 00:48:48,990 문자열을 한 오늘 here--. 1180 00:48:48,990 --> 00:48:51,180 그리고 매우 유용한 사이트 희망 당신은 찾아 낼 것이다 1181 00:48:51,180 --> 00:48:55,010 , reference.cs50.net라고하는 교원 함께 넣어 가지고, 1182 00:48:55,010 --> 00:48:57,510 당신이 원한다면 있도록 어떻게 나 strlen 작품을 보면, 1183 00:48:57,510 --> 00:48:59,300 당신은 입력을 시작할 수 있습니다 함수의 이름, 1184 00:48:59,300 --> 00:49:02,890 클릭이 나 strlen 다음 덜 편안 설명 1185 00:49:02,890 --> 00:49:03,700 나타날 것입니다. 1186 00:49:03,700 --> 00:49:06,880 또는 당신은 공식을 원하는 경우 리눅스 기반의 설명, 1187 00:49:06,880 --> 00:49:08,945 좀 더 편안하게 클릭 할 수 있습니다 오른쪽 상단에, 그리고에서 1188 00:49:08,945 --> 00:49:12,070 동일한 정보를 제공한다, 하지만 더 복잡한 측면에서. 1189 00:49:12,070 --> 00:49:15,070 즉에 유용한 자원이다 실제로 모든 것이 무엇을하는지 알고있다. 1190 00:49:15,070 --> 00:49:17,320 >> 우리가 거​​ 야 다음 번에 Ovaltine에서보세요 1191 00:49:17,320 --> 00:49:20,070 그리고 더 많은, 그리고 자신을 소개 암호의 세계. 1192 00:49:20,070 --> 00:49:21,930 그 전에, 우리는 볼 수 있습니다 당신은 이번 주. 1193 00:49:21,930 --> 00:49:23,390 그리고 지금, 콜튼 오그 덴. 1194 00:49:23,390 --> 00:49:26,730 수요일에 당신을 참조하십시오. 1195 00:49:26,730 --> 00:49:30,216 >> [음악 재생] 1196 00:49:30,216 --> 00:49:33,702 >> [음악 재생] 1197 00:49:33,702 --> 00:49:38,682 1198 00:49:38,682 --> 00:49:42,200 >> 스피커 1 : 무엇 [삐] 당신은 뭐하는거야? 1199 00:49:42,200 --> 00:49:45,720 >> 스피커 1 : 내 디저트를 먹는 건가요? 1200 00:49:45,720 --> 00:49:47,160 당신은 어떻게 그것을 먹을 수 있습니까? 1201 00:49:47,160 --> 00:49:47,860 손으로? 1202 00:49:47,860 --> 00:49:54,050 1203 00:49:54,050 --> 00:49:57,940 >> [음악 재생] 1204 00:49:57,940 --> 00:50:03,453