[음악 연주] DAVID 마란 : 모든 오른쪽이 CS50입니다 이는 하나의 주 단부이다. 그래서 난 내 과거를 소개하고 싶습니다 advisee, 안델 더프,뿐만 만드는 사람 아이폰 5는이뿐만 아니라 서 성서 낭독, 그는 또한 자동차를 만든다. 안젤 더프 : 어떻게이 일어나고, 모두? 난 그냥 당신에게 조금 말하고 싶어 포뮬러 SAE에 대한 비트 그 중 I 선장입니다. 그것은 MIT 팀입니다. 난 그냥 말하고 싶어 사람 그것에 대해 조금 잘하면 몇 가지 관심을 생성합니다. 그래서 나는 그냥 통해 실행하자 우리 팀에 대한 몇 가지. 그래서 우리는 완전히있어 학생의 실행에있어서, 모든 회원 설계, 시뮬레이션, 서브 시스템, 테스트 및 제조 업체 차. 우리는 우리 자신의 기계 공장을 가지고 그리고 차고 및 N52-- 또는 죄송합니다, 같은 건물입니다 N51-- MIT 과학 박물관. 그리고 우리는 사람들이 있습니다 그 자동차를 운전. 전국 대회가있어 여름의 시작 부분에, 다음 작은 총격전이 있습니다 일년 내내 대회. 그리고 우리는 드라이버 훈련을 일 새로운 멤버는 더욱 친밀해질 수있을 것입니다. 우리의 빌드 일에 아르 오전 11시에서 오후 8시까지 토요일. 점심과 저녁 식사를 돌보는 의, Bertucci의와 보스톤에서 각각. 우리는 매주 모임을 가지고 학점을위한 세미나. 어느 이번 학기의 새로운이며, 또한, 다음 학기에있을 것입니다 그래서 당신은 교차 등록을 할 수 있습니다하십시오. 그리고 우리는 설계, 가게를 그리고 주 동안 CAD의 일, 회원 독립적 반면 CAD 부품, 주문 재고 등등. 전기에 대한 그래서 팀에서 엔지니어링 우리는 우리의 견인을 가지고, 고전압 시스템 이는 명목으로 실행 포함 300 볼트, 모터, 모터 컨트롤러, 배터리 팩. 그 다음 우리는 낮은이 전압 실행 시스템, 12 볼트, 이는 포함 컨트롤은 뇌 노드 CAN 상자 및 대시 보드입니다. 지금까지 CS는 우리가 간다 웹 사이트 유지 보수를 우리가 이벤트를 할 필요가 없다는, 회원 변경, 새 사진 및 홍보 자료. 그리고 우리는을 제어하는​​ 코드가 우리의 트랙션 컨트롤, 발사 차량 컨트롤, 대시 제어, 토크 벡터링, 회생 브레이크 시스템, 어느 MATLAB에서 일반적으로 실행 시뮬링크 및 LabVIEW. 당신이 차에 대해서 설명 좀 해주세요. 그래서 약 500 파운드입니다. 이 85kw로 제한 규칙입니다. 그것은 2 EMRAX 207 모터가 다시 각각의 뒷바퀴 하나. 그것은 주문 제작 배터리 팩이 프리즘 A123 파우치 세포, 300 볼트 총과 5.6 킬로와트 시간. 그리고 직접 드라이브입니다 2.64-1 드라이브 비율입니다. 여기에 몇 가지 사진 우리는 아르 대회에서 그것을했다. 여기에 다시, 코, 콘입니다, 여기에 모터는, 아르 그 큰 검은 디스크 아래는 동부 표준시 망 마누스. 여기에 내가 뽑아 슬라이드입니다 우리의 경쟁 방식 중. 그리고 이것은 단지 우리의 차를 비교한다 시판 차의 커플, KTM XBOW, 아리엘 등 아톰, 그리고 Caterha M 7-280. 당신이 가격에 익숙하다면, 전원 마력 당 달러를 무게를 당겨 토크 당 달러, 그리고 우리 차 물 밖으로 모두 불면. 당신은 질문이있는 경우에는, 이 이메일 주소를 적어. 우리에게 fsae@mit.edu에서 이메일을 촬영합니다. 우리는에 대해 이야기 드리겠습니다 당신이 원하는 무엇이든. 하버드 학생들은 친절 팀에 소수의. 당신은에 대한 문의 사항이있는 경우 그 이메일을 촬영 해 주시기 바랍니다, 행복 이야기하고, 내가 갈거야 다시 다윗을 통해 머리에. 감사합니다. 이봐, 감사합니다. [박수] DAVID 마란 : 안젤 여름 동안 CS50 캠퍼스에 여기에 우리와 함께 일하는 이번 여름. 그리고 작업 이외에 이진 전구 같은 것들, 그는 실제로 정말 열린 우리 눈동자는 - - 시합에만 및 particular-- 광산 어떤 정말 교차로 하지 하드웨어와 소프트웨어가 될 수 있습니다. 사물의 사실 많은 그는 단지 당신은을 통해 궁극적으로 아르 견학 최초의 소프트웨어에서 만든, 다음 궁극적 제작 하드웨어 현실 세계에서. 당신이에 관심이 있다면 그래서 그 교차점을 탐험, 아마도 그 그룹을 차지합니다. 당신의 지금 사이에, 그 기술의 팬이 누구인지, 애플 제품 특히이 알고있다 몇 마리의 공지 사항 어제. 그러나 우리는 우리가 보여 줄 알았는데 나왔다하면 한 몇 일 전에 그 당신은 본 적이 없습니다. 요르겐 EGHAMMER : 알다시피, 한 번 잠시 뭔가 이 따라 온다 우리가 사는 방식을 변경합니다. 장치 간단하고 직관적 인 를 사용하는 것은 거의 잘 느낀다. 2015 이케아 카탈로그를 소개합니다. 그것은 디지털 책이 아니다 또는 전자 책은이 책 책입니다. 주의해야 할 첫 번째 일은 아니오 케이블, 심지어 전원 케이블입니다. 2015 이케아 카탈로그 오는 완전히 충전 배터리 수명은 영원하다. 인터페이스는 8 인치 × 7.5 하지만 8인치 15로 확장 할 수 있습니다. 네비게이션은 촉각 터치를 기반으로 당신이 실제로 느낄 수있는 기술입니다. 내용은 사전 설치되어 제공 328 고화질 페이지를 통해 홈 가구 아이디어를 영감의. 검색을 시작하려면, 단순히 터치하고 드래그. 오른쪽 앞으로 이동 왼쪽으로, 뒤쪽으로 이동하려면 왼쪽에서 오른쪽으로. 다른 것을 알 수 있습니다? 맞아요. 지체하지 않습니다. 각 맑은 페이지 즉시 부하, 아무리 스크롤 얼마나 빨리. 당신은 빠른 개요를 얻고 싶은 경우에, 당신의 손의 손바닥에 고정, 그냥 엄지 손가락을 사용하여, 속도는 내용을 검색합니다. 당신이 뭔가를 발견하면 당신은 저장할 나중에, 당신은 단순히 즐겨 찾기에 추가 할 수 있습니다. 그리고 당신은 응용 프로그램을 종료하는 경우에도, 당신은 쉽게 다시 책갈피를 찾을 수 있습니다. 놀라운. [웃음] [박수] 그래서 우리에게 가져다 주 하나의 끝. 이제 몇 가지 발표. 그래서 절편 진행에 있습니다. 여기 URL 언젠가로 이동 지금부터 금요일 정오 사이 실제로 당신이 있는지 여부를 지정합니다 어색하게 그 사이에, 더 편안하게, 또는 중간 쯤. 이것은 일반적으로 그 중 하나입니다 당신이 가지 알 것. 그리고 당신의 그 사실 적은 누구인가 아마 많이 알고 편안하고, 더 당신의 그들을 편안, 많이 알고 당신은 매우 확실하지 않은 경우 다시하는 넌로 그 버킷 당신은 가을 아마 그 중간 쯤. 하지만 나머지는 당신이 교체 할 수 있습니다 보장 몇 주 후 필요가있을 경우. 한편, 다음주 우리는, 그 자체로 섹션을 시작하지 마십시오 하지만 슈퍼 섹션있는 모든 학생들에게 열려 있습니다. 이에 위치에 일요일오고 물론 웹 사이트에 발표 우리는 하나가됩니다 어색하게 그, 뿐만 아니라 하나 그 더 편안하게. 그리고 그 사이에 어딘가에 그 두 가지의 선택할 수 있습니다, 당신이 원하는 경우 또는 둘 모두 연좌 농성에. 그리고 그의 초점 C에 궁극적으로 될 것입니다, 저희는 계속해서 우리의 오늘의 대화. 문제는 공 한편이 설정 희망이 당신의 손에. 공식적으로 인해 내일 목요일, 정오. 당신은 일을 현금으로하지 않는 당신의 5 늦은 일, 그것을 가지고 것이다 정오에서 금요일까지. 문제는 한 사이가 될 것입니다 설정 과정의 웹 사이트에 게시. 그리고 이것은 우리의 첫 번째가 될 것입니다 C.에 클래스로 진출 그리고 그 문제 설정 스펙을 안내합니다 어떤 역학의 많은 통해 우리는 월요일에 대한 얘기를 시작했다 우리는 오늘에 대해 얘기를 계속합니다. C, 리눅스, CS50 어플라이언스,이 모든 사양에 여러분을 기다리고 있습니다. 근무 시간은 그 사이에 진행되고, 학부 식당에서. 을 보려면 여기를이 URL에 머리 오늘 밤과 내일 예약, 당신은 참여 좋아하면 것인지. 한편 질문, 그래서 그 질문을 할 수있는 기회를 비동기, 24, 당신이있어 실현 섹션 및 사무실에 국한되지 시간 아니라이 도구 여기, CS50은 해당 URL에 대해 토론 과정의 온라인 것 게시판 소프트웨어, 이는 비아 당신의 질문을 할 수 반 친구들도 직원. 그래서 명심 자원뿐만 아니라. 한편 전통 이 금요일이 시작됩니다. 당신은 얼핏 있습니다으로 지난 수요일의 티저 비디오, 우리는 대부분의 전통을 가지고 기간 동안 매주 금요일 일부 (50) 학생을 복용하고 라는 로컬 레스토랑 직원 불과 얼음,하는 우리가있어 일반적으로 일부 동문 합류 산업이나 친구 일반적으로 열망에 큰 클래스가 작은 느낌입니다. 그래서 완전히 캐주얼 점심입니다. 우리의 무리, 직원 특히, 음악 의자를 재생합니다 약 학생들과 대화를 나눌 50, (50)의 바깥 생활 미래의 생활, 현실 세계, 나는 직업의 기회에 대해서 이야기하고 업계에서 친구와 함께. 당신은 우리와 함께하고 싶습니다 그래서 만약 이 금요일, 여기에이 URL로 향한다. 공간은 제한되어 있지만, 우리는이 작업을 수행합니다 recurringly 임기 동안. cs50.harvard.edu/rsvp 거기에 머리. 그리고 당신은에서 얻을 수없는 경우 이 때, 걱정 없습니다. 우리는 다시 그것을 할 것입니다 앞으로 몇 주뿐만 아니라. 그래서이 그림은 우리는 지난 주에 그린 당신은 아마 봤는데 지금까지의 물놀이. 하지만 그건 지금이 연결을 시도하자 우리가 오늘 할 거 야 무엇을 그리고 이후. 나는 한 자원 봉사자가 있을까요? 좋아, 또는 여러 가지. 어떻게 여기에 대한 끝, 블루 셔츠. 최대 어서, 당신의 이름은 무엇입니까? 알라나 : 알라나. DAVID 마란 : 알라나. 그래서 알라나, 단지 순간은 좋은 드릴께요 충족 역할을하려고 여기에이 기능의. 우리가 한 보라색 블록 함수 지금까지했다. 그래서 내가 갈거야 앞서 여기 알라나을 제공 약간의 이름표가, 만들려면 분명 당신은 놀고있어 어떤 역할. 그래서 당신은 말 블록한다. 당신이 가서 그에 넣어합니다. 그리고 우리는에 갈거야 슈퍼 간단한이 유지. 손의 목표는 단순히 경우 지금 알라나로 구현하는, 소위이 블록을 말한다 여기 그것이 작동하는거야 방법은 다음과 같습니다. 나는 현실을 부르 자 있거든요 인수 또는 매개 변수, 정말는 단지 종이의 빈 시트입니다. 그리고 가지를 떠올리게하는 흰색입니다 흰색 상자의되는 당신 단어를 쓸 수 있습니다. 한편 여기에 갈거야. 내가 먼저 갈거야 및 H-E-L-L-O 쉼표 세계 물품. 프로그래머가 말한대로 지금은, 안 무슨 말을하는 방법을 알고있다. 나는 단어를 가지고 올 수있는, 그러나 나는 반드시하지 않습니다 자신을 표현하는 방법을 알고 구두 또는 화면. 그래서 난 건지 이 작품을 걸릴해야 할 일 그 input-- 기능의 또는 인수, 우리가 전화 할게로, 나는 paper--이 조각에 쓴 나는 그것을 아웃소싱거야. 그리고 실제로 그 역할이다 그 프로그래밍 언어의 함수 재생할 수 있습니다. 말처럼 뭔가 블록은 외부에서 조달 할 수있다 사람에게 사람은 정말 알고 무엇을 그녀 또는 그가에 대해 얘기하고있다. 그래서 당신은 스텝 오버가 안된다면 여기에 단지 순간을 위해, 나는이 입력을 전달할 예정 알라나, 당신은이 입력 말 것을 요청합니다. 알라나 : 안녕하세요, 세계. DAVID 마란 : 그건. 있도록하는 기능이 있습니다. 이제 우리는 조금 더 걸릴 수 있습니다, 우리는 앞으로 여기에 조치를 취할 수 있습니다. 그 분명히 실망했다 때문입니다. 그래서 지금이 변환하자 뭔가 좀 더 정교한. 그래서 이것은 물론 우리의 C 버전입니다. 그래서 지금 당신이 걸릴하려면 하나 떨어져, 떨어져 그 이름 태그, 과의 당신이 새 이름에 넣어 보자. 그러나 근본적으로 당신이있어 동일한 역할을하고, 그냥 그렇게됩니까 지금의 printf를 호출 할 수. 이야기는 물론이며, 아마도 나중에 ... 것 단지 underwhelming--이 같은 가는 다음이어야합니다. 이제 함수의 printf입니다. 나는 발신자 오전, 또는 프로그래머는 누가 싶어 의 어깨에 서서 당신과 같은 과거의 명, 이미 방법을 낸 사람 실제로 뭔가를 기록. 그리고이 때, 그것은하자 말보다는 실제로 여기에 우리의 화면을 사용합니다. 당신이 단계하고자한다면 여기에, 내가 갈거야 로 다시 합격 내 printf의 친구에 입력. 당신이 앞서 갈 수있는 경우 및 화면에 그 인쇄, 간단하게 드로잉하여 검은 화면에 손가락. 우수. 좋아, 서스펜스에 대한 많은 그래서 어떻게 밖으로 연극을하려고했다. 그래서 지금의이 일을 물건을 보자 최종 노치는 우리가 할 수있는 경우, 다음과 같이. 그래서이 C 프로그램입니다 로 우리는 지난 시간에 말했다. 그리고 이것은 단지 당신이 그것을 짓을하지 화면, 안녕하세요, 세계에 출​​력합니다. 비록 많은 명확하지만 거기 거기의 산만 한 물건. 그러나의 한 단계를 일을 보자하고 기억되는,이 버전을 소개합니다 세 번째 버전이였습니다 우리는 마지막으로 끝났다. 그리고 지금 분명히있다 printf의 두 가지 사용합니다. 알라나에이 호출있다 printf의 본 경우에서, 뿐만 아니라 전화있다 다른 함수. 분명 그 기능은 무엇입니까? getString에. 우리는 또 하나의 자원 봉사를받을 수 있습니까? OK, 최대 어서. 당신의 이름은 무엇입니까? JAVIER : 하비에르. DAVID 마란 : 하비에르는 최대 어서. 그래서 하비에르의 역할이 켜져 이 종이. 나는의 일반적으로 호출하는거야있다. 이제이 변수는 그것의이다 string 유형으로는 묵시적 이 중간에 그 두번째 라인으로. 그리고 난 당신이 나에게 문자열을 가져 가고 싶습니다. 특히 오케스트라에 머리를 아래로 부와 나에게 누군가의 이름을 가져, 및 변수로 돌아와 그 값을 포함. 그것은 당신이 원하는 사람이 될 수 있습니다. 여기에 우리가 간다. 좋아, 하비에르입니다 이름을 적어. 좋아. 우리는 아마 방법을 추측 할 수있다 이 진행할 예정이다. 우리는 아마도 삼기있어 지점 무엇 함수가 수행하지만 그럼에도 불구하고 대단히 감사합니다. 그래서 하비에르는이 문자열을 반환했습니다 여기, 아주, 어떤를 볼 수 없습니다 조나단은 문자열입니다 우리는 쪘있다. 그래서 지금 내가 실제로 건지 하지만 알라나에 제공 조금 다른 무언가이다. 때문에이 버전 프로그램, 먼저 이름을 명시있다. 첫 번째 인수 그래서 나는 알라나를 제공해야 될 것입니다와 말 그대로 당신의 이름을 명시. 그게 그렇게 간단한 좋아, 나는 당신이 손 것이다. 그리고 최대 쓰기로 다음 인수를하는 경우 가서이 쓰고 싶어 보드에의 앞서 가자 하고 확인하려면 여기를 마지막 예제를 수행 결국 일이있어 무엇을 취소합니다. 그래서 당신의 이름을 명시, 상단을 향해 쓰기 당신이 괜찮다면, 그냥 그렇게 우리는 일초 라인을위한 공간이있다. 마지막 일 때문에 나는 갈거야 하나가 아닌 함께 지금을 제공하기 위해, 하지만 용지 두 조각. 좋아. H-E-L-L-O 쉼표 다음에 빈 줄. 지금은 알라나를 손 해요 그래서 조금 다른 무언가이다. 뿐만 아니라 그녀는이 점점 어디 빈에서 채우기가 나타내는 그것은을 무엇 percent-- 자리 우리가 사용하고? 네, 퍼센트의. 그 사이에 나는 통과 할거야 두 번째 인수, 그녀의 어떤 정확하게 어떤 하비에르이다 조나단에서 검색. 그래서 내가 당신에게이 두 가지를 제공 할 수 있습니다. 당신은 가서하고 싶은 경우 인쇄 그 효과. 궁극적으로 무슨 일이야 지금, 알라나 다시 printf와의 역할을하고있다. 하비에르 연주했다 getString에의 역할. 그래서 당신의 선물이 될 것입니다. 그리고 궁극적에도 불구하고, 무슨 일이 일어나고 있는지 이 옙 앞서 쉼표 이동 hello--. 알라나 :이 아직 없거나받을 수 있었습니까? DAVID 마란 : 그래, 당신 한 번에 모두를 받았다. 그래서 아이디어는 것입니다 이제 페이지를 전환 할 수 있습니다 제를 처리 할 두 입력. 그래서이 집에 망치를 위해서만 알라나가 실행 반면 그 지점 이 녹색 라인 여기에 다음 하비에르는 우리를 위해이 일을했다 나 뭔가로 돌아 우리의 전화 할게,하지만 정말이었다 자신의 종이 단지 조각. 그리고 지금 알라나이 세 번째 줄을했다. 그리고이 모든 것이 보이는 경우에도 그래서 믿을 수 없을만큼 애매 아마도 첫눈에, 그것은 정말 만큼 간단합니다. 주위에 입력을 전달, 하나, 출력을 얻는 물리적으로 뭔가를 다시 손으로 되, 또는 이런 부작용을보고. 뭔가 시각적으로 화면에 작성합니다. 그럼 가서하자 , 알라나와 하비에르 감사합니다 누가 들어, 여기 내려했다 여기에 우리를 합류. [박수] 당연한 그래서 지금의이 보자 얼마나 간단 그 모두가 될 수 있습니다. 그리고의 사실에 진행하자 실제 코드에서 뭔가. 여기에서 화면에 있도록하는 스크린 샷이다 소위 CS50 어플라이언스의. 그리고 당신은 같은시에이 있다면 수요일 오후 2:00 PM, 일부 친구에게 설명 무엇 CS50 장비이며, 당신은 어떻게이 문장에서 정의 할 것인가? 어떤 한 문장? 그래? 학생 : 그것은 프로그램처럼 즉, 모든 사람의 컴퓨터를 만드는 동일한 시스템으로 실행합니다. DAVID 마란 : 좋은! 그것은 모든 사람의 수있는 프로그램입니다 컴퓨터가 동일한 시스템에서 실행합니다. 그것은 자신의 일종 운영의 사본 에 발생 시스템 우분투 리눅스를 호출 할 수. 그리고 내부에 효율적으로 실행 자신의 Mac 또는 PC의 창, 그래서 바로 문 밖이 방법 주 1, 모두 여기에 클래스 동일한 도구에 액세스 할 수 있습니다, 동일한 구성, 더 학습 곡선의 특정 없습니다 Mac 또는 특히 PC에. 이제 우리는 CS50의 내부 개방 월요일에 장비, 여기에이 프로그램. 그것은 gedit를 호출 할 수 발생합니다. 하지만 그게 정말이야 그래픽 편집기. 그것은 메모장이나 텍스트와 같은 뭔가 각각 Windows 또는 Mac OS에서 편집합니다. 그리고 정말이 있다고 제안 이 화면에 세 가지 중요한 부분입니다. 위쪽은 어디입니까 코드를 작성합니다. 우리가 많이 보냈다 그리고 그건 우리 월요일의 강의에서 세 가지 예. 바닥은 우리가 무엇을 불리는, 이 검은 창, 그래? 학생 : 컴파일러? DAVID 마란 : 컴파일러 우리 그 윈도우의 방법에 의해 액세스. 하지만 더 일반적. 그래, 그냥 터미널 창이었다. 이 나이가 오래 된 용어입니다 단지 기본적으로 깜박임 설명 프롬프트 년 전에 사용했던 on되어 있어야한다 그 큰 CRT 스타일의 모니터 중 하나. 그러나 요즘은 일종의 소프트웨어 가상의. 그리고 단말 창문 우리가 명령을 입력하다 할 수 있습니다. 단순화 된 버전의 그것은 일종의 사용자 인터페이스 나 UI의. 그것은 그래픽 아니다 사용자 인터페이스 또는 GUI, 이는 텍스트 기반 인터페이스이다 또는 명령 줄 인터페이스입니다. 그리고 실제로 그 위치를 지향하는 나는 몇 가지 코드를 작성 할 수 있었다. 그래도 몇 가지 코드를 작성했다되면, 내가이 명령을 사용하는 것을 기억합니다. 그리고 이름과 가지이 제안합니다 날을 만들 수 있습니다 프로그램은 안녕을했다. 하지만 정말 무슨 짓을? 그럼 메이크업 복용 한 내 입력, 내 소스 코드, 결국, 무​​엇으로 변환? 개체 코드입니다. 그리고 오브젝트 코드는 공상입니다 0과 1을 말하는 방법. 그리고 나서 원 일단 그 오브젝트 코드를 실행하려면 I 입력들로 전달할 싶어하면 내 컴퓨터의에 0과 1 뇌, 이른바 CPU 또는 중앙 처리 유닛, 나는 프로그램을 실행했다. 그러나 월요일에 아주 간단한 아니었다 같은 단지 몇 가지 아이콘을 더블 클릭. 무엇 대신에 내가 있었나요 프로그램을 실행하기 위해 무엇입니까? 그 두 번째 명령은 무엇입니까? 나는 조금 슬래시를 듣고있어? 그래, 네? 학생 : 도트 슬래시 및 프로그램의 이름입니다. DAVID 마란 : 그렇지. 도트 슬래시 및 프로그램의 이름입니다. 지금 이것은 무엇을 의미 했습니까? 그럼 점은 비밀의 방법입니다 의 현재 디렉토리를 말하는. 무엇이든 폴더 당신은에가 있습니다 로 참조, 점으로 표시됩니다. 슬래시는 본 바로는 단지입니다 년 맥 OS 및 윈도우에서, 이 디렉토리 사이의 구분자 또는 폴더를 몇 가지 이름의 나머지 부분. 윈도우에 갈 일이 거꾸로, 리눅스 및 Mac에서 OS 그것은 앞으로 이동 발생합니다. 그러나 그것은 단지 분리, 그래서 그건 단지 재미없는 문법 세부 사항입니다. 물론 수분이 많은 부분은 프로그램 명,여보세요. 그리고 우리를 위해 만든 만들거야. 그것은 우리를 위해 해당 파일을 출력한다. 하지만 어떻게 우리는 그 지점에 도착 했습니까? 의 지금을 물어 보자 질문, 정말 무엇 이었는가 이상으로, 여기서 무슨 일 이 구문의 일부에 대해서는? , 문장 정도 그래서 우리는 어떻게 멀리 설명 않았다 야이 첫 번째 줄 녹색으로 강조? 무슨 일이, 첫 번째 줄 일이었다 내 프로그램에 대해? 그래? 학생 : [들리지]. DAVID 마란은 : 다시 말해봐? 학생 : 포함 및 다운로드 과거 기능 [INAUDIBLE]. DAVID 마란 : 좋은. 포함, 내가 말을하지 않습니다 다운로드 만의 말을하자 기능을 포함하는 명 과거에 작성했습니다. 그리고 그 기능이 구현 내 컴퓨터 어딘가에. 누군가가 파일을 작성 년 전, 해당 파일 CS50의 내부 어딘가에 기기 또는 내 하드 드라이브에 더 일반적으로. 그리고이 라인은 본질적으로 말하고있다 해당 파일, 표준 I / O 점을 찾아 이동 시간 및 사본과 내용을 붙여 넣 여기 내 파일의 상단에 그래서 할 필요가 없습니다 자신이 수동으로 작업을 수행. 그리고 내부의 수분이 조각 중 우리가 주장하는 파일은 어떤 기능입니까? 어떤 기능이 우리가 선언 된 말 했는가 또는 표준 I / O 도트 H 언급 가장 가능성이? PRINTF, 오른쪽? 우리는 printf의에 작성하지 않은 월요일, 그냥 존재했다. 많은 알라나 그냥 온 등 무대와 그녀 최대 단지 존재하고 그리는 방법을 알고 화면에 뭔가, 그래서 printf의 여러 해 동안 존재한다. 그리고 이것은 우리가 그것에 접근하는 방법입니다. 우리가 여기에 이​​동하는 경우 자, 주요 유사한 우리는 있었다 퍼즐 조각에 말했다 녹색 깃발을 클릭 할 때 호출 스크래치의 세계에서. 그것은 단지 일종의 인간의 기본 이름 를 나타내는 것입니다 결정 프로그램에 엔트리 포인트를 기본. 프로그래밍 코드의 청크 그는 먼저 실행됩니다. 한편 이러한 중괄호는 가지 만곡 형상 등에 이러한 황색 스크래치 조각 많이. 그들은 가지 전체를 캡슐화 함께 지침의 무리입니다. 그래서 그냥 가지를 함께 결합 일부 관련 기능을 제공합니다. 물론의 printf 함수입니다 우리가 그랬던 것처럼, 화면을 인쇄합니다. 무엇 이러한 괄호는 어떻습니까? 당신은 어떻게 했더라도 define-- 것 결코 전에 프로그램,하지만 단지 기반 지금은 증가 희망의 직관, 무엇을 괄호 우리를 여기서 뭐하는거야? 아니면 무엇을 주변 있습니까? 그래? 학생 : 그들은 무슨 말을하는지 당신은 printf와 함께 인쇄 될 것입니다. DAVID 마란 : 네, 무슨 말을하는지 당신은 printf와 함께 인쇄 될 것입니다. 또는보다 일반적으로, 그것들은 함수에 입력을 주변. 그래서 당신은 거의 생각할 수 그 괄호 금속처럼 인 것으로 이 클립 보드에 클립. 그것은 그것의 무엇, 무엇을 잡고있어 인자를 제공하는데 사용될 예정 기능에에 이 경우는 printf의 호출된다. 그래서 일반적으로 거의 모든 시간 우리는 함수를 호출 우리는 한 쌍의 괄호를 볼 것입니다. 어쩌면에서 뭔가, 지금처럼, 그것은 어쩌면 아무것도. 당신은 넣을 것 인하지만 그건 입력 또는 소위 인수 함수에. 여기에 하나의 인수입니다. 나는 모든 것을 강조했습니다 따옴표 사이, 알고 보니 때문에 이라는 언어 당신을 대표 할 C, string-- 그 단어 나 문구입니다 심지어 paragraph--는 그럴 필요 큰 따옴표로 둘러싸고 있습니다. 단일하지 따옴표, 큰 따옴표. 그리고 그게 내가 여기에 무슨 짓을했는지 정확히. 한편 펑키을 거기에 이 끝을 향해 상징입니다. 백 슬래시 명. 우리는 표현하는 것이 무엇을 말 했는가? 그래? 학생 : 새로운 라인. DAVID 마란 : 새로운 라인입니다. 오른쪽, 당신은하지 않습니다 일반적으로 때 Enter 키를 누르십시오 당신은 프로그램을 원하는 새로운 라인을 뱉어합니다. 오히려 당신은 명시 적으로 말해 이 인정 하듯이 비밀의 조각 구문, 백 슬래시 N, 그 당신은 새로운 라인이 가고 싶어. 마지막으로 세미콜론. 우리가 정말 얘기하지 않았다 이것에 대해 너무 많이, 그리고 지금까지이 일부의 베인 것 첫 번째 문제에 대한 당신의 존재의 방금 실현하기 위해 실패했을 때, 설정 당신은 바보 같은 뭔가를 잊어 버린 세미콜론으로. 그리고 일반적으로 퍼팅 그 문제가 해결됩니다. 그러나이 일을 무엇을 우리를 위해, 당신은 말할 것? 학생 : [들리지]. DAVID 마란 : 죄송합니다? 학생 : [들리지]. DAVID 마란은 : 문을 마무리. 이 기간에 같은 종류의이야 영어 문장의 끝 이 언어 반면, C는이 문을 종료합니다. 프로그래밍의 명령 당신이 말하고 싶은 코드 난이 끝났어요. 이제 여기 만 하나 알 수 있습니다. 그래서 당신의 싶지 않아 퍼팅 세미콜론의 습관 모든 닫힌 괄호 후. 예를 들어 아무도 없다 다음은 무효로하고, 우리는거야 미래에 다시 올 무효 어떤 수단. 그러나이 경우에서의 printf는 함수 또는 문이 사용되고, 그래서 우리는 갖고 싶어 그것의 끝에서 터미널. 그리고 의도적으로 C. 그리고 따기 해요 솔직히 C, C + +와 같은 언어의 많은 자바, 자바 스크립트, 어떤 수의 다른 언어는이 많다 문법 사항의 일종. 당신이 새로운있어 확실히 경우 그 프로그래밍은 진정으로 당신을 여행을 할 수 있습니다. 그리고 당신은, 표시합니다 내 즉, 여러분 중 일부는 것 이 경험이 근무 시간이나 늦은에서 밤에 일부 페이지 설정, 작업 빌어 먹을 프로그램은 컴파일되지 않습니다, 당신이 가지고 실행되지 않습니다 뭐가 문제인지 아무 생각 없다, 완전히 보인다 당신에게 논리적으로 정확한. 당신은 잊었 나죠 타격과 같이 몇 줄의 끝에 세미콜론. 그러나이 당신이있어 물건의 종류의 즉시보고 배우 겠어요. 그리고 실제로 이러한 사항은 다음과 같습니다 CA의 및 TF의의가 있다고 종류의 볼 훈련 훨씬 더 빨리 당신보다. 그리고 이것은 당신이 그 말 만입니다 문제에 다이빙, 특히 일을 설정 이 물건에 의해 좌절하지 않습니다. 당신은 일종의 적응 한 번 세계에, 당신 사물을 시작 당신은 그렇지 않습니다 이 첫째 주 첫 눈에 참조하십시오. 그래서 소스 코드는 같은 것입니다. 우리는로 전달하려면 소위 컴파일러. 그리고 컴파일러로 우리는 출력을 제공했다 오브젝트 코드라고도 0과 소위. 그러나 거기에서, 그것은 우리에게 무엇을 주는가? 글쎄 그것은 우리에게 이러한 패턴을 제공합니다. 그리고 다시 컴퓨터, 내부 인텔, 이러한 패턴을 이해 0과 1의. 그리고 때때로 패턴 실제 진수를 나타냅니다 우리는 가끔, 지난 주에 본대로 그것은 문자를 나타냅니다 처럼 우리는 가끔, 지난 주보고 이것은, 명령어를 나타내고 화면에 뭔가를 인쇄 등을들 수있다. instance--에 대한 그래서 printf의 오히려, 저를 돌려 보자. 우리는 당연하게 복용 한 그 0과 1이 있는지 이 명령의 확인에 의해 생산. 그러나 메이크업은 컴파일러가 아닙니다. 점은 중간에 확인되지 않습니다 즉 0과 1을 생산합니다. 오히려 확인은 매우 편리하다 그 목적은 인생에서 명명 된 프로그램 알아 내기 위해 본질적으로 어떻게 프로그램을 컴파일합니다. 그리고 우리는 이러한에서 사용 첫째 주 그것 때문에 단지 우리에게 문제를 많이 절약 할 수 있습니다. 그러나 만드는 것은 정말 당신이 인사 컴파일 할 때하고, 우리가 지난 시간에 말했듯이, 그것의이다 하드 드라이브에보고 또는 현재 폴더에 대한 파일은 분명히 무엇이라고? 에서는 hello.c, 오른쪽? 즉, 규칙의 단지 종류입니다. 그것은 임의이지만 그 일이있는 방법입니다. 당신이 이름을 지정하는 경우, 확인 아직 존재하지 않는 프로그램을, 이 소스 코드를 찾을 것 파일에 기본적으로 작성한 hello.c를 의미한다. 그리고 그것을 발견하면, 좋아. 그것은 해당 소스를 변환 할 것 당신을위한 오브젝트 코드로 코드입니다. 하지만 부딪혔을 때마다 입력 안녕하세요하게 실행 한 후, 마지막으로 시간을보고 기억이 있으신 지요 상당히 긴 암호 같은 순서 다른 흰색 글자와 화면에 문자? 우물은 실제 명령은했다 실제 컴파일러, 그 실행했다. 그래서 실제 컴파일러는 우리의 대부분을 사용할 것 학기는 그 소리라고 무언가이다. 여러분 중 일부는 사용하고 있습니다 비주얼 스튜디오 전에, 또는 GCC, 또는 다른 컴파일러의 수. 우리는 그 소리를 사용합니다. 그리고 그 소리는 우리가 실제로 변환 할 수 있습니다 해당 소스 코드는 개체 코드입니다. 이 사실은 무엇입니까 실제로 말인가요? 그럼 날 중 하나에 가자 마지막에서 내 폴더입니다. CS50 기기의 내부입니다. 그리고 내가 가서이를 만들 수 같은 파일은 표준 I / O 도트 시간을 포함한다. 이자 주요 무효. 그리고 우리는 미래로 돌아올거야 어떤 수단과 어떤 무효 수단을 int로. 하지만 지금은 그렇게 하자구요 안녕하세요 세계 백 슬래시 N, 단지 우리가 보드에 그랬던 것처럼. 내가 작성한 hello.c라는이 파일을 저장하자. 그리고 지금은이를 컴파일하려면 나를 감옥에 ... 실행을 확대 할 일은 ... 안녕하세요 입력합니다. 그리고 이것은 다시이었다 바로 그 암호 같은 라인입니다. 하지만 지금은 적어도 하나의 단어 아마 당신을 밖으로 이동합니다. 연타는 우리가 전에 봤던 라인입니다. 이제 다른 물건을 많이 솔직히 거기 우리는 오늘에 우리의 손을 흔들 거 야. 그러나 몇 가지 하위 집합을있다, 여기에 몇 자 관심있는 그. 하지만 가서 이렇게거야. 내가 먼저 실행에 갈거야 안녕하세요, 그냥 증명하기 위해 이 월요일이었다로이 것을 노력하고 있습니다. 하지만 지금은 프로그램을 삭제하는거야. 그리고 우리가 가진 것과 마찬가지로이 짧은 이름 마지막으로, 제거 명령 뭔가 입력, 삭제, RM이다. 일부를받을거야 상당히 애매한 질문. 하드 당신이 할 수 있다고 생각합니다 심지어 하드이 질문은 이해한다. 하지만 그냥 일반 파일의 안녕을 제거 수단은 인사 삭제 하시겠습니까. 그리고 가서 y 만 입력 할 수 있습니다 예, 입력, 지금은 사라 졌어요. 이 지금 무엇을 의미하는지, 내 화면을 취소하는 경우, 대신 즉 hello--을 확인하고 나는이 잘 받고 있어요 무엇을 알고있다. 나는 컴파일러 나 자신을 실행하는거야. 나는 약간의 프로그램이 필요하지 않습니다 내 파일의 이름을 무엇으로 파악. 나는 내가 작성한 hello.c를 썼다 이 호출 무엇인지, 나는 명확하게 입력 할 수있어. 그래서 내가 먼저 갈거야 하고 Enter를 HELLO.C 연타 않습니다. 작동하는 것 같다. 그리고 추가적인 출력은 없습니다, 그 소리는 컴파일러이기 때문이다. 그것은 변환 일이지 0과 1에 대한 소스 코드입니다. 그래서 지금은 도트을 할 경우 흠, 안녕하세요 입력 슬래시. 새로운 오류 메시지가 오늘. 그래서 배쉬는 단지 이름입니다 우리가 사용하는 프롬프트를 깜박. 즉, 총 지나친 단순화이다, 하지만 지금 즉, 즉 전부 이 프롬프트가 나타나면입니다. 그리고 그것이 우리에게 고함 왜이다. 해당 파일 또는 디렉터리가 없습니다 좀 더 간단합니다. 그러나 반드시 그 오브젝트 코드를했다. 하지만 그 댓가가 있다는 것입니다 나는 명령을 입력하는 경우 이것의 내용을 나열 무슨입니다 디렉토리? 목록 LS. 잔뜩 여기에있다, 그 중 일부는 어플라이언스와 함께 내 바탕 화면 폴더, 다운로드 등 폴더, 보관 용 폴더 및 모든 그 물건. 하지만이 재미있다 작성한 Hello.c은 어느 나는 gedit에서와 좀 전에 만들었습니다. 그리고 이상한거야 여기에서 이름을 찾고, 우리는하지 않았다 아마도 것을 모든 마지막으로 보여? 오른쪽의 a.out? 그래서 그 시절에, 그것을 그냥 결정했습니다 때 는 프로그램을 컴파일 처음 당신은 이름을 지정하지 파일의,의는 전화 할 수 있습니다. 그리고의 a.out은이이었다 의미 컴파일러의 출력. 그래서 프로그램에 대한 끔찍한 이름입니다. 하지만 그 논리에 의해, 대한 슬래시 점 현재 디렉토리, a.out의 슬래시 사실 거기에 의미한다 안녕하세요 세계 프로그램 내. 이제 조금, 너무 운동을 따뜻하게. 나는이 이름을 바꾸려면 파일, 당신 밝혀 다른 하나의 이름에서 파일을 이동합니다. 따라서 측정 값의 a.out하고 I 호출 할 수 있습니다 안녕하세요 입력합니다. 그래서 이것은 리눅스 명령입니다. DOS,이 년 전했다 윈도우 터미널 창을 가지고 보이는 일종의 이, 리눅스, 맥 등 컴퓨터는이 프롬프트가 나타나면있다. 심지어 우리의 대부분의 아마 생각 거의 지금, 그것을 사용하지 않습니다. 하지만 내가 한하는 것은 실행 이름이 MV입니다 프로그램, 나는 그것을 제공 한 두 개의 인수, 말하자면. 두 개의 입력. a.out의 원래 이름입니다. 안녕하세요 새로운 이름입니다. 지금 도트 슬래시 할 경우에 따라서 안녕하세요, 입력이 존재합니다. 그리고 도트 슬래시의 a.out을 할 경우, 당신은 무엇을 내가 볼 수 기대합니까? 강타, 해당 파일 또는 디렉터리. 난 그냥 이름을 변경 때문입니다. 그래서이 익숙해 조금 걸립니다. 그러나 문제는 세트 1 사양은 진정 것 를 통해 손을 잡아 이 minutae의 일부. 이 때문에 완전한 지적 산만 더 재미있는에서 손에서 아이디어, 어떤 실제로 만들 수 있습니다 코드 무엇인가. 그러나의 하나 수정 해 보자 지금이 프로그램. 내가 뭔가를했던 지난 시간을 기억 이 같은 printf의 이름을 명시. 그리고 실제로 우리는 이런 짓을 저기 큰 화면에서. 그리고 나서 문자열의가 도착했다 열린 괄호 닫고 괄호를있는 getString. 그리고 괄호는 속기 괄호 표기. 그래서, getString에 어떤 인수를합니까? 어떤 입력하지 아니하지만, 괄호가 필요합니다, 그 때문에 어떻게 구분한다 함수 호출. 그래서 내가 가서하려고거야 지금이 프로그램에 대한 컴파일러를 실행합니다. 연타의에서는 hello.c, I 때문에 지금은 이름을 변경하지 않았다. 그리고 오류의 무리를 얻었다. 여기서 축소 보자. 나는 다시 스크롤하면, 같은 나는 마지막으로 말했다 첫째, 동일한 에러 나는 지난 시간을 가지고있다. 에서는 hello.c의 6 행에 내가 가진 선언되지 않은 식별자 문자열 나는 표준을 의미 했습니까? 나는하지 않았다. 어떤 실수 때문에이 나는이 만들어 프로그램, 당신은 마지막에서 기억을 되살려? 그래, 우리는 필요 훈련 바퀴 소위 우리는 몇 주 동안 사용하고 있다고. 그러나 나는 또한 그 지정해야 어딘가에 기기의 내부 우리가 쓴 파일입니다 전 몇 년. 이 중 내부 기능은 같은 분명히있는 getString. 그래서 지금 내가 여기 다시 아래로 이동하면, 확대 및 다시 실행 연타의에서는 hello.c. 젠장, 또 다른 오류가 발생했습니다. 그러나 우리는 전에이 일을 보지 못했어요. 이 사람은 조금 더있어 알아낼 비전. 그러나 이것은, 화면에 의도적 인 우리는이 이야기를하고 싶었 기 때문에. 때 당신은 것처럼에서는 hello.c를 컴파일 이전부터 제안 그림 당신은 단지 것을 변환하고 0과 1에 대한 소스 코드입니다. 지금 CS50 직원은 몇 년 전에 쓴 CS50.h하고 해당 파일, CS50.c. 그리고 몇 년 전 우리는, 해당 파일을 컴파일 파일에 일어나는 CS50.o. 호출 할 수 아니면이 이름을 바꿀 수 있습니다 몇 가지 다른 것들. 하지만 그 간단한 방법 의 그것에 대해 생각. 그래서 우리는 CS50 년대를 컴파일 0과 1로 라이브러리입니다. 그러나 아무 곳에 나 지정되지 않은 내 제로 결합 할 것인지 내 헬로 세상과 사람 0과 1로 프로그램 그 CS50 직원은 몇 년 만든 전 하나의 완전한 프로그램으로. 모든 I 서면으로 지정한 그 소리에서는 hello.c가 작성한 hello.c를 컴파일합니다. 나는 그 소리에 말 안했습니다 0과 1의 링크 작성한 CS50 직원 몇 시간 전에 당신을 위해. 그래서 쉽게 수정이다, , 링크 CS50을 리터 대시. 그리고 우리는 다시 보자 긴 또 다시 전. 하지만 지금은 알 불만이 없었다. 그래서 지금은 도트 슬래시를 실행하는 경우 안녕하세요, 지금은 일하고있어. 그 오해의 소지가 조금 비록 나는 어떤 파일을 다시 단지 때문에? a.out의. 그러니 그냥 잠시 돌려 보자. 우리가 컴파일 된 프로그램 코드의 세 가지 라인이있다. 나는 안녕하세요 세계를 실행, 안녕하세요 순간 전, 당신의 이름을 명시 보지 않았다. 나는를 실행하기 때문에 그건 프로그램의 이전 버전. 하지만 실제로 도트 슬래시의 a.out을 실행 경우 , 입력 이름을 명시, 롭, 안녕하세요, 세계. 흠. 즉, 버그 가지입니다. 아마 오른쪽 롭 말을 의미? 그래서 수정 코드 여기거야. 학생 : [들리지]. DAVID 마란 : 그렇지. 그래서 난 그냥 최종 미세 조정을 할 필요가 그래서 자리를 전달 걸, 빈에서 채우기처럼, 처럼 우리는 잠시 전했다. 그러나 퍼센트의는 지금 그 공백을 채우십시오. 그래서 마지막의 마지막 하나를 공개하자 세부 마술은 없습니다 있도록. 내가 먼저 갈거야 하고여보세요 제거. 내가 먼저 갈거야 와 a.out의 제거. 그래서 지금은 프로그램이 없다 내 소스 코드입니다. 그리고 난을 실행하는거야 약간 긴 명령을 연타 오 안녕하세요에서는 hello.c 대시 LCS50 대시. 지금이 일종의 가서 시작입니다 한 귀에 아마도 다른 아웃. 그러나 단지이 무엇을하고 있는지 떨어져 애타게. 연타는 컴파일러, 대시 LCS50입니다 의도적으로 매우 끝 문장에서 무엇을합니까? CS50 라이브러리에 대한 링크. 0을 잡고 직원이 만든 것들 내 자신의 프로그램에 그들을 넣어서 다니는 것들. 그래서 손에서 마지막 질문은, 대시는 아마 안녕하세요 오 무엇인가 당신이 한 번도 경우에도 일 전에이 구문을 본 적있어? 입니다 프로그램을 출력하기 기본 a.out의 이름하지. 오히려 그것은 인사라는 것. 그래서 지금 더의 a.out이 없습니다. 해당 파일 또는 디렉토리가, 내가 명시 적으로 말했다 때문에 그래서, 안녕하세요이 프로그램을 호출 지금은 그런 이름을 입력 할 수 있습니다 하고 행동해야합니다. 지금 솔직히 소년 있다는 것입니다 가지고 재미없는 이 모든 것을 기억해야 약간의 특징점, 오른쪽? 그럼 가서하자 다시 안녕하세요 없애. 그리고의 지금의 세계로 돌아가 보자 어떤이 안녕을 말할 충분하다. 하지만 그 마법이다 그 당신을 위해 수행되었는지 확인 그 지루한이다 그 당신을 위해 일을합니다. 그리고 우리의 프로그램과 같은과 문제는 더 복잡해 진정한 친구가 될 것입니다합니다. 너무 오래하지 때문에 지금부터 우리는거야 작성된 프로그램을 가지고 없는 하나의 파일, 그러나 여러 파일과, 그리고 과정을 자동화 할 수 있도록 함께 우리를 위해이 모든 것을 컴파일. 이제 인쇄 할 수 있습니다. printf와이 파일의 내부 표준 I / O 도트 시간, 우리가 전에 본 적이 있는지, 하지만보다는 printf 더있다. 백 슬래시, n은있다, 또한 거기 다른 이스케이프 시퀀스의 무리입니다. 그리고 이스케이프 시퀀스 단지입니다 무언가를 말하는 멋진 방법 즉, 백 슬래시로 시작 하지 슬래시, 백 슬래시, 어떤 특별한 일을한다. 그리고 우리는 이들의 대부분에 연연하지 않습니다 하지만 왜 따옴표가 백 슬래시, 당신은 생각 하는가? 왜 이런 이상한 순서가있다 자, 백 슬래시 큰 따옴표, 그 이유는 유용 할 수 있습니다? 학생 : [들리지]. DAVID 마란 : 그렇지, 맞지? 우리 안녕하세요 세계 프로그램으로 다시 생각 우리는 지금 매우 몇 번 본 적이 있는지, 때마다 우리는 헬로 세상을 봤어요 프로그램은 우리 안에 큰 따옴표를 했어 어느 안녕하세요 쉼표 세계 백 슬래시 명. 하지만 자신에게 생각, 무엇을 실제로 경우 인용 부호를 프린트하려면? 첫 번째 본능이있을 수 있습니다 난 몰라 여기하더라도 - 할 수 있습니다 이유를 알고, 우리는 약간 수동적이 될 수 있습니다 공격적, 안녕하세요 친구. 우리는 그런 짓을 할 수 있습니다. 하지만 왜 지금은 문제가있다? 옆으로 곱슬 따옴표를 무시 기조 연설은 자동으로 우리를했다. 왜 문제인가? 정확히. 우리는 4 인용 부호처럼 가지고 있기 때문에. 그럼 첫 번째 아마 두번째로 간다 어쩌면 네 번째 세번째로 간다 나, 난 모르겠어요 의미 도 될 것 컴퓨터입니다. 다시 컴퓨터, 컴파일러 다시, 상당히 바보입니다. 그들은 단지 무엇을 할 것 당신은 어떻게 그들에게 말해. 그리고 당신은 명확하지 않으면 그들은 아마 오류가 발생하는 것입니다. 당신이하는 방법으로 같은 모호하지 않은 경우 땅콩 버터와 젤리 샌드위치를​​ 만들 이상한 일이 도착 할 수도 있습니다. 이 같은 생각이다. 지금은 거기에 말을 충분 다른 이스케이프 시퀀스, 그러나 우리는 오래 전에에게 오는 것입니다. 기본적으로 이러한 탈출 시퀀스 뭔가를 나타냅니다 당신은 할 수 없을 수도 너무 쉽게 키보드에서, 컴퓨터를 혼동하지 않고. 이제 그 사이에 우리는이 printf와의 자리. 도 쓸 수 비율 D, 퍼센트 내가 거의 모든 경우에, 어떤 유형의 데이터에 대한 자리 표시 자입니다? 어떤 타입의 값이? 진수. 그래서 실제로 우리는 시작합니다 이 때문에 %의 난을 사용하여 정수와 같은, 조금 더 간단. 퍼센트 나. 발생하는 정수는 소수가 될 수 있습니다. 퍼센트의 우리는 이미했다 문자열에 대한 자리 표시 자. 어느 단지 단어가, 문구, 단락, 에세이, 뭐든간에. 이것은 일련의 야 어떤 길이의 문자. 그리고 우리는 오래 전에 볼 수 있습니다 이 다른 사람의 일부. 그러나 %의 C는 단일 문자입니다. 백분율 f를위한 것입니다 부동 소수점 숫자, 보유 실수 등에 그것에 소수점, 어떤 물론 아닌 정수이다. 그리고 전체있다 뿐만 아니라 다른 사람의 무리. 한편 C, 그리고 많은 언어에서, 우리는 서로 다른 데이터 유형을 가지고있다. 다른 유형의 당신이 경우 유리 그릇. 그릇 나는 지난 시간을 사용 , 탁구 공에 있었다 그러나 우리는 또한 다른를 저장할 수 있습니다 문자 및 문자열과 같은 값 및 컨테이너에 정수 변수처럼, C는이있다. 숯불 데이터의 유형입니다 변수의 타입, 하는 당신은 문자를 저장할 수 있습니다. 주식 비율은 변수의 유형입니다 하는 당신은 실수를 저장할 수 있습니다. 이자는 정수 코스이다. 그리고 오히려 무지 긴 긴 이름 당신은 본질적으로 저장할 수있는 곳이다 심지어와 정말로 긴 번호, 이상의 숫자 다음 일반적인 INT의 힘 저장소. 그러나 우리는 오래 전에 다시 그에게 올 것이다. CS50 도트 시간에 그 사이에 다른 헤더 파일 우리는 몇 가지를 본 적이 있는지 사용 시간, 거기에 두 개의 다른 데이터 유형이 일반적으로 C에 존재하지 않습니다. 하나는 문자열이며, 우리는에서 볼 수 있습니다 몇 주 어떤 문자열 정말 후드 아래에 있습니다. 그리고 하나는 부울입니다. 그리고 부울 변수는 그 특정 값에 걸릴 수 있습니다. 그리고 지난 주에 따라 스크래치의 설명, 그리고 더 최근의 C, 당신은 무엇을 추측했다 에 사용할 수있는 두 가지 값은 bool 형식의 일부 컨테이너? 그렇기도하고 아니기도합니다. 하나는 제로. 참 또는 거짓. 그리고 실제로는 경향이 마지막이다 프로그래밍에서 기존이어야합니다 언어, 말 뭔가 참 또는 거짓 등을들 수있다. 한편 CS50 라이브러리 제공 기능의 무리와 함께 직원이 당신을 위해 쓴, 단지 문자열을 받고 외에. 우리는 사전 기능에 썼다 사용자의 정수를 얻을 수 있습니다, 단일 문자를 얻을, 그 float를 얻을 소수점을 단지 숫자입니다. 정말 오래 오래 가져 오기 사용자로부터 큰 값입니다. 그래서 우리는 이것을 본 적이 에서 getString 형태의 작업입니다. 그러나 이러한 기능을 통해 곧 쓸 수 있습니다 사용자의 입력을받을 프로그램. 한편이 고려 프로그램 및 고려 우리는 지금 추가하는 시작하는 방법 새로운 구조와는합니다. 빠른 회오리 바람 투어 그리고, 우리는 볼 것이다 에서 일부 작성해 자신 수동으로 프로그램. 우리가 원하는 이제부터는 경우 조건을 구현 이처럼 않을거야 좋은 작은 예쁜 퍼즐 조각입니다. 그것은 좀 더 난해한 보는 것입니다. 하지만이 표준입니다 C의 조건의 구조 단어, 두 경우 괄호 안에있는의 어떤 종류가 될 것입니다 부울 식의. 이제 슬래시 슬래시 중간에, 여긴 순간 종류의 등의 의사 코드 자리. 코드하지만 더 제대로, 어떤 라인 C에서 슬래시 슬래시로 시작하는 코멘트입니다. 그것은 당신이 수도 스티커 메모처럼 종이에 인쇄 에세이를 입었다. 그것은 자신에게 메모입니다. 그것은 어떤 기능이 없습니다 프로그램에 미치는 영향. 그것은 알림의 종류, 그것은 당신의 자신이다 무슨 일이 일어나고 있는지에 관해서는 설명서를 참조하십시오. 그래서 지금 이렇게 자리의 일종이다 무엇 이건 안에 뭐가 그 중괄호 결국 뭔가를 할 것입니다. 그 사이에 당신은 두 개의 포크가 도로, 다른 경우이 같은 구성. 당신이 경우, ELSEIF, 다른 수 있습니다. 지금은 특히 주목할 필요가 당신은 주변에 인터넷 검색을 봤는데 경우 중 자원에 대한 온라인 호기심하거나받은 경우 과정의 중 하나 C에 추천 도서, 당신은 인간이 많이 있습니다 것을 볼 수 있습니다 방법에 대한 서로 다른 환경 설정 코드에서 자신의 의견을 자유롭게 표현할 수 있습니다. 어떤 사람들은을 넣어주고 중괄호는 여기했던있다. 어떤 사람들은 곱슬을 넣어주고 여기까지 예를 들어 중괄호. 어떤 사람들은 else들을 넣어주고 여기에 다음이 여기까지. 한 가지 방법으로 번호가있다 코드를 작성하고, 그들 중 누구도 그 자체로 옳다. 몇 가지가 비록 꽤 잘못이. 이 경우 그러나 그게 ...있다 궁극적으로는 매우 종교적인 논쟁. 사실, 대부분의 성가신 중 하나로 컴퓨터 과학에 대한 것들 얼마나 자기 의견을 고집하다 컴퓨터 과학자가 될 수 있습니다. 그리고 당신은 시간이 지남에 찾을 것이다 심지어는 개인 환경 설정을 개발할 코드가 보일 것입니다 방법으로. 그냥 작동하지, 그냥 출력을 만들 수 없습니다, 하지만 심미적으로 보일 것입니다 방법에 대해 설명합니다. 그래서 우리가 할 것입니다 것은 도움을 드릴 것입니다 길을 향해, ​​지금은 적어도, 표준 CS50 스타일, 적어도 균일하고 읽기 쉬운 일을 유지합니다. 이들에하지만 더 오래 전에 구분. C에서 부울 식, 당신이 경우 이 조건에 해당하는 경우 말하고 싶었다 이 다른 조건은 사실, 당신은 단어를 쓰지 않는다 그리고, 당신은 영어에서와 같은. 대신 앰퍼샌드 앰퍼샌드를 사용, 이유로 우리는 되돌아 올 것입니다. 당신이하고 싶은 말 또는 두를 사용하는 경우 수직 바, US 키보드에있는 일반적으로 입력 이상 백 슬래시로 키 옆에. 그리고 이것은 단지이 상태 경우 의미 또는이 다른 조건은 이렇게 사실이다. 한편 거기에이 미친 것은, 어떤 당신은 기회있을거야 잠시 한 번 사용할 수 있습니다. 그러나 그것은 단지 대안이다 자신을 표현하는 방법입니다. 이, 지금,하자 그것은 단지, 규정 표현의 또 다른 펑키 방법 ELSEIF, ELSEIF, ELSEIF, ELSEIF, 경우. 그것은 단지 측면에서 형식이야 경우 당신을 문자 그대로의 그 값을 열거 당신은 확인 할 수 있습니다. 한편 반복합니다. 우리는의 비교를 보았다 루프와 스크래치. 그리고 나는 나의 손을 흔들거야 이러한 것들의 각각 무엇을 의미하는지. 그러나주의 그 루프 것이다 매우 자주에 대한 키워드로 시작합니다. 아니면 키워드하면서 시작됩니다. 아니면 키워드와 함께 시작됩니다 수행 및 키워드하면서 끝납니다. 그러나 우리는 사이트를 둘러 보는 이상과 같은 것들이다. 여기에 C에서 일반적입니다, 당신은 어떻게 수도 변수를 선언하고 그 값을 제공합니다. C에서 그것은 충분하지 않습니다, 같은 스크래치에서, 방금 나에게 변수라는 것을 제공 말한다. 당신은 C에게 얘기를 해, 그리고 이야기 컴파일러,보다 구체적으로는, 어떤 타입의 값을 할 유리 그릇에 넣고 싶다. 그 정수는? 그렇다면, 당신은에있는 문자 그대로 다음 INT와 말 변수의 이름 다음 세미​​콜론. 대신 문자열을 원하고 호출하면 내가 오늘 여기 내 코드를했던 것처럼이야, 당신은 문자열의 세미콜론을 말할 것입니다. 당신은 그것을 값을 제공 할되면 당신은 다음 등호를 사용할 수 있습니다, 그렇지 않으면로 알려진 할당 연산자. 어떻게 각을 통지 코드 줄의 그것의 끝에서 세미콜론이 있습니다. 그러나 솔직히이 단지 조금 못생긴 보인다. 나는 컴퓨터에 말할 수없는 이유는, 줄 저 변수를 0으로 초기화한다. 즉, 나에게 빈 유리 그릇을 제공합니다. 당신이 할 수있다. 그리고 심판의 한 당신은 것입니다 호출 시간이 지남에 따라 문체로 확인해야 , 다음과 같은 코드를 작성하거나 할됩니다 당신은 가지를 정리하고 감동 할 하나 같이 두 줄을 써서 명. 그리고 이것은 간주됩니다 일반적으로 더 우아한 방법 의 문체로 코드를 작성합니다. 기능은 우리가 볼 물론이야. 그들은이 형식을 취할 것입니다. 함수의 이름 일부 괄호, 그리고 아마 일부 내부 물건. 또는 당신은의 사용을 볼 수 있습니다 다양한 기능 측 이런 식으로 뭔가 같은 측면에 의해. 이제 접선으로 수행 이 농담은 이제 의미가? [웃음] 그것은 재미 말은,하지만하지 않습니다 아마도 조금 더 감각을하지 않습니다. 그래서 지금의이로 가자 잠시 CS50 장비. 그리고 내가 여기에 티저를 열 수 있습니다. 이유 그리고 실제로 일 이케아 카탈로그를 도입 하고 사진을 깜박이 아이폰의 비트 전 실제로 함께 넥타이를하는 것이 었습니다 사실 불과 몇 년 전, 2007 년, 이 코드 조각이었다 , 한 발표 최초의 일 구현 소프트웨어 조각 그 탈옥이라고 있잖아. 그 익숙하지 않은, 탈옥을 위해 전화 나 아이폰 같은 기본적으로내는 의미 일을하는 방법을 그것으로 그 회사 사람은 의도하지 않은했다. 당신은 특정 설치하려는처럼 앱 스토어에없는 소프트웨어, 휴대 전화를 탈옥하는 당신은 더 같은 일을한다. 그러나 재미는 무엇이었다 2007--과가있었습니다 다른 버전의 수십 이런 것들을 그 이후, 모든 종류의 languages​​--는 점이다의 iUnlock라고 여기이 프로그램, 실제로 C로 그리고 기록 된 I 이 소스 코드를 뽑아 그냥 가지의 당신 일부를 표시합니다 구조와의 유사성 우리는 지금까지 논의했습니다. 이제 방법이 더 복잡 여기있다 우리가 수업 시간에 이미 본 것보다. 내가 여기에 조금을 스크롤 할 수 있습니다. 그러나 물론 우리가 몇 가지주의 이거 갖다주의 계속 물건 그러나 여기이 선을 발견, 표준 I / O 도트 (H)를 포함하여. 그리고, 텐데요 라인 (24) 제발 - 표준 I / O를 알 도트 시간 및 기타의 전체 무리 파일이 분명히 다른 사람 작성했습니다. 그리고 우리는을 통해 아래로 이동하면, 이 작은 임의로 내가 작성하는 방법을 모르는주의 사항 자신 반드시 아직이 모든 것을, 하지만 경우가 있습니다. 그래서 분명히이 지점이 있습니다. 그리고 조금 아래로 이동하면, 또 다른는 경우가 있습니다. 내가 스크롤하면 생각 선 (100)의 주위에 나는 보았다. 그래서 나는 꽤 확실하지 않다 방법이 아직 작동 그러나 이것은에 무슨 루프입니다 저 배의 어떤 수를 반복 할 수 있습니다. 그리고 나는 모든 이동하면, 바닥 방법 나는이 있다는 것을 참조 여기 다운 기능이라고 주, 그리고 몇 가지 추가 크레딧 당신의 독서의 즐거움을 위해. 그래서 이것은 단지 말하길하는 것입니다 우리는 놓을 게요 과정의 소스 중이 온라인 코드는 다음의 경우에도 일부를 했죠 - 당연한 우리가 걸릴 장치, 하루의 끝에서 당신은 여전히​​있어 우리가했습니다 이러한 기본 구조를 사용하여 지금까지 이미 도입되었다. 즉, 하나의 충분하다. 좋아, 이제하자 실제로 무언가를 구축 할 수 있습니다. 의 같은 것을 넘어 가자 에서는 hello.c, 그리고,이 열 여기서이 프로그램을 작성 할 수 있습니다. 내가 먼저 갈거야 및 , adder.c와라는 프로그램을 작성 인생에서 누구의 목적은 될 것입니다 내 첫 번째 슈퍼 간단한 계산기 등 그것은 단지 숫자의 몇 가지를 추가합니다. 그 어려운 때문이 문제이지만 인해 나 이제 넥타이를 할 수 있습니다 함께 몇 가지. 그래서 내가 가서 포함거야 표준 I / O 도트 h와 CS50 도트 H. 나는 주요 int 무효 말거야. 다시 앞으로 우리는 다시 올 것이다 이 컨텍스트 및 무효 수단에 넣습니다. 그리고 지금 나는 뭔가 말하려고 해요 printf와 같이 나에게 정수를 제공합니다. 그리고 지금 내 두 번째 줄에, 나는 나 자신이 그러한 표현 어떻게 나는 변수를 선언 할 것인지 즉, int를 저장하는거야? 내가 원하는 경우 말 그대로 내가 무엇을 입력합니까 int를 저장하는 변수를 생성 당신은 말을? INT의는 getInt와 같습니다. 물론, 그래서 작품을. 그리고 그냥 일관성 코드는거야 온라인 참조 나 변경에게하자 이 X에 불과하기 때문에 X 일반적인 변수 이름입니다 적어도 대수에서 사용할 수 있습니다. 이제 내가 가서 다시는 printf 할 수 있습니다. 나에게 또 다른 정수를 지정합니다. 지금은 종류에 갈거야 의 패턴에서 배우고, 나는 INT y를 getInt는 것을 얻는 말할거야. 그리고 우리는 사용하지 않을 것 getInt는 전하지만, 단지 getString에가는 문자​​열을 가져옵니다처럼, 하비에르 관객처럼, 유사의 getInt는 않습니다 프롬프트를 깜박 시작합니다. 효과적으로 사용자를 기다리는 에 입력하여, 그것의 정수를 제공합니다 하고 Enter를 타격. 이제 마지막으로 내가 할거야 이것은 합을 printf와 집게 리아 나를 멋진 아니예요을하자 %의 i와 %의 나는 존재한다 내가 포인트 백 슬래시 N 느낌표. 그리고 당신은 내가 갈거야 어떻게 생각하십니까 추가 입력으로 이제 넣어 는 printf? 무슨 말을해야하지 않으 말 그대로 맺다 X를 인용. 나는 X의 클래스에 원하는 다음, 지금의 공상하자 과 그냥 가정하자 우리는 우리가 원하는 것을 할 수 있습니다. 다음에 어떤 말을하고 싶어? X 플러스 y를 입력합니다. 그리고 실제로 그 작동합니다. 그것은 최소한의 프로그래밍 언어있어 기본적인 산술 연산을 이해한다, 그래서이 사실 작업을해야한다. 그래서 내가 가서해야합니까하자 내 흑백 창에서 가산기 여기에 아래로 입력합니다. 크립 틱 라인하지만 오류 메시지가 너무 좋네요. 도트 나에게 정수, 한 줄, 가산을 슬래시. 나에게 또 다른 정수 2를 제공합니다. 1과 2의 합은 3이다. 좋아요, 아주 사소한 프로그램하지만, 무슨 짓이야? 그것은 나를 기능을 사용할 수있어 여기에 전화 여기에 또 다른 함수를 호출 getInt는, 두 번 호출 는 printf 호출 셋째, 후 다음 자리 표시자를 사용. 그래서 조금 더 마지막으로보다 정교한. 하지만 난에 무엇을하려는 경우 조금 환상적? 내가 가서 지금은이 작업을 수행 할 수 있습니다. 내가 가서 만들어 보자 새 파일 조건이 제로라고. 그리고 저장거야 클래스를 위해서 약간의 시간 과 그냥 붙여 넣기 출발점으로 번호. 그리고 지금은 그냥 넣어 갈거야 중간에 여기에 뭔가 새로운 것을. 그래서 printf와 나는 정수를 부탁합니다. 그리고이 모든 코드를 사용할 수 있습니다 코스의 웹 사이트에, 당신은 모두를 입력 할 필요가 없습니다 클래스의 경우는 오히려하지 않는 게 좋을. INT는 지금은 갈거야 대신 X와 Y의 사용, 나는 인 N을 사용하는거야 아마도 가장 흔한 이름 컴퓨터 프로그램의 정수. 그리고 지금은 작업을 수행 할 여기에 약간의 판단. 나는 N 있는지거야 다음, 0보다 큰 나는 printf-- 으악 말할거야 printf-- 당신은 양수 고른 느낌표 백 슬래시 명. 그를 닫습니다. 다른 난의 printf를 인쇄하려고 해요 당신은 음수를 들었다. 이제 당신은 제게 소리하기 전에, 의이 프로그램을 실행 할 수 있습니다. 날 여기로 가자. 그리고 프로그램을 컴파일 어떻게 조건 대시 공이라고? 조건 대시 공을 확인합니다. 바보 같은 이름의 종류,하지만 ... 젠장. OK, 좋은 교육 순간입니다. 그 이유는 졌나? 내가 실수로이 파일을 호출 했습니까? 당신은 가지 추론 할 수있다 여기까지 탭. 그래서 것이 나쁘지 않아 I 이했다,이 때문에 여러분 중 일부에 아마 발생합니다. 그래서 실수라는 이름의 내 소스 코드의 상태 0. 그러나 규칙에 따라 내 소스 코드해야 조건 공 대시 C라는 파일에있을 또는 어떤 점 다. 그래서 나는이 문제를 해결 할 수 있습니다. 다만 마이크로 소프트 워드처럼 내가 올라갈 수 있습니다 다른 이름으로 저장 및 상태를 0 점 C를 할 수 있습니다. 지금 만 난 깔끔합니다 가서 제거 할 것 내 이전 버전이었다 조건 0. 그리고 이제 어떻게해야합니까하자 상태 0 입력합니다. OK, 좋은 것 같습니다. 상태 0 입력합니다. 나는, 50, 정수 좀주세요 당신은 양수를 들었다. 이제 어떻게 부정적인 약 50? 당신은 음수를 들었다. 지금 은요, 공. 확신 공은 부정적인 아니다. 그래서이 논리 버그 가지입니다. 나는이 문제를 해결하려면 어떻게해야하나요? n은 0보다 작 그렇지 않으면, 다른 이렇게 우리는 여기에 세 가지 방법으로 지점을 가지고 있습니다 printf의 당신은 공을 골랐다. 그래서 지금 내가이 프로그램을 다시 실행하는 경우 프로그램을 컴파일 후에 다시 메이크업으로, 지금 다시 실행 상태 0, 여기 무엇을 볼 수 있습니다 공은 나에게 그 출력을 제공합니다. 어디 우리는이와 함께가는거야? 글쎄 그것은 시력을 잃는 것은 매우 간단합니다 나무를위한 숲의. 그래서 우리가 결론을 내릴 수 이 2와 2 분의 동영상과 함께 그 궁극적 비트입니다 구글 광고, 하지만 그건 정말 유언 어떤 경우에도 이러한 기본 구성을 사용하여 우리가 궁극적으로 한 번 할 수있는 블록 우리는 프로그래밍의 비트 우리의 벨트 아래에 정통한. [음악 연주] SAROO BRIERLEY (성우) : 그것은 26 년 전 나는 다섯 차례에 막이었다. 우리는 기차역에 도착하고 우리는 함께 우리 기차를 탔다. 내 동생은 내가거야 말했다 여기있어, 내가 다시 올 것이다. 그리고 난 그냥 잘 알다시피, 생각 나뿐만 아니라 단지 잠을 잘 수 있습니다 그냥 마음을 깨울 것입니다. 그리고 난 다음에 일어 났을 때 하루 전체 캐리지 가출 기차 비어, 유령 기차는 내가 어디 있는지 알고하지 않습니다 데려가. 나는 호주에게 채택되었다 호주 가족. 그리고 엄마가 장식했다 내 인도의지도 방 이는 그녀가 내 침대 옆에 옆에 넣어. 난 아침에 일어 났는데 그지도를보고, 따라서 그것은 일종의 살아있는 기억을 유지했다. 사람들은 당신이있어, 말을 바늘을 찾기 위해 노력 건초 더미, Saroo에서 당신은 그것을 찾을 수 없을 것입니다. 나는 장소를 번쩍 텐데 제가 이동하는 데 사용, 내 가족의 깜박 에 직면 해있다. 어머니의 이미지가 있었다 그녀의 다리를 넘어 앉아, 단지 그녀의 외침을보고. 인생은 너무 어렵다. 그건 내 보물이었다. 그리고 구글지도를 찾고 있었어요 실현뿐만 아니라 구글 어스있다. 당신을 확대 할 수있는 세계에서, 나는이 모든 생각을 가지고 시작 어떤 가능성 이 날 위해 할 수있다. 나는, 당신은 알고있다, 당신은했습니다 자신에게 말했다 모든 사진 기억을 가지고 당신이에서있어 랜드 마크, 그리고 당신은 도시가 어떻게 생겼는지. 이 응용 될 수 있다는 당신은 다시 당신의 방법을 찾을 수 있습니다. 나는 잘 나는 놓을 게요 생각 캘커타 역에 점, 및 반경 라인, 당신은 알고 당신이 이 지역 주변 검색해야합니다. 나는 일종의을 가로 질러왔다 이 기차 트랙. 그리고 난 다음 시작하고, 나는 역에 들어온 동일한 이미지를 반영 그건 내 기억에 있었다. 모든 일치. 난 그냥 네 생각 I 내가 어디로 가는지 알고있다. 난 그냥하자거야 나는 내 머리에있는지도 저를지도하고 다시 내 고향에 데려다. 나는 문앞에왔다 내가 태어난 집. 그리고 주위 약 15 걸었다 모퉁이 미터, 세 여성이 서 있었다 외부, 서로 인접. 그리고 가운데 하나는 앞으로 강화하고, 난 그냥이 당신의 어머니, 생각했다. 그녀는 앞으로 온, 그녀가 나를 포옹 그리고 우리는 약 5 분 동안 있었다. 그녀는 내 손을 잡고 그녀는 집에 데려 갔다 및 전화, 그녀를에있어 내 여동생과 내 동생을 울렸다 그 말을, 당신이 알고있는, 동생은있다 모든 갑자기 유령처럼 나타났다. 그리고 가족을 다시 만나게되었다. 모든 것은 다 좋아 나는 나의 어머니를 도왔다 그녀는 멀리 노예 할 필요가 없습니다. 그녀는 나머지를 살 수있다 평화 그녀의 인생. 그것은 건초 더미에서 바늘이었다 하지만 바늘이 있었다. 모든있다. 모든 우리는 세계에있는 버튼을 탭에 있습니다. 그러나 당신이 의지를 가지고 있는데 그것을 원하는에 결정. [음악 연주] DAVID 마란 : 멋지고 달콤한 증명서 당신이 할 수있는 것만으로 지금 기술으로한다. 우리는 다음 주에 볼 수 있습니다.