[音楽再生] [MUSIC - ROSSINI、 "RANZ DES WILLIAM FROMオアは "TELL] [MUSIC - ENGLISH BEAT、 "MARCH "スイベルヘッド] [拍手と歓声] DAVIDマラン:だからこれはCS50です。 私の名前はデビッド·マランです。 そして、あなたの73%は経験がありません コンピュータサイエンスと、 あなたが考えるかもしれないものに反して。 だから、今日我々は崩すだろうと思った 親しみの欠如ではなく、 あなたのそれらのために、あなたの感覚を与える より多くの快適さと、その方向 この学期に行くことができます。 だから、これで始めてみましょう。 私は実際に内部のだか見当がつかない コンピュータ、にもかかわらず、あなたのように、私 毎日それを使用しています。 しかし、それはボックスのいくつかのようなものだし、そこ そこにいない多くの入力。 最低限、何が、そこ? おそらく電源コード。 そして実際、この1成分と、 電気は、我々は可能なように見える このごろかなりやって。 しかし、一日の終わりに、我々 物事を表現する必要があります 我々は気にしている。 我々は、情報を表現しなければならない いくつかの形態であってもよい。 そして、あなたは少なくとも漠然とおそらくだ バイナリでアイデアに精通または どうやら他のビット、コンピュータ 0と1に減少。 しかし、我々は受け入れることができますし、少なくとも それに光のビットを置く? だから私は、これらのほとんどを持っている ここでデスクランプ。 私はここにコンセントがあります。 そして、私はその内部を提案するつもりです 私のコンピュータのうち少なくとも一つである これらの事を、できる何か に切り替えられるのかオフ。 この場合、それは、実際に電気スタンドの しかし低いレベルで、それは何かです トランジスタと呼ばれる。 しかし、我々の世界では、そのように、デスクランプです 私が先に行くと、これをプラグインするつもりだ ここに私の電気に。 そして私は、この単純なを使用していると主張 単純なデバイス、この単純なスイッチ、I 情報を表すことができます。 例えば、今、私は 何を表していない、右? 私は、または0と呼ぶことに何の代表だ falseの場合、何かの反対 実際に存在している。 しかし、私は単純に、このスイッチをオンにした場合 今私は1を表してきました。 だからのこの非常にシンプルな作品を使用して メモリには、可能ならば、私は表すことができます 情報。 さて、残念ながら、私のコンピュータ すべてのその多くを行うことはできません。 それだけで2つの値を表すことができます 全世界で - 0または1である。 しかし、今では、明白な解決策は何です 私たちはコンピュータの拡大をしたい場合 メモリなどを表す より単に0と1? まあ、のは別のようなビットをつかむことができます。 もう一つ、別のスイッチをつかみましょう トランジスタは、しかし、あなたがしたいのですが それについて考えてみよう。 私が先に行くと、これを接続しましょう 私のコンピュータに同様。 そして、私はそのことで、今では、請求するつもりです もう少し電気を使用し、 上のこれらのスイッチの多くを回して オフ、私はより多くのそのような表現でき 情報。 だから、今、これは1です。 私は今、表現したい場合 2、私はこれを行うことができます。 しかし、一般的に、慣習、私たちが説明するように 結局見、私はこれを行う必要があります。 これが0になるように、これは1である。 これは2になります。 と驚くことではないが、これは3になります。 したがって、この方法では、まだ、缶 我々はさらにカウントアップ? 私は第3ビット、第三のスイッチを取得する場合 私ができるようになりました最大数は何ですか 0からカウントアップ? 右、私は0から始めている場合、7だから? 私はこのライトをオンにした場合なのでと 実際にこの3番目と最後を差し込む ここに私のコンセントに光、 その後、私は表現する能力を持っている ここに2つの値のいずれか2つの値 ここで、ここでは2つの値 - そして私は2倍2倍を表すことができます 2、または8つの可能な値を示します。 そして、私はそう、0で会計を起動した場合 つまり、0、1、2、3、4、5、6、7だ。 このバイナリはそう。 それは本当にそのように簡単です。 そして、私は、これは実際にあると主張したい ほとんどのに非常に精通して この部屋にいる全員。 私が先に行くと、開いてみよう ここで少しテキストエディタ。 そして、あなたは小学校から思い出すかもしれません 我々は数百のようなものを持っていたこと 場所、十の位、 と、ものの場所。 そして、あなたは、いくつかの小数を持っていた場合ことを思い出して ランダムな何かのような数、 123のように、あなたは本質だろう 形でそれを書き出す これらの3つの列。 そして、なぜが1、2、3、何 我々は123のように知っていますか? まあ、左端の列では、我々は持っている 1 100と2つの10秒なので、120だ、 プラス3 1S、123だそう。 私達がちょうど照らさいる今、この世界 とまったく同じです あなたは何年に慣れてきた、 今除く、当社のコラム 10のべき乗ではありません。 彼らはただ、2のべき乗です。 だからこの、一の位だのに対し これは、2の場所になるだろう 四つんばいの場所になるだろう。 そして、私は唯一の最も単純なを使用していますので、 物事をオンにするメカニズムの オンとオフ - 電気が流れている または電気が流れていない - 私は全く同じ表現力を持っていない 9 0〜として範囲。 我々は、単純な、それはスーパー維持するつもり コンピュータのこの世界である。 私は0または1を持っている - オンまたはオフ、偽または真。 そして私は今表現しているもの 1、1、1であるため、これらの各々 光が照射される。 まあ、それはそう、私は一つの4プラスワン2を提供します それは6だ、プラスワン1、それは7です。 そしてエルゴは3のこのシーケンスを行います ビットは7番を表す。 あなたの内側に、このすべての時間は、そう コンピュータは、任意の数されている トランジスタ、任意のビット数。 しかし、一日の終わりに、我々 情報を表すことができます 単にそのように。 さて、残念ながら、我々だけ数えた 最大7これまでCS50で、しかし うまくいけば、我々は少しを行うことができます それよりも優れています。 そして、確かに我々はできる。 我々はただ人間として仮定 任意に私たちが行っていることを決めた 図1及び図2、図3、同様の番号を関連付ける 特定の文字と4、5、6、7、 アルファベット。 そして歴史的な理由のために、私はするつもりです やや恣意開始、しかし、私はよ 、人間を言おうと、私たちに行っている という、世界的に、標準として決定 65は数字文字Aを表す 66 B.ドット、ドット、ドットを表します。 90は、文字Zを表します 我々は実際にいくつかを置く場合と、のは仮定してみましょう それに思って、我々が出てくる可能性が 感嘆符のための番号で 確かに、小文字、および、 他の人々が私たちのためにあることを行っている。 だから今私たちができるとのビットを持っていた 数字を表し、数字と 私たちは、文字を表し、持つことができます 文字は、我々は今、作曲を開始することができます メールや印字文字 画面上で。 だから、私はできれば、私は招待してみましょう 8勇敢なボランティア - だけでなく、表示されて気にしない人 カメラではなく、インターネット上で - ここまで来て、8などを表す むしろ、これらの3つのよりビット。 それでは、どの一つ、二つはどうでしょうか? どのように約3? 光の中でどのように約4 青、端に5? こっちに誰かについて? 前に六、前に7、 同様に前にと8、。 だから私はちょうどので、準備してくることが起こっ 紙の伝票の全体の束を持つ。 紙のこれらの作品の番号です それが何を表すかの列 君たちは、表現するために行っている。 だからあなたは次のようになります - あなたの名前は何ですか? 学生:アンナリア。 DAVIDマラン:アンナリア、あなた 128S列になります。 あなたですか? 学生:クリス。 DAVIDマラン:意志クリス 64S列である。 あなたですか? 学生:ダン。 DAVIDマラン:ダン意志 32S列である。 学生:Pramit。 DAVIDマラン:Pramit意志 16Sの列である。 学生:リリアン。 DAVIDマラン:リリアンは8Sになります。 学生:ジル。 DAVIDマラン:意志ジル 4Sの列である。 学生:メアリー。 DAVIDマラン:メアリーは2秒とし、だろうか? 学生:デビッド。 DAVIDマラン:デビッド意志 1S列である。 君たちは少し手順ができるのであれば 前方の誰もが見ることができる。 あなたは何人が見ていないのですその上で 裏紙のこれらのスリップです 約は少しチートシート どちらかにこれらの8ビットを指示 手を上げたりしない 彼らの手を上げる。 彼らの手が上がった場合、彼らがしている 1を表す。 彼らの手がダウンしたままの場合、彼らがしている 0を表す。 一方、我々観客は次のようになります これに基づいて、把握すること マッピングは、どのような3文字の単語これら 人々が綴るしようとしています。 だから瞬間に、あなたはするつもりだ のバックオフ最初の行を読み あなたのチートシート、あなたはどちらだ あなたの手を上げるか上げないつもり。 あなたが1であれば、あなたは、もし上げる あなたが0なら、あなたはそこに立っている ぎこちなく、ちょうどそのように。 行く。 何番、何よりもまず、 これらの人は代表している? 66。 66、右? 我々は、64Sの列に1を持っている 2S列の1。 私に66を与えることを、表示されるように だからBを代表する 君たちには綴られている - OK、それは十分です。 B. だから今のは上に移動してみましょう 私たちの第二の手紙。 行く。 ここでは数学で最速は誰だ? 79だから。 再び、我々はすべての列を追加した場合 その1は、単に、現在のところ、そこ 我々は最も単純に前に行ったように 7の例を、私たちは今 番号79を得る。 我々のマッピングに従ってある 手紙O.だから私たちはほとんどがしています。 B、​​O.そして最後には、行く。 彼らは今、何を表していますか? 少ないコンセンサス。 それはちょうど絶対雑音だ。 はい、それは実際に87にあります。 グッド。 私たちが今までそのバックアップをマッピングするのであれば - みましょう 、私たちのASCIIチャートを呼び出し開始 用米国標準コード 情報交換。 それは私たちに手紙を与える - "ボー"が、 "弓"ではありませんそして、それは完璧だ 君たちは弓にするために、キュー 背面にと頭。 どうもありがとうございました。 [拍手] DAVIDマラン:あなたはそれらを保つことができます。 実際にかかわらず、誰でしょう デスクランプのように、また? [聴衆からHOOT] DAVIDマラン:デスクランプ? [笑い] DAVIDマラン:本当に? 皆のためのデスクランプ? わかりました。 だから、非常に最も単純で始まる 原則は、我々は今数えてきただけでなく、 0〜7までのすべての方法を、我々はしました もっと投げているだけと仮定 ビット以上のライト以上のトランジスタ この問題で、我々はできる どんどん大きく数字を表し、 エルゴ、どんどん大きく範囲 英語のようなアルファベット、。 そして、ちょうどのは、今日のために信仰に任せる それ同様に我々が開始することができ グラフィックとビデオといずれかを表す 我々はしているしている他のメディアの数 今日はおなじみ。 これはCS50なるよう、そしてこのクラスの あなたの横には、再び、非常に多い 少しとして持っているクラスメート あなたとしての経験。 と私は非常にこのためだけに言及 しばしば、、最近の一つとして含む 新入生は、イベントへの助言とで 昨年春の年生助言 イベント、私たちはしばしば、学生が否認聞く ときによく、CSテーブルまで来て、 私はこれを取ることについて考えてきた イントロクラスが、私は本当に分からない コンピュータ人。 または、しかし確実に誰も 私より多くを知っている。 そして、私は最大のフォントでこれを置く 可能であれば、このメッセージを伝えるために、その それは、実際にはそうではない。 そして、あなたが迷っている場合には、すべきである 私は、実際には、ここにいる? だけでなく、このコースのがあることを認識 コンピュータへのタイトルの紹介 科学、コンピュータ入門です 科学I.だから確かにありま​​す 第二のような導入。 だから、実際にはわからない 間違った場所である。 そして今日のために私が持っている目標の一つである このような懸念にあなたを和らげるために 持っているかもしれませんが、またペイントする のための店で何の絵 学生が少なく、より快適 同様にこのコースである。 しかし、最初に、配布資料の1つに一言 あなたはその中で、今日持っている よくある質問(FAQ)の数です。 これは、しばらくの間私たちのビジョンであって 今、新しいグレーディングを導入する このコースにオプション - すなわち、/ UNSATを土 哲学的に、私にとって、それは、はるかです はるかに重要なこと このクラスの生徒はと係 材料によって挑戦する 材料、およびはるかに少ない程度、遠い心配 実際のスコアの力学 学期の時、文字の等級 最後、しかし真に受け入れる もちろん、その材料。 そして実際に、これは、より一般的には、感じる それら大いに盛り上がりましょ何のために、へ しかし、挑戦し、報わ感じる 失敗を恐れずに。 そして実際、これはあまりにも繰り返しです これと他の入門でテーマ あなたが持っている他の分野のコース、 それがに来るこの恐怖 で自分のつま先を置く 不慣れな海域。 私自身、1995年に戻って、 新入生だった。 私は非常に多くのことに集中していた ここで知事コンセントレータ。 そして、まだ私はいつも少しで育ったい コンピュータ科学への関心の。 私はいつも気になっていた。 しかし、当時、でも、私は、この恐怖を持っていた でもそんなに、CS50に足を踏ん 私も買い物しなかったように、 それ年生。 そして、私は足を置く唯一の理由 ドア年生の年だったので、私 合格/不合格それを取ることを許された。 しかし、私が得ることが必要とPASS / FAIL 約束をするための神経まで 当時の教授Kernehanと、 紙のこの大きなシートをもたらす、と尋ねる 彼の署名のために彼と彼の 探索する許可 これらの不慣れな海域。 それは近年に役立っていない CS50でこれを行うときに、時々 渡すこと/失敗しても、同様でしょう あなたのクラスメート数十または数百 で、禁じる神、来なければならない このフォームでサンダースの前、その いくつかの心の中に、できないことを表します 私は実行するために、あえて言う あなたのピアのレベルです。 どちらばかげているが、私は思います その考え方はあり。 そして、この文化の中でそこに行ったことがないだ SAT / UNSAT、または合格/不合格以上の 一般的には、このコースで、 または本当にこのキャンパスで。 今年我々はそれを変えたそう。 私は恍惚の半分になります このクラス以上が終了しました CS50を取ってUP / UNSATが座っていた。 今年の時点では、それは素晴らしいだろう ほとんどの人がある場合。 その後、おそらく、我々はうまくいく ハーバード大学の手紙の等級に より一般的に大学。 しかし、今のところ、我々は我々の中でこれをやる 独自の球、と私は心からでしょう あなたがそれらのFAQを確認することをお勧めし、 あなたが合うように質問をするので、 うまくいけば、私とは違って、意志はなく、かなり ときに同じ恐怖因子を持っている おそらく何模索 不慣れな場所。 だからCS50は何ですか? それは入門です コンピュータの知的企業 科学とプログラミングの芸術。 しかし、それは実際に何を意味するのでしょうか? さて、これまで、我々は非常に簡潔に話した 情報を表すに関する。 しかし、我々は実際にしたいとします それで何かを行うには。 我々は、の概念を導入する必要 我々はアルゴリズムを何と呼ぶことにします。 アルゴリズムは、手順、プロセスであり、 ための命令のセット 何かをする。 アルゴリズムは何かすることができます 超簡単。 例えば、どのといくつかの例 あなたが慣れているかもしれませんがこれです ここでの事。 だからここにこの本は、ますますです 日付が、むかしむかし、それ 名前の全体の多くを含んでいた と電話番号。 そして実際、私が見つけるしたい場合 この電話帳の誰か - 、マイク·スミスという名前の誰かを言う - 私は、任意の数のマイク·スミスを見つけることができる かなり簡単な方法。 私は初めに始めることができたと ではないそこに、1ページに進みます。 そこに2ページ、ではない。 3ページ。 そのアルゴリズムであることです プロセス、正しいですか? だから正しい、右か? 私はそれを行うための馬鹿のようなものだ そのやり方が、結局私は意志 姓Sを見つけ、そして、できればマイク そのセクションにある、と私はなります 私のアルゴリズムで行わ。 しかし、確かに、それは直感的ではありません。 これでほとんどすべての合理的な人間 部屋には行ってないだろうと。 あなただったらどうしましたか? あなたは、まっすぐ行っていると思います 真ん中に、右? 大体真ん中へ。 そして、あなたが気付いて、ああ、これらはさんです だからマイク·スミス、スミスという姓、 その後には、明らかに、ではない ブックの左半分。 彼が向かってでなければなりません Sが右にあります。 そして、この時点で、私たちのほとんどけれども 現実にはこれをしない、我々はできる 文字通り半分でこの問題を引き裂く。 [応援と拍手] DAVIDマラン:ありがとうございます。 [応援と拍手] DAVIDマラン:あなたは文字通り、これを引き裂くことができる 半分に問題、と私を残し、 文字通り、ビッグなどの問題の半分。 この電話帳はあったのであれば - そしてそれ おそらくだった - 約1,000ページ、今 それが唯一の500だ。 私は再びこれを行うと私が気付いた場合は、ああ、 いまいましい、私は行き過ぎ、私は、TSにいるよ セクションでは、私は同じようにすることができます - 比喩的または文字通り - 電話帳をリッピングする - それは実際にあった はるかに簡単にその時間。 私は文字通り電話帳をリッピングすることができます 半分に、と今では私を残し しない1,000ではなく、500 - 250ページ。 そして、私は125に行くと、その半分ができ、 その半分、及びその半分、 最後に私がが残ることでしょうまで ただ1つのページ。 [笑い] DAVIDマラン:だ 私は失敗する部分。 一つのページ上 マイクはうまくいけばです。 今、それらの異なるアルゴリズムができます ソートの評価またはで評価 さまざまな方法。 最初のものは、右、非常に直線的でしたか? ページをめくる、マイクを探してください。 ページをめくる、マイクを探してください。 これは非常に直線的です。 電話で1つ以上のページがあったら 本は、それはおそらく私を取るために起こっている 時間の1以上の第二の、もう一つのユニット、 しかし、我々は時間を計算している。 だから私はこのように、この線を引くかもしれません ここでは、それによっての大きさ 問題は、左から右に増加 - 電話帳が大きくに小さくなる - そして時間は、増加するために起こっている 縦軸は、大きな 電話帳です。 だから、nは、単に一般的な変数である コンピュータ科学者が表現するために使用 いくつかの値が、いくつかの数値。 だからnは直線的に増加する予定です。 電話帳のサイズを2倍に、それはだ 二倍くらいに私を連れて行く 時間は、ほとんどの場合、マイクを探してください。 今、私はスマートだったかもしれない これについては、右? 私はすぐに飽きてきた。 補数によってこれを行っている可能性があります。 そのように2ページ、4、 その後、その後6、8。 そして、私はそれを飛んで開始することができます について僅少なリスクではあるが、少し速く シュートマイクが、その曲線ではありません すべて異なることになるだろう。 それはまだまっすぐになるだろう ラインが​​、わずかに速い。 しかし、私は何をしましたか? 私は実際に何かをした 根本的に良い。 私は対数呼ぶよ何を達成 時間nのログ、それによってこの緑 ラインは、はるかに、大いに関係している それが少ないストレートエッジ。 それは一種のように、むしろ、それは示唆している 、今までので、徐々に無限に近づく 私は実際には1,000ページを取ることができる 電話帳には、その大きさを倍増 来年は - なぜならたくさん仮定 より多くの人々が町に移動。 だから今、私は2,000ページを得たが、どのようにしました もっと多くの手順は、そのスマートです アルゴリズムは取るつもり? ただ1。 私は強力なものだ、という意味。 我々は来年4,000ページに行けば、 私を取るために起こっていること わずか2以上のステップ。 だから、どんどん大きく投げることができる 私に問題はなく、ウェブとは違って 大きく、より大きな問題を投げ グーグルとのFacebooksで毎日 世界、そしてそうではありません そのような大したこと。 私に多くの思想とケアを置くので、 解決すると私のアルゴリズム 効率的な問題。 そして実際、それは、のいずれかになります このコースの目標。 あなたは意志、道に沿って、 プログラムする方法を学びます。 あなたは、プログラムする方法を学びます 任意の数の言語。 しかし、一日の終わりには、もちろんです 問題を解決し得ることについて 問題を解決するために、より良い - と、のように このような場合、問題解決 より効率的に。 さてこれまで、我々はこれをやった かなり直感的。 かなり何かをご紹介しましょう ジェネリック医薬品は、擬似コードと呼ばれる。 だから我々は最終的に、買ってあげる このコースで、へ 様々なプログラミング言語。 しかし、今日我々は英語のようでそれをやる 構文、言うのあなただけの種類 あなたは意味しますが、あなたは今までそうしているもの 簡潔、あなたは心配しないでください 文法と完全な文。 あなたはただ自分自身として表現 簡潔に可能な限り。 だから擬似コードは、英語のようです 表す構文 プログラミング言語。 そして、その端部に向かって、私はあることを提案してみましょう 我々は今、我々は単にプロセスをモデル化 少し何かを数えるの説明 異なって、この時間は取って 生産この5分間のビデオを見て TEDで私たちの友人によってその 、擬似コードが何であるかを定義するものを定義しています アルゴリズム的思考であり、さらに あなたが表示しようとしている例かかわら は、それ自体の中に、超簡単、それはださ 私たちの精神を与えることを開始する予定 へとモデル、語彙、 はるかに複雑で、多くのこと 非常に迅速なアルゴリズム。 [ビデオの再生を開始] [音楽再生] ナレーター:アルゴリズムとは何ですか? コンピュータサイエンスでは、アルゴリズムは いくつかを解決するための命令のセット ステップバイステップの問題。 一般的には、アルゴリズムが実行されます コンピュータによって、しかし、我々人間が持っている アルゴリズムだけでなく、。 たとえば、どのように行くだろう 数を数える約 部屋の中で人々の? あなたが私に似ている場合さて、あなたはおそらく思い 人それぞれの点、一つの 時間、0からカウントアップ。 1、2、3、4、などが挙げられる。 まあ、それはアルゴリズムだ。 実際に、それを表現してみましょう もう少し正式に擬似コードで - 似ている英語のような構文 プログラミング言語。 Nを等しい0。 部屋の中で一人一人の場合は、設定 N Nプラス1に等しい。 この擬似コードを解釈する方法は? まあ、ライン1は、いわば、宣言 変数はNと呼ばれる初期化 0にその値。 これはただの先頭にあることを意味 我々のアルゴリズムは、あるもの 我々は0の値を持ってカウントしている。 結局のところ、我々は、カウントを開始する前に、 我々はまだ何もカウントされていない。 この変数Nを呼び出す ただの慣習です。 私はそれをほとんどの何と呼ばれるかもしれない。 今、2行マーク解除の開始 ループ、意志一連の手順 時代のいくつかの数を繰り返す。 だから私たちの例では、ステップは、我々は取っている 部屋の中で人々にカウントしている。 2行の下に、ライン3です これは、正確にどのように説明して 我々は数える程度行くよ。 インデントは、それがあることを意味 繰り返されますライン3。 だから擬似コードは何をされて言っている そのそれぞれについて、0から始まる後 部屋の中で人は、我々はよ 1でNを増加させる。 今、このアルゴリズムは正しいでしょうか? まあ、ちょっとその上の強打をしましょう​​。 がある場合、それは動作しません 部屋に二人? 見てみましょう。 ライン1、我々はnを0に初期化します。 これら二人のそれぞれについて、 我々はその後1ずつNをインクリメント。 だから〜第旅行で ループは、我々は、0から1のNを更新する。 その同じ介して第旅行で ループは、我々は1から2にNを更新します。 ので、このアルゴリズムの終わりまでに、nが2であり、 その実際の数と一致 部屋の中で人々。 これまでのところ、とても良い。 どのコーナーケースについて、しかし? 0人がいると仮定し 部屋の中で - 私のほかに、 誰がカウントをやっている。 ライン1、我々はnを0に初期化します。 この時間は、しかし、行3にはありません がないので、すべてで実行 部屋の中で人。 そしてNが一致する、0のまま 部屋の中で人々の数。 かなりシンプルな、右? しかし数える人ずつ いや、あまりにも、かなり非効率的です? 確かに私たちはより良い行うことができます。 なぜ、一度に2人を数えていない? 代わりに1、2、3、4、5、6、7、カウント 8など、なぜカウントしない、2、 4,6,8など? それも、より速く聞こえる そしてそれは確かです。 この最適化を表現してみましょう 擬似コードである。 Nを等しい0。 部屋にいる人々のペアごとに、 セットN Nプラス2に等しい。 かなり簡単な変更は、右? 人々に1を数えるのではなく、 同時に、我々は代わりにカウント それら2時。 このアルゴリズムは、このように二回だ 前回と同じくらい速い。 しかし、それは正しいでしょうか? 見てみましょう。 がある場合、それは動作しません 部屋に二人? ライン1、我々はnを0に初期化します。 人々のその一組のために、 我々は、2つでNをインクリメント。 ので、このアルゴリズムの終わりまでに、Nは2であり、 その実際の数と一致 部屋の中で人々。 があることを次の仮定 部屋に0人。 ライン1、我々はnを0に初期化します。 前と同じように、行3は実行されません 全然、任意のペアが存在しないため 部屋の中の人。 そしてNは、確かに、0のまま の数と一致 部屋の中で人々。 しかし3何があるかどうか 部屋にいる人? これはどのようにアルゴリズムの運賃でしょうか? 見てみましょう。 ライン1、我々はnを0に初期化します。 それらの人々のペアのために、 我々はその後、2でNをインクリメント。 しかし、その後、何? 人々の別の完全なペアがありません 部屋の中で、その行ない2つの全く もはや適用されます。 ので、このアルゴリズムの終わりまでに、N 、まだ2であるが正しくありません。 確かに、このアルゴリズムがあると言われている バギー、それが間違いを持っ​​ているので。 いくつかの新しい擬似コードで救済することができます。 ペアごとにnを0に等しい 部屋の中の人。 セットN Nプラス2に等しい。 一人が対になっていないままの場合、 セットN Nプラス1に等しい。 この特定の問題を解決するために、我々はだ 4行目では、導入された、 otherwiseブランチとして知られている状態、 1がある場合にのみ実行されている 人たちができなかったこと 別のとペア。 そして今では、1または3があるかどうか の人々の、または任意の奇数 部屋、このアルゴリズム 今、それらをカウントします。 我々はより良​​い行うことができますか? さて、私たちは3秒、あるいは4S以降で数えることができる 5Sと10Sが、それを超えて、それはだ 少しを取得するつもり ポイントに難しい。 一日の終わりには、実行されたかどうか コンピュータや人間が、 アルゴリズムは単なるセットです との命令の その問題を解決するために。 これらはわずか3だった。 あなたはどのような問題を解決するだろう アルゴリズムで? [ENDビデオ再生] DAVIDマラン:唯一の時間です 私は漫画の形で表示されます。 しかし、ここでその話はオフのまま、 今、どのように我々はもっとうまくできるでしょうか? スリーと四つんばい、我々が主張する、我々は数えることができる 人々ははるかに高速ですが、我々はできる それよりも根本的に良いのですか? そして、私は我々ができる賭け。 我々は我々自身のビットを導入する場合 ここでは擬似コード、私が提案するつもりです 我々はこのような行を達成できること。 我々は、人々をカウントするつもりはない 一つ、二つ、三つ、四つ。 我々は、2に行くつもりはない 4つ、6つ、8。 我々は根本的に良いやろうとしている 問題を再考することで、この中で 場合、他の方法で活用する リソースを十分に活用されていない。 一瞬で、私は、あなたが許していただければ幸いです とに立っでおのユーモア 私たちがしようとしているその時点で場所、 あなたの内に取るためにあなたのそれぞれを尋ねる 心のナンバー1。 その後、ますますするつもり 時間が経過するようにぎこちなく、見つける 組み合わせて、立っている他の誰か 一緒にあなたの番号 それらを追加することによって。 あなたの一つは、それから座ってレースをしようとしている ダウンまず、およびその他の人 繰り返しになるだろう。 そう換言すれば、全ての播種によって 番号1のあなた、その後 2S、それら2Sにそれら1Sを組み合わせる 4Sに、みんなと一緒にますます 我々はの終わりに、、はず座っ このアルゴリズムは、一つのローンを持っている しかし、十分な速さに座るなかった魂 誰が全体の観客数を持っている 彼または彼女の心である。 あなたは、させたい場合それでは、先に行くと - ステップ1 - 場所で立ち上がる。 と実行します。 [群衆はせせらぎ] DAVIDマラン:あなたは知っていますか ローレンはどこですか? 729? [群衆はせせらぎ] DAVIDマラン:すべての権利? [群衆はせせらぎ] DAVIDマラン:すべての権利、私たちはすべき 終わりに近づいてさ。 我々はまだここに立って1仲間を参照してください。 他に誰がペアリングする必要があります? 君たちはオフペアにする場合。 トップアップする誰か。 なぜ私はここに手を貸していない。 まだ非常に少数の人々のために 立って、どのような数字はあなたを行う あなたの心にありますか? 学生:78。 DAVIDマラン:78プラス - ここに誰を下に立っている? 学生:39。 DAVIDマラン:プラス39。 Plusは他に誰がまだ立っている? 81? [OK]を、他に誰? 別の81? うわー。 そして、後ろに何ですか? 学生:49。 DAVIDマラン:49、プラス? 学生:98。 DAVIDマラン:98プラス? それは他の誰かか? 12? よくできました。 [笑い] DAVIDマラン:ああ、112 - ああ。 仕事グッド! [笑い] [拍手] DAVIDマラン:他の誰 まだ立っている? 申し訳ありませんが? 学生:99。 DAVIDマラン:99。 誰にもまだ立って? そして、ここの学生の総数 によると、実際には - あなたは、数を持っていますか? ああ、人々の実際の数 そのアカウントによると部屋、 教育フェローはやっていた で皆の途中に、729だった。 だからハーバード大学の学生の部屋いっぱいのうち、 誰が、自分自身を数えた 答えは637です。 [笑い] DAVIDマラン:だから近い。 しかし、まだ。 OK、そうすることは、教育だ 瞬間、右? これは今、我々はバグとして記述したものです。 どこかで道に沿って、我々はいくつかのをやった 間違った、または誰か算術、座っ または左に、または何かが間違っていた。 しかし、それは大丈夫です。 でもまだあるため、我々 かなり親しま。 そして、私たちは間違ったに着いたと主張していると思います 速く私が持っているだろうより多くのことを答え 私より線形アプローチを使用。 それでは、私たちが実際にいることを手に入れたと仮定しましょう 正しいが、何について、今考える 毎回起こっに対し、私た 独自のナイーブ指すアルゴリズム。 一つ、二つ、三つ。 729や637の人は確かに存在する場合 ここで、それは私を取っただろう 文字通り637または729ポインティング数 指との 私の合計カウントをインクリメントする。 そして、私は少しずつやれること 2、4、6、8に行くと、 トリプル多分、その速度を2倍または 四、どれだけ私ができるに応じ 私の頭の中で数えることをやる。 君たちが取ったことが、このアプローチ 根本的に異なっていた。 、冒頭にあるため あなたのすべてが立ち​​上がった。 すべての729だから。 そして文字通り半分 あなたが座った。 その後、別の あなたの半分は座った。 その後、別の あなたの半分は座った。 あなたその回と総数 みんなで座っている可能性がほぼ 8または9または10合計回 我々の総数が何であるかによって異なります。 そして、私たちは何を並べ替えることができます この他の方法。 私たちは部屋の中で1,024人、持っていた場合 あなたができた回数の合計 1,024人を半減10です。 で今、それについて考える 他の方向。 我々が持っていた、と言う、途方もなく、仮定 この部屋には40億人、 または少し大きめの部屋。 我々は何度も行っているでしょう このアルゴリズムを通じ、このようなその半分 そのクラスの座り? それだけでそのような32を取るために起こっている 偶数サイズのクラスの操作、 40億。 なぜですか? 40億には、2つに行くので 億は、1万人に行くに行く 5億、250に行く 万円、ドット、ドット、ドット。 私は、その部門にいくつかの32を行うことができます その点は、誰もを除い回、 一人は、放置されることになる。 そして、それは、あまりにも強力なの一種である ますます私たちがしようとするでしょうという考え このコースで、とに活用 プログラミングとコンピューターサイエンスより アイデアとは、一般的に、これらの細菌 我々は、多くの問題を解決することができ、 はるかに強力。 だから私たちはそれで非常にシンプルな開始 擬似コードと部屋の男が、 今、人々の完全な部屋全体と 我々は根本的に良くやった。 さて、今から移行をしてみましょう いくつかの実際のコードの擬似コード。 あなたが起こるを参照しようとしているこの言語 JavaScriptを呼び出される、と 我々はこれに向かってに戻ります 学期の終わり。 それはプログラミング言語だあなた ウェブサイトやそのような他のを作るために使用する ソフトウェアは、これらの日。 そして、我々はそれを使用している、友人のおかげ 私たちのスタンフォードで、エンコードする ここにいくつかの隠された情報。 これは、ステガノグラフィの芸術である ので、非表示にすることができますどこに、話すこと そうでない場合に表示される内容に記載されている情報 ノイズまたは完全に異なるもの 完全にイメージ。 しかし、この特定の画像に埋め込まれ 確かにある種の秘密のメッセージです。 だから私は先に行くと、プルアップしてみましょう ここで同じ画像、この Webブラウザでの時間。 そして、私はいくつかで私の手を振るつもりだ 特に今日の詳細は、 これがどのような人のために としては、JavaScriptが、ギリシャだけでなく、 完全になじみのない言語。 しかし、これは一例です プログラミング言語。 そして今は、その信仰を取る このコードの最初の行 - とコードによって、私はただのテキストを意味します。 私は文字通り、入力したことをテキスト のMicrosoft Wordに、私が持っていた場合 その後に適切なソフトウェア それで何かをする。 プログラムのソースコード、プログラミング コー​​ドは、実際には単なるテキストであり、そしてそれ どのような言語に基づいて異なるように見え あなたではなく英語と違って、使用していると スペイン語とロシア語はすべて違って見える あなたのキーボードでそれらを入力するとき。 この最初の行のように、今のところで取る 信仰は、単にからグラフィックを開く インターネット、その騒々しいグラフィック 私達はちょうど見ました。 この次の行は、ここでの例です。 ループ、そして我々は実際に同じのを見た TEDビデオで専門用語。 ループが再び起こるものです そして再び、さらにこのかかわら 絶対に、不可解に見える ためのキーワード、およびいくつかの括弧、および いくつかのセミコロン。 我々は、やがてそれに戻ってくる しかしそのループ本質がある すべてイテレート、プログラムを伝える 左から、それらの騒々しいドットの 右、上から下へ。 一日の終わりにあるため、画像 このように - あなたは、実際にすることができます の種類は、本機でそれを参照してください - 本当にドットの単なるグリッドです。 だから私たちはそれらのドットのそれぞれを識別することができます 座標はx、y、およびこれとによって プログラムは、今我々が開始することができます これらのドットに何かをする。 それでは、私はここで先に行くつもりだと 私はいくつかの変更を加えるつもりですか。 最初に私が先に行くと取り除くつもりだ その緑がかったと青みがかった全ての ノイズ、と私は先に行くつもりです と次のように入力します。 確かに不可解な構文。 イメージのIM。 位置X、コンマ、でブルーセット 位置yは、0〜。 言い換えれば、私はちょうどしたい 青のすべてをオフにする その絵のドット。 私は今、先に行くとクリックするつもりだ これは/保存ボタンを実行して、あなたはよ 右側に気づく、 結果のイメージが表示されます。 今、そのスーパー緑が、それはありません 私は文字通りになっているため、驚くべき オフ、1 0にすることで、すべての その絵の中の青。 まあ、今ではもう少しそれを行うみましょう。 画像、ドットsetGreen、X、YのためのIM。 そして、ちょうど左から反復を意味する 上から下へ、右へと。 値とそれをオフにする 0の、だけでなく。 保存します。 とプロジェクターでは、ありません、実際にすることができます 本当にまったく何を参照してください。 私のノートパソコンの画面上で、私だけでピア場合 正しい方法は、私はのビットを見ることができます 画像、彼らはまだだから そこにいくつかの赤。 あなたは今まで頭字RGBを聞いたことがある場合 - 赤、緑、青 - それは、この組成​​物を参照している 使用した画像の ちょうどそれらの三色。 そして今、我々は捨ててきた すべての緑、すべての青が、 赤が多いではありません。 だから私は赤をクランクアップしましょう​​。 どのように私はそれを行うことができますか? さて、最初に、私がお願いするつもりです このプログラムの質問です。 私が先に行くとのはそれを呼び出すようにするつもりです 単に代数のように変数、。 あなたは、Xまたはyまたはzを持つことができます。 私は、変数を宣言するつもりだ と、この変数に入れ、言う 一時的に、値 画像は、X、Yに値をのgetRed。 そして再び、我々はすべてに戻ってくる 今後、このディテールの。 しかし、今のところ、ただ信仰を取ること この行は何、プログラムを求めている のx、yにおける赤の値ですか。 その特定のドットで? それから私はそれに何かをするつもりです。 それから私は、画像のドットのセット赤をするつもりです X、Y、Yが、この時点で私はするつもりです 、赤回を行うことによって、それを後押し の言う、10してみましょう。 だから10倍に、それを増やす。 私は今ではズームアウトしてみましょう [保存]をクリックします/実行することができます。 そしてそこに全体だっ出来上がり、 時間にもかかわらず、私たち人間の目 かなりそれを見ることができなかった。 だからもう一度、これは今、本当のコードです 私たちが来ることを言語の例 戻ってずっと前に。 しかし、あなたのもの、特に、実現 ないような経験と、それはかなりです すぐに私たち自身がなること そこにそのようなコードを書く。 実際には、すべてのツールだたと やや馴染みの、多分、CS50のです あった独自のコースで、ショッピング·ツール、 実際にいくつかのことで、この夏に再起動 CS50自身のかつての学生の、 今のTFを回す。 だから、これは、組み込みのウ​​ェブサイトであることを起こる PHPと呼ばれる言語である。 それは、物事は、MySQLというデータベースを使用しています いると我々は我々の手を取得します 後学期に汚い。 しかし、何かあっても、それを信じるかどうか このように、最終的に減少 ループや条件の単純で 私たちはただ見ているような枝、 TEDビデオで前に瞬間。 私は私は何だろうと思って何を今共有ではありません 我々スタッフが作っただけで何か キャンパスではなく、何かのため 元学生 - 3 実際には学生は、 - シエラ、ダニエル、そして、この過去年製 サム、そのうちの最後は前がありませんでした プログラミング経験 彼はCS50を取ったとき。 そして、彼らの最終的なプロジェクトのために、それら CS50フェアで、展示、 アプリケーションがある、wrdly呼ば 彼らが作ったウェブベースのプログラム 私は私がする共有するだろうと思っているこのビデオ あなたにあるだけで何の感覚を与える 任期の終わりまで可能。 [音楽再生] DAVIDマラン:週ゼロからだ 12週、この一年間に。 [拍手] DAVIDマラン:ティーザーとして、あまりにも、本当に あなたの食欲を刺激することは何にある 可能であれば、あなたは、すでに見たことがあるかもしれませ またはすぐに、market.cs50.net、表示される場合があります 当然のチームが持っている新しいツール この時期、に取り組んでき ハーバード大学の学生とのコラボレーション このような今年からその機関、 そしてこの中にうまくいけば継続 夏来て、標準を持っているよ 買うとするキャンパスの機会 あなたに興味のあるものを販売しています。 とHSAを通じてパートナーシップを使用すると、よ また、アイテムを落とすことができる 一部ではHSAの物理的な店舗のいずれかで 今後のポイントなので、へなど 特にあなたのようにプロキシのもの、 卒業、必ずしもしたくない ものを捨てる​​が、実際にそれを支払う あなたに従うかもしれない人々に転送 ここにキャンパスで。 だからもっとそれに来ています。 しかし、もう少し具体的には、ツール 最近のCS50から出て来ている 年は、あなたのいくつかはであるかもしれないと あなたの身近で他の人があるかもしれない あなたは、CS50.net/2xで、今よグーグル Chrome拡張へのリンクを見つける どのように缶の実証である JavaScriptを、その同じ言語を使用する我々 一瞬前にエッフェル塔と一緒に使用、 2倍の再生速度を実装する すべてハーバードデベロッパーGenwi動画の。 これが組み込まれているものです CS50自身のビデオプレーヤーに。 しかし、これは、あまりにも、あなたは掘るし始める場合 たソースコードに、その我々はよ 楽しく利用できるように、あなたはどのように表示されます あなたも、そのような問題を解決することができます とウェブサイトにウィジェットを加速 そのあなたはすでによく理解している。 だからコースで今単語と 期待と何が待ち受けている。 一般的に、我々は確かにここに集まるよ しかし - 月曜日と水曜 今週の金曜日、私たちは集まるだろうから ショッピングウィーク - 1:00 2:00 PM、しかし たまに2時30分まで。 あなたはそのためか、お勧めしますことを考えると 2:00 PMでいくつかのクラスを取らなければならない 以降、あるいは前に、実現するか コー​​スはと呼ばれるものを支持している 同時入学、それによって我々はよ アドホック委員会に申立てをサポートし、 あなたに代わってあなたの居住者であれば学部長 この中でどこか競合している 1:00二時30分の範囲。 ため、そのURLをオンラインに頭 詳細。 しかし、支持構造の観点から 学生のため、CS50を特徴づけること ますます似てあまり快適、我々 セクションの異なるトラックを提供しています。 そして、これはオフに数週間ですが、 ずっと前に、あなたがするように求められます あなたの快適さのレベル。 あなたは、より少ない快適なものの一つである より快適な、または どこかの間に? そして、私たちは3つの異なるがあるでしょう に応えるトラック 正確にそれらの観客。 だから言葉のない時点ですべき あなたが競合しているようにさえ感じる もっと持つ学生に対して または未満背景。 実際に、コースがあることを意味し はるか共同とはるか それよりもオープン。 問題セットの面では、よ そのほかににも、見つける 各週の問題の標準版 設定し、 "ハッカーはしばしばあり 標的とされることを意図している版 " で5〜10%程度の それらの中で確かな人口統計 より快適でより多くをしたいと思い 標準より挑戦 そのPSETの版では期待しています。 なるようにそれらの詳細 シラバスで見つかった。 しかし、また、中に詳細が記載されています コー​​スで遅い日。 通常は問題セット 木曜日に起因している。 しかし、あなたの多くを拡張することができます へ木曜日から締め切りはこの秋 単に途中で私たちを満たすことで金曜日、 ので、いくつかのウォームアップに答える、話すこと 今週の問題のいくつかの質問 セットは、自動的にその意志 その後、あなたの余分な24時間を与える。 私達はまたあなたの最低をドロップします としてシラバス当たりスコア。 あなたにどのような問題の感覚を与えるために セットがある - それは確かだから 当然の問題があることを設定します。 最終的にほとんどすべての定義 なおさらより学生の経験、 なおさら講義、セクションより、もっと ので、任意の他のほとんどより もちろん側面。 昨年は、例えば、我々として、始まった 我々はスクラッチで、今年から始めましょう。 特に今週の金曜日、私たちのために、使用します たった一日の時間、グラフィカル プログラミング言語は、我々はよと ドラッグして、プログラミングを開始し、 それだけでパズルのピースを落とす それは理にかなっている場合、物理的に組み立てる 論理的にそうしています。 来週、私たちは迅速に移行するよ C、かなり古いが非常に小さく、 私たちにできるようになります簡単な言語 本当にかけて0から60に行く わずか数週間、その後増やす のものと同じスキルと知識 基本的なプログラミング構造に PHPのような高いレベルの言語、 JavaScript、およびまだ、まだ他人。 昨年、コースで三PSET 、暗号のようだった ドメイン固有のアプリケーションそれによって我々 いずれかを実装するための挑戦学生 暗号の数は、使用したプログラム スクランブルにまたは情報を解読、 それを暗号化する。 ハッカーEditionの場合は、対照的に、 我々はハッカーの学生にファイルを与えた 含む標準のUnixコンピュータから ユーザ名とパスワード、 暗号化されていたそのうちの後者、 そして我々はそれらのハッカーに挑戦 解読し、彼らができる最善のように、学生に まだその上にこれらのパスワード、 同じドメイン。 スクランブル、いくつか付いているゲーム あなたのことを多分理解している。 我々は学生を求めるフォレンジックピース、 されていたデータを復元する そうしないと自分自身のデジタルから削除 カメラのコンパクトフラッシュカードによる 実際に把握するためのソフトウェアを書いて、 ゼロとでどこにあった それ以前にそのデジタルカメラ JPEGグラフィックを作曲? ある種の挑戦昨年 最速を書い関与 スペルチェッカー可能、競合 友人やクラスメートに対する場合 彼らはしたいと思います。 、ハフ 'Nパフの実装 圧縮プログラム。 そして、CS50と学期を終了 金融とWebベースのアプリケーション あなたは、eトレードのようなウェブサイトを作成した そうに、株式を購入し、販売する 実際にはほぼ引いて、話す リアルタイムの株価のヤフー 金融。 我々は、昨年何をしましたしませんでした 残っている一つの問題セット それにもかかわらず好き。 あなたはに行ったことがない場合 shuttle.cs50.net、ユーザーが表示されます このような少しのインターフェース。 しかし、2年前に、クラスは Googleマップと使用方法、実装 Google Earthのプラグインと少し キャンパスの周り運転と精通した、 このゲームの目的は、となるように あなたは、顔の一部を見ることができるように、 キャンパスの周りに駆動するには、探しています スタッフ、教育仲間とCAは、と あなたがそれらを入れない時 あなたのシャトルバスに。 それらのどれも実際に、ここにいるように見えるん ので、チートコードを入力するつもりだ。 [笑い] DAVIDマラン:あり私達は行く。 わかりました。 そして今ここスタッフです キャンパス全体混入。 そして、あなたは右手で、見ることができるように 画面の横、シャトルバス 空席を持っています。 そして、目標は書くことでした これをシミュレートするとコード 運転と拾って落とす 乗客オフ。 あまりに1、つまり、言語を使用して JavaScriptを呼んだ。 だからプログラムを実現することを好きになるでしょう これは私たちと同じ軌道上にある 今年だけでなく、。 面では、今では、追加のサポートの、 私たちは、営業時間を持っている。 あなた自身の家で見てきたかもしれませんが ダイニングホールやアネンバーグで、 私たちは、家での食事になるでしょう ホール4夜週 - Leverett、Pfoho、エリオットとアネンバーグ 今年、8:00 PM 11:00 PMまで。 そして、何、我々は今年やるだろうと思っていた 何かが少し異なっています。 あなたは去年ゴロゴロを聞いた場合は、その それは、このビットはあまりにストレスだった 我々は説明しますと、今年の営業時間、 来週、より有機的になり、 到着時に、あなたはなるだろうそれによって 一つの特定のテーブルへの派遣 複数のスタッフがお待ちしております場合には、 そして我々ははるかに物事をやる 有機的に。 これ以上のキュー、これ以上のiPadが、 むしろより親密持っている だけのテーブルを囲んで会話 8かそこらの学生がいるので、我々はその 何をそうしないとの感触近似 はるかに小さいクラスとなります。 我々はこれらの事を、同様に、我々を提供しています ウォークスルーと呼ばれ、ビデオで撮影 当然の教えの一つで進める 彼女に仲間、Zamyla、 今週の問題を、順を追って説明 ためのヒントやコツを提供するセット、 先に横たわっていた課題。 逆に、問題セットの後にある により、今年、我々はまた、リリースする予定 少しクリップがポストmortemsことを呼ぶ 実際に順を追って 代表的なソリューション、良いと両方 悪い、それを介してあなたはどのように推測することができます あなたは可能性がありますか、持っている必要があり 独自のソリューションを実装しました。 そして、我々は最初の時のために何を提供していますよ 特に同様に今年、 自分自身を利用するそれらの学生のための 当然の他の リソースそれでも苦労している すべての多すぎる、もちろん 自体が、これらの学生をペアにします リソースがチューターと、許可するよう あなたは多くのより親密なを持って 社内食堂も機会 一対一の支援が可能になります。 一部では今、最終的な垣間見る 目の前で最後のゲームの。 あなたが精通しているかもしれません CS50ハッカソン。 さて、8時から、この12月に来 7:00 PMは、冒頭で、AM 時代を読んで、チャンスになります クラスメートと収集する - これは、午後9時前後になるでしょう - あなたの最終的な飛び込むその間 プロジェクトの実装と一緒に クラスメート、友人、食べ物。 これは時、午前1時00分前後になるでしょう 食品の最初のバッチが到着しました。 そして、これはことを午前4時00分程度です CS50ハッカソンで特定の年。 しかし、もちろんの真のクライマックスです キャンパス全体、CS50フェアに意味 あなた自身の最終的なプロジェクトの展示、 にその家族や友人が全てです 当社のリクルーターとして、招待され、 産業界からの私たちの友人。 これは、例えば、の姿である 出席した2,000人のプラス 過去数年間。 このような表現は珍しくありません、 と同様に行うあなたの クラスメートは、物事に喜び あなたが達成した。 そして実際に、その端部に向かって、我々は持っている 開始の長期イベント、同様。 もしあなたにこのアピールのようなもの、または あなたは何にとして、少なくとも興味が この、新たな伝統のことを知っている コー​​スはCS50パズルの日と呼ばれています。 これはのカップルを制定しました 実際にキャンパスに合図する年前 コンピュータサイエンスでは、に関するものではありませんことを プログラミング、およびそれは確かではありません のみ学生を受け入れについて 誰が前に経験を持っています。 それは、問題解決については本当にだ より一般的。 過去数オーバーな​​どパズルの日、 年後、素敵に進化しました で我々の友人とのパートナーシップ Facebookは、それによって素晴らしいがあるだろう で川を渡っ賞品とピザ I-ラボこの来る土曜日。 二、三と、そのURLに頭 友人あなたが分かちしたい場合 この新しい伝統である。 だから私はあなたが1つを保つことをお願いしたいのですが 念頭に置いてのもの、と私達はちょうど持っている 上の2つ分のクリップ 今日閉じます。 73%が覚えておくべき数字です。 ケーキは、あまりにも、この外にあなたを待っています 私たちはただの延期として翼廊 伝統である瞬間のカップル、 もちろん、同様に。 しかし、これはからキー引用です 心に留めておくべき当然のシラバス。 最終的にこのコースで重要なもの あなたは結局どこにそんなにいません クラスメートからの相対が、どこ あなたは、12週では、相対的に終わる 週0で自分。 しかし、我々はあなたを残すことを垣間見る ここで、今日はここで、この最後のものである やった私たちの同じダニエル、バイ ちょっと前wrdlyビデオ。 私はこの垣間見るを残す 待ち受けているのかの。 そして、我々はCS50を持っていることができれば、我々は、これを行うように 部屋の前からスタッフ すべてを描くために、ステージまでに来て に、視覚映像のもっと 何が今年のあなたを待って - ぎこちない取得。 我々はこれで結論だろう ここで画面上。 [音楽再生] DAVIDマラン:これはCS50です。 [MUSIC - MATT&KIM、 "ITは大丈夫だ"] SPEAKER 1:私は猫よりCS50もっと愛する。 SPEAKER 2:Whoaaaa! [笑い] DAVIDマラン:これは、その後、CS50です。 私たちは、金曜日にお会いします。 [拍手と歓声] ナレーター:次のCS50では、ステージ上の 予定通りデモは行っておりません。 DAVIDマラン:我々は、マイクを見つけたい この電話帳でスミス。 さて、あなたの本能は何ですか? 私はの中央にほぼジャンプかもしれない 電話帳には、ダウンして一目、見ている 私はMにいる、と私は今知っているマイク スミスは左にはありません。 彼は右にでなければなりません。 ので、この時点では、我々 文字通り引き裂くことができる - この時点で、我々は文字通り引き裂くことができる - この時点で、我々は比喩缶 半分に電話帳を引き裂く。 [ウクレレかき鳴らし]