DAVID 마란 :이 CS50이며,이 일주일의 시작입니다. 그리고 우리가 우리가 할 거라고 생각하면 철수합니다 장치의 커튼 많은 당신은 아마 지금 지나쳤의 년 동안, 그러나 아마 결코 아주 그것이 무엇인지 알려져 있습니다. 그래서이 장치는 아마 볼 것이다 지금 쯤 여러분 대부분 알고. [동영상 재생] - 수학의 승리와 기계 기술이 위대한 새로운 에서 자동 계산기 하버드 대학. 수학의 복잡한 문제를 넣어 에 코드 형태의 컴퓨터를 통해 테이프가 정확하게 분 해결된다 에 필요한 시간의 비율 인간의 계산. 모든 형태의 촉진하도록 설계 수학 및 과학 연구, 거대한 기계의 두뇌는 것 미국에서 일 전쟁의 말까지 해군. [END 동영상 재생] DAVID 마란 : 그래서 당신은에서 볼의 인 과학 센터, 그 기계가 현재 보관되어 있습니다. 당신은 실제로 단지 그것의 일부를 참조하십시오. 일부만이 화면에 현재 그리고 그 호출 장치의 마크 I, 그것은 본질적으로했다 정말 큰 계산기. 그것은 마크 II에 의해 계승하고 있었다 그것은 마크 II 것을 우리는 사실에서의 사전의 비트를 얻을. 이 첫 번째 기록 된 인스턴스 당신에 대해 모두가 될 거라구 일 이상과 너무 잘 알고 학기 과정 - 즉, 버그가 수정되었습니다. 그래서 원 포인트 마크에게로 밝혀졌다 II 장치가 작동되지 않았습니다 제대로, 그리고 가까이 검사시, 나방 - 버그가 실제로 있었다 - 그 나방 - 내부. 그 이후, 우리는 언급했다 버그와 같은 프로그램에서 실수. 그래서 더 그에 와서. 당신이 경우뿐만 아니라, 비디오를 말하기 이미 CS50는 것을 알 수있다 분명히 촬영. 강의는 일반적으로 후 바로 이동 시험판 일종의 클래스 편집되지 않은 형식을하고 하루 이틀 나중에, 우리는 높은 해상도를 넣어 과 높은 품질의 버전입니다. 당신은했다 바네사을 기억 할 수 구글 유리와 함께 연주의 재산, 나는에 기억되는 이 시간을 충전합니다. 당신은 방과 후에 올 싶은 경우 그들은 오늘 일해야 재생할 수 있습니다. 그리고 당신은 바네사 무엇을보고 싶으면 다른 날, 당신은 무엇을 볼 수 있습니다 보았다 여기 - 나 볼륨을 높여 보자 여기 내 노트북​​에. [동영상 재생] - 그래서이 다 저 큐 보자. 좋아. 그래서이를 누릅니다. 좋아. OK, 유리. 동영상을 기록합니다. 좋아. 바네사? [END 동영상 재생] DAVID 마란 : 좋아, 그래서 이유 그것은에 당신의 대부분을 위해 작동하지 않았다 내가 진행하기 때문에 수업의 끝이었다 그 시간을 기록하는 영상은 후 자신을 가리키는 나는 안경을 내려 놓고. 그래서 오늘, 나는 그들을두고 있지만, 감사합니다 이러한 것에 대한 당신 바네사에 스포츠 좋다. 공지 한편, 두 오늘날 우리가 점진하기 전에. 하나 CS50가 수행하는 전통을 가지고있다 그래서 우리는 매우를 만들기 위해 노력하기 위해 할 수있는 큰 클래스는 작은 생각합니다. 그리고 끝으로, 대부분의 매주 금요일, 우리의 레스토랑에서 수집 30 또는 40로 광장, 소방서 및 얼음, 귀하의 급우 나 자신의 일부 교원, 우리 단지 매우 캐주얼 점심을. 우리는 종종 업계에서 친구를 초대 클래스의 동문의 동문 대학은 정말 그냥 서로 채팅을 다른쪽으로는, 이후의 삶에 대해 이야기 대학, 대학, 생활, 등이있다. 이에 참여하고 싶습니다 그래서 만약 최초의 점심이 금요일에 오후 1시 15분, 그에 머리 어떤 점에서 URL. 공간이 제한되어, 그래서 우리는 할 수 있습니다 첫 서브 먼저 와서. 그러나 우리는 반복에 다시이 작업을 수행 할 수 있습니다 당신이하지 않으면 기본은, 너무 걱정하지 첫 번째 일괄 처리를합니다. 지금, 자원의 측면에서 제공 curricularly 과정에 의하여, 이 전체 슬루입니다, 당신은하지 않은 경우 물론 웹 사이트를 뽑아 이미, 특히, 강의 아래, 당신은 그 모든 것을 찾을 수 있습니다 우리는 모두가 지난 주일 않았다 비디오 및 어떤 종류의 전자 양식. 하지만 동영상 넘어, 당신은 찾을 수 있습니다 전체 텍스트 지금 있다는 것을 성적 증명서, 예를 들어, 모든 강의. 우리는 실제로 화면으로 돌아갑니다 그래서 만약 여기 바네사와, 및 이동 화면의 하단에, 당신이 들어, 실제로는하지 찾을 수 있습니다 우리는로 돌아가 금요일 강의를하지만, 경우 수요일 이후이 기능을합니다 몇 일, 당신은 찾을 수 있습니다 당신이 할 수있는 실제로 더 나은 또는, 풀업 최악의 경우, 모든 단어가 I 또는 무대에서 자원 봉사했다. 이상 그냥. 당신은 실제로 그것을 검색 할 수 있습니다, 당신은 할 수 있습니다 점프, 그 문장의 클릭 그 시점에 비디오, 모든 방향으로 모든 재료를 만드는과 끝 더 많은 탐색. 하지만 당신은 오히려 그것을 따르지하려는 경우 이러한 세부 사항에, 당신은을 위해 찾을 수 있습니다 1.5 여기 예,이 작은 메뉴 속도, 2 배속, 또는 나는 이미 나는 f를 당신을 위해 너무 빨리 이야기, 0.75 속도입니다. 그렇다고 모두를 실현 당신이 사용할 수. 하지만 그 이상, 강의에 대한 실현 우리는 또한 이러한 리소스를 만드는 것이 뿐만 아니라이 없습니다. 슬라이드, 예제 코드, 아무것도 그 I 무대에 또는 클래스에 앞서 수행 우리는 당신이 연주 할 수 있도록 거기에 게시합니다 가정이나 샌더스에 따라. 그러나 우리는 또한 우리가이 뭘 해야할지 생각 처음으로 올해도 당신은 연습과 함께 제공 이 예제의. 점점로 나는에 반영했다 CS50의 강의의 가치, 나는 시작했습니다 그것을 위해 단지 얼마나 유용 질문 나 서서하는 당신들이 거기에 앉아하는 여기, 나 당신을 이야기하기 위해, 특히 소재로, 예를 더 복잡. 결국, 후 때문에 일부 수 분, 누군가가 영역 밖으로 것, 그리고 당신은 몇 가지 몇 가지 중요한 통찰력을 그리워 예를 들어, 그리고 당신은 본질적으로있어 클래스의 나머지 부분에 갔다, 어떤의 최고 사용하지 않습니다 당신의 시간, 또는 정말 우리 통칭 클래스로. 그래서 우리는 우리가 할 시도를하려는 생각 특히 더 중 일부에 대한 내가 할 수있는 복잡한 예제 클래스에서, 우리는 그렇지 않을 수도에 대한 정의 수업 시간을 가지고, 또는 당신은 수도 동안 단지 영역 밖으로는 우리가 생산하는 것입니다 이러한 연습의 시리즈 예 그래서 당신은을 위해에 가면 그 여기에 예, 지난 금요일의 동영상 페이지 예제에서, 당신은 볼 것이다 금요일의 경우,이 지금있다 연습에 연결합니다. 이들의 형식 시간이 지남에 따라 변경됩니다. 지금, 우리는 간단한을 사용하는 유튜브 재생 목록. 하지만 우리의 생산 팀과 뭘했는지 이후 각을 산책했다 다시 그 예와 모든 사람, 잘하면 훨씬 더에서 지적 선명도 정확히 테이크 아웃 수 또는 각에서해야합니다. 그래서 당신은 마지막에서, 예를 들어, 찾을 수 있습니다 주, 스크래치 모든 예제 우리는 선형 완료를 통해 갔다 그 패션한다. 그래서 참여하는 무료 또는하지 느낌 이 자료에 종사. 이 특정 물론 정말 테마 아마 거기 있다는 것입니다 당신보다 자원의 방법 아마도 이상 흡수 할 수 학기의 과정. 그러나 그것은 의도적이다. 그것은 당신만큼 그 의미로는 개별 학생들이 스스로 선택할 수 있습니다 학습 스타일에 따라. 강의가 당신을 위해 작동 할 수 있도록하는 경우, 좋아. 섹션 당신을 위해 작동하는 경우, 좋아. 연습을 위해 작동하는 경우 더 나은, 좋아. 정말 선택하는 당신에게 달려있을 것이다 어떤 자원은 당신을 위해 최선을 작동합니다. 마지막의 동창 덕분에 물론, 우리는 또한 표준을 제공 필기 노트의 집합입니다. 따라서보다 너희들의 머리가 아래는 강의 낙서 우리는 수업 시간에 올 것들 직원들은 우리를 당신에게 제공 할 것이다 느낌에 노트의 정식 집합입니다 그래서 그 산만 당신을 자유롭게하는 당신이 여기와 약혼, 당신은 정말, 무슨 일이 일어나고 있는지에 종사 귀하의 급우를 하 고있다와 단, 화면에 무슨 일이야와, 단순히 그대로 적어 없습니다 무슨 말되었다고 일어났다. 그래서 그 자원을 실현 을 사용할 수 있습니다. 단면, 자주 묻는 질문에 대한 대답, 이 수요일 시작됩니다. 우리는 본질적으로 가장 끝날 때까지 기다립니다 다른 클래스는 그래서 우리가 할 수있는 완료 변화의 수를 최소화 우리는해야합니다. 그러나 시작, 이번 주말오고 일요일의 한 번 인스턴스가 될 것입니다 우리는 슈퍼 섹션을 부르는. 이들은 누가 할 수 없습니다 사람들을 위해 촬영합니다 참석 본질적으로, 과정의 머리 일부를 우리를 안내합니다 물론 C 부분의, 문제 세트 하나의 끝으로하는 근거를 둔 우리의 첫 번째 C가 될 것입니다 문제입니다. 그리고 이건 그냥 옵션 섹션 될 것입니다 것인가를 기대 주도 반복 부분이 될 과정의 50 플러스로 동료 매주 교육. 일요일 또는 월요일 또는 화요일, 우리에 매우에 구십분 섹션이 될 것입니다 전통적인 의미, 에 더 많은 손을위한 기회 의 친밀한 검토 물론의 소재입니다. 속히 나를 소개하자 아르 코스의 헤드, 나와 함께 장면 뒤에, 모든 일이 만들기. 여기있는 사람들은 오늘 날, 롭에 가입 할 수 있다면 로렌과 요셉과 루카스, 모든 누구와 함께하고있다 몇 시간 코스입니다. RJ는 제 등이다 우리 팀의 멤버입니다. 그는 여기에 오늘,하지만 할 수 없습니다 그 그의 사진을 보여달라고. 나는 그가이 원하는 모르겠어요 하나지만, 거기에 그입니다. 나 그냥 팀이 말을 할 수있게 안녕하세요 자신을 소개 있도록 당신은뿐만 아니라 그들을 알고 귀하의 자신의 교육 위원이 용어입니다. LAUREN CARVALHO : 안녕하세요. 내 이름은 로렌 카르발류입니다. 나는 상주 교사 해요 Leverett 하우스있다. 나는 또한 수 흥분 슈퍼 해요 CS50 올해 헤드 TV. CS50뿐만 아니라 매우 어려운 클래스 매우 큰 클래스로, 그렇다면 당신 당신은 같이 느끼는 경우에, 어떠한 관심사라도 당신은 뒤에 떨어지고있어, 부담없이 우리의시에 밖으로 도달 heads@cs50.het, 또는 나에게, 당신은 거라고 경우 내 황금 놀 좋아 리트리버 강아지입니다. 여기 루카스입니다. LUCAS 프레이 타스 : 안녕, 얘들 아. 내 이름은 루카스 프레이 타스입니다. 나는 중학교 해요 [들림] 컴퓨터 과학 및 언어학. 나는 또한 브라질에서 사실이야, 난 동아시아 학을 실현. 당신은에 관한 질문이있는 경우 컴퓨터 과학이나 언어 또는 아무것도, 그냥 알려주세요. 또는 CS50, 특히. JOSEPH ONG : 안녕하세요. 내가 조셉 해요. 나는 수석 공부 컴퓨터 해요 엘리엇 집에있는 과학. 그래서 보자. 당신은 운반 저를 볼 수 있습니다 이 거대한 카메라 중 하나. 나는 상주 직원 작가 해요 50뿐만 아니라, 학생 종종 가끔 저를 착각 아시아 관광. 당신이 카메라로 나를보고 만약 그렇다면, 멀리 실행되지 않습니다. 그냥 미소와 부끄러워하지 않습니다. 그리고 당신이 50를 즐기시기 바랍니다. 나는 그것을 가지고 갈 때 나는 그것을 매우 즐겼다 내가 TFing 봤는데 왜 그건 이 삼년. ROB 보덴 : 안녕하세요. 나는 롭 해요. 이 CS50 내 네 번째 학기입니다. 난 그냥 월에 졸업했다. 나는 커크 랜드에 있었다. 나는이 학기 흥분 그리고 난 당신이 너무다는 것을 희망한다. DAVID 마란이 올해에 감사 헤드, RJ에뿐만 아니라. 자원에 따라서 몇 가지 최종 노트. 한, p는 0이 이미 있습니다 설정합니다. 이 하나는 표준이 존재 위한 것입니다 판, 클래스의 전체. P 1 세트로 시작하여,있을 것입니다 대부분의 문제 세트 해커 에디션 이는 다시 재료를 다룰 것입니다 하지만, 좀 더 도전과 여전히에 감동 같은 주제에. 물론 웹 사이트를 살펴 수행 P 세트 0 그 사양. 근무 시간도, 이번​​ 주에 시작됩니다 오늘, 내일, 수요일, 다양한 레스토랑과 목요일 캠퍼스 홀. 사무실 cs50.net/ohs 체크 아웃 코스 시간이 실현 아주 우연한 기회 될 것 확실히의 시작 학기는 당신에 의해 올 뇌의 휴식 시간 동안 노트북입니다. 몇몇 친구를 가져와을 채팅 어떤을 가진 과정의 TFS와 CA의 당신이 가진 수있는 질문입니다. 그리고 난에 대한 충분히 강조 할 수 스크래치와 문제 세트 0이 정말 어떤 바보 같은 질문은 없습니다. 너무 불편 어떤 학생은 없다 질문을한다. 을 활용 해 주시기 바랍니다 이 자원. 그것은 recurringly있을 것 학기 내내, CS50는 논의로. 이 과정의 온라인 토론이다 거기에 그 주소에서 포럼. 우리는 또한 강의는 동안 무엇을 할 거 야 또한이 모니터에 감사 과정의 교육 팀입니다. 그래서 당신은 동안 질문이있는 경우 내가 뭔가를 말했기 때문에, 강의 제대로 또는 전혀, 반드시 물어 실시간으로 당신이 있다면 당신의 노트북이나 휴대 전화 웹 사이트, 그리고 우리는 근처에 실시간으로 최선을 다하겠습니다 그에 응답합니다. CS 50에 대한 질문이 있습니까? 내 다음 마지막으로 노트. SAT UNSAT의 문제를 해결합니다. 당신의 연구 카드를 마무리로, 만약 당신 아직 실현되지 않은 것을 SAT UNSAT의 지배적 인 시각, 모든 학생들에게 제공, 정말로 물론 가장자리를 가지고하는 데 도움이 이와 같은, 말하자면, 그 경우에는 당신 밤, 오전 2시, 3am에 늦게 자신을 발견, 정말 대하여 당신의 머리를 두드리는 당신은 99 %의 거 알아 벽 가 완료 방법이 있지만, , 할 너무 많은 다른 것들을 가지고 나는의 자주, 더 나은 사용을 생각한다 학생들의 시간이 참에 이동하는 것입니다 그 다른 것들을 당신이 할 수 있도록 주위의 모든 시간을 최적화 할 수 있습니다. 그리고 SAT UNSAT 하나의 메커니즘이다 통한 당신은 사실에 만족할 수 즉이 방법의 99 % 아직도 꽤 좋은 예뻐. 마찬가지로, 너무, 당신은에왔다면 아니 이전의 배경과 과정 또는 당신으로하지 거의만큼 배경 사실, 귀하의 급우 거 같아요 또는 false,이 것을 깨닫게 당신의 손을 더럽히는 기회 코스,에 발가락을 넣어 물이 너무 나 자신처럼 이야기하기 합격 / 실패로 년 전했다. 내가 지난 주에 말했듯이,이 과정을했다 다른 사람 같이, 유효하지 시간, 합격 / 불합격 아마 것 도에 발을 밟은하지 클래스 I 않았다하더라도, 오주 나중에, 내 마음을 변경하는 당신 뿐만 아니라 이상을 전환 할 수 있습니다 나 문자 등급 상태에서. 좋아. 그래서 우리는에서이 같은 것들을 보았다 금요일, 우리는 매우 빨리거야 뭔가로 전환 오늘 더 이상한 보인다. 그러나 그럼에도 불구하고의 동일한 기본 아이디어. 일반적인 용어는 무엇이었다 우리 퍼즐 조각을 설명하는 데 사용 그것은이처럼 보였다? 그래서, 문. 그리고 당신이 하나를 호출 할 수 있습니다 가지 수. 그러나 우리는 단지 그것을 문 전화 할게 과 문장을 그냥 프로그램을 알려줍니다 - 나 스크래치의 경우, 스프라이트 - 뭔가를 할 수 있습니다. 이 경우 인사. 이런 식으로 뭔가 우리 대신 무엇이라고? 네, 부울 식입니다. 부울 표현식은 뭔가있다 즉 참 또는 거짓이다, 그래서 스크래치 이 모양을 그리는뿐만 아니라, 을 전달하는 물음표와 함께 생각이이 질문에 대한 답변 true 또는 false, 예 또는 아니오 중 하나입니다 하나, 1, 0. 그리고 우리는 이러한 부울 표현식을 사용 이와 같은 구조의 안쪽에, 그 우리는 무엇이라고? 따라서, 조건 지정 또는 가지. 그리고 당신은 여기를 참조 조건 스크래치에 대한 약간의 자리가 그 모양의 퍼즐 조각 목적 어느 것은 그래서 당신은 할 수있다 드래그하고 위에 놓습니다 후 프로그램에 지시하는 경우이 부울 표현식이 true이며,이 설정을 지시 사항, 문이 세트, 이 다른 집합을 다른 수행 지침. 그리고 기억 당신이 할 수있는 둥지 이러한 것들을. 많은 공간이 아니더라도 시각적으로 그 퍼즐 조각에서, 스크래치 성장하고 어떤에 맞게 축소됩니다 당신이에 드래그 앤 드롭 퍼즐 조각 그래서 당신은 중첩이 실제로 그곳에 수 도로 세 가지 방법 포크가있다. 그렇지 않으면, 다른 경우 경우. 그리고 당신은 심지어으로 넘어 갈 수 있습니다 중첩 점점 더 필요. 그래서 마지막으로, 우리는 같은 구조를 보았다 이것은, 그렇지 않으면 루프로 알려져 있습니다. 그리고 이것은 단지 않는 무언가이다 뭔가 다시하고 다시하고 다시. 이 경우에는 유한 일어나는 횟수, 그러나 우리는 또한 예를 들어 본 곳의 수 시간 변수에서 온, 그래서 변경 될 수 있습니다. 그리고 우리는 모두 다른 블록을 보았다 영원히 차단하는 것이라고 우리는 무한히 긴 루프있었습니다. 그래서 다른 하나의 구조가 스크래치 더 당신의 그 - 2.0이 이전의 배경으로 편안하다 이것에 이미 잘 알고 건설 - 이러한 것들을 우리는 무엇이라고? 그래서 우리는 그렇지 않으면,이 함수를 호출 프로 시저로 알려져 있습니다. 약간의 의미 차이가있다 그러나 우리는 그들을 단지 함수를 호출 할 수 있습니다. 스크래치의 경우와 기능, 되는 사용자 지정 퍼즐 조각이 당신은 스스로 당신이 있도록 만들 수 있습니다 이의 새로운 퍼즐 조각 케이스, 기침라는 것, 그 다른 모든 사이에 나타납니다 스크래치에서 사용할 수있는 퍼즐 조각. MIT는 발명하지 않았더라도 이 퍼즐 조각, 당신은 않았다. 기능은 새를 만들 수 있도록 행동, 그것을 함수 이름을주고, 다음 말하자면, 그것을 호출합니다. 정말 다시 프로그램에서 사용하고 또 다시 기다릴 필요없이 에 길 MIT 같은 사람을 위해 처음부터 새로운 기능을 발명. 당신은 자신이 퍼즐을 구축 할 수 있습니다 그 조각 자신, 그리고 재사용 자신의 프로그램합니다. 그리고 우리는 반복되는 예를 볼 수 있습니다 그 오늘 이후. 요즘 그래서, 우리는 전환 더 비전 뭔가. 그러나 하루, 무언가의 끝 더 강력하고 표현력이 더 우리가있을거야 경로의 대표 숫자에 걸쳐 모든 학기에 언어 - 코드 나 소스 코드의. 소스 코드, 그것은 밝혀, 아닌 어떤 컴퓨터 일반적으로 실제로 실행됩니다. 소스 코드는 다음과 같이 보입니다. 그래서, 아마도 다시 간단합니다 프로그램은 우리가 쓸 수 있습니다 언어는 C. 우리가 시작이라고 오래 전에 떨어져이 애타게하고있는 경우 이것은 정말 그리스어처럼 보여 당신에게 지금, 날 믿어. 그냥 일주일에 2의 시간이 내 실제로 너무나 친숙하고 될 것입니다 점점 꽤 대표 복잡한 예제가 거하는로 또한 더 편안하게. 하지만 당신은 그냥이 프로그램을 실행할 수 없습니다 일반적으로 코드의 종류. 당신은 무언가로 그것을 설정해야합니다 컴퓨터 자체는 이해한다. 그리고 그것을 위해, 우리는 뭔가가 필요 우리는 컴파일러를 호출하는 것입니다. 컴파일러는 소요하는 프로그램입니다 소스 코드, 당신은 방금 본 것처럼, 같은 입력, 그것은 제로를 생산하고 출력과 사람, 그렇지 않으면 오브젝트 코드로 알려져 있습니다. 그리고 그 그 0과의 이처럼 확실히 보일 수 있습니다 궁극적으로 이해된다 Mac 또는 PC에 있습니다. 당신은 마케팅 들었다 경우 표현 인텔 인사이드, 그 단지 회사라는 것을 의미 인텔에서 제조 한 컴퓨터의 두뇌 - 그렇지 않으면 CPU로 알려진, 중앙 처리 장치 - 그는 그냥 것 패턴을 이해 0과의. 그리고에 소스 코드를 변환하여 여기에이 과정을 통해 개체 코드 우리는 명령의 부부와 함께 할거야 단지 조금, 당신은 0과의 패턴 생성 인텔 직원이 있는지 특정 문장을 표현했다. 지금, 나는 확실히 알고하지 않는 단지에서이기는있다가 어느 이 0과. 대부분의 사람들이 일하지 않습니다. 하지만 어딘가의 패턴이 을 나타내는 0과 문을 인쇄 할 수 있습니다. 어딘가 다른 경우가있을 수 0과 집합이 영원히의 개념 또는 표시 그것이 인 경우, 10 배 또는 야옹를 반복 수 실제로 프로그램 어떤 소리를 이용하실 수 있습니다. 그래서 짧은 인간은 결정했습니다, 많은처럼 우리는 ASCII 위해 한 - - 알파벳 지난 주 편지에 대한 인간은 심지어 결정 0과 더 복잡한 패턴 더 복잡한 동작을 나타냅니다 인쇄하거나 말하거나 야옹처럼. 그리고 오늘, 크게 이후 학기에, 우리는 당신을위한 할게요 누군가가 생각했다고 부여 그 매핑을 수행하는 방법. 그러나 우리의 이런 생각과 일치 사람들의 작품의 상단에 레이어 우리 앞에 온 사람들을 위해 소요됩니다 이 일이 벌어지고 있다는 사실을 수여 후드 아래에. 그러나 우리는 훨씬 더 관심이 더 많은 것 건물 일 이 모든 상단에 재미. 그리고 실제로 첫 번째 프로그램 우리 스크래치에 쓴이 매우 간단했다 하나, 안녕하세요 세계입니다. 그리고 당신은 존재로 생각할 수 있습니다 스크래치의를 제어 메인 프로그램 지난 금요일 기준으로 행동. 오늘, 우리는 번역하는 시작하는거야 에 퍼즐 조각을 스크래치 이라는 언어의 소스 코드 C 등등이 어떻게 생겼는지 그 금요일, 오늘 이후 시작이다 지금처럼 보일 것. 틀림없이 더 많은 비밀. 그것은 꽤 혼란과 마음의 일종 따옴표를 모두 볼 마비 그리고 세미콜론과 괄호 등등. 하지만 당신은 아무것도를 무시하기 시작하는 경우 이해하고, 정말 보이지 않는 에 흰색 텍스트의 본질에 화면 확실히 당신은 내가 같이 참조 "안녕하세요, 세계." 로 그 라인 위로 보라색 ​​탑을 올라 문, 그리고 회전 키워드 메인이가는 그 아웃 와 개념적으로 줄 때 녹색 플래그를 클릭. 그래서 다른 말로하면, 스크래치있는 반면, 우리는이 안녕 세계 프로그램을 구현 두 퍼즐 조각, C에서, 우리는이 그것을 구현하는거야 네 다소 이상한 선. 우리는이에 깊은 다이빙으로, 당신은거야 보는 이들 각각 실제로 화면에 흰색 문자 몇 가지 중요한 의미를 가지고, 그리고 우리의 프로그램의 대부분은 가고있다 구조적으로 매우 동일한 모양. 그래서 문, 명확하게, 어떤 "안녕하세요 말 세계"에 속 금요일 찾기 시작하는 것입니다 월요일이 좋아합니다. printf (이하 "안녕하세요 세계"). 그리고 어떤 이상한 백 슬래시가있다 N, 괄호있어, 거기에 세미콜론. 하지만 하루의 끝에, 키 테이크 오늘은 우리 모두가하고있는 것입니다 그림에서 물건을 번역합니다 텍스트 형태로 형성한다. 그래서처럼 보였다 루프 지난 주에 지금은보기 위하여려고하고있다 이런 식으로 뭔가. 그냥처럼 나를 부인하자 처음에 다른 방법있다 같은 목표를 달성한다. 같은 C에서 나는 당신에게 만 보여 아니에요 일을 할 수있는 방법이 있지만, 하나의 방법으로 이 영원히 번역 C.에있는 루프 차단 여기 하나 10 회 반복한다. 굴곡이 하나 정말 종류 당신이 그것을 볼 처음 마음. 그러나 이제부터는 구현하는, 우리가 사용하는거야 루프, 말하자면. 명확하게의 일부 구문이있다 약간의 I와가 복잡하고 동등하고 0, 일단 우리는에 뛰어들 오늘 이후, 당신은 단지거야 모든 단지 일부를 짓하는 것을 볼 수 0에서 저희를 얻을 수있는 기본 산술 에서 9까지 또는 경우 10. 마지막으로, 변수와 함께, 당신은 기억할 것 변수는 저장소의 조각입니다. 그럼, 우리는 마지막이 왼쪽에 있었다 주 좀 봐 것입니다 이 이번 주에 같은. 그러나 다시, 더 많은 것을에 와서. 우리는 부울 식을 가지고하는 지난 주,이처럼 보였다. 이번 주 이후, 그들은 거 야 그렇게 조금보고 시작합니다. 이 하나의 사실이다 조금 안심. 실제로 거의 간단 녹색 블록으로. 그러나 여기에서 우리는 다시 몇 가지 새로운 구문이 앰퍼샌드으로,하지만 당신은 할 수 있습니다 스크래치 반면 아마 생각하면 C에서 분명히 A-N-D를 말한다, 우리는거야 앰퍼샌드 앰퍼샌드 말 것. 그러나이 모든 될 것이다 오래 전에 자연. 조건. 지난 주, 그것은처럼 보였다 이 왼쪽에. 이번 주, 오른쪽에, 그것은이다 그런 살펴 보겠습니다. 그러나 다시, 여기에 중요한 테이크 아웃은 그 당신은에서 그런 것들을 보는 바와 같이 오른쪽, 특히 적은 경우 편안하고, 그것은 당신을 통해 일종의의 머리, 당신은 조금 압도하는 난 정말 아무 생각이 어떻게 수 아마 시간 때우기 처음부터 그 - 웃기 의도하지 - 그냥 정말 동일합니다 실현 아마 훨씬 더 느낌 아이디어 지난 주 자연. 그리고 당신은에 다이빙하지 않은 경우에도 문제는 0으로 설정, 난 아마 ... 당신이 찾을 수 있습니다 퍼즐 조각은 매우 있다는 것을 직관적 적어도 시간이 지남에 그렇게됩니다. 그래서하자가 안으로 다이빙 여기에 우리의 손을 더럽히는하자 첫 번째 간단한 프로그램입니다. 간단 물론 상대적입니다. 이 작업을 수행하기 위해, 나는 화면을 변경하는거야 해당 장치에 내가 전화 CS50 제품. CS50 장비의 조각이다 내에서 실행의 소프트웨어 내 맥에 윈도우, 당신은 또한 실행할 수 있습니다 사용자 PC의 내부 창에서 저 같은 정확한을 가질 수 있습니다 컴퓨터 환경마다 TF로로 모든 학생으로 모든 CA, 클래스합니다. CS50 장비는 그대로이기 때문에 다른 운영 체제 리눅스라고 - 특히 페도라 리눅스 - 우리의 직원 구성한 이것에 대한 설치 과정 한 것과 같은 방법으로 운영 체제 에있는 작은 CS50 로고가있다 중간, 두,시 사용자 지정 메뉴있다 바닥, 3, 교육적, 우리는 사용자 인터페이스를 단순화 한 최대한 그렇게 할 때 먼저 자신이 일을 부팅 Mac 또는 PC, 당신은 동일한에게 있습니다 다른 사람과 같은 환경과 당신이 필요로하는 모든 도구를 가지고 파악하지 않고 코스 각을 설치하는 방법 개별적으로 각 도구입니다. 그래서 상대적으로 보입니다 맥 OS 나 윈도우와 같은. 왼쪽 하단 모서리에서 기본적으로 시작 메뉴가 종류, 또는 Apple 메뉴. 그리고 당신은 우리가 의지 의심 무슨이 당신의 가장 일반적인 세​​ 가지 아이콘합니다. 하나는 크롬이다. 내부 브라우저가 있습니다 제품의. 두 사람은 어떤 gedit에서라는 프로그램입니다 우리는 지난 주에 잠깐보고, 어느입니다 단지 그래픽 편집기. 그리고 세 어떤 터미널 프로그램입니다 에서 검은 색과 흰색 창입니다 우리는 더 입력 할 수 있습니다 작년 의 비밀하지만 더 강력한 명령 우리의 키보드입니다. 그래서 내가 가서 클릭거야 gedit에서, 그리고 나머지는 그 문제를 보장 것이다 금요일에 발표 될 1 설정, 모두 이와 같은 단계를 걷는다. 나는 매우 간단한 것을 알 수 세 부분을 가지고있는 사용자 인터페이스를 제공합니다. 왼쪽에, 나는 큰 빈을 창에 소스 코드를 불렀다. 제가 요약을 볼려고 곳이에요 제가 작성하는 모든 코드. 오른쪽에, 나는 큰이 탭은 현재 저장되지 않은, 그의 내 코드 갈 어디. 그리고 하단에, 나는 내장이 터미널 창에서 검은 색과 흰색 나는에 명령을 입력 할 수 있습니다 프롬프트하는 컴파일하고 내 프로그램을 실행하는 - 그 수 있도록 내 프로그램을 실행할 수있다. 그럼 간단하게 시작하자. 나 저장, 파일까지 가자. 나는 앞서 갈 건데 jharvard로 이동합니다. 장비, 그래서 상관없이 무엇 이름이라는 사람에 속한다이다 jharvard 집​​이 존 하버드, 디렉토리 안에있는 당신의 모든 파일을 이동합니다. 그것은 자신의 계정에 자신의 복사본의 그래서 우리는 모두 공유하지 않은 같은 하드 드라이브입니다. 당신은 단지 환상을 가지고 존 하버드의 자신의. 사전에, 나는 사실 보관을 설치했습니다. 어플라이언스와 함께 preprepared 제공 보관은 만약 그렇다면 뭔가 잘못된 것이 학기 중에 한 경우 무료로 어플라이언스를 구성 보관 용 계정은 파일의 모든 것 자동으로 백업 할 수 있도록 아주 쉽게 복구 할 수 있습니다. 그리고 내 보관에 갈거야 디렉토리 및 이미거야 거기에 몇 가지 다른 것들을 할 수 있습니다. 하지만 난 앞으로 갈거야 및 저장 파일로 이동합니다. 나는 jharvard, 보관,로 갈거야 이상 여기에, 내가 갈거야 내 프로그램 초간단를 제공 그 이름 hello.c를하고 저장합니다. 그래서 지금은 같은 인터페이스를 가지고. 변경된 유일한 맨 위로 탭입니다. 그래서 매우 빠르게 다시 갈거야 에서 해당 프로그램을 순간 전 슬라이드. 그래서 주 (무효), 그리고 printf의에, "안녕하세요, 세계,"다소 이상한 백 슬래시 N, 가까운 따옴표 닫고 괄호, 세미콜론, 그리고 다음 Ctrl S는 저장합니다. 통보 옆 무엇처럼 왼쪽 상단에 여기 나타났다. 그리고 오늘은 유용하지 않습니다 만, 시간이 지남에 도움이 될 것입니다. 당신은,,의 요약을 다시 참조 당신이 작성했던 코드입니다. 그리고 나는이라는 것을 썼다 때문에 주요 단어가 튀어 왜 주, 그게 거기에. 그러나 대부분의 경우, 우리는 오늘날 필요하지 않습니다. 좋아, 그래서 난이 내 것을 주장 프로그래밍 작성 첫 번째 프로그램 언어는 C. 우리는 금요일부터 알고 전화 어떻게이 일을 할 거라고 매우 uninterestingly 때 그냥 표시됩니다 실행 - 즉, 컴퓨터로 인쇄 과학자가 말할 것이다 - 화면에 안녕하세요 세계. 그래서 이렇게하려면, 당신은 내가 가진 것을 알 수 있습니다 내 터미널에 여기로 이동 창 지금은이 깜박이는 프롬프트. 그러나 지금의 키보드 버전 내 존 하버드의 홈 디렉토리입니다. 그것은 키보드 방식의 한을 통해 내 하드 드라이브를 이동합니다. 그래서 나는 실제로 내가 그랬던 것처럼 입력 할 수 없습니다 이 때문에 지난 주, 안녕하세요 만들기 대상을 확인하는 규칙을 말할 것 - 뭔가 잘못이다. 꽤 모르는 무슨 메시지 의미하지만, 기본적으로 있기 때문이다, 이 검은 색과 흰색 창 때 열, I 존 하버드의 내부 해요 홈 디렉토리. 하지만 해당 프로그램을 어디에 저장 했습니까? 내 보관 폴더에. 이제 우리 모두가 함께 성장 당신은 단지 두 번 클릭하여 컴퓨터를 폴더의 아이콘, 그것은 열어, 봐라. 파일이라는 곳입니다 hello.c의가 될 것입니다. 그래서 사실,의는 그렇게 할 수 있습니다. 내가 가서 gedit를 최소화하자 당신이에서와 같이 Windows 또는 Mac OS. 내가 집에 가자 왼쪽 상단 폴더에 있습니다. 여기 폴더의 무리를 볼 수 있습니다. 여기 내 보관 폴더입니다. 확인 표시가 동기화되어있어 의미합니다. 그리고 몇 가지가 여기에있다 하지만 hello.c의가 있음을 알 수 실제로 거기. 그리고 일반적으로 맥 OS 또는 Windows에서, 난 두 번이를 클릭 것, 그것은에서 열립니다 어떤 프로그램, 나는 갈 수 있어요. 하지만 지금은, 적어도 우리는 오늘부터 단지에 거꾸로 조치를 취할 필요 당신에게 당신을위한 몇 가지 기본적인 도구를 제공합니다 도구 키트 더 많은 일을하는과 오래 전에 강력한 확인해보세요. 그래서 프롬프트에서, 내가 할 필요가 번을 클릭의 해당 보관 폴더에 있습니다. 그리고 그 작업을 수행하는, 내가 위해 CD를 입력 할거야 디렉토리를 변경, 보관이 입력합니다. 그리고 지금 내에서 괄호에주의 소위 프롬프트가 지금은에 걸 말합니다 물결표, 작은 구불 구불 왼쪽 상단에 기호 대부분의 키보드 / 보관. 이것은을 위해 단지 속기 표기법 인간의 말, 당신은 지금 안에있다 보관 폴더, 그냥 생각으로 당신은 두 번에 클릭했다. 내가 가서 입력하면 이제 확인 안녕하세요, 입력, 난 아주 이상한하십시오 명령하지만 오류 메시지 그 다음 것, 그리고 다른 점멸 프롬프트. 그리고 당신이 기억하는 경우, 아무리 빨리 금요일에, 우리는 이런 짓을. . / 안녕하세요. 당신이 보시는 것은 결과입니다 내 맥에서이 프로그램을 실행하거나, OS 및 PC 문구가, 나는 일반적으로 두하려는 경우 프로그램을 클릭합니다 -. 응용 프로그램을 프로그램 또는. EXE, 그것은 열립니다 창 실행됩니다. 입력합니다. / 안녕하세요 것은 단지 배처럼 그것을 실행하는 프로그램을 클릭하지만, 내 키보드를 사용하여. 안녕하세요 세계, 입력합니다. 그리고 그것입니다. 그래서 그것을 떨어져이 애타게 있도록하자 너무 많은 그리스어처럼 느껴지지 않습니다. 그래서. / 무슨 뜻 이죠? 지금 키보드를 탐색 사람이라면 이런 환경에서, 점은 무엇입니까 을 참조? 현재 디렉토리. 따라서 현재 디렉토리는 단지 폴더에 대한 동의어. 그래서 점 슬래시를 말함으로써, 내가 말하고 에 안녕하세요라는 프로그램을 찾습니다 현재 디렉토리 - 현재 폴더에있다. 즉, 내 보관 폴더에 있습니다. 타격은 이후 입력 그리고 그 이유입니다 실제로 해당 프로그램이 실행됩니다. 나는 지금 형 LS 경우에, 나는 볼 것을 알 수 내 보관 폴더의 모든. Started.pdf을 받고, 그 보관 무료, 내 사진을 당신을 제공합니다 디렉토리가 공용 디렉토리 저장되지 않은 내가 실수에 의해 만들어진 자료 1 앞에서 만든 순간 전, foo.c를, 오늘, 다음 두 줄 - hello.c를하고 안녕하세요. hello.c를 내가 함께 쓴 프로그램입니다 gedit에서, 어떤은 녹색 안녕하세요입니까? 녹색 안녕하세요 실행 파일입니다. 즉, 때이 명령을 실행 순간 전 - 나 롤하자 시간을 거슬러 - 안부하게 실행했을 때, 그게 여기에 중간 단계. 그리고 그것은 입력으로 hello.c를했다 - AKA 소스 코드 - 그리고 그것은 생산 파일 안녕하세요 출력으로 호출하는 이 0과 1 모두 포함되어 있습니다. 그리고 나는, 결국, 왜 수의 실제로 헬로과 같은 명령을 실행합니다. /. 인텔 인사이드, 내 운영 때문에 시스템에서 리눅스는 그 0을 열어 그리고 사람들은으로 그들을 공급 내 컴퓨터의 두뇌 - CPU - 그리고 CPU가 알고있는, 오, 여기에 패턴의 0과 말하는 것들 다음과 같은 일을 인쇄 화면에. 다음과 같은 것은 무엇입니까? , 끝 맺다 말을 인용 "안녕하세요 세계." 좋아, 그래서 일부의 빠른 개요 우리가 시작할 수 있도록이 명령 부여를 복용. 저 앞을 건너 뛸 우리는 그만두고. 그리고 당신은 우리가 CD를했던 기억합니다 우리 뒤에 잠시 전에 끝납니다. 이들에 대한, 내가 말을 감히입니다 오늘의 목적 - 어쩌면 이번 주 - 명령 만 우리 명령 프롬프트에서 입력해야 할 수도 있습니다 확인 외에 프롬프트. 그래서 CD는 무엇을 서? 디렉토리를 변경합니다. 그것은 단지 두 배에 해당하는의 폴더를 클릭. 그리고 옆으로, 당신이 얻을 경우 적 안에서의 손실 이러한 보관하는기구 - 내가 돌아 가야 할 jharvard 디렉토리 - 의심 CD가 입력 할 때, 다른과 즉, 그것은 그냥 참아 백업하는 당신이 시작하는 곳으로, 그 좋은 작은 단축키입니다. 좋아, 이제 다른 명령. LS. 나는 순간 전 그 입력했습니다. 당신은 LS의 약자 어떻게 생각하십니까? 그래서, 목록, 오른쪽? 인간이 올 때, 하루에 백업 이 명령과 함께, 그들은 효율적으로 노력 오히려 하였다 L-I-S-T 엔터를 입력, 그들은 LS를 결정했다. 괜찮아요. 이것은 목록처럼 충분히 소리. 하자의 단지 형 LS를 입력하고 내에서 파일이나 폴더를 보여줍니다 현재 폴더. MKDIR, 당신은 아마 추측 할 수있다. 디렉토리를 만듭니다. 그래서 일부 파일 메뉴로 이동하지 않고, 이러한 환경에서 새 폴더를 선택합니다. 오히려, 당신은 명령 MKDIR 공간을 입력합니다 다음 폴더의 이름 당신이 만들려는, 그리고 그것은 수행됩니다. RM, 당신은 아마 추측 할 수있다. 제거하거나 삭제합니다. 당신이 파일을 삭제할 경우에, 당신은거야 문제 세트에서 참조하면 방법 이 작업을 수행 할 수 있습니다. 그리고 RMDIR 디렉터리를 제거합니다. 그래서, 다시, 나는 몇 가지를 통해 비행하는 경향이 있습니다 이러한 세부 사항, 하나 때문에 그들이 쓰는 모든 재미 아니에요 시간에하지만, 두, 우리는 당신이에 제공 할 것이다 의 훨씬 더 자세히 과정의 문제는 특히 설정 표준 에디션 단계의 그렇게 입력해야하는 당신이 더 얻을 이러한 것들로 편안하게. 하지만 지금은 내가 떨어져 애타게하자 한 가지. 우리가 입력 할 때 순간 전 헬로 확인 우리는 명령의 비밀 순서를 보았다. 우리는 다시보고, 안녕하세요하십시오. OK, 이렇게하자. 내가 실수를하려고했지만, [들림] 지금은에 대해 인정했다 의도적으로 해. 나는 지금 무엇을 잘못 했는가? 그래, 그래서 보관이 아니에요 디렉토리 순간 전 때문에 입력 한 CD 그냥 Enter 키를 누르십시오. 즉, 내가 시작한 곳으로 나를 다시 확대 이는 내 파일이 위치하지 않습니다 그래서 정말 CD 보관을 할 필요가있다 입력하고 지금은 RM 인사를 할 수 있습니다 입력 헬로 일반 파일을 제거합니다. 나는 그렇게 이상한 이유를 모르겠어요. 그것은 단지 의미가 확실 당신이 안녕을 삭제 하시겠습니까? 당신은 입력, y (예)를 입력 할 수 있습니다 그리고 지금은 사라 졌어요. 내가 다시 인사하게 입력하는 경우 그리고 지금, 그것은이다 내 개체 코드를 다시 것, 이러한 0과 1을 다시 만듭니다. 하지만 거래로 무엇입니까 이 매우 긴 명령? 음, 우리는이 외에도 애타게합니다 오래 전에 만 확인 - 나는 전에 하얀 거짓말 조금 이야기 - 컴파일러가 아닙니다. 확인은 자동으로하는 프로그램입니다 를 실행하는 방법을 그림 당신을 위해 컴파일러. 그래서 당신이 정말로해야하는 명령 hello.c를 변환하기 위해 실행 실제로 보이는 인사로 이 같은 좀 더. 그리고 금지 하나님 우리는 실제로는이 이제까지 전체를 입력 할 기억 최신 명령 시퀀스입니다. 인생에서 make의 목적은 다음과 같습니다 복잡성의 정도에 대한 기억 우리는 무엇을 다르게 할 것이다 자동화 매우 지루한 단계를해야합니다. 하지만 난 그 대략 수 있습니다. 그래서 여기이 작은 속임수 시트 당 I 할 수있는 명령이 무엇인지 대략 단순히 입력 연타에 의해 수행 컴파일러의 이름은 우리가있을거야 이번 학기를 사용하여. 당신의 적 IOS를 수행 한 경우 iPhone 또는 iPad를위한 개발 연타 당신이 사용했던 프로그램입니다 엑스 코드 내에서 응용 프로그램을 만들 수 있습니다. 연타는하지만, 또 다른 프로그램입니다 이름이 우리가 명령에 입력 할 수 있습니다 프롬프트, 지금이 도입하여, 내가 뭔가를 도입 할 수 약간의 대표 명령으로 올 수 있습니다. 그럼 내가 수동으로이 작업을 수행 할 수 있습니다. 안녕하세요 너무 RM, 그리고 경우에 지금 주목 I, 정신이 확인 그대로 - . / 안녕하세요, 당신은 무엇을 생각 하는가 I 나는이 작업을 수행하는지 확인해야합니까? 오류의 일종. 그런 파일 디렉토리가 없습니다. 하나는 실제로 매우 직접적이다 그래서. 그래서 지금 저 화면을 취소 할 수 있습니다. 제어 S는 단지 화면을 지 웁니다 약간의 산만을 제거합니다. 지금은 수동으로 갈거야 유형 연타-O hello.c의 안녕하세요. 그래서 다음을 수행 할 수는 무엇입니까? 만들 정확히 같은 일이 위해 한 우리,하지만 난 몇 가지를 버리지 않았다 불필요한 단어. 연타는에 무슨 프로그램 . c 파일을 입력으로 받아 생산 0과 출력으로 그들. 하지만,-O는 이제부터는 호출합니다 스위치 또는 플래그입니다. 이 말에 딱 Techie의 전문 용어입니다 이것은 당신이 프롬프트에서 입력 한 단어 즉, 어떻게 든 행동에 영향을 미친다 프로그램의 경우 실행중인. 그래서 사람이 추측 할 않습니다 무엇이-o를 전달? 출력. 그것은 결정-O 의미 누군가의 출력 안녕하세요라는 파일을 걸릴 입력 어떤에서 마지막 단어 프롬프트는 hello.c의이다 그래서 나는 치면 지금 입력, 아무것도 일어날 것 같다. 그리고,이 세상에서의 묘하게도 프로그래밍하면 아무 일도 발생하지 않습니다, 그것은 아마 좋은 것 오류가 없기 때문에 화면에 메시지가 표시됩니다. 안녕하세요, 입력합니다. 내 프로그램은 현재 실행하고있다. 하지만 바보 같은 작은 일들을 할 수 이. 연타-O, hihihi, hello.c를, 입력하고 지금은 동일한이 이 프로그램은 hihihi라는. 그것은 같은 동작하지만, 이름이 다릅니다. 그래서 이것은 당신이 원한다면 말할뿐입니다 의 동작에 영향을 미치는 프로그램, 우리는 점점 더가는거야 라고하는 것들을 볼 명령 줄 인수. 이 라인입니다. 당신이 명령을 입력하고 있습니다. 인체 공학적 명령 행. 및 명령 줄 인수 다만이다 단어 나 구문이 작은 조각 어떻게 든의 행동에 영향을 우리가 실행하는 프로그램. 아마도 대부분의 모든 권리, 지루한 프로그램은 우리가 작성하고 볼 수 있습니다. 이제 뭔가를하자 더 흥미로운. 내가 가서 새 파일을 만들 수 있습니다. 내가 가서 이것을 저장하는거야 존 하버드의 홈 디렉토리로, 하자로, 그것은 custom.c 전화 작은 사용자 정의 프로그램입니다. 내 톱에서의 확대거야 여기에서 다시 시작 탭. 표준 stdio.h에 포함. 순간 그에 대한 자세한. 주요 int (무효), 더에 그 순간에있다. printf (이하 "데이빗"). 훨씬 더 흥미, 오른쪽? 이제 경우 - 때문이 내 이름으로, 그것은 다릅니다해서 - 사용자 정의 입력합니다. 안녕, 데이빗, 사용자 정의. 그러나 심지어 그 역시 흰색 거짓말입니다. 이 프로그램은뿐만 아니라 호출 할 수 있습니다 david.c이 있기 때문에 사용자 정의 아닙니다 전혀 문제. 정말, 내가 요구하는 프로그램을 원하는 자신의 이름에 대한 사용자입니다. 그래서 내가 그걸 어떻게해야합니까? 음, 저를 통해 여기에 스크롤 할 수 있습니다. 그리고 나도 문을 사용하기 전에 스크래치, 난 printf를 사용하기 전에 그렇지 않으면 함수로 알려져 나를 보자 우선 몇 가지 사용자 입력을 부탁드립니다. 그래서이 작업을 수행하는, 내가 필요 물건 몇 가지를 않습니다. 하나는, 내가 저장할 장소가 필요 사용자의 나는 나달라고 한 후 이름 그것을 위해 그녀. 아마 사용하는 어떤 구조 필요 같은 값을 저장하는 방법? 변수입니다. 그래서 스크래치와 달리, 어디 그냥 얻을 좋은 퍼즐 조각은, 여기, 우리는에있다 로 분명히 단어를 사용 자신을 표현한다. 이제부터는, 언제라도 당신이 원하는 단어 나 구문, 프로그래밍, 우리는 문자열을 그렇게 부르는거야. 그래서 문자열은 단어 나 문구입니다. 이것은 0 개 이상의 일련의 형식적으로 문자. 그리고 당신은에 이러한 변수를하려는 경우 존재, 당신은 나에게 하나를주고 말해야한다. 그리고 당신이하는 방법이 그것입니다 들 수 있습니다 문자열의 세미콜론을 말 당신이 원하는 아무거나. 사실의 조금 실망입니다. 내가 앞으로 더 가자 명확하게 이름을 호출합니다. 저 이름라는 문자열을 제공합니다. 하지만 지금은, 무엇인가 사람의 기본적으로 이름은? 물론, 인간은 아무 것도 입력하지 않는 경우 분명,이 무슨의 이름에 값이 없음. 당신이 포기하지 않는 경우에 그것은 C에서 밝혀 변수 값은가는거야 쓰레기 값이 있습니다. 그것은 어떤 임의의 0을 가지고 있습니다 사람, 그래서 당신은 볼거야 화면에 쓰레기, 진정, 당신은 그것을 표시하려고합니다. 하지만, 실제로 말하여이 문제를 해결할 수 있습니다 이름의 가게 내부 값을 다음. 당신이 변수에 값을 저장하는 방법은 당신의 변수 이름이있는 경우 왼쪽, 당신은 어떻게 든 무엇을 넣어야 할 오른쪽에있는 저장하려는 무슨이를위한 구문 다음에 따른다. 우리는 전에 본 적이,하지만하지 것 잠시 믿음에 거기 세계에서 또 다른 문이 존재 나는 다시 함수를 호출하려고 해요 이 기능은 문자열을했다. 그리고 그것은 문자 그대로 수행합니다. 그것은 어떻게 든 문자의 시퀀스를 얻는다 그 인간과의 그것으로 뭔가를 않습니다. 그리고이 생겼 이상한 구문. 일반적으로, 당신은 등호를 사용하는 경우 - 당신은 말의 세계에있어 대수, 당신은 실제로있어 말을 여기서 x는 1과 같습니다. 여기에 우리가 말을하지 않을거야 이름은 문자열을 얻을 같습니다. 우리는 이름을 무엇으로 저장소를 말하고 오른쪽에 그 것은 등호. 기호가 나타내는 같음 할당 연산자. 그것은에 무엇을 넣어라는 구문의 무슨 내부의 오른쪽 왼쪽에. 그래서 문자열의 새로운 조각은받을 하지 않습니다 만하는 기능 뭔가 - 문자열에 대한 사용자 요청 - 또한, 말하자면를 반환합니다. 그래서 무슨 일이 일어나고 있는지 살펴 보자 여기에서 발생한다. 내가 지금 가서 축소거야 나는 부부의를 얻을거야 내 프롬프트에서 실수. I 입력, 주문을 입력 할거야. 와우. 실수의 전체 무리. 좋아요,이 종류의 것입니다 확실히 처음에는 압도적하지만, 그것은이 매우 모두 밝혀 틀림없이 이상한 오류 메시지는 일부 패턴을 참조하는 우리는 시간이 지남에보고 시작합니다. 그래서 하나는 내가 오프 당기기 있습니다 먼저이기 때문에. 선언되지 않은 식별자 문자열로 사용합니다. 그냥 gedit에서, 또는 연타를 의미 이 경우, 알지 못합니다 내가 문자열로 무슨 뜻인지. 그리고 그건 C, 프로그래밍 때문에 언어가 실제로 형식 문자열의 아무 변수입니다. C 문자열이 존재하는지 알 수 없습니다. 하지만, CS50 직원들은 않습니다. 그리고 수업에 앞서, 우리는 CS50.h.라는 파일을 생성 그리고 안쪽이 파일의 - 그리고 올 구문에 대한 자세한 - 이 파일의 내부 정의입니다 내가 방금 정의한 것에 구두 문자열. 그래서 단순히이 한 줄을 체결하여 내 프로그램의 코드, 나는 지금 어디로 교육 gedit에서이과하고 연타 모두의 문자열이 무엇인지십시오. 나는 아직 방법을 모르겠어요. 몇 주 동안, 우리는 껍질을 거 다시 그 레이어. 하지만 지금이 가르치는 것을 알고 컴파일러 무엇 문자열은 사실이다. 그래서 지금 제가 취소하자 내 여기에 터미널 아래로. 저를 다시 실행되는 사용자 지정을 만들자, 그리고 이러한 문제를 모두 해결했다. 이 때문에도 예정 반복되는 테마를합니다. 난 단지 9 줄 프로그램을 작성하고, 그러나 나는 오류의 18 라인을 가지고 있었다. 그 협박의 일종이다. 그러나 실현 그러한 그들은 종종 폭포 하나의 작은 실수를 트리거하는 컴파일러의 혼란, 그리고 그것은보다 훨씬 더 보인다. 이제 예리한 관찰자 알 수 나는에서 문자열을 받고 해요 사용자,하지만 난 실제로 아니에요 그것으로 무엇을하고? 사실은 안할거야 그것으로 아무것도. 실제로 다시 정의 실행 경우에, 그냥 거기에 앉아거야. 무슨 일이야? 내 프로그램에 붙어있는 것 같다 어떤 라인, 당신은 말할 것? 그래서 실제로 7 호선에 붙어있어. 그리고 우리는 전에 본 적이 있지만 한 7 행에서, 이것은 다시 거기 문은 문자열을 얻는다. 그리고 그것이 말하는 않습니다. 그것은 인간의 지금 기다리고 문자열을 가지고 있습니다. 이것은 나에게 완전히 직관적이다 인간은, 내가 말되지 않았기 때문에 무엇을. 그러나 내가 믿음에 가서 보자 내가 롭 척하자. 입력합니다. 그건 내가 의도 한 프로그램이 아니다. 그래서 우리는 우리의 첫 번째 블로그가. 그러나를 통해 추론하려고하자 왜이 경우입니다. 우선, 첫 번째 문제를 해결 할 수 있습니다. 내가 말하는 여기에 라인을 추가 할 수 printf를, 당신의 이름은 무엇입니까? 그냥 가까운 견적을하자, 괄호를 닫습니다. 지금 나 프로그램을 다시 실행하자. 문제가 발생했습니다. 나는 그것을 확인할 수 없습니다. 오른쪽. 나는 그것을 다시 컴파일하지 않았다. 그래서 C와 같은 언어로, 당신 때문에 소스 코드를 변경을 의미하지 않는다 당신은 당신의 오브젝트 코드를 변경 한 새 개체 코드를 생성하려면, 새 0과 1. 당신은 다시 컴파일해야합니다. 지금 정의를 다시 실행할 경우, 입력 아, 좀 더 명확. 내 이름은 롭있다. 아직 버그. 그리고 거기에 주장 것 이제 몇 가지 버그. 이것은 단지 솔직히, 끔찍한 보인다. 마찬가지로, 최소한, 내가 가지고 있어야 이 공백 또는 이동 새 줄에 커서를 놓습니다. 실제로, 새로운 라인. 즉, 여기에 핵심 어구의 일종이야 우리는 볼 수 있지만 정의 된 적이 없다. 당신이 텍스트를 얻을하는 방법 다음 줄로 이동하려면, 이 작업을 수행하지 않습니다. 이 컴퓨터에 혼동된다. 이 두 개의 별도의 라인처럼 보이는 코드의 어느 것도 완벽하게 정확합니다. 대신 더 명시해야하고 나에게 새로운 라인을주고, 말을하는 우리 백 슬래시 N과 C로 나타냅니다. 그래서 몇 가지 같은 문자가있다. 백 슬래시 N 그 미학을 수정합니다. 내 프로그램을 컴파일 할 수 있습니다. 내 프로그램을 다시 실행하자. 이 잘 보인다. 그것은 아직도 꽤 원시적 하지만 그것도 아직 버그가 있습니다. 그래서 하나가있다 - 당신은 이전에 프로그래밍 적이없는 경우에도, 당신은 아마 추측을 할 수 있습니다 이유를이 프로그램이 여전히 결함이있다. 나는 그렇게하려면 어떻게해야합니까 아직 수행하지 않은? 그래서 실제로해야 이름이 뭔가. 그냥 처음처럼, 당신은 실제로 수도 N과 같은 변수 또는 지정 우리가 마지막으로했던 것처럼 카운터 주 - 값을 반환합니다. 하지만 당신은 아무것도 할하지 않은 경우 그것은, 아무 일도 일어나지 않을거야. 좋아요, 수정 할 수 있습니다. 날이 내 변수를 입력하자 나 여기 내려 가자. 롭 나를 다시 실행하자, 내가 컴파일 할 수 있습니다. 지금은, 그냥 바보? 그래서 정말 얻고 있지 않다 더 이상 나. 그러나 그것은 완벽하게 자연스러운 일이었다 본능, 곧, 주장 거라고? 변수 이름이라고 나는 경우 거기 가고 싶어, 왜 그냥하지 거기 입력? 음, 물론 우리가 가지고있는 이제 구별하기 무엇 사이의 문자열입니다? 그 견적 맺다 공지 사항 여기, 이름, 안녕하세요? 이것은 실제로 자체 문자열입니다. 그것은 하드 코딩있어. 그것은 인간에서이 아니다. 그것은 나에게 원래 프로그래머의, 하지만 여전히 문자열입니다. 말 그대로 내부 N-A-M-E를 쓰기 때문에 경우 문자열, 어떻게가는거야 인쇄거야? 음, N-A-M-E. 우리는 대신에 필요 printf를 말하고, 인쇄되지 않는 경우 말 그대로 이름을 지정합니다. 이름의 값을 인쇄합니다. 그리고 그렇게하기 위해, 우리는 다음을 수행합니다. 그리고 이것은 단지 인간의 규칙입니다. 우리는 대신에 % s을 말하고, 그 문자열을 의미합니다. 그리고 내 주변 시세의 끝에서, 나는 쉼표를 넣어가는거야 두 번째 인수를 전달 이 문장에. 나는 거기에 이름을 입력 할거야. 이제 알 우리는이 약간 새로운 구문. 우리는 여전히 두 개의 괄호가 있고, 이제부터는 내가 말을하자 그 물건 괄호 대표 함수에 인수 - 어떻게 든하려고 입력 그 동작에 영향을 미칠 수 있습니다. 그래서 논리에 의해 얼마나 많은 인수 printf의 것으로 보인다 이 순간에 복용? 그래서 두 가지를 가지고있는 것 같다 그는 참으로 암시 적있어 여기 쉼표로. 그래서 이것은 하나의 인수는 따옴표 사이에있다. 그것은에 쉼표를 가지고 있더라도 모든 따옴표의, 어느 의미 그것은 하나의 긴 문자열입니다. 쉼표, 변수 이름입니다. 그래서 지금 나 축소 할 수 있습니다. 내가 그것을 다시 실행하자. 롭. 젠장, 내가 무슨 짓을 한거야? 좋아, 당신은 다시 컴파일해야하므로. 그래서 다시, 쉽게 실수를 만들려면 또 다시 조기에. 그래서 지금 다시 실행되는 사용자 지정, 롭, 입력 봐라. 우리는 지금 사용자 지정 프로그램이 있습니다. 그래서 이제 프로그램이 몇 가지 특성을 사용하여 그 주목할 가치가있다. 하나는, 내가 그렇지 않으면, CS50.h를 사용하고 있습니다 CS50 라이브러리로 알려져 있습니다. 그리고 내부 CS50 도서관은 다른 사람이 쓴 기능 - 즉 직원 - 당신이 사용하고 취득하는 문자열은 그 중 하나입니다. 2 호선의 내부는 stdio.h에 있습니다 그리고 이유가 무엇입니까? 추측을 가져 가라. 내부에 존재하는 어떤 표준 IO 부모? printf를. 그래서 printf를, 당신은 어디서나 볼 수 없습니다 다른 화면. 이 함께합니다 어떻게 든 컴퓨터. 그것은 어디에서 오는가? 그것은 내부의 - 그것의 선언, 그래서 내부, 이야기하기 stdio.h에라는 파일. 자,이 물건을 위해, 우리는 다시 올 것이다 그것은 약간의에 결국 때문에 지금은 산만. 이것은 우리의 반환 형식을 나타냅니다. 이 인수를 말합니다. 그러나 오늘, 우리는 집중하고 여기이 선합니다. 그래서 문자열 이름, 다만 요약하자면, 이 나를 위해 무엇을 했는가? 그래서 변수를 선언 형식 문자열. 그래서이 단어를 의미있어 하지 않는 번호. 옆으로, 내가 그랬다면 원하는 것처럼 그것은 숫자로, 나는 말할 것입니다 INT 같이. 나는 부동 소수점 수 원하는 경우 값, 소수점 뭔가, 내가 플로트를 말할 것입니다. 그러나 오늘, 난 그냥 문자열 말한. 그리고이 변수를 준 이름의 이름,하지만 난 수 그것을 무엇이라고했다. 사실, 원래, 나는 그것을이라는 S. 여기에는 또 다른 문입니다. 이 얼마나 많은 인자이다 문 복용? 그래서 하나를 복용하고있는 것 단순히 미적 세부 사항이다 뭔가를 표시 나에게 화면을 표시합니다. 일이 선 8은 무엇인가 평신도의 관점에서? 그것은의 값을 점점 사용자 - 즉, 문자열 - 그리고 그것이 무엇을하는거야? 그것은 본질적으로 넘겨 있어요 의 왼쪽에있는 사람 이렇게 등호가이 경우에, 이름 변수는 실제로 그것을 저장할 수 있습니다. 그리고 printf의 또 다른입니다 함수의 인스턴스입니다. 그리고 우리는 함수를 호출 말한다. 함수를 사용하는 것은 함수를 호출합니다. 이건 분명히 두 개의 인수를 사용합니다. 이 하나, 쉼표,이. 이것 자체는 그냥 문자열 그 자리를 포함합니다. % s의 의미는 여기에 다른 문자열을 넣어. 그리고 이후에 이름을 넣어 삽입 년대 쉼표, 나를 위해 그 일. 그래서 나는 아직도 다른 일을 할 수 있습니다. 날의 비트를 이제 가서하자 바보 같은 프로그램이지만, 내가이 삭제할 수 그리고 나 루프를 만들 수 있습니다. 진정한 동안. 기호 사실은 분명히 항상 true가 될 것. 그래서 루프의 어떤 종류의 내가 유도하고 다음과 같은 라인을 작성하여? 그래서 무한 루프, 오른쪽? 단지 진정한 동안. 나는 단어를 바꿀 수있는 방법은 없습니다 아무것도 될 참이되도록 영원히 실행하는 것. 당신은 실제로 프로그램을 했어 그래서 만약 Mac 또는 PC에있는 것 갇혀 가지고, 또는 거지 뭔가 뭔가하고 당신이하지 않으면 종료하는 것을 얻을 수 없습니다 컴퓨터를 재부팅하거나 뽑아 작업 관리자 나처럼, 여기 그러한 예입니다. 나는 "나는 버그 프로그램입니다."라고 말할 수 있습니다 닫기 따옴표 닫고 괄호, 세미콜론. 그래서 다시 패턴을 확인할 수 있습니다. 우리 구문 중 일부는 새로운하더라도, 키워드하면서, 키워드 진정한, 나도 같은이 인식 한 중괄호 종류. 나는 세미콜론 괄호 있어요. 그래서 지금의 앞서 가자 이 컴파일합니다. 사용자 정의, 사용자 정의하십시오. 그래서이 시점에서, 당신은 할 필요가 없습니다 어플라이언스, 모든 권리를 다시 시작? 그래서 여기에 쉬운 교훈과 함께합니다 두 손가락 컨트롤 C, 우리는 프로그램을 종료합니다. 하지만 당신이 볼 수있는 이유를 정확하게이 일 또 다시 자신을 반복했다. 내가 뭔가를 조금 할 수 있습니다 맛보기로 더 복잡한. 나는 앞서 갈 건데 다음을 말한다. 정수 int를 들어, 난 단지 우리 대부분에게 일반적인 이름 프로그래밍에서 변수 당신이있어 그냥 계산, 0과 같다. 내가 가서 내가있는 동안 가정 해 봅시다, 라고하자, 100 미만 난 플러스 플러스. 우리는이 구문에 백업합니다 그러나 이것은 단지 의미 또 다시 나는 증가시킵니다. 그리고 나는 여기에서 무엇을할까요? printf를, "내가까지 카운트 할 수 있습니다." 이 버그 프로그램입니다. 실제로 무슨 일이 의도 했습니까? %가되지 않아,하지만 당신은 추측 할 수없는 것 이. % d이 (가) 진수 정수입니다. 쉼표 나는. 나 롤백 할 수 있습니다. 지금 날 수 있도록 재 컴파일 할 수 있습니다. 내가 지금 정의로 다시 실행하자. 정말 망할 빠른 때 믿을 수있는 이 같은 프로그램을 작성합니다. 이제 뭔가를하자 약간의 의도. 동안이 작업을 수행하는 방법에 대한하자의 I 0보다 크거나 같습니다. 어떤이 유도하는 거죠? 그래서 논리적으로, 이것은 현명하지 않습니다 나는이 프로그램을 다시 실행하면 이제 재계 때문에, 지금은 정말, 정말 높은 조사 할 수 있습니다. 내가 할 수 불행히도에 대한 높은 카운트는 40 억이다, 그래서이 것입니다 시간이 걸릴 수 있습니다. 그럼 왜 우리는 우리로이 떠나지 않는다 클리프 행어, 약속에 그 수요일, 우리가 볼 수있는 경우 이 프로그램이 완료됩니다. 둘째, 우리는 어떻게 스스로를 소개합니다 자신의 함수를 작성할 있도록 매우 빨리 수요일함으로써, 우리는 거 같은 우리 C로 처음부터 전환 시작 점점 더 복잡 적 쓰기 많은 작업을 수행 프로그램 이것보다 훨씬 더. 우리는 당신에게 다음을 볼 수 있습니다. [박수] 스피커 1 : 다음 CS50에서, 퍼즐 날은 성공이었다.