1 00:00:00,000 --> 00:00:02,742 >> [音楽再生] 2 00:00:02,742 --> 00:00:05,030 3 00:00:05,030 --> 00:00:09,090 >> ANDI PENG:これはCS50であり、 セクションの週2への歓迎。 4 00:00:09,090 --> 00:00:11,740 週ながら、実際に 実際に私たちのclass--の2、 5 00:00:11,740 --> 00:00:14,550 最初の週私たちは、セクションを持っていました。 6 00:00:14,550 --> 00:00:18,897 あなたのすべてのどのように多くの手のショー、 先週のスーパーセクションに来ましたの? 7 00:00:18,897 --> 00:00:19,480 [OK]を、それは大丈夫です。 8 00:00:19,480 --> 00:00:20,020 それで大丈夫です。 9 00:00:20,020 --> 00:00:23,110 どのように多くのあなたの見 スーパーセクション先週? 10 00:00:23,110 --> 00:00:23,610 OK。 11 00:00:23,610 --> 00:00:25,702 そして、あなたたちは大丈夫でした 問題に1を設定しますか? 12 00:00:25,702 --> 00:00:28,660 だから私たちは持っていることそれを取るつもりです 本当にインテリジェントな子供の束 13 00:00:28,660 --> 00:00:32,310 このクラスとの事で正常になります。 14 00:00:32,310 --> 00:00:33,180 OK。 15 00:00:33,180 --> 00:00:33,980 だからfirst-- 16 00:00:33,980 --> 00:00:37,900 17 00:00:37,900 --> 00:00:41,090 >> まず、私たちは簡単になるだろう 今日の議題の上に行きます。 18 00:00:41,090 --> 00:00:42,700 私たちはもちろん物流について話しましょう​​。 19 00:00:42,700 --> 00:00:45,480 あなた方の多くはおそらく 質問を持っています 20 00:00:45,480 --> 00:00:46,920 どのように物事がこのコースで実行されます。 21 00:00:46,920 --> 00:00:47,897 私たちはそれらをお答えします。 22 00:00:47,897 --> 00:00:49,730 私たちは簡単になるだろう ケース内のループの上に行きます 23 00:00:49,730 --> 00:00:51,410 君たちのいずれかが、スーパーセクションを逃しました。 24 00:00:51,410 --> 00:00:53,240 私たちは、ASCIIマッピングについて話しましょう​​。 25 00:00:53,240 --> 00:00:56,180 私たちは、配列について話します、 機能、コマンドライン引数。 26 00:00:56,180 --> 00:01:00,210 そして最後に、どのような君たちおそらくすべて 本当にについて学ぶためにここにいたいです、 27 00:01:00,210 --> 00:01:01,270 あなたのpset2です。 28 00:01:01,270 --> 00:01:04,209 我々はいくつかの素晴らしいトリックを持っています そしてそれを行う方法についてのヒント。 29 00:01:04,209 --> 00:01:07,910 30 00:01:07,910 --> 00:01:08,690 >> OK。 31 00:01:08,690 --> 00:01:11,450 また、第二に、私たちは持っています ここでお菓子がたくさん。 32 00:01:11,450 --> 00:01:13,583 お菓子が好き誰でも、 ちょうどここに出てきます。 33 00:01:13,583 --> 00:01:14,430 いくつかをつかみます。 34 00:01:14,430 --> 00:01:15,100 私が抱えています。 35 00:01:15,100 --> 00:01:16,390 我々は、オフィスでのトンを持っています。 36 00:01:16,390 --> 00:01:18,230 私は本当にしたくありません 一日中お菓子を食べます。 37 00:01:18,230 --> 00:01:20,300 君たちは、すべてのお菓子を食べる必要があります 私はあなたたちのためにここにそれをもたらしたからです。 38 00:01:20,300 --> 00:01:20,990 ただお菓子を食べます。 39 00:01:20,990 --> 00:01:24,080 すべてのセクションお菓子があるでしょう。 40 00:01:24,080 --> 00:01:25,330 >> だから最初、私は誰ですか? 41 00:01:25,330 --> 00:01:27,080 私の名前はアンディ鵬です。 42 00:01:27,080 --> 00:01:30,270 私はここでエールでCS50の頭TAです。 43 00:01:30,270 --> 00:01:32,540 とに加えて、 それは、私もbe--ます 44 00:01:32,540 --> 00:01:35,600 誰もがあなたのランニングをlike--ならば バディは、あなたの悩みを聞いてくれる人。 45 00:01:35,600 --> 00:01:39,140 もしあなたのpsetの原因で前の晩、 あなたは何が起こっているか見当がつかない、 46 00:01:39,140 --> 00:01:40,080 私を打ちます。 47 00:01:40,080 --> 00:01:42,770 私たちは、エトセトラ、一緒に同情しますよ。 48 00:01:42,770 --> 00:01:46,100 ちょうど私のようにここにいることを知っています フロントラインとしてあなたのためのリソース 49 00:01:46,100 --> 00:01:51,830 助けにあなたたちはどのように把握します CS50で以降の問題を解決します。 50 00:01:51,830 --> 00:01:54,590 >> 私のメールはandi.peng@yale.eduです。 51 00:01:54,590 --> 00:01:58,390 私はまた、個々のを送信します その中に私の電話番号と電子メール 52 00:01:58,390 --> 00:02:01,860 そのように誰も インターネットは私の電話番号を確認することができます。 53 00:02:01,860 --> 00:02:03,640 いつでも私に電話して自由に感じます。 54 00:02:03,640 --> 00:02:07,510 真剣に、私の携帯電話は、 通常、私の手に取り付けられています。 55 00:02:07,510 --> 00:02:10,240 私は応答しないことがあり 数分以内です。 56 00:02:10,240 --> 00:02:11,984 私は数時間以内に応答しないことがあります。 57 00:02:11,984 --> 00:02:14,400 しかし、私は場合は、あなたを保証することができます あなたが私を呼び出した場合、あなたは、私にメールし 58 00:02:14,400 --> 00:02:17,404 私をテキスト、私は24時間以内に回答いたします。 59 00:02:17,404 --> 00:02:19,820 多くの場合、私は前に応答します 私は理解しているため、その 60 00:02:19,820 --> 00:02:23,900 誰もがいくつかの問題を持っていること、 あなたはあなたの答えをしたいです 61 00:02:23,900 --> 00:02:26,110 非常に迅速に回答します。 62 00:02:26,110 --> 00:02:28,945 >> ただし、呼び出す場合 私の30分前 63 00:02:28,945 --> 00:02:31,570 木曜日によるものであることが作品 、アンディは、私を助けるようなことnight--、 64 00:02:31,570 --> 00:02:35,380 私が与える可能性がありstarted--ていません あなたはその悩みを聞いてくれる人。 65 00:02:35,380 --> 00:02:41,520 しかし、それは考える時間がかかるかもしれません その次の時間をしない方法について説明します。 66 00:02:41,520 --> 00:02:44,040 OK。 67 00:02:44,040 --> 00:02:44,944 おっとっと。 68 00:02:44,944 --> 00:02:45,850 どのように私は戻って行くのですか? 69 00:02:45,850 --> 00:02:48,140 そうしよう。 70 00:02:48,140 --> 00:02:52,310 >> したがって、このコースでは、我々が持っています 皆のためのサポートのトン。 71 00:02:52,310 --> 00:02:54,640 ちょうどに加えて、 ここにセクション、これを使用 72 00:02:54,640 --> 00:02:57,000 毎週は90を過ごすために取得 私と一緒に素敵な分、 73 00:02:57,000 --> 00:02:58,330 我々はまた、オフィスの時間を持っています。 74 00:02:58,330 --> 00:03:01,021 どのように多くのあなたの人がすでに持っています ヘルプは営業時間に行きましたか? 75 00:03:01,021 --> 00:03:01,520 グレート。 76 00:03:01,520 --> 00:03:05,700 私たちだから、見ることは本当に良いことです 45以上のTAとCAのスタッフを持っています 77 00:03:05,700 --> 00:03:11,780 ここにいるこのコースのために訓練 あなたのpsetを持つ人を助けるため。 78 00:03:11,780 --> 00:03:14,580 >> 月曜日彼らはTEALで開催されています ここ17ヒルハウスで教室 79 00:03:14,580 --> 00:03:15,350 イェール大学。 80 00:03:15,350 --> 00:03:17,349 火曜日と木曜日、 彼らは、コモンズで開催されています。 81 00:03:17,349 --> 00:03:20,010 ほとんど11時00平日8:00。 82 00:03:20,010 --> 00:03:21,620 で来て、出てきます。 83 00:03:21,620 --> 00:03:24,030 どれでも問題なしproblem-- ただで来ます、 84 00:03:24,030 --> 00:03:26,650 し、我々はそれであなたを助けるでしょう。 85 00:03:26,650 --> 00:03:31,640 >> 第二に、オフィスの時間に加えて、 そして、のセクションでは、我々はまた、ショートパンツを持っています。 86 00:03:31,640 --> 00:03:35,930 誰もがこれまでのカップルを見ています ビデオで短絡やチュートリアル 87 00:03:35,930 --> 00:03:36,750 ウェブサイト上の? 88 00:03:36,750 --> 00:03:37,250 OK。 89 00:03:37,250 --> 00:03:39,510 そこで、彼らは本当に、本当に便利です。 90 00:03:39,510 --> 00:03:42,470 私たちの美しいハーバード生産 その学校にあそこチーム 91 00:03:42,470 --> 00:03:47,910 ノースアップ、彼らが撮影し、生産しています これらの信じられないほどのウォークスルー動画。 92 00:03:47,910 --> 00:03:52,290 >> 彼らはあなたを介してステップバイステップで取りますよ どのように問題を解決について移動します。 93 00:03:52,290 --> 00:03:56,340 多くの場合、あなたは混乱している場合 シンプルなコンセプト、単数形の概念、 94 00:03:56,340 --> 00:03:59,780 我々は、おそらく持っているので、見てみましょう どこかで当社のウェブサイト上で、その上に短いです。 95 00:03:59,780 --> 00:04:03,800 そして、それは通常、素晴らしいリソースです あなたが最初にしているときを探すために 96 00:04:03,800 --> 00:04:06,510 問題を処理する方法で失われました。 97 00:04:06,510 --> 00:04:09,750 >> 第三に、我々はまた、持っています study50とreference50。 98 00:04:09,750 --> 00:04:15,650 だから、上の50の勉強 ウェブサイトは、単にリンクです。 99 00:04:15,650 --> 00:04:21,500 それは私が思う、だ、study.cs50.net またはそのような何か。 100 00:04:21,500 --> 00:04:22,860 ちょうどそれをGoogleに。 101 00:04:22,860 --> 00:04:24,229 私たちは、調製されたスライドがたくさんあり​​ます。 102 00:04:24,229 --> 00:04:26,770 私たちは、ショートパンツがたくさんあるし、 物事はすべてのコンパイル済みwalkthroughs-- 103 00:04:26,770 --> 00:04:31,070 すべての皆さんのために非常に素晴らしく、端正 拾い読みする、任意の概念を参照してください 104 00:04:31,070 --> 00:04:32,860 あなたが混乱していること。 105 00:04:32,860 --> 00:04:35,920 それはおそらくカバーされるだろう そこstudy50でオーバー。 106 00:04:35,920 --> 00:04:37,640 >> 同様のReference50--。 107 00:04:37,640 --> 00:04:41,510 我々は、様々なノートの多くを持っています あなたの処分のために容易に入手できます。 108 00:04:41,510 --> 00:04:44,450 そして最後に、我々は何を持っています CS50が議論と呼ばれます、 109 00:04:44,450 --> 00:04:48,082 でフォーラム、前夜場合 あなたはあなたの問題をやっている、と言います、 110 00:04:48,082 --> 00:04:49,880 あなたが質問があります。 111 00:04:49,880 --> 00:04:52,340 議論CS50にログインします。 112 00:04:52,340 --> 00:04:53,190 質問を投稿してください。 113 00:04:53,190 --> 00:04:55,820 そしてhundreds--の1 ピアのおそらく、thousands-- 114 00:04:55,820 --> 00:04:57,960 オンラインこのクラスを取ることで記録します。 115 00:04:57,960 --> 00:05:01,182 そしておそらく誰かが得ることができます TAの前に、あなたの答え。 116 00:05:01,182 --> 00:05:03,390 それは本質的にだけです その私たちはすべてのことができますオンラインフォーラム 117 00:05:03,390 --> 00:05:04,556 私たちの問題を議論するために使用します。 118 00:05:04,556 --> 00:05:06,483 カッコいい。 119 00:05:06,483 --> 00:05:10,660 120 00:05:10,660 --> 00:05:11,550 >> OK。 121 00:05:11,550 --> 00:05:13,220 それで問題が設定されます。 122 00:05:13,220 --> 00:05:17,840 我々は右うとしています 問題の厚いは2を設定します。 123 00:05:17,840 --> 00:05:20,570 私たちの多くは、既に持っています 1を設定し、問題を通して苦労。 124 00:05:20,570 --> 00:05:24,460 我々はすでに、おそらく待っていることを知っています 最後の夜はあなたのpsetを行うため 125 00:05:24,460 --> 00:05:28,170 CS50に行うには賢いことではありません。 126 00:05:28,170 --> 00:05:32,380 >> ヒントと基本的にするためのヒント 成功は全体の仕様を読んでいます。 127 00:05:32,380 --> 00:05:36,270 どのように多くのあなたのを既に持っています PSET 2のための仕様を読んで? 128 00:05:36,270 --> 00:05:36,770 OK。 129 00:05:36,770 --> 00:05:39,840 それは固体の量です。 130 00:05:39,840 --> 00:05:43,210 私はあなたたちは、おそらく認識している知っています 今ではスペックは本当に長いです。 131 00:05:43,210 --> 00:05:45,700 彼らは本当に、本当に長いです。 132 00:05:45,700 --> 00:05:49,630 >> これは、すべての行を読み取るためには本当に難しいです 言葉によってその慎重に言葉の。 133 00:05:49,630 --> 00:05:52,780 あなたはどこに脱脂したいです それはあなたが何かをするように指示します。 134 00:05:52,780 --> 00:05:54,459 私はあなたを保証することができ、それをしません。 135 00:05:54,459 --> 00:05:56,750 あなたがそれを行う場合は、おそらくです どこかに欠場するつもりは 136 00:05:56,750 --> 00:05:58,458 どこにそれはあなたに通知します 問題を開始する方法 137 00:05:58,458 --> 00:06:01,140 またはそれはどのような名前に説明します あなたの問題やそれを示しています、 138 00:06:01,140 --> 00:06:03,720 これはおそらく最良の方法です あなたの問題をやって起動します。 139 00:06:03,720 --> 00:06:05,050 それから、あなたは失われます。 140 00:06:05,050 --> 00:06:08,219 >> あなたを読み取るしようとすると、 途中スペック、 141 00:06:08,219 --> 00:06:10,510 重要な多くの あなたがいないしていることでinformation-- 142 00:06:10,510 --> 00:06:12,260 本当にアクセスできるようにするつもり。 143 00:06:12,260 --> 00:06:13,219 だから、全体の仕様をお読みください。 144 00:06:13,219 --> 00:06:15,468 全体の仕様を読むようにしてください あなたがセクションに来る前に、 145 00:06:15,468 --> 00:06:17,360 その後ので、ときに我々 PSETの話を、 146 00:06:17,360 --> 00:06:21,070 我々はすべてのアイデアを持つことができます 何が起こっているの。 147 00:06:21,070 --> 00:06:25,169 >> 第二に、この概念は 私が参照したいだろうと 148 00:06:25,169 --> 00:06:26,710 コー​​ス学期を通してたくさん。 149 00:06:26,710 --> 00:06:30,070 しかし、本質的に、右、途中で私たちを満たして? 150 00:06:30,070 --> 00:06:33,970 もちろん、あなたのTAとジェイソンとして私、 あなたの教授として、マネージャとScaz 151 00:06:33,970 --> 00:06:37,120 Davidあなたの教授とのすべてのように このコースの他の素敵なのTA、 152 00:06:37,120 --> 00:06:39,830 このcourse--でアシスタント 我々は最善を尽くします 153 00:06:39,830 --> 00:06:42,965 あなたが設定されていることを確認します このコースで成功するためにアップ。 154 00:06:42,965 --> 00:06:43,840 私たちは、セクションを開催します。 155 00:06:43,840 --> 00:06:44,870 私たちは、オフィスアワーを開催します。 156 00:06:44,870 --> 00:06:47,087 私たちは、お使いの携帯電話にお答えします 呼び出しは、あなたの電子メールに答えます 157 00:06:47,087 --> 00:06:49,670 作るために私たちができることはすべてやります 必ずご質問は回答されています。 158 00:06:49,670 --> 00:06:51,460 >> しかし、あまりにも私たちを助けて。 159 00:06:51,460 --> 00:06:52,450 途中で私たちを満たしています。 160 00:06:52,450 --> 00:06:56,040 あなたは営業時間に来る場合 セクションに行ったことはない、ではありません 161 00:06:56,040 --> 00:07:02,060 いいえを持つ、講義を見ました 何が起こっているのアイデアは、私を助けて、ようです。 162 00:07:02,060 --> 00:07:04,350 私はよく、私は申し訳ありませんが、同じようになるだろうよ。 163 00:07:04,350 --> 00:07:06,410 それは貸すために時間がかかるかもしれません 泣くその肩、 164 00:07:06,410 --> 00:07:08,959 私はわからないので、 私はあなたを助けるために何ができますか 165 00:07:08,959 --> 00:07:12,000 あなたは、少なくとも助け​​にしようとしていない場合 初めに自分自身を少し。 166 00:07:12,000 --> 00:07:12,910 途中で私たちを満たしています。 167 00:07:12,910 --> 00:07:15,020 あなたが知っている、来てください 答えてもらうために準備 168 00:07:15,020 --> 00:07:16,353 材料に従事する準備ができています。 169 00:07:16,353 --> 00:07:19,342 それはあまりの事になります 関係者全員のために容易になります。 170 00:07:19,342 --> 00:07:22,970 ええ、それはかなりそれです。 171 00:07:22,970 --> 00:07:23,720 >> グレーディング。 172 00:07:23,720 --> 00:07:29,250 だからシラバスに、それはかなりです 綿密どのように我々のグレードについて。 173 00:07:29,250 --> 00:07:32,440 しかし、本質的に、内訳 この中にあなたの等級の50%です 174 00:07:32,440 --> 00:07:34,530 これは、のpsetになります それはだから、素敵です 175 00:07:34,530 --> 00:07:37,400 あなたは広大を費やしている場所 上のコースの時間の大半。 176 00:07:37,400 --> 00:07:39,854 40%クイズ、そしてあなた 最終的なプロジェクトは10%になります。 177 00:07:39,854 --> 00:07:42,520 全体で2クイズがあります 学期のコース。 178 00:07:42,520 --> 00:07:47,050 私は、時間と日付があると思います また、シラバスに記載されています。 179 00:07:47,050 --> 00:07:49,210 >> 道頂きます あなたのpsetを採点します 180 00:07:49,210 --> 00:07:53,930 私たちは基本的に4を持っているということです 私たちは各学年に割り当てる値。 181 00:07:53,930 --> 00:07:57,250 我々は、範囲の値を有し、 正確性、デザイン、スタイル。 182 00:07:57,250 --> 00:08:01,530 ご覧のように、それは私たちのようなものです psetの計算式。 183 00:08:01,530 --> 00:08:03,640 三、我々はほとんどを与えます 正確さ、重量、 184 00:08:03,640 --> 00:08:06,140 明らかにあなたのコーチのため 例をテストする必要があります 185 00:08:06,140 --> 00:08:08,480 我々はそれがためにテストすること。 186 00:08:08,480 --> 00:08:11,000 >> 君たちはすべて持っています あなたの処分でcheck50。 187 00:08:11,000 --> 00:08:13,730 これは非常に便利な機能です あなたたちはすべてのことができること 188 00:08:13,730 --> 00:08:17,560 当社のサーバーにコードをアップロードし、 どこに私たちはあなたのためにそれをチェックします。 189 00:08:17,560 --> 00:08:20,800 そして、あなたはそれらを見てきました しかめっ面の顔、スマイリーの顔。 190 00:08:20,800 --> 00:08:22,119 彼らは本当に、本当に便利です。 191 00:08:22,119 --> 00:08:23,910 ことはしないでください 試行が好きな学生 192 00:08:23,910 --> 00:08:26,230 それらにすべての答えにハードコードします。 193 00:08:26,230 --> 00:08:30,050 私は間違いなくどこのpsetを見てきました 誰かがcheck50のすべての値を見て 194 00:08:30,050 --> 00:08:33,429 そして彼らは、ハードコーディングされた場合in-- この数は、この数をプリントアウト。 195 00:08:33,429 --> 00:08:35,080 その番号ならば、その番号をプリントアウト。 196 00:08:35,080 --> 00:08:36,090 そんなことしないでくれ! 197 00:08:36,090 --> 00:08:39,360 >> たとえ技術的に check50は正しいです、 198 00:08:39,360 --> 00:08:41,809 解決のあなたの方法 問題は正しくありません。 199 00:08:41,809 --> 00:08:45,770 だから控えめcheck50を使用しています。 200 00:08:45,770 --> 00:08:48,497 しかし、またていることを確認します それが機能しています方法を理解し、 201 00:08:48,497 --> 00:08:50,580 プログラムが機能しています check50に加えて、 202 00:08:50,580 --> 00:08:53,120 我々は、すべてをテストすることはできませんので、 check50の可能場合。 203 00:08:53,120 --> 00:08:55,440 私たちはそれらのいくつかをテストすることがあります。 204 00:08:55,440 --> 00:09:00,390 >> デザインは基本的に、どのように あなたのコードはうまく設計されたのですか? 205 00:09:00,390 --> 00:09:04,150 あなたは、コピー&ペーストの複数ある場合 多くのコードの行数、何度も。 206 00:09:04,150 --> 00:09:06,960 たぶん、あなたは全くありません あなたのコード内の最高のデザイン。 207 00:09:06,960 --> 00:09:09,470 多分それはそのループを追加してみましょう。 208 00:09:09,470 --> 00:09:12,090 基本的に、ここでそれだけですべてです あなたのコードを実行しようとしている程度、 209 00:09:12,090 --> 00:09:17,010 同様に効率的にコードを記述しようとしています あなたのプログラムが実行されるように、できるだけ 210 00:09:17,010 --> 00:09:19,630 できるだけ早く。 211 00:09:19,630 --> 00:09:20,996 >> 最後に、我々はスタイルを持っています。 212 00:09:20,996 --> 00:09:24,360 だから、スタイルはの一種であります 任意の、主観的な用語。 213 00:09:24,360 --> 00:09:27,470 私たちは正式に持って知っています CS50のスタイル50ガイド、 214 00:09:27,470 --> 00:09:30,050 どこにそれはあなたを伝え、ああ、あなたは ここにスペースが必要です。 215 00:09:30,050 --> 00:09:32,220 あなたがすべきフォーマットの種類 コー​​ドこの方法。 216 00:09:32,220 --> 00:09:34,070 あなたはこのようなものに名前を付ける必要があります。 217 00:09:34,070 --> 00:09:38,180 >> 私は実際にどのように、それ自体が、気にしません あなたはあなたのコードのスタイルを選択し、 218 00:09:38,180 --> 00:09:39,840 ちょうど限り、あなたは一貫滞在として。 219 00:09:39,840 --> 00:09:43,732 たとえば、あなたがしたい場合 あなたの4の後にスペースを残します 220 00:09:43,732 --> 00:09:45,690 あなたの4ループの前に、 ちょうどたびにそれを行います。 221 00:09:45,690 --> 00:09:46,523 種類のそれをしないでください。 222 00:09:46,523 --> 00:09:47,730 それを他の回をしないでください。 223 00:09:47,730 --> 00:09:51,046 あなたが巻き毛を維持したい場合 ブレーススペース特定の方法、 224 00:09:51,046 --> 00:09:52,170 ただ、常にそのように行います。 225 00:09:52,170 --> 00:09:54,628 種類のどこかでそれをしないでください こことどこかにない存在。 226 00:09:54,628 --> 00:09:57,010 我々はグレーディングしているとき、 それは本当に難しいです 227 00:09:57,010 --> 00:09:59,420 私はどのようには考えている場合 あなたは、あなたのコードをフォーマットしています 228 00:09:59,420 --> 00:10:02,064 物事は奇抜なと場違いです。 229 00:10:02,064 --> 00:10:04,980 あなただけの一貫性を維持するなら、それはです 大きいとして私のためにはるかに簡単 230 00:10:04,980 --> 00:10:06,310 あなたのコードを読むことができるようにします。 231 00:10:06,310 --> 00:10:09,393 それは学生としてあなたのためにはるかに簡単です あなたのコードに目を通すことができるように 232 00:10:09,393 --> 00:10:11,720 そして、間違っているものを見ます 問題があると、なぜそれがスラッシュ。 233 00:10:11,720 --> 00:10:15,740 スタイルは、最も簡単なものの一つです あなたたちは、完全なスコアを取得するために行うことができます。 234 00:10:15,740 --> 00:10:18,770 基本的に、あなただけの場合は、気にしている場合 あなたは注目の5分を支払います 235 00:10:18,770 --> 00:10:22,760 毎週あなたのコードに、次のことを行う必要があり 完全なスタイルのポイントを取得します。 236 00:10:22,760 --> 00:10:26,020 >> 最後に、我々はと呼ばれるもの持っています スコープの乗数。 237 00:10:26,020 --> 00:10:28,890 Scope--私はそれが大きな知っています 特にこのクラスの単語、。 238 00:10:28,890 --> 00:10:31,030 しかし、スコープ、すべてその手段 あなたがしようとしているということです 239 00:10:31,030 --> 00:10:33,670 あなたの能力を最大限にのpset。 240 00:10:33,670 --> 00:10:37,180 次の3つのうちで有効にした場合 あなたの4つの問題の 241 00:10:37,180 --> 00:10:39,460 しないでください 最後、あなたはおそらくしています 242 00:10:39,460 --> 00:10:41,630 範囲でいくつかのポイントを失うつもり。 243 00:10:41,630 --> 00:10:44,560 >> あなただけの問題を起動した場合でも、 それを歩くためにあなたのベストを尽くします。 244 00:10:44,560 --> 00:10:47,691 それが動作しない場合であっても、それを回し、 それが示していると示しているので、 245 00:10:47,691 --> 00:10:50,190 あなたがしようとしていること、その私たちに あなたは問題セットを実行しようとしました 246 00:10:50,190 --> 00:10:51,430 あなたの能力を最大限に。 247 00:10:51,430 --> 00:10:53,800 そして、私たちはあなたを与えることができます スコープのフルポイント。 248 00:10:53,800 --> 00:10:58,715 >> スコープときに我々のためにも非常に重要です 最低PSETスコアの低下について話しています。 249 00:10:58,715 --> 00:11:02,010 だからかけ 学期は、あなたたちは9のpsetを持っています。 250 00:11:02,010 --> 00:11:05,340 そして、我々は実際にドロップされます それらの9のうち最低のスコア、 251 00:11:05,340 --> 00:11:07,670 しかし、あなたは完全な範囲のポイントを持っている場合に限ります。 252 00:11:07,670 --> 00:11:11,120 >> ですから、不完全なのpsetでオンにした場合、 残念ながら、我々はその1を削除することはできません、 253 00:11:11,120 --> 00:11:13,540 あなたの範囲のため ポイントは完了しませんでした。 254 00:11:13,540 --> 00:11:16,570 だから、あなたはひどい週持っている場合でも、 あなたが死んでいると、あなたは病気だ場所 255 00:11:16,570 --> 00:11:20,040 またはあなたの犬が死んで、あなたの猫が死んで、 あなたは宿題で過負荷にしています、 256 00:11:20,040 --> 00:11:21,074 ちょうどPSETを試みます。 257 00:11:21,074 --> 00:11:22,490 あなたの能力を最大限にそれを実行してください。 258 00:11:22,490 --> 00:11:23,840 それが動作しない場合、それは問題ではありません。 259 00:11:23,840 --> 00:11:24,506 ただ、中にそれを回します。 260 00:11:24,506 --> 00:11:26,590 少なくとも我々が与えることができます あなたは努力のためのポイント。 261 00:11:26,590 --> 00:11:28,510 >> このクラスの努力のために、A。 262 00:11:28,510 --> 00:11:30,170 努力のために少なくとも最低のスコアの低下。 263 00:11:30,170 --> 00:11:32,354 そうそう。 264 00:11:32,354 --> 00:11:33,270 それはかなりそれです。 265 00:11:33,270 --> 00:11:36,521 誰もがそのように質問を持っています これまでクラスでどのように我々グレードの? 266 00:11:36,521 --> 00:11:37,187 あるいは、これらのいずれか? 267 00:11:37,187 --> 00:11:41,220 これらのいずれのでfar-- セクション、営業時間? 268 00:11:41,220 --> 00:11:41,720 クール。 269 00:11:41,720 --> 00:11:46,720 270 00:11:46,720 --> 00:11:47,800 OK。 271 00:11:47,800 --> 00:11:51,260 >> だから、これはその主題はnoです 1は本当にについて話をするのが好きです。 272 00:11:51,260 --> 00:11:53,084 私は実際にそれについて話すのが好きではありません。 273 00:11:53,084 --> 00:11:55,250 君たちは本当にしたくありません 私はそれについて話を聞きました。 274 00:11:55,250 --> 00:11:57,690 しかし残念ながら、我々はすべて それについて話をする必要があります。 275 00:11:57,690 --> 00:12:00,110 ダビデは20分費やし それについて話して講義。 276 00:12:00,110 --> 00:12:02,580 そして、それは主題であります 学術正直。 277 00:12:02,580 --> 00:12:08,110 >> だから我々はすべてここにおそらく書かれています 私たちのエールのキャリアの中でエッセイいつか。 278 00:12:08,110 --> 00:12:11,800 我々は、おそらく我々がきた話を得ています 私たちのエッセイを盗用しないように言われて、 279 00:12:11,800 --> 00:12:13,940 その仕事は私たちのものではありませんので。 280 00:12:13,940 --> 00:12:18,109 コンピュータサイエンスでは、我々は持っています コンセプトの同じ種類。 281 00:12:18,109 --> 00:12:20,150 あなたが提出するすべての作業、 あなたが書くすべてのコード 282 00:12:20,150 --> 00:12:21,900 あなたが書いたコードにする必要があります。 283 00:12:21,900 --> 00:12:24,280 あなたがしたコードであってはなりません どこか別の場所からコピーされました。 284 00:12:24,280 --> 00:12:26,777 コー​​ドされるべきではないこと あなたはグーグルとにそのまま流しこむました 285 00:12:26,777 --> 00:12:28,360 それが動作するかどうか、あなたは本当に知りません。 286 00:12:28,360 --> 00:12:32,440 あなたは一種の感を持っています それは本当に何をしているではないです。 287 00:12:32,440 --> 00:12:36,562 疑わしい場合、基本的に、 それだけで合理的です。 288 00:12:36,562 --> 00:12:38,520 私たちのシラバスでは、我々は持っています 物事の全体リスト 289 00:12:38,520 --> 00:12:40,560 我々は、合理的な参照してください。 妥当ではない対。 290 00:12:40,560 --> 00:12:43,820 >> 例えば、合理的な あなたとあなたの友達です 291 00:12:43,820 --> 00:12:47,360 行くにはどのような最善の方法を議論 論理的に問題を解決します。 292 00:12:47,360 --> 00:12:48,910 それはかなり合理的です。 293 00:12:48,910 --> 00:12:53,244 あなたならば合理的な何をしているではありません みんな、集まって同じコードを入力しました、 294 00:12:53,244 --> 00:12:54,410 そして、同じコードになりました。 295 00:12:54,410 --> 00:12:56,302 それは合理的ではありません。 296 00:12:56,302 --> 00:12:57,510 同じこと、エッセイのようなもの。 297 00:12:57,510 --> 00:12:59,290 あなたが議論したい場合は ねえ、あなたの友人と、 298 00:12:59,290 --> 00:13:00,220 これは私が書きたいものです。 299 00:13:00,220 --> 00:13:02,500 これらは私がしたいステップです 偉大な、それについて書くために取ります。 300 00:13:02,500 --> 00:13:03,208 それは素晴らしいです。 301 00:13:03,208 --> 00:13:04,790 お互いと協力してください。 302 00:13:04,790 --> 00:13:06,540 君たちが起動した場合 同じことを書いて、 303 00:13:06,540 --> 00:13:10,020 同じエッセイに回し、それはあまり大丈夫です。 304 00:13:10,020 --> 00:13:13,200 だから、疑わしい場合には、ちょうどそれをしません。 305 00:13:13,200 --> 00:13:16,940 >> ここでは、CS50に、私たちはスクリプトを持っています その実行は、テストするために自動化します 306 00:13:16,940 --> 00:13:21,740 あなたのコードの正しさだけでなく、 また、あなたのコードの独自性。 307 00:13:21,740 --> 00:13:25,920 だから位置で私たちを入れないで下さい EXCOMMにあなたのケースを参照すること。 308 00:13:25,920 --> 00:13:31,110 ちょうど皆のためだけのを聞かせてください この素晴らしい経験にします。 309 00:13:31,110 --> 00:13:33,600 誰もがより良い学習し、 我々はすべての幸せであり、 310 00:13:33,600 --> 00:13:37,926 我々は、すべてに設定されています このコースで成功。 311 00:13:37,926 --> 00:13:39,800 非常に何か このクラスのユニークな 312 00:13:39,800 --> 00:13:42,660 私は誰もが本当にすべきだと思うこと 注意を払う私たちが持っているということです 313 00:13:42,660 --> 00:13:44,930 何の後悔と呼ばれています 私たちのシラバスで句。 314 00:13:44,930 --> 00:13:50,010 だから、本質的に、72時間以内、もし あなたが何かをやったと信じて 315 00:13:50,010 --> 00:13:53,240 あなたがた、本当にわかりません 適切な場合には、私たちに来てください。 316 00:13:53,240 --> 00:13:57,220 私たちはあなたを約束し、その72時間以内 我々は、ケース自分自身を処理します 317 00:13:57,220 --> 00:13:59,820 以上に言及することなく、 行政の権威。 318 00:13:59,820 --> 00:14:03,100 >> だから、あなたは私に来ると言うならば、 アンディは、ちょっと、私は本当に申し訳ありませんが、 319 00:14:03,100 --> 00:14:07,620 しかし、私は私の中でカップルの行があると思います 私は一種のグーグルコードの最後の夜、 320 00:14:07,620 --> 00:14:10,120 スタックの降りました オーバーフロー、コピーと貼り付け、 321 00:14:10,120 --> 00:14:13,680 私は本当に、本当に申し訳ありません そのことについて、私に知らせてください。 322 00:14:13,680 --> 00:14:16,900 ちょうどそれが化膿させないでください そしてちょうど私がそれをキャッチすることを願っています。 323 00:14:16,900 --> 00:14:17,784 我々はそれをキャッチします。 324 00:14:17,784 --> 00:14:18,450 ただ、私に来ます。 325 00:14:18,450 --> 00:14:20,520 私は72時間以内に知ってみましょう。 326 00:14:20,520 --> 00:14:22,240 我々は解決策を考え出すだろう。 327 00:14:22,240 --> 00:14:26,679 そして、我々は、我々はを参照していますことをお約束 基本的に大学当局。 328 00:14:26,679 --> 00:14:29,220 だから、あなたの最善の利益にです ただみんなと正直に言うと 329 00:14:29,220 --> 00:14:31,720 コー​​スに関与。 330 00:14:31,720 --> 00:14:34,630 >> OK。 331 00:14:34,630 --> 00:14:35,240 OK。 332 00:14:35,240 --> 00:14:37,800 だから今、すぐに前に 私は上に移動、誰にもありません 333 00:14:37,800 --> 00:14:42,670 物流に関する質問を持っています どのコースで我々は実行するつもりです、 334 00:14:42,670 --> 00:14:45,982 どのセクションを行っています 、そのいずれかを実行するには? 335 00:14:45,982 --> 00:14:46,711 OK。 336 00:14:46,711 --> 00:14:47,210 うん。 337 00:14:47,210 --> 00:14:48,126 >> 聴衆:[聞こえませんか]? 338 00:14:48,126 --> 00:14:50,414 339 00:14:50,414 --> 00:14:51,080 ANDI PENG:うん。 340 00:14:51,080 --> 00:14:54,850 だから、どのように多くのあなたのquizzes-- 月曜日/水曜日のセクションの? 341 00:14:54,850 --> 00:14:56,700 にどのように多くのあなたのあります 火曜日/木曜日? 342 00:14:56,700 --> 00:14:58,550 [OK]を、ので、ここでは固体分割です。 343 00:14:58,550 --> 00:15:00,900 だから我々は実行方法 イェール大学では、我々です 344 00:15:00,900 --> 00:15:04,040 別々の2を持ってしようとしています 各section--ための一つのquizzes--こと 345 00:15:04,040 --> 00:15:06,160 授業中に撮影されます。 346 00:15:06,160 --> 00:15:09,310 私は、それは10月、10月の終わりだと思います 週1としてそのようなこと、 347 00:15:09,310 --> 00:15:10,794 クイズの。 348 00:15:10,794 --> 00:15:11,960 うん、これだけのクラスに来ます。 349 00:15:11,960 --> 00:15:13,920 その月曜日か水曜日に、 あなたはクイズを取りますよ。 350 00:15:13,920 --> 00:15:16,336 その火曜日または木曜日に、 あなたは別のクイズを取りますよ。 351 00:15:16,336 --> 00:15:18,570 しかし、同じ材料がカバーされます。 352 00:15:18,570 --> 00:15:19,160 うん。 353 00:15:19,160 --> 00:15:20,660 良い質問。 354 00:15:20,660 --> 00:15:21,160 うん。 355 00:15:21,160 --> 00:15:23,260 >> 観客:我々は 私たちの成績をチェックするために行きますか? 356 00:15:23,260 --> 00:15:23,926 >> ANDI PENG:うん。 357 00:15:23,926 --> 00:15:28,420 だから私は、発送させていただきます 電子メール何でも毎週 358 00:15:28,420 --> 00:15:31,460 クイズはgraded--ある場合や、 申し訳ありませんが、時のpsetは傾斜しています。 359 00:15:31,460 --> 00:15:34,120 Psetは通常、電源が入っています 正午または金曜日までにインチ 360 00:15:34,120 --> 00:15:37,540 だから私は私がすることを約束します あなたに戻ってそれらを取得しよう 361 00:15:37,540 --> 00:15:40,000 以下の金曜日の正午まで。 362 00:15:40,000 --> 00:15:44,950 >> たびに私年生、私が送信されますPSET、 グレードブックに通知アウト 363 00:15:44,950 --> 00:15:47,070 それは、あなたのスコアを伝えます オンラインで閲覧することができます。 364 00:15:47,070 --> 00:15:52,022 だから、右今週、私の後に 先週ののpsetをグレーディング仕上げ、 365 00:15:52,022 --> 00:15:54,230 あなたたちは、電子メールを取得します 通知は、あなたを伝えます 366 00:15:54,230 --> 00:15:55,870 ちょっとこれはどこにあります あなたの成績を見に行きます。 367 00:15:55,870 --> 00:15:57,680 そして、あなたはすべてのを見ることができます あなたの成績の内訳。 368 00:15:57,680 --> 00:15:58,555 コメントを見ることができます。 369 00:15:58,555 --> 00:16:00,360 ああ、迅速な事も。 370 00:16:00,360 --> 00:16:03,060 偉大でコメントセクション ここで、私はおそらくよ本です 371 00:16:03,060 --> 00:16:05,300 私の時間グレーディングの大半を費やしています。 372 00:16:05,300 --> 00:16:07,094 それでは、一つのことは、 本当に重要な時 373 00:16:07,094 --> 00:16:09,010 皆さんが見ています あなたのpsetであなたの成績 374 00:16:09,010 --> 00:16:11,400 見ているだけでなく、 物理的なスコアで 375 00:16:11,400 --> 00:16:14,630 に時間を割いて 実際に私のコメントを読んで。 376 00:16:14,630 --> 00:16:17,820 >> 多くの場合、それはあなたのフィードバックを与えます あなたが問題を解決している方法について。 377 00:16:17,820 --> 00:16:20,480 あなたは何をする必要がある場合 少し良く何か、 378 00:16:20,480 --> 00:16:24,080 建設的な批判は、通常、 最高のそれらのコメントセクションに与えられました。 379 00:16:24,080 --> 00:16:26,950 だから、私はつもりですしてください、お願い コメントを書く時間を過ごすために。 380 00:16:26,950 --> 00:16:30,440 、私は本当にそれをお願い申し上げてください。 あなたたちは、それらのコメントを読んでいました場合。 381 00:16:30,440 --> 00:16:31,170 OK。 382 00:16:31,170 --> 00:16:34,150 クール。 383 00:16:34,150 --> 00:16:34,680 >> 大丈夫。 384 00:16:34,680 --> 00:16:40,680 だから我々は話を始めるとしています ちょうどすぐに見直します 385 00:16:40,680 --> 00:16:45,040 材料の一部から 週ゼロちょうど私たちがしています 386 00:16:45,040 --> 00:16:48,760 以下のための右ページに 今週の問題を開始します。 387 00:16:48,760 --> 00:16:52,600 だから、whileループは1であります ループの3種類の 388 00:16:52,600 --> 00:16:54,510 我々は以前、このクラスで議論しました。 389 00:16:54,510 --> 00:16:57,060 >> 基本的にwhileループ 構文で記述されています 390 00:16:57,060 --> 00:17:00,666 ここで、一定の条件ながら、 繰り返しこれを行うには、右? 391 00:17:00,666 --> 00:17:02,040 ここで、このグラフィックであると考えてください。 392 00:17:02,040 --> 00:17:04,780 あなたは、で開始するつもりです あなたのコード内の特定のポイント。 393 00:17:04,780 --> 00:17:09,030 あなたは、ループ条件を入力するつもりです if--私は、xが1未満であるknow--ません。 394 00:17:09,030 --> 00:17:11,677 >> それが本当であれば、あなたが行っています ループ本体を実行します。 395 00:17:11,677 --> 00:17:14,010 そして、あなたがやって維持するつもりです その再び、再び、再び、 396 00:17:14,010 --> 00:17:17,900 以上の、それは、理由はありますover-- あなたの状態になるまでloop-- 397 00:17:17,900 --> 00:17:19,079 偽。 398 00:17:19,079 --> 00:17:22,140 このように、whileループだから 簡単な方法の一つです 399 00:17:22,140 --> 00:17:25,619 条件の任意の並べ替えを書くために 何度何度も繰り返す必要があります。 400 00:17:25,619 --> 00:17:28,109 ただ、いつでも気をつけて あなたは、ループの任意の並べ替えを書いています 401 00:17:28,109 --> 00:17:32,140 あなたは、終了条件として持っていること よく何でもそれをアップデートします 402 00:17:32,140 --> 00:17:36,714 あなたのループがちょうどしないようにです 無限に何度も実行します。 403 00:17:36,714 --> 00:17:38,630 いずれにせよ、あなたが行っています 確認するにします 404 00:17:38,630 --> 00:17:42,670 あなたはいくつかの側面を変更していること あなたのコードまたはループの終わりに 405 00:17:42,670 --> 00:17:46,680 ちょうどあなたが方法を持っていることを確認します 状態に向かって進行します 406 00:17:46,680 --> 00:17:48,400 あなたが最後に会いたいということ。 407 00:17:48,400 --> 00:17:50,239 それは誰にでも意味がありますか? 408 00:17:50,239 --> 00:17:52,530 私達はちょうどにしたくありません ここで、このスパイラルに巻き込ま 409 00:17:52,530 --> 00:17:55,710 私たちは周りとの周りに行くと、 ループを遮断する方法はありません。 410 00:17:55,710 --> 00:17:58,844 基本的に、すべてのループ それを行うための方法があります。 411 00:17:58,844 --> 00:17:59,344 OK。 412 00:17:59,344 --> 00:18:03,030 413 00:18:03,030 --> 00:18:06,060 >> あなたの第二に、多くの あなたのマリオのpsetで 414 00:18:06,060 --> 00:18:08,910 おそらく採用しなければなりませんでした このタイプのループ。 415 00:18:08,910 --> 00:18:11,802 これは、DOループしばらく呼ばれています。 416 00:18:11,802 --> 00:18:14,510 まず第一に、誰も私を伝えることができます 何をすべきかの違い 417 00:18:14,510 --> 00:18:16,586 ループとwhileループですが? 418 00:18:16,586 --> 00:18:17,086 うん。 419 00:18:17,086 --> 00:18:21,030 >> 者:do-whil​​e文 [聞こえない]最初に実行されます。 420 00:18:21,030 --> 00:18:22,120 >> ANDI PENG:うん、まさに。 421 00:18:22,120 --> 00:18:27,130 ループが常に同じようにしながらそう 括弧の中、DOの内側にあります 422 00:18:27,130 --> 00:18:30,520 そこに、その状態を行います the--申し訳ありませんをチェックする前に、 423 00:18:30,520 --> 00:18:32,940 前にそのコードを実行し 状態をチェックします。 424 00:18:32,940 --> 00:18:37,200 そして、これは私たちに、特に関連性があります ここで、このクラスでは、ほとんどの時間のため 425 00:18:37,200 --> 00:18:41,450 我々はプロンプトを表示したいとしています 入力のいくつかの並べ替えのためのユーザ。 426 00:18:41,450 --> 00:18:43,520 そして、に応じて 彼らは私たちを与える入力、 427 00:18:43,520 --> 00:18:46,150 その後、我々はああ、実行、評価することができます 我々は再びそれらを促す必要がありますか? 428 00:18:46,150 --> 00:18:49,930 >> マリオでだから、ユーザーがあなたに与えた場合 負の高さ、例えば、 429 00:18:49,930 --> 00:18:52,990 あなたが最初のプロンプトになるだろう 内部であるものは何でも。 430 00:18:52,990 --> 00:18:54,820 その後はしばらくをチェックするつもりです。 431 00:18:54,820 --> 00:18:57,570 あなたが知っている、1陰性です、 正の数ということですか? 432 00:18:57,570 --> 00:19:00,680 そうでない場合、私は行くつもりです 背中とDOとリピートを繰り返します 433 00:19:00,680 --> 00:19:03,950 彼らまで繰り返し、繰り返し 最終的にあなたが好きな番号を与え、 434 00:19:03,950 --> 00:19:07,002 私たちは、すべてのコードで使用することができること。 435 00:19:07,002 --> 00:19:09,210 それはのためにかなり重要です 本質的に任意のユーザー入力。 436 00:19:09,210 --> 00:19:11,760 私はあなたを保証することができます ここで、PSETの時間 437 00:19:11,760 --> 00:19:15,070 我々は、入力をお願い コー​​ドの任意の並べ替え、私たちがしています 438 00:19:15,070 --> 00:19:17,540 おそらくあなたを与えるつもり 私たちがしているれているテストケース 439 00:19:17,540 --> 00:19:21,200 あなたのその悪い何かを与えるつもり あなたのコードを破るしようとするだろう。 440 00:19:21,200 --> 00:19:25,044 >> 我々は、入力ANをお願いしようとした場合 整数は、私たちはあなたの文字列を与えることができます 441 00:19:25,044 --> 00:19:26,460 そしてあなたがそれを処理しますする方法を参照してください。 442 00:19:26,460 --> 00:19:30,610 私たちは年齢を採用するように依頼した場合、 私たちはあなたに負の数を与えることができます 443 00:19:30,610 --> 00:19:32,340 あなたがそれを処理する方法を確認してください。 444 00:19:32,340 --> 00:19:37,260 ただ、あなたたちはのためにテストしていることを確認してください ケースとは、あなたは最高得ることはありません 445 00:19:37,260 --> 00:19:38,590 入力、ちょうどとします。 446 00:19:38,590 --> 00:19:40,510 そして、do-whil​​e文 しばしば最高です 447 00:19:40,510 --> 00:19:45,260 ので、あなたのコードを設計する方法 それは、その範囲を満たします。 448 00:19:45,260 --> 00:19:45,760 OK。 449 00:19:45,760 --> 00:19:48,930 450 00:19:48,930 --> 00:19:49,470 >> OK。 451 00:19:49,470 --> 00:19:53,270 だから、これはおそらく最もです 3つのうちの複雑なループ 452 00:19:53,270 --> 00:19:54,990 我々はこれまでに見てきたこと。 453 00:19:54,990 --> 00:19:56,689 そして、それは、最初は非常に怖いようです。 454 00:19:56,689 --> 00:19:59,730 しかし、私はあなたたちと、あなたを保証します forループを使用する方法のこつを得ます、 455 00:19:59,730 --> 00:20:03,320 それは最も有用なものの一つです、 あなたの武器の中で最も有用なツール 456 00:20:03,320 --> 00:20:05,300 このクラスで前方に移動します。 457 00:20:05,300 --> 00:20:09,920 >> ですから、例えば、スクラッチで、 我々は、この非常に単純なブロックを持っていました 458 00:20:09,920 --> 00:20:13,180 それはちょうどこの特定を繰り返し述べて 一定の回数をフレーズ。 459 00:20:13,180 --> 00:20:16,260 ところで、SAJ-- それはScazアンディジェイソンです。 460 00:20:16,260 --> 00:20:18,740 私たちはしばしば私たちの電子メールSAJに署名。 461 00:20:18,740 --> 00:20:20,360 我々はSAJを言うなら、混同しないでください。 462 00:20:20,360 --> 00:20:22,630 それは私たちだけです。 463 00:20:22,630 --> 00:20:28,600 >> だからスクラッチでは、我々は持っていることができました 私はSAJを愛し繰り返し、言っブロック! 464 00:20:28,600 --> 00:20:29,430 10回。 465 00:20:29,430 --> 00:20:30,130 非常にシンプル。 466 00:20:30,130 --> 00:20:32,302 その背後にあるロジックがあります 非常に、非常に単純な、右? 467 00:20:32,302 --> 00:20:35,260 私は、最初の最初に通過したいです 時間とその、二回目を参照してください 468 00:20:35,260 --> 00:20:38,510 など、その3回目を参照してください ように、あなたは10に当たるまで。 469 00:20:38,510 --> 00:20:41,960 >> 我々はその中を表すことになり、道 コー​​ドはちょうどループのためのシンプルを介して行われます。 470 00:20:41,960 --> 00:20:45,440 だから、宣言するつもりだ、のために この場合は、ここであなたの変数、 471 00:20:45,440 --> 00:20:46,349 int型を持ちます。 472 00:20:46,349 --> 00:20:47,390 我々はそれを私の名前しようとしています。 473 00:20:47,390 --> 00:20:49,500 我々は0に初期化するつもりです。 474 00:20:49,500 --> 00:20:52,490 停止版です 私になるだろうと、10未満です。 475 00:20:52,490 --> 00:20:54,622 そして、この更新プログラムは、私が++になるだろう。 476 00:20:54,622 --> 00:20:57,750 >> そして、ループ内で、それが起こっています 最終的にまでそれを実行します 477 00:20:57,750 --> 00:21:01,490 中condition--の終わりに当たります 場合は、それがループを破るために起こっています。 478 00:21:01,490 --> 00:21:04,600 あなたのものがあるはずです 人はすべての種類の前に見てきました 479 00:21:04,600 --> 00:21:07,270 そして、1を設定し、あなたの問題のためにしなければなりませんでした。 480 00:21:07,270 --> 00:21:12,310 誰もが任意の質問を持っています 今forループに関する? 481 00:21:12,310 --> 00:21:12,930 OK。 482 00:21:12,930 --> 00:21:13,430 グレート。 483 00:21:13,430 --> 00:21:17,520 484 00:21:17,520 --> 00:21:18,620 >> OK。 485 00:21:18,620 --> 00:21:22,270 持っているあなたの人々のためにそう 今週のpsetの仕様を読みます 486 00:21:22,270 --> 00:21:27,690 私たちが採用する必要があるとしていることを知っています 何かASCIIとASCIIテーブルと呼ばれます。 487 00:21:27,690 --> 00:21:32,380 ダビデは講演で簡単にかけました どのようにコンピュータがすべてをessentially-- 488 00:21:32,380 --> 00:21:35,410 コンピュータで符号化されます バイナリ、0と1インチ 489 00:21:35,410 --> 00:21:39,740 そして、コンピュータができます方法 加えて、別の値を格納します 490 00:21:39,740 --> 00:21:44,360 0と1にマッピングによってあります これらの数字は、他の数字を表現します 491 00:21:44,360 --> 00:21:47,220 または本質的に他の文字。 492 00:21:47,220 --> 00:21:49,810 >> 、この場合はそう すべてのそれがないtable-- ASCII 493 00:21:49,810 --> 00:21:53,600 マップ文字、または文字は数字に、です。 494 00:21:53,600 --> 00:21:57,385 ソースコードファイル中のSO あなたのそれは見てcomputer--、 495 00:21:57,385 --> 00:22:00,010 ちょっと、0と1の束、 0と1、0と1。 496 00:22:00,010 --> 00:22:02,350 それはに保存されているものです お使いのコンピュータの実際のメモリ。 497 00:22:02,350 --> 00:22:04,750 >> しかし、私たち人間がしたいとき コンピュータと通信、 498 00:22:04,750 --> 00:22:08,249 我々としては、例えば、言いますwant--、 私は、大文字のAをしたい場合は、 499 00:22:08,249 --> 00:22:10,540 私はいくつかの方法が必要にするつもりです ああ、コンピュータを伝えます、 500 00:22:10,540 --> 00:22:16,300 私は大文字のAを入力すると、私が意味します バイナリでこの表現。 501 00:22:16,300 --> 00:22:22,260 >> そして、私たちはそれを行う方法が投げています 任意のものは、ASCIIテーブルと呼ばれます、 502 00:22:22,260 --> 00:22:25,020 どこ、ヒトなど、など プログラマ、いくつかの時間前に、 503 00:22:25,020 --> 00:22:28,660 我々は、任意に、私たちことを決定しました これらの番号を割り当てするつもりでした 504 00:22:28,660 --> 00:22:30,960 これらの文字の値。 505 00:22:30,960 --> 00:22:32,720 >> だからみんながこのオンラインをグーグルことができます。 506 00:22:32,720 --> 00:22:37,120 私はそれへのリンクはあなたの中にあると思います ただ、ASCIIマップテーブルpset--、ASCII 507 00:22:37,120 --> 00:22:37,720 テーブル。 508 00:22:37,720 --> 00:22:40,722 それはちょうど、バイナリ変換します 文字に数字。 509 00:22:40,722 --> 00:22:42,930 そして、それは非常にになるだろう 問題セットの便利 510 00:22:42,930 --> 00:22:45,470 あなたがしたいとき 何かを計算したり、あなたの場合 511 00:22:45,470 --> 00:22:47,880 特定の表示したいです 文字や整数 512 00:22:47,880 --> 00:22:50,327 または特定の文字を操作します。 513 00:22:50,327 --> 00:22:52,160 それは非常にになるだろう あなたのすべてのことが重要 514 00:22:52,160 --> 00:22:55,140 アスキーテーブルをナビゲートする方法を知っています。 515 00:22:55,140 --> 00:23:01,260 >> たとえば、大文字のAだから 番号65で表されます。 516 00:23:01,260 --> 00:23:04,207 小文字のA 97で表されます。 517 00:23:04,207 --> 00:23:07,040 だから、ことを知っておくことが重要です 2つの値の間の差 518 00:23:07,040 --> 00:23:08,320 32です。 519 00:23:08,320 --> 00:23:13,210 多くの場合、あなたはから変換する必要がある場合 他の一つは、その差は32です。 520 00:23:13,210 --> 00:23:15,710 あなたが親切ならそして、心配しないでください 最初はこの上の混乱。 521 00:23:15,710 --> 00:23:20,230 私たちはどのように我々は希望の上に行きますよ 実際のコードでこれを採用しています。 522 00:23:20,230 --> 00:23:24,700 523 00:23:24,700 --> 00:23:26,380 >> OK。 524 00:23:26,380 --> 00:23:30,770 、アウトラップトップとのあなたのそれらのためにそう アスキーテーブルをプルアップすること自由に感じ、 525 00:23:30,770 --> 00:23:36,030 これらはおそらくなるため、 リファレンスにあなたたちを必要とします 526 00:23:36,030 --> 00:23:38,100 何の文字があります。 527 00:23:38,100 --> 00:23:38,640 OK。 528 00:23:38,640 --> 00:23:42,840 >> だから、特定の知っています 文字は、特定の番号にマップ 529 00:23:42,840 --> 00:23:47,240 私は最初に実行した場合 そのラインは、printfのaをcode-- 530 00:23:47,240 --> 00:23:50,900 、マイナスを小文字 大文字のAで誰もい 531 00:23:50,900 --> 00:23:55,880 どのようになるかの推測を持っています 今画面のプリントアウト? 532 00:23:55,880 --> 00:23:58,190 >> 何をするか、すべてのだから最初 表す小文字? 533 00:23:58,190 --> 00:24:00,990 ことは、どのような数であり、 アスキーテーブルで符号化されました。 534 00:24:00,990 --> 00:24:01,490 ごめんなさい? 535 00:24:01,490 --> 00:24:02,630 >> 聴衆:97? 536 00:24:02,630 --> 00:24:03,630 >> ANDI PENG:97、素晴らしいです。 537 00:24:03,630 --> 00:24:05,077 そして大文字のAは何ですか? 538 00:24:05,077 --> 00:24:06,330 >> 聴衆:65。 539 00:24:06,330 --> 00:24:08,255 >> ANDI PENG:だから97のマイナス65は何ですか? 540 00:24:08,255 --> 00:24:09,227 >> 聴衆:32。 541 00:24:09,227 --> 00:24:09,810 ANDI PENG:[OK]をクリックします。 542 00:24:09,810 --> 00:24:13,530 そうしようとしているあなたたちをどう思いますか ときに私が入力コード行が起こります 543 00:24:13,530 --> 00:24:14,670 私のコンピュータに? 544 00:24:14,670 --> 00:24:17,981 545 00:24:17,981 --> 00:24:19,896 >> 聴衆:[聞こえません]。 546 00:24:19,896 --> 00:24:21,020 ANDI PENG:申し訳ありませんが、発言。 547 00:24:21,020 --> 00:24:22,520 心配ない。 548 00:24:22,520 --> 00:24:25,750 これは非常に安全です 環境、マイナスカメラ。 549 00:24:25,750 --> 00:24:27,550 我々は、すべての心配ないto--つもりです。 550 00:24:27,550 --> 00:24:30,940 ただ、私たちはすべてのようなふりをするつもりです それだけで私たちはこの部屋で冷やしています。 551 00:24:30,940 --> 00:24:31,480 心配ない。 552 00:24:31,480 --> 00:24:33,410 いいえ質問はあまりにも愚かではありません。 553 00:24:33,410 --> 00:24:35,300 無回答は愚かな答えではありません。 554 00:24:35,300 --> 00:24:38,260 私はおそらく間違いを犯すつもりです 私の授業のコースインチ 555 00:24:38,260 --> 00:24:40,740 真剣に、みんなは、ちょうどそれを口走ります。 556 00:24:40,740 --> 00:24:43,092 自分に自信を持って、あなたは知っていますか? 557 00:24:43,092 --> 00:24:43,800 だから、何でしたか? 558 00:24:43,800 --> 00:24:47,990 誰が最後の答えということですか? 559 00:24:47,990 --> 00:24:48,540 OK。 560 00:24:48,540 --> 00:24:50,380 その素晴らしく、明確なシャウト。 561 00:24:50,380 --> 00:24:51,220 >> 聴衆:32? 562 00:24:51,220 --> 00:24:51,850 >> ANDI PENG:32。 563 00:24:51,850 --> 00:24:54,141 [OK]を、のこのコードを実行してみましょうし、 それは何が起こるかだかどうかを確認します。 564 00:24:54,141 --> 00:25:00,260 565 00:25:00,260 --> 00:25:00,760 OK。 566 00:25:00,760 --> 00:25:03,300 567 00:25:03,300 --> 00:25:06,360 だから、あなたたちは一種の缶など 、私はきた典型的な表記法を参照してください。 568 00:25:06,360 --> 00:25:12,250 私たちが採用する方法のためにここで設定 当社のコンピュータ上のプログラムの任意の並べ替え。 569 00:25:12,250 --> 00:25:14,770 私たちは、私たちの主な機能を持っています 私たちの主な機能の中。 570 00:25:14,770 --> 00:25:17,265 私はちょうどコピーするつもりだと このコード行を貼り付けます。 571 00:25:17,265 --> 00:25:21,082 572 00:25:21,082 --> 00:25:23,540 時皆さんも気をつけて コピーしたコードを貼り付けています。 573 00:25:23,540 --> 00:25:28,750 時には、特定の事業者 正しくオーバー貼り付けられません。 574 00:25:28,750 --> 00:25:31,397 その場合には、マイナス 記号は、実際にダッシュしました。 575 00:25:31,397 --> 00:25:32,980 だから、コンピュータはそれを拾うませんでした。 576 00:25:32,980 --> 00:25:35,870 だから私は戻って行かなければならなかったし、 物理的にそれを再入力します。 577 00:25:35,870 --> 00:25:37,846 ちょうどその時に注意してください あなたたちはそれをやっています。 578 00:25:37,846 --> 00:25:41,178 579 00:25:41,178 --> 00:25:42,660 >> OK。 580 00:25:42,660 --> 00:25:43,980 ここでは、これを実行するつもりです。 581 00:25:43,980 --> 00:25:45,670 だから我々は我々のsection2のにCDになるだろう。 582 00:25:45,670 --> 00:25:50,470 583 00:25:50,470 --> 00:25:52,030 私はこのプログラムasciimathと呼ばれてきました。 584 00:25:52,030 --> 00:25:55,690 私たちはいずれかを実行するときに、覚えています プログラムは、我々が最初にそれをコンパイルしたいです 585 00:25:55,690 --> 00:25:57,150 私たちのメイクを介して実行して。 586 00:25:57,150 --> 00:26:00,030 そして、我々は実際に実行したいです ドットスラッシュを実行してプログラム。 587 00:26:00,030 --> 00:26:01,280 だから我々は./asciimathするつもりです。 588 00:26:01,280 --> 00:26:05,780 589 00:26:05,780 --> 00:26:06,590 >> 右、そこに私達は行きます。 590 00:26:06,590 --> 00:26:07,410 そして、我々は32を参照してください。 591 00:26:07,410 --> 00:26:07,930 よくやった。 592 00:26:07,930 --> 00:26:10,340 あなたは、キャンディの部分を値します。 593 00:26:10,340 --> 00:26:11,160 あなたのためのキャンディ。 594 00:26:11,160 --> 00:26:11,900 ごめんなさい。 595 00:26:11,900 --> 00:26:13,100 大丈夫。 596 00:26:13,100 --> 00:26:13,670 OK。 597 00:26:13,670 --> 00:26:18,070 だから我々はここでの例に戻ることができます。 598 00:26:18,070 --> 00:26:23,530 599 00:26:23,530 --> 00:26:24,345 いや、ああ。 600 00:26:24,345 --> 00:26:29,147 601 00:26:29,147 --> 00:26:31,090 ああ。 602 00:26:31,090 --> 00:26:32,490 OK。 603 00:26:32,490 --> 00:26:34,610 私はちょうどそのようにそれを維持するつもりです。 604 00:26:34,610 --> 00:26:48,520 605 00:26:48,520 --> 00:26:51,240 OK。 606 00:26:51,240 --> 00:26:51,740 OK。 607 00:26:51,740 --> 00:26:55,340 あなたたちが見ることができるように、我々が行うことができます 非常に興味深いものがたくさん、 608 00:26:55,340 --> 00:26:58,880 非常にクールなものの多くは、多くの 関係する非常に複雑なもの 609 00:26:58,880 --> 00:27:02,720 ASCII文字と数字。 610 00:27:02,720 --> 00:27:05,890 あなたは5行目に降りたら、 それは、一緒に従うことがたくさんです。 611 00:27:05,890 --> 00:27:07,640 私たちは行くつもりはありません 貫​​通部。 612 00:27:07,640 --> 00:27:10,720 あなたができる場合は、お気軽に、 紙の上の理由、それを 613 00:27:10,720 --> 00:27:14,750 最初のときに何が起こってされるべきである上 あなたの入力値のような文字列。 614 00:27:14,750 --> 00:27:19,720 例えば、その最後の行では、我々が持っています 特定number--を表しますz-- 615 00:27:19,720 --> 00:27:24,740 A--も表しています 特定number--プラス1モジュロ26 616 00:27:24,740 --> 00:27:26,750 プラス小文字。 617 00:27:26,750 --> 00:27:29,220 >> あなたたちは、読み続ける場合 これらを通して、あなた 618 00:27:29,220 --> 00:27:34,009 に出てくるパターンが表示されることがあり どのように我々は、コードを操作しています。 619 00:27:34,009 --> 00:27:36,050 私は非常に、非常に示唆しています あなたのセクションの後にすべての 620 00:27:36,050 --> 00:27:38,160 人は先に行くと入力 お使いのコンピュータでそれらのすべて 621 00:27:38,160 --> 00:27:40,060 そして、どのような参照してください。 数字が出てきています 622 00:27:40,060 --> 00:27:43,090 そして、推論ものである理由を通じ あなたのpsetのためので、起こっ 623 00:27:43,090 --> 00:27:45,060 それは本当に重要なことでしょう あなたが理解するために 624 00:27:45,060 --> 00:27:47,132 なぜ特定の物事が起こっています。 625 00:27:47,132 --> 00:27:48,590 これらのスライドのすべてがオンラインになります。 626 00:27:48,590 --> 00:27:51,510 にしようとそんなに心配ありません 物理的にノートを下にコピーします。 627 00:27:51,510 --> 00:27:52,510 すべてのオンライン。 628 00:27:52,510 --> 00:27:54,050 このセクション自体がオンラインになります。 629 00:27:54,050 --> 00:27:57,500 すべての私のソースコードを、その 私がオンラインになります実行していますよ。 630 00:27:57,500 --> 00:27:58,180 うん。 631 00:27:58,180 --> 00:27:59,430 あなたはまだ質問がありましたか? 632 00:27:59,430 --> 00:28:00,587 聴衆:モジュロとは何ですか? 633 00:28:00,587 --> 00:28:01,170 ANDI PENG:[OK]をクリックします。 634 00:28:01,170 --> 00:28:05,620 だから、剰余がために起こっている事業者であります あなたの男のPSETにかなり重要です 635 00:28:05,620 --> 00:28:06,690 ここに。 636 00:28:06,690 --> 00:28:12,280 だからオペレータ方法 C言語でプログラミングの仕事で 637 00:28:12,280 --> 00:28:16,360 あなたはと呼ばれるものがあるということです 分割シンボルとモジュラスシンボル、 638 00:28:16,360 --> 00:28:18,350 これは単にパーセント記号のようなものです。 639 00:28:18,350 --> 00:28:24,840 >> あなたが整数を行い、C、でそう スラッシュで整数で割りました、 640 00:28:24,840 --> 00:28:27,720 Cはカットする傾向があります 小数点のすべてオフ、 641 00:28:27,720 --> 00:28:30,290 整数が望んでいるため、 整数に変換します。 642 00:28:30,290 --> 00:28:33,550 それは二重になりたいことはないだろう すべてのそれの後に小数の束を持ちます。 643 00:28:33,550 --> 00:28:39,322 >> 私は2で割っ3を行うのであれば、それが起こっています 0.5を遮断し、ちょうどあなたの1を得ました。 644 00:28:39,322 --> 00:28:41,530 だから、なるように何か あなたがいるときの非常に慎重 645 00:28:41,530 --> 00:28:45,294 プログラミングに数学の任意の並べ替えをして、 数字はあなたが得ることです 646 00:28:45,294 --> 00:28:47,210 数字ではないかもしれません あなたが考えていたことを、 647 00:28:47,210 --> 00:28:50,190 あなたに丸め理由であります 最後のpsetは非常に重要です。 648 00:28:50,190 --> 00:28:51,980 >> モジュロはあなたの残りの部分を提供します。 649 00:28:51,980 --> 00:28:56,200 私は3をした場合、例えばそう 剰余2-- SO 3パーセント記号2-- 650 00:28:56,200 --> 00:28:58,020 それはあなたのそのの残りの部分を与えるだろう。 651 00:28:58,020 --> 00:29:00,460 だから3 2で割った1.5です。 652 00:29:00,460 --> 00:29:01,410 これは、1の1余りです。 653 00:29:01,410 --> 00:29:04,600 それは、あなたに1を与えるだろう その残りがあります。 654 00:29:04,600 --> 00:29:07,361 >> だからみんなが動いているとき アスキーテーブルを通して、 655 00:29:07,361 --> 00:29:09,735 モジュロはされてしまいます 非常に重要な何か、 656 00:29:09,735 --> 00:29:11,240 私たちはその後で説明します。 657 00:29:11,240 --> 00:29:17,750 658 00:29:17,750 --> 00:29:19,040 >> OK。 659 00:29:19,040 --> 00:29:27,300 だから、かなり何か、 かなり新しく、かなりユニークな 660 00:29:27,300 --> 00:29:31,920 私たちは、今週議論してきたということです 配列が何であるかの概念。 661 00:29:31,920 --> 00:29:34,370 だから、配列は最初のものです データ構造のタイプ 662 00:29:34,370 --> 00:29:36,320 我々はするつもりだこと このクラスで発生します。 663 00:29:36,320 --> 00:29:40,010 すべてのデータ構造があります 任意のいくつかの並べ替え、 664 00:29:40,010 --> 00:29:43,370 構造のような文字通りの事 プログラマとして、私たちが作成したこと、 665 00:29:43,370 --> 00:29:47,890 私たちは私たちのコードに入れていることをその コー​​ドの他の部分を含めることができます。 666 00:29:47,890 --> 00:29:51,090 >> この意味で、array--そう ファイルキャビネットのようなものだと思い、 667 00:29:51,090 --> 00:29:53,470 どこが違う開く場合 あなたのファイルキャビネットの棚、 668 00:29:53,470 --> 00:29:55,630 あなたは別のものにアクセスすることができます。 669 00:29:55,630 --> 00:29:58,630 メモリでは、アレイは単にやっています お使いのコンピュータ上で同じこと。 670 00:29:58,630 --> 00:30:01,730 あなたは異なるblocks--我々を持つことができます 配列のindices--それらを呼び出します。 671 00:30:01,730 --> 00:30:04,210 それはちょうどブロックのようなものです、 メモリの棚 672 00:30:04,210 --> 00:30:07,580 私たちはあなたの中に作成したこと コンピュータあなたが入力することができます 673 00:30:07,580 --> 00:30:10,270 別のスペースに特定のもの。 674 00:30:10,270 --> 00:30:18,000 >> アレイを有するだから、 常にspecify--する必要があります 675 00:30:18,000 --> 00:30:22,360 あなたが宣言指定する必要があります 以下の形式の配列。 676 00:30:22,360 --> 00:30:24,290 あなたが最初になるだろう データ型を指定します 677 00:30:24,290 --> 00:30:25,831 あなたは、アレイの作成すること。 678 00:30:25,831 --> 00:30:28,870 私は、整数の配列をしたい場合は、 私はすぐそこにint型を置くつもり。 679 00:30:28,870 --> 00:30:32,079 私は文字列の配列をしたい場合は、 私は、そこに文字列を置くつもりです 680 00:30:32,079 --> 00:30:34,995 お使いのアレイの名前を入力し、[ あなたは角括弧を持っているつもりです。 681 00:30:34,995 --> 00:30:39,580 そして、角括弧の内側に、あなたがしています あなたの配列のサイズを持っているつもり。 682 00:30:39,580 --> 00:30:42,900 >> には本当に重要な何か アレイを作成するときに心に留めておきます 683 00:30:42,900 --> 00:30:46,530 あなたが作成した後、その アレイは、そのサイズを変更することはできません。 684 00:30:46,530 --> 00:30:50,180 だから、あなたが今いることを知っている場合 あなたは、サイズ10の配列を持っています 685 00:30:50,180 --> 00:30:54,550 私は10個のセルを持っているつもりだことを知っています この配列内のインデックス内または10、 686 00:30:54,550 --> 00:30:56,830 そして、それは起こったことがないです 拡大または減少します 687 00:30:56,830 --> 00:30:59,850 関係なく何があるか、その 現在スペースのわずか10ブロック 688 00:30:59,850 --> 00:31:04,490 保存することができますあなたのメモリに割り当て あなたが置かれているものは何でもの10の事。 689 00:31:04,490 --> 00:31:08,790 >> このように、配列データ型、そうで アレイは、データ構造 690 00:31:08,790 --> 00:31:13,392 我々はよいくつかの他は非常に異なっています このコースの後半でカバーします。 691 00:31:13,392 --> 00:31:15,170 うん。 692 00:31:15,170 --> 00:31:20,080 たとえば、あなたがしたい場合 サイズ3の配列を作成すること 693 00:31:20,080 --> 00:31:23,670 integer--の含まれる変数 ああ、申し訳ありませんが、temperature--の 694 00:31:23,670 --> 00:31:25,640 温度の もちろん、整数です。 695 00:31:25,640 --> 00:31:28,710 >> だから我々は、int型を作成します 私たちが保存するために何をしたいのデータ型。 696 00:31:28,710 --> 00:31:32,680 我々は、この温度をコールするつもりです 命名の命名のために 697 00:31:32,680 --> 00:31:34,200 我々はすべて理解して何か。 698 00:31:34,200 --> 00:31:35,900 そして、我々は角括弧を持っているつもりです。 699 00:31:35,900 --> 00:31:37,200 そして、我々は3つの数字をしたいです。 700 00:31:37,200 --> 00:31:39,000 だから我々は置くつもりです その中の3。 701 00:31:39,000 --> 00:31:41,041 >> 本当に何か 心に留めておくことが重要 702 00:31:41,041 --> 00:31:43,530 配列がゼロにインデックス化されていることです。 703 00:31:43,530 --> 00:31:46,410 つまり、すべてはあなたのことです 0のインデックスで始まり、 704 00:31:46,410 --> 00:31:49,800 あなたが通って実行します 配列のサイズから1を引きました。 705 00:31:49,800 --> 00:31:52,730 だからここに例えば、我々 サイズ3の配列を持っています。 706 00:31:52,730 --> 00:31:54,680 それはことができるようになるだろう 三つの値を保持します。 707 00:31:54,680 --> 00:31:57,450 しかし、数字はそれをthemselves-- 数、配列、そのインデックス、 708 00:31:57,450 --> 00:32:00,271 配列は、0〜2です。 709 00:32:00,271 --> 00:32:03,520 だから人は、ときに本当に、本当に気をつけて あなたが設定あなたの問題を経由しています 710 00:32:03,520 --> 00:32:06,500 、配列の任意の並べ替えを作成し、 なぜなら、それはだ多くの時間 711 00:32:06,500 --> 00:32:08,490 それを忘れて、本当に、本当に簡単。 712 00:32:08,490 --> 00:32:11,840 私は実際にインデックスを持っていません 私は現在だけで、3の 713 00:32:11,840 --> 00:32:13,130 2のインデックスを持っています。 714 00:32:13,130 --> 00:32:16,046 そして、あなたがしようとした場合 第3のインデックスにアクセスし、 715 00:32:16,046 --> 00:32:18,170 それが何になるだろう ヌルターミネータと呼ばれます。 716 00:32:18,170 --> 00:32:19,990 これは、実際に起こっていません 配列内に存在します。 717 00:32:19,990 --> 00:32:21,781 そして、コンピュータは、 それを好きでするつもりはありません。 718 00:32:21,781 --> 00:32:24,570 だから、いつでも気をつけて あなただけのものにアクセスしています 719 00:32:24,570 --> 00:32:28,070 あなたは覚えていることを確認します 配列はゼロインデックス付きであること。 720 00:32:28,070 --> 00:32:28,880 >> OK。 721 00:32:28,880 --> 00:32:34,030 したがって、最初の例では、ただで アレイを作成する一つの方法。 722 00:32:34,030 --> 00:32:36,790 私が持っている第二の例 以下、単に独立した方法であります 723 00:32:36,790 --> 00:32:40,210 同じデータが何であるかを作成します 私たちは、入力されてきた構造。 724 00:32:40,210 --> 00:32:44,347 だからではなく、物理的に実行します 通って、0の温度に置きます 725 00:32:44,347 --> 00:32:47,180 何に等しく、温度1 何でも、温度2相当します 726 00:32:47,180 --> 00:32:50,950 何でも、私は実際にできました 直接1行ですべてを作成します 727 00:32:50,950 --> 00:32:53,010 温度角括弧に等しいです。 728 00:32:53,010 --> 00:32:56,536 >> そして、この場合の通知は、必要はありません あなたの配列がどのように大規模な指定するには、 729 00:32:56,536 --> 00:32:59,160 コンピュータがために起こっているので、 通過とがあることを参照してください。 730 00:32:59,160 --> 00:33:01,570 これらの中括弧内の三つの要素。 731 00:33:01,570 --> 00:33:04,000 そして、それは、[OK]を、知っているだろう 私は大きさ3の配列が必要です。 732 00:33:04,000 --> 00:33:07,440 あなたがする必要はするつもりはありません それを入力し、次のよう。 733 00:33:07,440 --> 00:33:10,170 >> そしてまた、ええ、そのように。 734 00:33:10,170 --> 00:33:12,610 誰もが疑問を持っています 我々は配列を作る方法について 735 00:33:12,610 --> 00:33:17,391 または配列の構造がどのように機能しますか? 736 00:33:17,391 --> 00:33:17,890 うん。 737 00:33:17,890 --> 00:33:18,806 >> 聴衆:[聞こえませんか]? 738 00:33:18,806 --> 00:33:21,649 739 00:33:21,649 --> 00:33:22,690 ANDI PENG:うん、まさに。 740 00:33:22,690 --> 00:33:26,150 だから、宣言して初期化した場合 配列は以下の方法、 741 00:33:26,150 --> 00:33:28,477 第二の方法は、これは、 あなただけのものを残すことができます。 742 00:33:28,477 --> 00:33:30,310 そして、コンピュータ 自動的にそれを知っています 743 00:33:30,310 --> 00:33:33,950 どのように多くの要素をカウントする必要があります これらの中括弧で分離され、 744 00:33:33,950 --> 00:33:34,930 コンマによって。 745 00:33:34,930 --> 00:33:37,517 >> だからここに、彼らは65、87、30を参照してください。 746 00:33:37,517 --> 00:33:39,600 そこでコンピュータは、ああ、知っています 三つの整数があります。 747 00:33:39,600 --> 00:33:45,960 私は、配列名を作成するために知っています その中に、3つの要素を持つ温度。 748 00:33:45,960 --> 00:33:46,590 良い質問。 749 00:33:46,590 --> 00:33:47,090 うん。 750 00:33:47,090 --> 00:33:51,590 >> 観客:それは作成することはできません 異なる種類のデータを含む配列 751 00:33:51,590 --> 00:33:53,021 それはそれに入力することができましたか? 752 00:33:53,021 --> 00:33:56,746 たとえば、整数と[聞こえませんか]? 753 00:33:56,746 --> 00:33:59,120 ANDI PENG:目的のために このクラスの、いや、今。 754 00:33:59,120 --> 00:34:03,070 あなたは、データを作成する場合 配列のような構造、 755 00:34:03,070 --> 00:34:04,990 あなたが言っています コンピュータ、ちょっと、私はあなたを必要とします 756 00:34:04,990 --> 00:34:08,159 これだけを割り当てます 私のハードドライブのメモリ、 757 00:34:08,159 --> 00:34:10,690 各セルがあることと 一定数のビット。 758 00:34:10,690 --> 00:34:13,429 >> 私たちは週に学んだ覚えておいてください ゼロ、異なるデータ 759 00:34:13,429 --> 00:34:15,300 種類はさまざまなサイズがありますか? 760 00:34:15,300 --> 00:34:17,630 例えば、文字列だから、 異なる量であります 761 00:34:17,630 --> 00:34:20,719 これは、char型よりもスペースの 空間の異なる量であります 762 00:34:20,719 --> 00:34:21,830 整数から。 763 00:34:21,830 --> 00:34:25,534 だから次のように指定していない場合 ミックスや変数の種類を一致させます 764 00:34:25,534 --> 00:34:27,659 あなたがコンピュータの、持っています 非常に混乱になるだろう。 765 00:34:27,659 --> 00:34:29,950 そして、それは知っているつもりはありません どのくらいのメモリあなたを得ました。 766 00:34:29,950 --> 00:34:32,480 右の目的のためにそう 今、コンピュータができるだけで 767 00:34:32,480 --> 00:34:36,120 配列の種類を認識する。 768 00:34:36,120 --> 00:34:37,940 良い質問。 769 00:34:37,940 --> 00:34:38,440 OK。 770 00:34:38,440 --> 00:34:45,179 771 00:34:45,179 --> 00:34:47,120 >> だから当然、 我々が持っている2番目の質問 772 00:34:47,120 --> 00:34:50,760 私たちが作成した今では、よく、です アレイと、私たちはこれらの事のすべてを入れています 773 00:34:50,760 --> 00:34:54,190 配列で、どのように我々は、 それにアクセスできるようになるだろうか? 774 00:34:54,190 --> 00:34:59,710 だから、常に私たちの典型的な構造は、 アレイにアクセスすると、ループのための私たちの素敵です。 775 00:34:59,710 --> 00:35:03,830 私はあなたに私たちができるでしょう人を約束します ここで、この仲間の多くを見て。 776 00:35:03,830 --> 00:35:06,470 >> 基本的に、いつでもあなたが欲しいです 入力値の配列に 777 00:35:06,470 --> 00:35:09,940 または、あなたは、それらにアクセスしたいです そうする最良の方法は、forループであります 778 00:35:09,940 --> 00:35:13,730 forループであるため、あなた あなたがしている何回知っています 779 00:35:13,730 --> 00:35:17,290 アレイを通して実行するつもり、 あなたが停止版を持っているので、右か? 780 00:35:17,290 --> 00:35:19,680 あなたが実行するたび あなたがアクセスすることができます 781 00:35:19,680 --> 00:35:21,310 配列の異なる要素。 782 00:35:21,310 --> 00:35:26,920 >> そしてまた、これは理由一般的には、 我々は、0値でループのために私たちを開始 783 00:35:26,920 --> 00:35:30,080 あなたは配列にアクセスするときのため、 あなたはゼロインデックスにアクセスすることができます。 784 00:35:30,080 --> 00:35:32,070 そしてそれは非常にうまく匹敵します。 785 00:35:32,070 --> 00:35:35,295 君たちはしたかったかもしれません 私は1に等しい整数のために書きます。 786 00:35:35,295 --> 00:35:37,330 私は3以下です。 787 00:35:37,330 --> 00:35:39,890 >> しかし、それはかなりのように動作しません ここにも、あなたのためだけ 788 00:35:39,890 --> 00:35:42,010 0、1、及び2の要素を有します。 789 00:35:42,010 --> 00:35:45,815 だから、あなたが開始した場合 あなたの要素1、I 2の、3、 790 00:35:45,815 --> 00:35:48,440 あなたが実行して終わるつもりです あなたの配列の境界のうち、 791 00:35:48,440 --> 00:35:50,440 悪いことが起こるしようとしています。 792 00:35:50,440 --> 00:35:54,480 >> だから私はあなたたちはセグエを参照してください願っています 理由を以前のクラスで 793 00:35:54,480 --> 00:35:58,560 我々は、実行方法をあなたたちを教えるし、 ループのために私たちがした方法をフォーマットします。 794 00:35:58,560 --> 00:36:01,900 今私たちがしました、からです アレイに移行し、 795 00:36:01,900 --> 00:36:06,760 あなたは、なぜ0貸すを見ることができます それ自体は非常にきれいにアクセスします。 796 00:36:06,760 --> 00:36:09,880 >> 私はthat--だから我々はそれを行う方法があります ちょうどためにここでそれをプリントアウト 797 00:36:09,880 --> 00:36:10,830 それをプリントアウトします。 798 00:36:10,830 --> 00:36:13,750 しかし、私は私のプレースホルダ、カンマを持っています。 799 00:36:13,750 --> 00:36:15,645 そして、実際のアクセス 部分が起こっています。 800 00:36:15,645 --> 00:36:17,520 配列の名前 温度と呼ばれていました。 801 00:36:17,520 --> 00:36:21,570 だから、温度やです 配列のi番目の要素。 802 00:36:21,570 --> 00:36:24,400 >> forループを通るように、 それが0で開始するようになるだろう。 803 00:36:24,400 --> 00:36:27,640 これは、プリントアウトになるだろう この配列の0番目のインデックス。 804 00:36:27,640 --> 00:36:29,599 そして、それは印刷するつもりです 最初の要素アウト。 805 00:36:29,599 --> 00:36:31,431 そして、それは印刷するつもりです 第1アウト。 806 00:36:31,431 --> 00:36:32,880 そして、我々は破るつもりです。 807 00:36:32,880 --> 00:36:36,718 上の誰もが明確です どのようにそれが起きているのでしょうか? 808 00:36:36,718 --> 00:36:37,217 グレート。 809 00:36:37,217 --> 00:36:43,230 810 00:36:43,230 --> 00:36:44,100 >> 大丈夫。 811 00:36:44,100 --> 00:36:47,270 そこでここでは、の方法を持っています 私たちは望んでいなかった場合、言っ 812 00:36:47,270 --> 00:36:50,020 ハードコードにプログラマとして私をin--。 813 00:36:50,020 --> 00:36:53,320 私は実際に物理的にしたくありませんでした すべての個々の要素に入れます 814 00:36:53,320 --> 00:36:54,020 この配列の。 815 00:36:54,020 --> 00:36:56,500 私の代わりにしたい場合 ユーザの入力値を有し、 816 00:36:56,500 --> 00:36:58,100 それを行うための最善の方法は何ですか? 817 00:36:58,100 --> 00:37:00,920 >> さて、ここで私が作成しています この素敵な機能、 818 00:37:00,920 --> 00:37:03,560 ここで私は、配列を宣言することができます。 819 00:37:03,560 --> 00:37:06,210 だからint型scores--レッツ ちょうど私達が作りたいと言います 820 00:37:06,210 --> 00:37:10,660 全18の成績を開催配列 ここで、このセクションの学生の。 821 00:37:10,660 --> 00:37:12,670 私たちは少しを持っていると思います 18以上の子供たち、今日。 822 00:37:12,670 --> 00:37:16,460 しかし、例のために、 ちょうど私達が18を持っていたと仮定しましょう​​。 823 00:37:16,460 --> 00:37:21,580 私は配列名のスコアを作成します int型、スコアので、当然のことながら、 824 00:37:21,580 --> 00:37:22,987 数字があります。 825 00:37:22,987 --> 00:37:24,820 そして、私は持っているつもりです 角括弧内の18、 826 00:37:24,820 --> 00:37:29,900 なぜならそれは私どのように多くの学生です のスコアを保存できるようにしたいです。 827 00:37:29,900 --> 00:37:32,206 >> 私は移入したいと方法 アレイは、私がしたいということです 828 00:37:32,206 --> 00:37:35,572 のforループを介して実行 もちろん、0は私の0番目のインデックスであると。 829 00:37:35,572 --> 00:37:38,030 そして、18は私であることと そこだから、版を停止 830 00:37:38,030 --> 00:37:39,690 配列内の18の要素。 831 00:37:39,690 --> 00:37:44,620 そして、私が入力し、printfのをするつもりです student--云々云々云々に得点。 832 00:37:44,620 --> 00:37:51,171 >> 私はなぜここに誰も教えてもらえます 私はプラス1ではなく、印刷しますか? 833 00:37:51,171 --> 00:37:52,920 これはトリックのようなものです 質問ではなく、本当に。 834 00:37:52,920 --> 00:37:56,020 これは、実際に物理的にありません コー​​ドの実行に影響を与えます。 835 00:37:56,020 --> 00:37:56,520 うん。 836 00:37:56,520 --> 00:37:57,909 >> 聴衆:[聞こえない] 0? 837 00:37:57,909 --> 00:37:58,950 ANDI PENG:うん、まさに。 838 00:37:58,950 --> 00:38:02,620 それはちょっと、と言うには少し厄介ですが、 あなたはこのクラスの0番目の学生です。 839 00:38:02,620 --> 00:38:03,780 それは少し奇妙です。 840 00:38:03,780 --> 00:38:08,340 人間として、本当に好きではない、私たちはそう コンピュータがどのように考えるかを考えます。 841 00:38:08,340 --> 00:38:10,930 そうであってもかかわらずで コンピュータには、値を格納しています 842 00:38:10,930 --> 00:38:13,310 0番目のインデックス、中 私たちは人間だ、私たちは本当にありません 843 00:38:13,310 --> 00:38:15,520 ゼロとして自分自身を参照したいです。 844 00:38:15,520 --> 00:38:18,119 だから私はちょうどそれを印刷するとき、 私は印刷し、追加するつもりです 845 00:38:18,119 --> 00:38:19,410 ただ明確にするために1。 846 00:38:19,410 --> 00:38:22,447 私は印刷するときに、私はあることを行っています 18を介して学生1を印刷することができます。 847 00:38:22,447 --> 00:38:24,530 これは、実際には影響しません。 コー​​ドの実行 848 00:38:24,530 --> 00:38:27,110 どのような方法で、私は印刷方法。 849 00:38:27,110 --> 00:38:30,380 >> あなたがいるときしかし、注意してください 実際にアレイにアクセスします。 850 00:38:30,380 --> 00:38:32,780 あなたは私はスコアが表示されたら、 ここで気づく私は実際によ 851 00:38:32,780 --> 00:38:38,200 0番目のインデックスにアクセスし、 ない1プラス0--または1プラス1、 852 00:38:38,200 --> 00:38:45,530 この場合、指数はとても それは実際に明らかだという。 853 00:38:45,530 --> 00:38:48,870 [OK]をすべての人の一種であります これはどのように通って実行されています 854 00:38:48,870 --> 00:38:51,470 そして、私はすべてのインデックスを持ちます 配列に値を入れます 855 00:38:51,470 --> 00:38:55,340 および18の番号を持つ配列を作成します ユーザが入力しようとしていること? 856 00:38:55,340 --> 00:38:58,780 857 00:38:58,780 --> 00:38:59,821 OK。 858 00:38:59,821 --> 00:39:00,321 クール。 859 00:39:00,321 --> 00:39:05,380 860 00:39:05,380 --> 00:39:07,400 >> OK。 861 00:39:07,400 --> 00:39:12,220 私たちは今、かなり何かに移動します 同様に設定されたこの作品に関連します。 862 00:39:12,220 --> 00:39:15,020 私は、講義で知っDavid-- 申し訳ありませんが、あなたは疑問を持っていましたか? 863 00:39:15,020 --> 00:39:16,840 >> 観客:あなたはそれを拡大することはできますか? 864 00:39:16,840 --> 00:39:18,080 >> ANDI PENG:ええ、私は試してみました。 865 00:39:18,080 --> 00:39:18,788 しかし、私は知りません。 866 00:39:18,788 --> 00:39:21,437 何らかの理由で、この パワーポイントのバージョン 867 00:39:21,437 --> 00:39:23,270 実際に動作していません ディスプレイとよく。 868 00:39:23,270 --> 00:39:25,260 だから我々はちょうどつもりです このようにそれを維持します。 869 00:39:25,260 --> 00:39:27,280 これらはすべて、オンラインでアップロードされます。 870 00:39:27,280 --> 00:39:28,218 申し訳ありませんが、みんな。 871 00:39:28,218 --> 00:39:30,090 うん。 872 00:39:30,090 --> 00:39:30,980 OK。 873 00:39:30,980 --> 00:39:35,530 >> だから我々は、文字列を持つことができます。 874 00:39:35,530 --> 00:39:39,320 だから、実際にあなたたち私notice--場合 ロブはその講演でこれを渡った知っています 875 00:39:39,320 --> 00:39:43,652 彼は、文字列が実際にあることをdid-- 文字の配列だけ、 876 00:39:43,652 --> 00:39:44,860 あなたが考えてみれば、右? 877 00:39:44,860 --> 00:39:47,500 文字列は、名前またはAであり、 文章や単語、右? 878 00:39:47,500 --> 00:39:52,975 >> 私は名前の文字列を作成した場合 Andi--ちょうど私の名前、-N-D-I。 879 00:39:52,975 --> 00:39:55,460 あなただけの1変数としてそのことを考えています。 880 00:39:55,460 --> 00:39:58,630 いっても、実際には壊れています 文字の配列だけに。 881 00:39:58,630 --> 00:40:01,910 だから、文字の持っています 配列の値に格納されています。 882 00:40:01,910 --> 00:40:05,420 それはに保存されているn個の文字を持っています 2番目のインデックスなどなど。 883 00:40:05,420 --> 00:40:08,660 >> 我々は、そのような方法でそう 実際にこのようなものを持っています 884 00:40:08,660 --> 00:40:10,970 に設定された構造の 私たちの文字列のための場所。 885 00:40:10,970 --> 00:40:14,660 だからここに、私が入力した場合 単語 "食べ" - ので、文字列の単語が等しいです 886 00:40:14,660 --> 00:40:15,540 文字列を取得します。 887 00:40:15,540 --> 00:40:19,260 私が入力した場合は、その単語を「食べます」 その私のコンピュータの方法は、物理的に 888 00:40:19,260 --> 00:40:21,870 私の記憶ではその文字列を記憶しています。 889 00:40:21,870 --> 00:40:27,140 >> そして、私はそれを介して実行したい場合 私にのためにそうout--印刷 890 00:40:27,140 --> 00:40:30,890 私たちは、講義では、覚えて、ゼロに等しいです strlen関数と呼ばれる覆われたもの、 891 00:40:30,890 --> 00:40:32,990 または文字列の長さ。 892 00:40:32,990 --> 00:40:36,520 私は実際にしないため、 配列がどのように知っている大 893 00:40:36,520 --> 00:40:38,210 どのようなユーザーのinputting--の 894 00:40:38,210 --> 00:40:40,370 >> 例えば、私は、入力されました 言葉は「食べる」と私は知っています 895 00:40:40,370 --> 00:40:41,870 それは右、3文字の長さですか? 896 00:40:41,870 --> 00:40:44,700 だから私はそこに3に入れることができます そしてすべてがうまくなります。 897 00:40:44,700 --> 00:40:49,290 しかし、あなたのユーザ入力に何かあれば それは、値の異なる数です、 898 00:40:49,290 --> 00:40:52,760 あなたは本当にすることができないとしています あなたのコードをプログラムするときことを知っています。 899 00:40:52,760 --> 00:40:56,040 >> だから我々は、テストケースを処理する方法 そのように私たちが何かを持っているということです 900 00:40:56,040 --> 00:41:00,070 ただ関数である、strlen関数と呼ばれます それは、文字列がどのくらいを示しています。 901 00:41:00,070 --> 00:41:02,080 単語のstrlenのようにします。 902 00:41:02,080 --> 00:41:03,470 私の言葉は食べるです。 903 00:41:03,470 --> 00:41:05,990 nが単語のstrlen関数に等しいです。 904 00:41:05,990 --> 00:41:08,930 誰かがどのようなことを教えてもらえます 値は実際には権利がありますか? 905 00:41:08,930 --> 00:41:12,550 nは右の何を表すん 今、この例では、私が持っていた場合は食べますか? 906 00:41:12,550 --> 00:41:13,530 >> 聴衆:3。 907 00:41:13,530 --> 00:41:14,520 >> ANDI PENG:3、正確に。 908 00:41:14,520 --> 00:41:18,820 だから私たちは私が等しいint型を持っています ゼロ、nは、本質的に、3に等しいです。 909 00:41:18,820 --> 00:41:22,355 私は実行しようとしています それは3I ++未満になるまで。 910 00:41:22,355 --> 00:41:24,980 そして、それは、本質的に行くことになるだろう 通って、同じことを行います。 911 00:41:24,980 --> 00:41:26,979 これは、プリントアウトになるだろう すべての値とあなたを与えます 912 00:41:26,979 --> 00:41:29,700 E-A-T。それはちょうど示すです それを書いている別の方法。 913 00:41:29,700 --> 00:41:31,170 それは非常に有用になるだろう。 914 00:41:31,170 --> 00:41:31,670 うん。 915 00:41:31,670 --> 00:41:35,174 聴衆:パッティングのメリットは何ですか nがその内部にはstrlen言葉に等しいです 916 00:41:35,174 --> 00:41:36,894 [聞こえない] forループ? 917 00:41:36,894 --> 00:41:37,560 ANDI PENG:うん。 918 00:41:37,560 --> 00:41:44,880 だから私が言うto--た場合、例えば、 私がいたならば、それを行うとします 919 00:41:44,880 --> 00:41:51,935 、私のコードでは、そのoop--それはなりdo-- 実際には同じことのようにやっています。 920 00:41:51,935 --> 00:41:55,060 しかしダビデは説明し、道 それ講義中に、もしあなたの任意の男 921 00:41:55,060 --> 00:41:57,854 覚えている、ように、ということでした ヒト、プログラマーとして、 922 00:41:57,854 --> 00:42:00,270 私たちは本当に私たちをプログラムしようとします コー​​ド当社のコンピュータが持っているので、 923 00:42:00,270 --> 00:42:04,070 そう、可能な限り最小限に動作します 我々のコードは非常に効率的であること。 924 00:42:04,070 --> 00:42:06,850 >> だから私は、そこに、何があった場合 私のためのループを介して起こります 925 00:42:06,850 --> 00:42:10,790 私が最初に宣言するだろうということです 名前の変数iが0になるだろう。 926 00:42:10,790 --> 00:42:13,350 私は、ああ、確認するつもりです 単語のSTRLENは何ですか? 927 00:42:13,350 --> 00:42:15,000 ああ、STRLENは3です。 928 00:42:15,000 --> 00:42:16,191 だから私は、3未満のですか? 929 00:42:16,191 --> 00:42:16,690 はい、そうです。 930 00:42:16,690 --> 00:42:17,870 私は実行するつもりです。 931 00:42:17,870 --> 00:42:21,130 >> そして二度目戻って周り ループは、私は私をインクリメントするつもりです。 932 00:42:21,130 --> 00:42:22,550 私は1つになるだろう。 933 00:42:22,550 --> 00:42:25,600 そして、私は、ああ、確認しようとしています しかし、単語のstrlen関数は何ですか? 934 00:42:25,600 --> 00:42:26,839 ああ、それは3です。 935 00:42:26,839 --> 00:42:29,880 そして、この種の無駄なように見えることありません あなたはループを実行するたびに、 936 00:42:29,880 --> 00:42:33,340 機能をチェックします、 偶数ワードのstrlen関数かかわらず 937 00:42:33,340 --> 00:42:35,490 実際に変更されることはありませんか? 938 00:42:35,490 --> 00:42:38,590 >> だから、コンピュータのための余分な力です。 939 00:42:38,590 --> 00:42:42,180 あなたは、物事について話し始めるとき 十億であること 940 00:42:42,180 --> 00:42:44,431 場所の十億 長い、コンピュータを想像します 941 00:42:44,431 --> 00:42:47,430 物理的に通って移動することと その一つ一つの時間のすべてを確認してください。 942 00:42:47,430 --> 00:42:53,170 だからこそ、ちょうどようにすることです 効率のために、 943 00:42:53,170 --> 00:42:57,620 私たちはこれを行う傾向にあり、 なぜなら、我々は唯一のだ。このよう 944 00:42:57,620 --> 00:42:59,850 関数を呼び出します 初めに一度、 945 00:42:59,850 --> 00:43:01,766 そして、するたびに、その それが起こっているのを通過 946 00:43:01,766 --> 00:43:03,789 値を格納する3 そこに、あなたが行うことではありません 947 00:43:03,789 --> 00:43:05,330 継続的にすべての時間を確認する必要があります。 948 00:43:05,330 --> 00:43:05,743 うん。 949 00:43:05,743 --> 00:43:06,409 >> 聴衆:申し訳ありません。 950 00:43:06,409 --> 00:43:09,070 ただ、[聞こえません]。 951 00:43:09,070 --> 00:43:13,985 あなたはint型のnのstrlen等しいと置くんでした そのforループの外に上記 952 00:43:13,985 --> 00:43:15,364 同様に? 953 00:43:15,364 --> 00:43:16,030 ANDI PENG:うん。 954 00:43:16,030 --> 00:43:17,100 あなたは絶対に、それを行うことができます。 955 00:43:17,100 --> 00:43:19,970 我々はここでそれを持っている理由は、 ループ作品の方法Aのため 956 00:43:19,970 --> 00:43:23,500 それは呼ばれていますされていること 意味でのローカル変数 957 00:43:23,500 --> 00:43:26,150 あなたがしていることのすべて forループの内部を作成します 958 00:43:26,150 --> 00:43:27,890 以下のためのループの内側に存在しているだけ。 959 00:43:27,890 --> 00:43:31,530 >> だから、変数iのみ これらの括弧内に存在します。 960 00:43:31,530 --> 00:43:35,260 そして、ここで、nの変数も これらの括弧内にのみ存在します。 961 00:43:35,260 --> 00:43:39,350 だから、のstrlen関数を使用した場合 単語下方に複数回、 962 00:43:39,350 --> 00:43:42,230 絶対にそれを行うための最善の方法 トップにそれを宣言するだろう 963 00:43:42,230 --> 00:43:43,563 だから、一度それをする必要はありません。 964 00:43:43,563 --> 00:43:45,420 うん。 965 00:43:45,420 --> 00:43:47,670 観客は:なぜあなたはありますか パーセントの後に改行 966 00:43:47,670 --> 00:43:51,300 あなたはすべてを入れたい場合は見て その隣の文字を分離? 967 00:43:51,300 --> 00:43:54,140 >> ANDI PENG:ああ、私はしたかったです 各行にそれらすべてを印刷します。 968 00:43:54,140 --> 00:43:54,890 それは問題ではありません。 969 00:43:54,890 --> 00:43:55,890 ええ、それは、フォーマットです。 970 00:43:55,890 --> 00:43:57,181 それはしかし、良い質問です。 971 00:43:57,181 --> 00:43:59,360 ええ、私は印刷したい場合 それだけで1行のすべて、 972 00:43:59,360 --> 00:44:02,731 私はダッシュを持っていないでしょう。 973 00:44:02,731 --> 00:44:03,230 OK。 974 00:44:03,230 --> 00:44:06,880 みんな良いですか? 975 00:44:06,880 --> 00:44:07,500 OK。 976 00:44:07,500 --> 00:44:08,000 クール。 977 00:44:08,000 --> 00:44:12,080 978 00:44:12,080 --> 00:44:14,750 >> だから、私は十分に話をしていると思います。 979 00:44:14,750 --> 00:44:20,040 介して実行するには君たちの番 コー​​ドやここに間違っているものを教えてください。 980 00:44:20,040 --> 00:44:21,560 バグはどこにありますか? 981 00:44:21,560 --> 00:44:26,920 あなたが見ることができるように、私は宣言しました 文字列型指定されたクラスの新しい配列。 982 00:44:26,920 --> 00:44:30,220 そして、私は、サムを入力しました それにジェス、とキム。 983 00:44:30,220 --> 00:44:33,400 そして、私はプリントアウトしようとしています 配列のすべての要素。 984 00:44:33,400 --> 00:44:36,796 誰かがなぜこれを教えてもらえます 私に問題を与えるために起こっていますか? 985 00:44:36,796 --> 00:44:39,320 私は君たち10をあげます これについて考えるために秒。 986 00:44:39,320 --> 00:44:55,490 987 00:44:55,490 --> 00:44:56,619 >> OK。 988 00:44:56,619 --> 00:44:57,118 うん? 989 00:44:57,118 --> 00:45:01,972 >> 観客は:左中央です 3に等しいか、または[聞こえませんか]? 990 00:45:01,972 --> 00:45:02,680 ANDI PENG:右。 991 00:45:02,680 --> 00:45:06,784 だから、これは実際に何回あります このループを実行するつもり? 992 00:45:06,784 --> 00:45:07,620 >> 聴衆:四。 993 00:45:07,620 --> 00:45:08,070 >> ANDI PENG:その通り。 994 00:45:08,070 --> 00:45:09,445 これは、4回を介しになるだろう。 995 00:45:09,445 --> 00:45:12,250 それはを通して実行するようになるだろう 0、1、2、および3に、 996 00:45:12,250 --> 00:45:15,200 その要素が私であるため、 3以下です。 997 00:45:15,200 --> 00:45:16,960 それは、2のときに停止することはないだろう。 998 00:45:16,960 --> 00:45:18,800 それは維持するつもりです それは3に当たるまで行きます。 999 00:45:18,800 --> 00:45:21,720 私たちが知っているように、3つだけあります 当社の実際の配列内の要素。 1000 00:45:21,720 --> 00:45:27,260 >> 我々は、第四にアクセスしよう 要素または3のインデックス、 1001 00:45:27,260 --> 00:45:30,357 あなたがどこかにヒットするつもりです メモリ内に存在しません。 1002 00:45:30,357 --> 00:45:31,690 これは、ヌルターミネータと呼ばれています。 1003 00:45:31,690 --> 00:45:32,856 何もそこに行くんです。 1004 00:45:32,856 --> 00:45:35,324 お使いのコンピュータには行っていません あなたに非常に満足されるように。 1005 00:45:35,324 --> 00:45:36,170 うん。 1006 00:45:36,170 --> 00:45:38,430 誰もが疑問を持っています なぜそれが起こっていましたの? 1007 00:45:38,430 --> 00:45:39,679 それは避けるために共通の領域です。 1008 00:45:39,679 --> 00:45:40,712 うん。 1009 00:45:40,712 --> 00:45:45,777 >> 観客は:最初にしません スライドはまた、2の文字列を持っていますか? 1010 00:45:45,777 --> 00:45:46,360 ANDI PENG:いいえ 1011 00:45:46,360 --> 00:45:49,610 だから、本質的に、時 あなたは配列を作っています、 1012 00:45:49,610 --> 00:45:51,540 そのブラケット右 そこに、それはすべてnumber-- 1013 00:45:51,540 --> 00:45:53,480 それはあなたがどの​​ように言っています 私が持っている多くの要素。 1014 00:45:53,480 --> 00:45:55,840 それは実際に言っていません 私は何のインデックス。 1015 00:45:55,840 --> 00:45:58,760 したがって、この場合には、私は私がしたい知っています 3ヶ所に書き込むため、 1016 00:45:58,760 --> 00:46:02,690 3つの物理的な場所で 私が保持するために好きなホールド。 1017 00:46:02,690 --> 00:46:04,510 数3があるだから、なぜです。 1018 00:46:04,510 --> 00:46:06,560 しかし、私は望んでいた、場合 実際にそれにアクセスするには、 1019 00:46:06,560 --> 00:46:11,220 私が言いたかった場合、printf関数 そのクラスブラケット番号、 1020 00:46:11,220 --> 00:46:14,560 あなたが実際に置くつもりです そこに物理的なインデックス。 1021 00:46:14,560 --> 00:46:16,330 うん、良い質問。 1022 00:46:16,330 --> 00:46:20,065 >> 観客は:だから、物理的です インデックスは[聞こえない]ことになって? 1023 00:46:20,065 --> 00:46:20,940 ANDI PENG:ごめんなさい。 1024 00:46:20,940 --> 00:46:21,500 あなたが少しを話すことはできますか? 1025 00:46:21,500 --> 00:46:24,208 >> 聴衆:だから物理的な指標であります [聞こえない]ボックスの各? 1026 00:46:24,208 --> 00:46:25,260 [聞こえませんか]? 1027 00:46:25,260 --> 00:46:26,040 >> ANDI PENG:うん。 1028 00:46:26,040 --> 00:46:28,970 だから私はここに戻って行くつもりです。 1029 00:46:28,970 --> 00:46:31,120 右ここで考えてください。 1030 00:46:31,120 --> 00:46:32,820 我々は大きさ3の配列を持っています。 1031 00:46:32,820 --> 00:46:35,540 以下のように、3ヶ所あります、 ここで物理的なプレースホルダ。 1032 00:46:35,540 --> 00:46:37,620 しかし、彼らは、0,1、および2と命名しています。 1033 00:46:37,620 --> 00:46:40,700 だから私はそれらにアクセスしたい場合、 私はそれらにアクセスする方法 1034 00:46:40,700 --> 00:46:43,480 私はここに望んでいたものは何でものprintf関数です。 1035 00:46:43,480 --> 00:46:45,485 あなたは印刷する必要があります それの名前うち​​、 1036 00:46:45,485 --> 00:46:47,610 次に、コンピュータ理由 ああ、知っている、私が見てする必要があります 1037 00:46:47,610 --> 00:46:51,391 0番目のインデックスは、この配列インチ 1038 00:46:51,391 --> 00:46:51,890 うん。 1039 00:46:51,890 --> 00:46:53,306 しかし、それの大きさは変わりません。 1040 00:46:53,306 --> 00:46:55,492 サイズに関係なく、3 あなたがそれらにラベルを付ける方法。 1041 00:46:55,492 --> 00:46:58,321 1042 00:46:58,321 --> 00:46:58,820 OK。 1043 00:46:58,820 --> 00:47:01,387 みんな良いですか? 1044 00:47:01,387 --> 00:47:02,970 聴衆:だから毎回私[聞こえませんか]? 1045 00:47:02,970 --> 00:47:06,357 1046 00:47:06,357 --> 00:47:06,940 ANDI PENG:[OK]をクリックします。 1047 00:47:06,940 --> 00:47:13,270 したがって、この場合には、私たちは本当にありません コー​​スに今それに入ります。 1048 00:47:13,270 --> 00:47:16,760 しかし、知っている私のようなstring-- 文字列は基本的に、前に述べました 1049 00:47:16,760 --> 00:47:18,440 文字の配列。 1050 00:47:18,440 --> 00:47:21,430 だから私は、配列を作成する場合 文字列の、私は一種の 1051 00:47:21,430 --> 00:47:24,430 配列の配列を持っています 文字の、右? 1052 00:47:24,430 --> 00:47:27,720 >> この場合、私のためそう 文字列の配列を持っています、 1053 00:47:27,720 --> 00:47:31,340 あなたが入力に本当に長い単語であれば、 それはまだ一つだけのスペースを占有し、 1054 00:47:31,340 --> 00:47:33,230 なぜならそれは1つの文字列です。 1055 00:47:33,230 --> 00:47:37,492 しかし、あなたが考えるした場合 その配列の文字、 1056 00:47:37,492 --> 00:47:40,450 その後、それはより多くを取っています 言い換えれば、任意の文字以下 1057 00:47:40,450 --> 00:47:41,372 です。 1058 00:47:41,372 --> 00:47:42,830 今のために本当に重要ではありません。 1059 00:47:42,830 --> 00:47:44,921 しかし、それはただ、一般的です それはどのように取り組んでいます。 1060 00:47:44,921 --> 00:47:49,750 1061 00:47:49,750 --> 00:47:50,560 >> OK。 1062 00:47:50,560 --> 00:47:55,840 だから、これは私はあなたが行うもらおうものです 学期の過程で多くの。 1063 00:47:55,840 --> 00:47:57,500 私は私の声を休ませる必要があります。 1064 00:47:57,500 --> 00:47:59,530 君たちは自分を刺激する必要があります。 1065 00:47:59,530 --> 00:48:02,300 あなた方の多くはおそらく 今寝する必要があります。 1066 00:48:02,300 --> 00:48:05,960 私はランダムな問題を入力しています どこのクラスとして、または 1067 00:48:05,960 --> 00:48:09,480 あなたの隣にパートナーが行っていると 議論数分を過ごすために 1068 00:48:09,480 --> 00:48:14,980 私たちが解決に行くか方法について またはこのようなプログラムを作成します。 1069 00:48:14,980 --> 00:48:17,100 >> だから今、私たちはしたいです program--を作成します 1070 00:48:17,100 --> 00:48:19,560 我々はそれを呼び出すつもりです その変換upper.c-- 1071 00:48:19,560 --> 00:48:24,787 上位クラスに小文字単語 string--大文字、申し訳ありません。 1072 00:48:24,787 --> 00:48:26,370 Wordは、文字列で、申し訳ありませんが、同義です。 1073 00:48:26,370 --> 00:48:28,370 私はそれらを変更するつもりです 同じことを意味します。 1074 00:48:28,370 --> 00:48:32,270 1075 00:48:32,270 --> 00:48:33,499 >> うん。 1076 00:48:33,499 --> 00:48:34,540 数分かかります。 1077 00:48:34,540 --> 00:48:37,130 それはする必要はありません 任意の言語で書かれました。 1078 00:48:37,130 --> 00:48:39,890 ただ、擬似コードコードまたは 論理的にどのように私たちも希望 1079 00:48:39,890 --> 00:48:42,083 このような問題をやって行きます。 1080 00:48:42,083 --> 00:48:42,583 うん。 1081 00:48:42,583 --> 00:48:49,881 1082 00:48:49,881 --> 00:48:52,780 >> [SIDE会話] 1083 00:48:52,780 --> 00:49:18,680 1084 00:49:18,680 --> 00:49:22,130 >> 私はまた、あなたたちはcan--ことに気づきました 私は一種の既にプログラムを参照してください。 1085 00:49:22,130 --> 00:49:24,600 私は私の欠如を推測します プレゼンターモードが問題です。 1086 00:49:24,600 --> 00:49:27,410 しかし、それはOKです。 1087 00:49:27,410 --> 00:49:30,410 >> [SIDE会話] 1088 00:49:30,410 --> 00:50:03,589 1089 00:50:03,589 --> 00:50:04,380 みんな、お願い、うん。 1090 00:50:04,380 --> 00:50:05,400 お菓子を取得しています。 1091 00:50:05,400 --> 00:50:06,372 お菓子を取得しています。 1092 00:50:06,372 --> 00:50:07,698 >> 聴衆:はい! 1093 00:50:07,698 --> 00:50:09,958 >> [SIDE会話] 1094 00:50:09,958 --> 00:50:16,101 1095 00:50:16,101 --> 00:50:18,100 ANDI PENG:また、ええ、 私はお菓子を投げ始めます 1096 00:50:18,100 --> 00:50:20,280 質問に答えていない人で。 1097 00:50:20,280 --> 00:50:22,260 だから、すべての質問に答える必要があります。 1098 00:50:22,260 --> 00:50:24,895 または私は、人々は誰と仮定します 質問に答えるん。 1099 00:50:24,895 --> 00:50:26,070 うん、他の方法の周り。 1100 00:50:26,070 --> 00:50:28,570 >> [SIDE会話] 1101 00:50:28,570 --> 00:51:13,399 1102 00:51:13,399 --> 00:51:14,274 聴衆:[聞こえません] 1103 00:51:14,274 --> 00:51:17,300 1104 00:51:17,300 --> 00:51:18,340 >> ANDI PENG:うん。 1105 00:51:18,340 --> 00:51:19,340 うん。 1106 00:51:19,340 --> 00:51:22,840 >> [SIDE会話] 1107 00:51:22,840 --> 00:51:40,700 1108 00:51:40,700 --> 00:51:41,590 >> すべての権利、みんな。 1109 00:51:41,590 --> 00:51:44,731 、のように、10秒以上を取ります。 1110 00:51:44,731 --> 00:51:48,210 >> [SIDE会話] 1111 00:51:48,210 --> 00:52:10,600 1112 00:52:10,600 --> 00:52:11,750 >> みんな、[OK]をクリックします。 1113 00:52:11,750 --> 00:52:14,920 だから我々はしようとして起動する前に、 実際に物理的に、コードを書きます 1114 00:52:14,920 --> 00:52:20,650 開発するための良い習慣は、ということです 我々は、理由の第一種にしたいです 1115 00:52:20,650 --> 00:52:22,737 アウト論理的に我々はそれを行うだろうか。 1116 00:52:22,737 --> 00:52:24,570 あなたは確認します、 あなたの前に物理的に 1117 00:52:24,570 --> 00:52:27,210 コー​​ドにしようとして始めます マリオに、あなたが作るこ​​と 1118 00:52:27,210 --> 00:52:28,870 あなたの擬似コードを持っていることを確認してください。 1119 00:52:28,870 --> 00:52:31,235 それはを通してあなたを取っています あなたがそのように作成するために必要なもの 1120 00:52:31,235 --> 00:52:33,360 ときに物理的に、その 後でプログラムを書きます、 1121 00:52:33,360 --> 00:52:36,640 あなたは、エラーをキャッチするより良いことができます あなたのコードとそのようなことです。 1122 00:52:36,640 --> 00:52:40,460 >> だから我々はちょうど開始するつもりです by--英語で、擬似コードで、 1123 00:52:40,460 --> 00:52:43,320 誰もが与えたいと思うん 私の一般的な説明 1124 00:52:43,320 --> 00:52:46,250 我々はこれをやって行くだろうかの? 1125 00:52:46,250 --> 00:52:48,102 うん。 1126 00:52:48,102 --> 00:52:49,664 >> 聴衆:[聞こえません]。 1127 00:52:49,664 --> 00:52:50,830 ANDI PENG:確かに、何の心配もなく。 1128 00:52:50,830 --> 00:52:57,233 観客:あなたはそれを頼むか、求めることができます 誰かが、文字列1--ええ、文字列を取得します 1129 00:52:57,233 --> 00:52:58,160 その後 - 1130 00:52:58,160 --> 00:52:59,826 >> ANDI PENG:はい、これは良いスタートです。 1131 00:52:59,826 --> 00:53:01,972 あなたが話すように私は、申し訳ありませんが、入力を開始します。 1132 00:53:01,972 --> 00:53:02,471 So-- 1133 00:53:02,471 --> 00:53:05,698 >> 聴衆:--the小文字 数字が高く、右? 1134 00:53:05,698 --> 00:53:08,519 または小文字 高い数値を持っていますか? 1135 00:53:08,519 --> 00:53:09,310 ANDI PENG:その通り。 1136 00:53:09,310 --> 00:53:16,156 聴衆:それでは、私たちが引きます どんな[聞こえない]から32。 1137 00:53:16,156 --> 00:53:28,600 1138 00:53:28,600 --> 00:53:29,870 >> ANDI PENG:グレート。 1139 00:53:29,870 --> 00:53:35,020 だから我々はこの種の一般的な意味を持っています この問題については動作する方法の。 1140 00:53:35,020 --> 00:53:40,060 我々は種類の学んだことを知っ その文字列の物理的な方法 1141 00:53:40,060 --> 00:53:43,320 メモリに記憶されています、 すでにあなたに何をすべきか 1142 00:53:43,320 --> 00:53:45,920 あなたはおそらくしようとしていることを知っています あなたのコードで記述する必要があります 1143 00:53:45,920 --> 00:53:48,288 文字列を移動するためには? 1144 00:53:48,288 --> 00:53:49,259 >> 聴衆:Forループ。 1145 00:53:49,259 --> 00:53:50,550 ANDI PENG:forループ、正確に。 1146 00:53:50,550 --> 00:53:56,540 1147 00:53:56,540 --> 00:53:57,220 グレート。 1148 00:53:57,220 --> 00:54:00,539 だから我々はこの種の一般的なを持っています 擬似コードは書き留め 1149 00:54:00,539 --> 00:54:02,330 その種の与えています あなたはどのようにノート 1150 00:54:02,330 --> 00:54:03,900 問題を解決動き回るだろう。 1151 00:54:03,900 --> 00:54:06,150 今、あなたがこれを持っていること、あなた 後でそれを参照することができます 1152 00:54:06,150 --> 00:54:08,233 あなたがしようとしているときに 実際にあなたのコードを記述します。 1153 00:54:08,233 --> 00:54:10,240 だから我々は実際にここに行くことができます。 1154 00:54:10,240 --> 00:54:25,130 そして、私はと呼ばれる機能を持っていますupper.c-- そこにそれだけで空のテンプレートのis-- 1155 00:54:25,130 --> 00:54:28,510 今あなたたちがしようとしていること 私は書く方法で見つけ出す手助け 1156 00:54:28,510 --> 00:54:30,430 ないコードの行をcode--のこの行。 1157 00:54:30,430 --> 00:54:32,890 これは、複数行のコードになるでしょう。 1158 00:54:32,890 --> 00:54:35,710 >> 任意の並べ替えを開始するとき 空白のpsetの、何です 1159 00:54:35,710 --> 00:54:37,418 私が必要がある最初の事 行うには覚えていますか? 1160 00:54:37,418 --> 00:54:39,290 >> 聴衆:[聞こえません]。 1161 00:54:39,290 --> 00:54:41,000 >> ANDI PENG:グレートうん。 1162 00:54:41,000 --> 00:54:41,500 含めます。 1163 00:54:41,500 --> 00:54:44,850 1164 00:54:44,850 --> 00:54:47,130 stdio.hの。 1165 00:54:47,130 --> 00:54:49,640 多くの場合、これはの一つであります 最も簡単な間違いの人々 1166 00:54:49,640 --> 00:54:51,598 彼らがいるときになります 、書くことは、彼らがよということです 1167 00:54:51,598 --> 00:54:54,180 含めることを忘れ 彼らが必要とする重要なライブラリ。 1168 00:54:54,180 --> 00:54:57,689 だから、営業時間だとあなたは次のようにしている場合、 私のコードが動作しない理由を私は知りません。 1169 00:54:57,689 --> 00:54:59,230 あなたはそれが働いていない理由を教えてもらえますか? 1170 00:54:59,230 --> 00:55:00,730 私たちは、あなたがインクルードしなかったと言うつもりですか? 1171 00:55:00,730 --> 00:55:02,520 あなたはそれを#includeする必要があります。 1172 00:55:02,520 --> 00:55:03,270 OK。 1173 00:55:03,270 --> 00:55:07,230 >> だから我々はここで、標準のI / Oを持っています。 1174 00:55:07,230 --> 00:55:10,740 ことは、唯一のライブラリです ここでは必要になるだろうか? 1175 00:55:10,740 --> 00:55:12,681 他に何私たちは何をするつもりですか? 1176 00:55:12,681 --> 00:55:13,180 ごめんなさい。 1177 00:55:13,180 --> 00:55:14,562 誰かがそれを叫びますか? 1178 00:55:14,562 --> 00:55:15,666 >> 聴衆:[聞こえません]。 1179 00:55:15,666 --> 00:55:16,666 ANDI PENG:そこに行きます。 1180 00:55:16,666 --> 00:55:20,320 1181 00:55:20,320 --> 00:55:21,440 OK。 1182 00:55:21,440 --> 00:55:26,070 そして、どのように私は任意の並べ替えを開始する行くのです 主な機能の機能、任意の並べ替え 1183 00:55:26,070 --> 00:55:28,760 私たちのプログラムの中で? 1184 00:55:28,760 --> 00:55:30,020 メインのInt。 1185 00:55:30,020 --> 00:55:34,531 1186 00:55:34,531 --> 00:55:35,030 OK。 1187 00:55:35,030 --> 00:55:35,970 私はここで内部に何を入れますか? 1188 00:55:35,970 --> 00:55:37,640 あなたがしたい最初の事は何ですか? 1189 00:55:37,640 --> 00:55:39,910 我々が取得したい場合 ユーザーから文字列、 1190 00:55:39,910 --> 00:55:43,870 私たちが持ってしようとしています この最初の行に行うには? 1191 00:55:43,870 --> 00:55:46,120 申し訳ありませんが、あなたたちはただ感じます 発言する自由と大声。 1192 00:55:46,120 --> 00:55:47,123 ただ何を叫びます。 1193 00:55:47,123 --> 00:55:48,772 >> 聴衆:ユーザーしますか? 1194 00:55:48,772 --> 00:55:49,980 ANDI PENG:我々はそれをどのように行うのですか? 1195 00:55:49,980 --> 00:55:51,873 Ask--私は、「ユーザに尋ねる」と入力するつもり? 1196 00:55:51,873 --> 00:55:52,600 >> 聴衆:のprintf。 1197 00:55:52,600 --> 00:55:54,341 >> ANDI PENG:[OK]をクリックします。 1198 00:55:54,341 --> 00:55:54,840 printf関数。 1199 00:55:54,840 --> 00:55:57,372 私はprintfのために何をしたいですか? 1200 00:55:57,372 --> 00:55:58,776 >> 聴衆:何かを入力します。 1201 00:55:58,776 --> 00:56:02,760 1202 00:56:02,760 --> 00:56:03,840 >> ANDI PENG:それ気に入りましたか? 1203 00:56:03,840 --> 00:56:05,430 Guysは、私はコンピュータだふり。 1204 00:56:05,430 --> 00:56:08,475 物理的に私のすべてのステップを教えて 私はここで入力する必要がありますか? 1205 00:56:08,475 --> 00:56:09,600 私が何か間違ったことだろ? 1206 00:56:09,600 --> 00:56:10,743 私が何かを入力した必要がありますか? 1207 00:56:10,743 --> 00:56:11,690 >> 観客:あなたが引用符を必要としています。 1208 00:56:11,690 --> 00:56:12,380 >> ANDI PENG:私は、引用符が必要ですか? 1209 00:56:12,380 --> 00:56:12,880 OK。 1210 00:56:12,880 --> 00:56:15,520 1211 00:56:15,520 --> 00:56:16,297 OK。 1212 00:56:16,297 --> 00:56:17,698 >> 聴衆:そして新しいライン。 1213 00:56:17,698 --> 00:56:21,434 1214 00:56:21,434 --> 00:56:22,465 セミコロン。 1215 00:56:22,465 --> 00:56:23,340 ANDI PENG:セミコロン? 1216 00:56:23,340 --> 00:56:24,060 OK。 1217 00:56:24,060 --> 00:56:24,560 良い。 1218 00:56:24,560 --> 00:56:27,060 >> 聴衆:そして多分指定 あなたはそれを小文字にしたいこと? 1219 00:56:27,060 --> 00:56:30,120 1220 00:56:30,120 --> 00:56:31,415 >> ANDI PENG:グレート。 1221 00:56:31,415 --> 00:56:33,540 君たちは私を笑います セミコロンを置くことを忘れて。 1222 00:56:33,540 --> 00:56:36,350 私はどこかを保証 このクラスのコースで、 1223 00:56:36,350 --> 00:56:38,260 あなたが置くことを忘れます セミコロン、およびそれ 1224 00:56:38,260 --> 00:56:41,116 把握するためにあなたに3時間かかります あなたのコードが動作しない理由を。 1225 00:56:41,116 --> 00:56:42,240 それは私たちのすべてに起こりました。 1226 00:56:42,240 --> 00:56:43,950 それはおそらくあなたに起こるでしょう。 1227 00:56:43,950 --> 00:56:46,352 セミコロンを使用しての良い習慣を身につけます。 1228 00:56:46,352 --> 00:56:46,852 OK。 1229 00:56:46,852 --> 00:56:49,010 >> 観客:あなたがしたいです にバックスラッシュを行うには? 1230 00:56:49,010 --> 00:56:50,398 >> ANDI PENG:確かに。 1231 00:56:50,398 --> 00:56:51,856 あなたがバックスラッシュをしたいですか? 1232 00:56:51,856 --> 00:56:53,020 >> 聴衆:はい。 1233 00:56:53,020 --> 00:56:54,330 >> ANDI PENG:グレート。 1234 00:56:54,330 --> 00:56:54,830 OK。 1235 00:56:54,830 --> 00:56:57,872 私は次に何をしますか? 1236 00:56:57,872 --> 00:56:58,964 >> 観客は:文字列を取得します。 1237 00:56:58,964 --> 00:56:59,880 ANDI PENG:文字列を取得します。 1238 00:56:59,880 --> 00:57:03,080 1239 00:57:03,080 --> 00:57:03,830 だから私は何を入力するのでしょうか? 1240 00:57:03,830 --> 00:57:04,233 誰か? 1241 00:57:04,233 --> 00:57:05,040 >> 対象:文字列s。 1242 00:57:05,040 --> 00:57:05,873 >> ANDI PENG:文字列sの。 1243 00:57:05,873 --> 00:57:07,251 聴衆:GetStringメソッド。 1244 00:57:07,251 --> 00:57:09,000 ANDI PENG:誰か、 あなたはどこに私に言うことができます 1245 00:57:09,000 --> 00:57:12,000 この関数のGetStringから来ていますか? 1246 00:57:12,000 --> 00:57:13,660 >> 聴衆:string.hの。 1247 00:57:13,660 --> 00:57:15,256 >> ANDI PENG:string.hの? 1248 00:57:15,256 --> 00:57:16,715 あなたはそれがstring.hのからだと思いますか? 1249 00:57:16,715 --> 00:57:17,830 >> 聴衆:[聞こえません]。 1250 00:57:17,830 --> 00:57:18,830 >> ANDI PENG:そこに行きます。 1251 00:57:18,830 --> 00:57:21,280 それはCS50.h.からです 1252 00:57:21,280 --> 00:57:24,530 あなたはいつもどこに混乱している場合 ライブラリファイルであるか、またはヘッダファイルがあり、 1253 00:57:24,530 --> 00:57:28,450 Googleは文字通り、string.hの そして、私はあなたを教えてあげましょう 1254 00:57:28,450 --> 00:57:30,450 すべての機能は何ですか string.hの中であること。 1255 00:57:30,450 --> 00:57:31,340 OK。 1256 00:57:31,340 --> 00:57:35,210 >> だから今、私は文字列を作成していること 私はそれのためにユーザを促してきました、 1257 00:57:35,210 --> 00:57:38,770 私は、変数に格納しました 名前付き、私は今何をすべきかが必要ですか? 1258 00:57:38,770 --> 00:57:40,652 >> 観客:それは小文字でいないか確認してください。 1259 00:57:40,652 --> 00:57:41,360 ANDI PENG:申し訳ありませんか? 1260 00:57:41,360 --> 00:57:42,545 観客:それは小文字でいないか確認してください。 1261 00:57:42,545 --> 00:57:44,045 ANDI PENG:すべての権利、のはそれをやらせます。 1262 00:57:44,045 --> 00:57:45,857 私はそれをどのように行うのですか? 1263 00:57:45,857 --> 00:57:47,940 実際には、目的のために クラスの今、 1264 00:57:47,940 --> 00:57:50,330 私たちはするつもりです そのすべてを想定し 1265 00:57:50,330 --> 00:57:52,620 その我々の入力が小文字に既にあります。 1266 00:57:52,620 --> 00:57:55,430 あなたがチェックしたい場合は、希望 条件文を追加 1267 00:57:55,430 --> 00:57:59,640 それがチェックされ、それが駆け抜けました 一つ一つの配列要素 1268 00:57:59,640 --> 00:58:02,540 それはだ場合、チェック 特定の値の間。 1269 00:58:02,540 --> 00:58:05,627 私は忘れて何数 小文字の値です。 1270 00:58:05,627 --> 00:58:07,210 あなたは、ASCIIテーブルの上にそれを見ることができます。 1271 00:58:07,210 --> 00:58:08,800 しかし、ええ、それは本当に良い点です。 1272 00:58:08,800 --> 00:58:11,758 しかし、今、私たちはするつもりです すべての文字列が入力を我々と仮定 1273 00:58:11,758 --> 00:58:13,130 小文字です。 1274 00:58:13,130 --> 00:58:13,870 OK。 1275 00:58:13,870 --> 00:58:18,069 >> それでは、どのよう私は約行くだろう 次のこの問題? 1276 00:58:18,069 --> 00:58:18,860 聴衆:Forループ。 1277 00:58:18,860 --> 00:58:19,340 ANDI PENG:ループのために? 1278 00:58:19,340 --> 00:58:19,839 OK。 1279 00:58:19,839 --> 00:58:20,847 何を入力するのを教えてください。 1280 00:58:20,847 --> 00:58:25,230 >> 観客は:int型のために私は0に等しいです。 1281 00:58:25,230 --> 00:58:27,230 >> ANDI PENG:[OK]をクリックします。 1282 00:58:27,230 --> 00:58:36,350 >> 聴衆:ああ、実際には、あなた コンマを行うとn strlenを等しく行います。 1283 00:58:36,350 --> 00:58:38,940 >> ANDI PENG:だから大切なこと 私は彼女がここに気づいたと思うこと 1284 00:58:38,940 --> 00:58:42,936 我々はint型を言わなければならなかったことです n個の第2の時間は、我々はこれをしませんでした。 1285 00:58:42,936 --> 00:58:45,060 ただのためのそれを知っています あなたが宣言しているループ、 1286 00:58:45,060 --> 00:58:47,934 あなたが実際のint型を必要としません 二回目は、変数を行います。 1287 00:58:47,934 --> 00:58:51,202 あなたはstrlenをnは言うことができます。 1288 00:58:51,202 --> 00:58:52,620 >> 聴衆:秒。 1289 00:58:52,620 --> 00:58:53,510 >> ANDI PENG:S。 1290 00:58:53,510 --> 00:58:54,706 OK。 1291 00:58:54,706 --> 00:58:58,370 >> 聴衆:そしてセミコロン。 1292 00:58:58,370 --> 00:59:00,130 >> ANDI PENG:確かに。 1293 00:59:00,130 --> 00:59:04,050 >> 聴衆:そして[聞こえない]のn。 1294 00:59:04,050 --> 00:59:07,480 1295 00:59:07,480 --> 00:59:09,460 それから私は++しました。 1296 00:59:09,460 --> 00:59:11,780 >> ANDI PENG:グレート。 1297 00:59:11,780 --> 00:59:12,280 大丈夫。 1298 00:59:12,280 --> 00:59:14,690 我々は内部の何をしたいです 今このforループの? 1299 00:59:14,690 --> 00:59:17,820 我々はを通じて実行するつもりなら、覚えておいてください 文字列と配列を介して実行、 1300 00:59:17,820 --> 00:59:19,287 我々はそれで物事を確認したいです。 1301 00:59:19,287 --> 00:59:20,370 私たちが必要としていますか? 1302 00:59:20,370 --> 00:59:23,070 1303 00:59:23,070 --> 00:59:26,900 これは今トリッキーな部分のようなものです。 1304 00:59:26,900 --> 00:59:27,960 誰もが推測を持っていますか? 1305 00:59:27,960 --> 00:59:34,160 1306 00:59:34,160 --> 00:59:34,690 >> OK。 1307 00:59:34,690 --> 00:59:37,830 そこでまず、どのように私たちもアクセスできますか? 1308 00:59:37,830 --> 00:59:41,610 どのように私たちも、最初に確認しますかん 配列の要素にアクセスしますか? 1309 00:59:41,610 --> 00:59:42,920 我々はそれをどのように行うのですか? 1310 00:59:42,920 --> 00:59:47,120 我々はそれを行うために使用する表記は何ですか? 1311 00:59:47,120 --> 00:59:50,920 この配列の名前は何と呼ばれるのですか? 1312 00:59:50,920 --> 00:59:52,400 それは右、Sと呼ばれるのですか? 1313 00:59:52,400 --> 00:59:54,850 >> 任意の文字列は常に配列であることを覚えておいてください。 1314 00:59:54,850 --> 00:59:58,210 だからのブラケット私は、右? 1315 00:59:58,210 --> 01:00:01,360 それは現在の値であるため 我々はチェックしているか、インデックス値。 1316 01:00:01,360 --> 01:00:05,156 そして、我々はその等しくなるように設定しようとしています to--我々は正しい、小文字の値をしたいですか? 1317 01:00:05,156 --> 01:00:07,530 我々はそれをオンにしますlower-- 申し訳ありませんが、大文字をしたいです。 1318 01:00:07,530 --> 01:00:10,014 私たちは、小文字をオンにします 大文字に値。 1319 01:00:10,014 --> 01:00:11,805 だから、ごめんなさいlike-- お名前は何ですか? 1320 01:00:11,805 --> 01:00:12,580 >> 者:ハイジ。 1321 01:00:12,580 --> 01:00:12,940 >> ANDI PENG:申し訳ありませんか? 1322 01:00:12,940 --> 01:00:13,280 >> 者:ハイジ。 1323 01:00:13,280 --> 01:00:13,988 >> ANDI PENG:ハイジ。 1324 01:00:13,988 --> 01:00:15,850 ハイジは言ったように 最初に、我々は、おそらくです 1325 01:00:15,850 --> 01:00:20,330 私たちがしているthe--必要になります おそらく減算しているつもり 1326 01:00:20,330 --> 01:00:22,630 、右は何でもcharcから32? 1327 01:00:22,630 --> 01:00:24,680 ASCIIのため、 テーブル、違い 1328 01:00:24,680 --> 01:00:27,790 小文字の間 そして、大文字は32です。 1329 01:00:27,790 --> 01:00:31,290 我々はこれをやっているときに、我々は、おそらくです 右、32を減算するするつもり? 1330 01:00:31,290 --> 01:00:33,910 >> だから我々は、S iをやろうとしています。 1331 01:00:33,910 --> 01:00:37,590 1332 01:00:37,590 --> 01:00:41,200 私はそれをしなかった理由を誰もが理解していますか? 1333 01:00:41,200 --> 01:00:45,760 私たちのアレイでは、今あるので、 我々は正しい、0番目のインデックスをチェックしていますか? 1334 01:00:45,760 --> 01:00:49,190 との0番目のインデックスで 文字列は、それが最初の文字です。 1335 01:00:49,190 --> 01:00:51,820 そして、その文字は我々が行っています それは小文字だと仮定します。 1336 01:00:51,820 --> 01:00:55,980 我々はそれが大文字にしたい場合は、我々 その値から32を減算する必要があり、 1337 01:00:55,980 --> 01:00:58,620 私たちのASCIIであるため テーブルには、それは我々がそれを取得する方法です 1338 01:00:58,620 --> 01:01:01,600 対応する次へ それが大文字になります値。 1339 01:01:01,600 --> 01:01:03,714 誰もがそれを理解していますか? 1340 01:01:03,714 --> 01:01:04,213 うん。 1341 01:01:04,213 --> 01:01:06,530 >> 聴衆:また、あなたでした minus--小文字ありません 1342 01:01:06,530 --> 01:01:08,080 >> ANDI PENG:うん、のように 実際には本当に良いです。 1343 01:01:08,080 --> 01:01:10,455 私はそれに戻ってくるつもりです 質問私達はこれを行った後。 1344 01:01:10,455 --> 01:01:11,060 うん。 1345 01:01:11,060 --> 01:01:13,940 そして、私がしたい場合は 何が起こっているのかを参照してください。 1346 01:01:13,940 --> 01:01:16,180 私はおそらくに行きますよ 右、印刷したいですか? 1347 01:01:16,180 --> 01:01:19,930 誰かが私に何を言います 私はここで印刷したいです。 1348 01:01:19,930 --> 01:01:29,160 >> 聴衆:printfのパーセント Cのバックスラッシュ[聞こえません]。 1349 01:01:29,160 --> 01:01:33,570 それは[聞こえない]のiの値です。 1350 01:01:33,570 --> 01:01:34,614 >> ANDI PENG:S I、申し訳ありませんか? 1351 01:01:34,614 --> 01:01:35,530 聴衆:[聞こえません]。 1352 01:01:35,530 --> 01:01:38,550 1353 01:01:38,550 --> 01:01:39,550 ANDI PENG:私は知りません。 1354 01:01:39,550 --> 01:01:40,600 どう思いますか? 1355 01:01:40,600 --> 01:01:44,016 >> 聴衆:まあ、私はwouldn't-- 私はbring--ないだろうと思います 1356 01:01:44,016 --> 01:01:46,944 私はそれを取るだろう 内部には、理由[聞こえません]。 1357 01:01:46,944 --> 01:01:49,726 1358 01:01:49,726 --> 01:01:51,392 ANDI PENG:ああ、あなたはそれを行っているのでしょうか? 1359 01:01:51,392 --> 01:01:53,867 聴衆:うん。 1360 01:01:53,867 --> 01:01:56,700 ANDI PENG:それを残しましょう​​方法 それは、私は理由を後で説明します。 1361 01:01:56,700 --> 01:01:58,533 ときであっても、覚えておいてください プレースホルダを持っています、 1362 01:01:58,533 --> 01:02:00,701 あなたはそれの前後に括弧を挿入します。 1363 01:02:00,701 --> 01:02:01,200 大丈夫。 1364 01:02:01,200 --> 01:02:04,810 だから、これはここで固体の関数であること。 1365 01:02:04,810 --> 01:02:06,370 のはそれを実行してみましょう、それがコンパイルする場合を参照してください。 1366 01:02:06,370 --> 01:02:08,750 上位ください。 1367 01:02:08,750 --> 01:02:09,250 おっと。 1368 01:02:09,250 --> 01:02:12,030 1369 01:02:12,030 --> 01:02:13,340 それはあまりにも良い見ていません。 1370 01:02:13,340 --> 01:02:14,507 なぜこのようなことが起きるのでしょうか? 1371 01:02:14,507 --> 01:02:17,340 すべてのエラーと同じように、あなたが行きたいです 背中と最初の1で始まり、 1372 01:02:17,340 --> 01:02:20,630 典型的には、1つのエラーの原因理由 それの後に他のエラーがたくさん。 1373 01:02:20,630 --> 01:02:26,700 18:25、伝えここでは、upper.cを見ます 私はこのプログラムでは、upper.c命名します 1374 01:02:26,700 --> 01:02:33,800 18行目で、エラーは暗黙のうちに宣言します 型にstrlenを関数のライブラリ 1375 01:02:33,800 --> 01:02:36,330 unassigned--何とか、私は知りません 何がその後に起こっています。 1376 01:02:36,330 --> 01:02:39,990 >> それが今の私に言っていますすべてがあります その何かがstrlen関数に起こっています。 1377 01:02:39,990 --> 01:02:43,520 そして、コンピュータはので、混乱しています それは私がstrlen関数が何であるかを知らない、のようなものですか? 1378 01:02:43,520 --> 01:02:45,520 それは何だろうし あなたが不足しているあなたを教えて? 1379 01:02:45,520 --> 01:02:46,490 >> 観客:あなたは[聞こえない]を逃しています。 1380 01:02:46,490 --> 01:02:47,630 >> ANDI PENG:あなたは正しいです。 1381 01:02:47,630 --> 01:02:49,510 その通りです。 1382 01:02:49,510 --> 01:02:52,140 それはどこだようにするためです 確認することが重要 1383 01:02:52,140 --> 01:02:56,970 そのあなたが使用するすべての関数あなた コー​​ドが正しいヘッダをしています 1384 01:02:56,970 --> 01:02:59,660 他のライブラリのファイル、または あなたは、エラーの多くを取得するつもりです 1385 01:02:59,660 --> 01:03:01,150 あなたのコードが行っていません 何が起こっているのか知っています。 1386 01:03:01,150 --> 01:03:03,050 だから我々は、ここではstring.hを含めるつもりです。 1387 01:03:03,050 --> 01:03:06,270 >> 今、私たちは上コンパイルしようとします。 1388 01:03:06,270 --> 01:03:08,410 正しくコンパイルします。 1389 01:03:08,410 --> 01:03:09,960 のは、このプログラムを実行してみましょう。 1390 01:03:09,960 --> 01:03:12,000 だから、小文字で何かを入力します。 1391 01:03:12,000 --> 01:03:14,920 何人が入力したいですか? 1392 01:03:14,920 --> 01:03:16,546 何かを叫びます。 1393 01:03:16,546 --> 01:03:17,920 すべての権利、チャーリーはただで歩きました。 1394 01:03:17,920 --> 01:03:18,990 私たちは、チャーリーの名前を入力します。 1395 01:03:18,990 --> 01:03:21,670 1396 01:03:21,670 --> 01:03:22,840 >> 小文字でチャーリー。 1397 01:03:22,840 --> 01:03:27,742 そして、うまくいけば、うまくいけば、これは 大声で叫ぶと吐き出すつもり 1398 01:03:27,742 --> 01:03:28,575 大文字でチャーリー。 1399 01:03:28,575 --> 01:03:30,830 わーい! 1400 01:03:30,830 --> 01:03:33,430 誰もがどのように理解して 私はそれを解決歩き回りましたか? 1401 01:03:33,430 --> 01:03:36,190 方法私ができます 整数を使用して操作します 1402 01:03:36,190 --> 01:03:39,410 その何かを解決するために 私は、文字列でやってみたいです、 1403 01:03:39,410 --> 01:03:44,390 文字と整数は可能性があるため ため、同じ方法で参照すること 1404 01:03:44,390 --> 01:03:45,540 ASCIIマッピング。 1405 01:03:45,540 --> 01:03:52,890 >> その場合、あなたのポイントに戻ります私 32の代わりに、ここに置くことを望んでいました 1406 01:03:52,890 --> 01:03:58,959 同じようにマイナスの小文字を大文字 すなわち、それは、同様に同じように機能するであろう 1407 01:03:58,959 --> 01:04:01,750 それはだから単純に これらの2つの値の間の差。 1408 01:04:01,750 --> 01:04:09,570 私はこのagain--チャーリーを作成する場合。 1409 01:04:09,570 --> 01:04:10,320 ああ、いや。 1410 01:04:10,320 --> 01:04:11,820 私はええ、私たちは間違った方向に行ったと思いますか? 1411 01:04:11,820 --> 01:04:13,260 >> 聴衆:[聞こえない]小文字。 1412 01:04:13,260 --> 01:04:14,260 >> ANDI PENG:そこに行きます。 1413 01:04:14,260 --> 01:04:22,380 1414 01:04:22,380 --> 01:04:22,880 うん。 1415 01:04:22,880 --> 01:04:24,920 そして、アウトチャーリーくれる。 1416 01:04:24,920 --> 01:04:28,020 だから、ときに注意してください あなたが値を減算しています 1417 01:04:28,020 --> 01:04:30,400 ある1覚えておきます 他のより大きい。 1418 01:04:30,400 --> 01:04:35,220 例えば、ここまで私が忘れてしまいました その小文字aは実際にあります 1419 01:04:35,220 --> 01:04:38,540 大文字のAよりも大きいだからとき、私は それらを他の方法を減算してみました 1420 01:04:38,540 --> 01:04:40,600 周りに、私は負の32を得ました。 1421 01:04:40,600 --> 01:04:42,800 そして、私のコンピュータは、のようでした 私はそれが何であるかを知りません。 1422 01:04:42,800 --> 01:04:45,810 それだけでいくつかのランダムな確率です 非常に良いではありません値。 1423 01:04:45,810 --> 01:04:48,760 だから、あなたがしていることを確認してください 正しい長さに引い 1424 01:04:48,760 --> 01:04:52,831 ご希望の文字を検索します。 1425 01:04:52,831 --> 01:04:53,330 OK。 1426 01:04:53,330 --> 01:04:58,550 どのように誰もが混乱しています この関数を書くことについて行きましたか? 1427 01:04:58,550 --> 01:04:59,180 OK。 1428 01:04:59,180 --> 01:05:04,830 だから実際には、すでに機能 ctype.hと呼ばれるライブラリに存在します。 1429 01:05:04,830 --> 01:05:06,417 ライブラリのと呼ばれるのctype.h。 1430 01:05:06,417 --> 01:05:08,500 この機能は、実際に 既にあなたのために書かれました。 1431 01:05:08,500 --> 01:05:10,820 これは、上部に呼ばれています。 1432 01:05:10,820 --> 01:05:13,027 >> だからの目的のために このPSET、あなたが行っています 1433 01:05:13,027 --> 01:05:15,860 あなたが本当に使用したいことを見つけるために 多くの機能が含まれています 1434 01:05:15,860 --> 01:05:17,390 ctypeライブラリ内。 1435 01:05:17,390 --> 01:05:21,040 アッパーには、以下に、上です lower--ものは、すべての機能があります 1436 01:05:21,040 --> 01:05:24,914 あなたは非常に使用することができること、 非常に迅速に独自のコードでその 1437 01:05:24,914 --> 01:05:26,080 これはまったく同じものを行います。 1438 01:05:26,080 --> 01:05:28,941 私たちは、変換する方法を書きました 大文字に変換した文字列。 1439 01:05:28,941 --> 01:05:31,440 しかし、これは実際にコードです 他の誰かが書きました 1440 01:05:31,440 --> 01:05:33,800 あなたがアクセスできること 異なる機能を経由して。 1441 01:05:33,800 --> 01:05:34,300 うん? 1442 01:05:34,300 --> 01:05:39,570 >> 聴衆:だから、そこでのをコピーします そして一つ一つの文字のためにそれを行いますか? 1443 01:05:39,570 --> 01:05:42,070 >> ANDI PENG:ええ、私はそうではないので、 の値を気に。 1444 01:05:42,070 --> 01:05:44,540 私は違いことを気に それらの間に右、32のですか? 1445 01:05:44,540 --> 01:05:48,210 小文字の違い Bと大文字のBも32です。 1446 01:05:48,210 --> 01:05:50,860 Cの違い 大文字Cは常に32です。 1447 01:05:50,860 --> 01:05:53,235 >> 私は気にする必要があります 両者の違い、 1448 01:05:53,235 --> 01:05:56,666 手紙のすべてのため 同じパターンに従う、右? 1449 01:05:56,666 --> 01:05:58,540 私は違いがある場合 そのうちの一つとの間に、 1450 01:05:58,540 --> 01:06:01,050 私が知っているどのような違い それらのすべての間です。 1451 01:06:01,050 --> 01:06:01,740 良い質問。 1452 01:06:01,740 --> 01:06:04,090 うん。 1453 01:06:04,090 --> 01:06:06,660 みんな良いですか? 1454 01:06:06,660 --> 01:06:09,080 OK。 1455 01:06:09,080 --> 01:06:09,580 OOP。 1456 01:06:09,580 --> 01:06:14,380 1457 01:06:14,380 --> 01:06:15,270 >> OK。 1458 01:06:15,270 --> 01:06:20,310 ですので、別の概念 あなたとして非常に有用であることを行って 1459 01:06:20,310 --> 01:06:22,570 開発し続けます あなたのコードは、このアイデアです 1460 01:06:22,570 --> 01:06:25,430 機能や抽象化を作成します。 1461 01:06:25,430 --> 01:06:28,479 だから今、私たちはすべての代数を撮影しました。 1462 01:06:28,479 --> 01:06:31,770 代数では、あなたがそこにあることを教えられています 関数と呼ばれるこの素晴らしいこと 1463 01:06:31,770 --> 01:06:35,300 機械、あなたの場合 番号の入力一種、 1464 01:06:35,300 --> 01:06:38,720 この素晴らしい機能を通してそれを実行します そして、出て右、異なる出力をポップ? 1465 01:06:38,720 --> 01:06:42,220 コー​​ドでは、同じことが起こります 関数の任意の並べ替えインチ 1466 01:06:42,220 --> 01:06:48,230 >> だから私は物理的にできました 私のコードの私の体で書きます 1467 01:06:48,230 --> 01:06:52,357 実際に行い、メインステートメント どのようなコードの本体はやっています。 1468 01:06:52,357 --> 01:06:54,940 しかし、それ以外では、私がすることもできます 多くの異なる機能を書きます 1469 01:06:54,940 --> 01:06:56,320 それは、多くの異なることを行います。 1470 01:06:56,320 --> 01:06:58,570 例えば、我々はすでにしました それらのいくつかを使用して開始。 1471 01:06:58,570 --> 01:07:00,610 ありますPrintf-- 機能他の誰か 1472 01:07:00,610 --> 01:07:02,870 既にことを書いています 我々は我々のコードで呼び出すことができます。 1473 01:07:02,870 --> 01:07:05,410 この場合upper--するには、 upper--は別の関数であります 1474 01:07:05,410 --> 01:07:07,330 我々は、我々が書きました 我々のコードで呼び出すことができます。 1475 01:07:07,330 --> 01:07:09,520 そして私はなぜ推測します 私たちも、機能がありますか? 1476 01:07:09,520 --> 01:07:12,100 なぜ我々はそれをウンチしません すべてのコードの同じ行にありますか? 1477 01:07:12,100 --> 01:07:13,730 それは誰のために、それが容易になります。 1478 01:07:13,730 --> 01:07:19,200 >> まあ、その背後にある理由 組織、まず、です。 1479 01:07:19,200 --> 01:07:21,880 それは起こって本当に迷惑なんです 誰かのコードを介して、 1480 01:07:21,880 --> 01:07:25,110 そして、printfのような一つの機能。 1481 01:07:25,110 --> 01:07:28,570 あなたたちは、実際に知っていた場合 関数のprintfは、書き込みに伴います 1482 01:07:28,570 --> 01:07:30,530 それは、コード1000行、のように、です。 1483 01:07:30,530 --> 01:07:32,357 >> もし私が望んでいたすべての時間 何かをprintfのします、 1484 01:07:32,357 --> 01:07:35,440 私は、コード1000行を書かなければなりませんでした それは読み本当に迷惑であろうが、 1485 01:07:35,440 --> 01:07:36,290 右? 1486 01:07:36,290 --> 01:07:38,860 私達はちょうどきた理由です この抽象関数を作成 1487 01:07:38,860 --> 01:07:41,670 我々はすでに誰かを持っています 他のどこかに書いています。 1488 01:07:41,670 --> 01:07:44,920 毎時間、我々はそれを使用する必要が 我々のコードは、私たちはprintfのを言わなければなりません。 1489 01:07:44,920 --> 01:07:48,070 そして、それが機能を使用することが可能です 誰か他の人は私たちのコードで書かれています。 1490 01:07:48,070 --> 01:07:51,020 それが容易になります 組織的コードを読み取ります。 1491 01:07:51,020 --> 01:07:53,460 >> 第二に、それは簡素化です。 1492 01:07:53,460 --> 01:07:56,750 それは我々が持っているの手順を簡素化 私たちの問題を解決するために取ります。 1493 01:07:56,750 --> 01:07:59,300 printf関数、printfのような関数、 上位のような関数 1494 01:07:59,300 --> 01:08:03,560 に私たちを許可するすべてのものがあります それは簡単ですので、ダウン私たちのコードを簡素化します。 1495 01:08:03,560 --> 01:08:05,830 そして最後は再利用性です。 1496 01:08:05,830 --> 01:08:08,710 >> 我々が持っているという事実そう printf関数と呼ばれる関数 1497 01:08:08,710 --> 01:08:11,990 我々は、多くの異なるを呼び出すことができること 時間と、それは再利用可能にすることができます。 1498 01:08:11,990 --> 01:08:14,980 私はprintfのを書くとしたら、 私は一度だけそれを書きます。 1499 01:08:14,980 --> 01:08:16,439 それだけで、その一つの場所に存在しています。 1500 01:08:16,439 --> 01:08:19,890 私は再びそれをやってみたかったなら、私は希望 そのすべてをコピー&ペーストする必要があります 1501 01:08:19,890 --> 01:08:21,760 コー​​ドの私の第二のラインに。 1502 01:08:21,760 --> 01:08:24,880 我々は関数を作成する場合だからこそ、 それは、私たちのメインの外部に存在します 1503 01:08:24,880 --> 01:08:26,880 私たちは時に呼び出すことができます それとするたびに、それを再利用 1504 01:08:26,880 --> 01:08:29,604 それは非常に簡単だように、私たちは必要 私たちのためのプログラムを書くように。 1505 01:08:29,604 --> 01:08:32,220 1506 01:08:32,220 --> 01:08:35,549 >> 私たちが実際に書くことになるそうな方法 この関数は、右、非常によく似ているのですか? 1507 01:08:35,549 --> 01:08:37,590 これは、最初の一種であります 我々はよ内のインスタンス 1508 01:08:37,590 --> 01:08:42,830 スタイルに機能テイクを参照してください 私たちのint型メイン空洞とは異なります。 1509 01:08:42,830 --> 01:08:46,779 この場合、私がしたい場合 右、Qという関数を書くのか? 1510 01:08:46,779 --> 01:08:49,370 >> そして、ここでint値 すべての私に言っています、 1511 01:08:49,370 --> 01:08:51,649 私はこれを何をしたいです 私に返す関数? 1512 01:08:51,649 --> 01:08:54,484 私は整数をキューブにしたい場合は、 私が入力したいするつもりです。 1513 01:08:54,484 --> 01:08:55,525 これらはパラメータです。 1514 01:08:55,525 --> 01:08:58,490 私は、int型の値を入力するつもりです。 1515 01:08:58,490 --> 01:09:01,300 そして、私は返すつもりです int型の別の型の値。 1516 01:09:01,300 --> 01:09:03,050 そして、ここで、あなたと 、私がやっているすべてを見ることができます 1517 01:09:03,050 --> 01:09:07,300 私の入力が何であれ3乗されます 私の出力として、それを返します。 1518 01:09:07,300 --> 01:09:10,790 >> だから、すべてこの機能はされません 整数のいくつかの並べ替えを取ります。 1519 01:09:10,790 --> 01:09:14,979 それは、二回自分自身を乗算 それが有効でキューブようにします。 1520 01:09:14,979 --> 01:09:17,729 そして、それが返されます どんなことが出力されます。 1521 01:09:17,729 --> 01:09:20,540 したがって、この場合には、2行です 私たちは余分書かなければならなかったコード。 1522 01:09:20,540 --> 01:09:22,880 しかし、我々は呼び出すしたい場合 この複数回の際に、 1523 01:09:22,880 --> 01:09:26,210 それはそのいずれかを入力するためにはるかに簡単です キューブに右でここにラインより 1524 01:09:26,210 --> 01:09:28,830 複数回通過する必要があります。 1525 01:09:28,830 --> 01:09:34,180 >> 本質的に任意だから方法 関数の任意の並べ替えの書式 1526 01:09:34,180 --> 01:09:36,420 存在することが起こっていることは、ここのようなものです。 1527 01:09:36,420 --> 01:09:38,659 だから我々は、関数名を持っています。 1528 01:09:38,659 --> 01:09:39,950 この場合には、キューブと呼ばれています。 1529 01:09:39,950 --> 01:09:42,033 そして、我々はそれをキューブのために名前を付けます それは覚えやすいです。 1530 01:09:42,033 --> 01:09:44,220 あなたは正方形のそれに名前を付けることができますし、 実際立方ことができます。 1531 01:09:44,220 --> 01:09:45,500 関係ない。 1532 01:09:45,500 --> 01:09:48,020 君がいるだけ名前 あなたの機能を割り当てます。 1533 01:09:48,020 --> 01:09:51,660 >> ここでこの権利、int型であり、 あなたが必要とするパラメータのタイプ。 1534 01:09:51,660 --> 01:09:54,149 したがって、この機能を何 動作するために必要ですか? 1535 01:09:54,149 --> 01:09:55,990 まあ、それは入力を必要とします。 1536 01:09:55,990 --> 01:09:56,704 私は、入力と命名。 1537 01:09:56,704 --> 01:09:58,120 あなたが好きな、それに名前を付けることができます。 1538 01:09:58,120 --> 01:10:00,500 しかし、私はint型のものが必要。 1539 01:10:00,500 --> 01:10:03,730 これは、実際に実行するために起こっています ここの内側にあるものは何でも、 1540 01:10:03,730 --> 01:10:04,990 関数の本体。 1541 01:10:04,990 --> 01:10:07,847 そして、戻り値の型 右ここで、このint-- 1542 01:10:07,847 --> 01:10:09,680 すべてのそれは私に言っています この関数であることを 1543 01:10:09,680 --> 01:10:11,250 int型の私に戻るつもり。 1544 01:10:11,250 --> 01:10:14,460 だから、int型で取るつもりだし、 それはint型をあなたに戻って与えるために起こっています。 1545 01:10:14,460 --> 01:10:17,750 誰もがどのように理解しています この種類のフォーマットが動作しますか? 1546 01:10:17,750 --> 01:10:18,250 クール。 1547 01:10:18,250 --> 01:10:24,690 1548 01:10:24,690 --> 01:10:25,740 >> OK。 1549 01:10:25,740 --> 01:10:31,770 これはと思われるのであれば心配することはありません 今抽象少し。 1550 01:10:31,770 --> 01:10:33,450 これは、私たちが話しましょう​​ものです。 1551 01:10:33,450 --> 01:10:36,310 私たちは深くに潜りますよ 後にコースインチ 1552 01:10:36,310 --> 01:10:41,170 方法より高いレベルの任意の並べ替え これらの事の仕事の抽象化 1553 01:10:41,170 --> 01:10:43,530 メモリ内での、すなわち お使いのコンピュータは、すべて 1554 01:10:43,530 --> 01:10:47,660 このタイプに格納されています スタック、私は言おう。 1555 01:10:47,660 --> 01:10:49,070 >> そこに上部のアップそう。 1556 01:10:49,070 --> 01:10:50,861 あなたならば私は知りません 人はそのよく見ることができます。 1557 01:10:50,861 --> 01:10:52,590 私はズームインしようとするでしょう。 1558 01:10:52,590 --> 01:10:55,111 ここで一番上に、我々 物理的なテキストを持っています 1559 01:10:55,111 --> 01:10:57,860 コンピュータがinterpreting--あるものの そのすべて0と1 1560 01:10:57,860 --> 01:10:59,540 当社のコンピュータ内に存在します。 1561 01:10:59,540 --> 01:11:03,390 そして、我々は初期化されています データと初期化されていないデータ、 1562 01:11:03,390 --> 01:11:05,340 私たちは、グローバル変数を呼び出します。 1563 01:11:05,340 --> 01:11:08,200 存在する変数だから すべてのプログラム全体で 1564 01:11:08,200 --> 01:11:11,815 そしてあなたの全体の全体で、 基本的に、コード。 1565 01:11:11,815 --> 01:11:13,940 心配ない君たちがある場合 これについて不明なの一種。 1566 01:11:13,940 --> 01:11:16,060 それは今本当に重要ではありません。 1567 01:11:16,060 --> 01:11:18,680 >> そして、我々は何を持っています スタック内のヒープと呼ばれます。 1568 01:11:18,680 --> 01:11:21,140 文字通りとしてスタックを考えます 物事の束のように、 1569 01:11:21,140 --> 01:11:23,098 異なるのスタック 物事を上にプッシュされて 1570 01:11:23,098 --> 01:11:27,870 様々な格納することを互いの あなたのコード内の変数と構文。 1571 01:11:27,870 --> 01:11:31,460 そして、ここでは非常に底部に、 我々は、環境変数を持っています 1572 01:11:31,460 --> 01:11:35,480 あなたは内で実行されているものの コー​​ドのちょうどあなたの小さなライン。 1573 01:11:35,480 --> 01:11:40,510 >> そして、私たちはちょうどズームするつもりです 実際のスタック部にインチ 1574 01:11:40,510 --> 01:11:43,880 だから右ここで、我々はズームした場合 スタックのちょうどこのエリアの中で、 1575 01:11:43,880 --> 01:11:45,140 これは、それがどのように見えるかです。 1576 01:11:45,140 --> 01:11:48,590 そして、これは実際には非常に重要です あなたたちは、機能について話すとき、 1577 01:11:48,590 --> 01:11:52,330 予告そのため、 お使いのコンピュータのメモリ 1578 01:11:52,330 --> 01:11:55,600 変数を記憶しています 機能 1579 01:11:55,600 --> 01:11:58,790 両方のあなたのパラメータ 機能とあなたの主な変数 1580 01:11:58,790 --> 01:12:00,190 別の場所です。 1581 01:12:00,190 --> 01:12:03,390 >> だから、今、主は、 実際の関数 1582 01:12:03,390 --> 01:12:04,780 あなたは、コード内で実行していること。 1583 01:12:04,780 --> 01:12:08,050 あなたは、そのパラメータは、ここに保存されています そのローカル変数は、ここに格納さ。 1584 01:12:08,050 --> 01:12:12,270 ローカル変数はただの変数を意味 その関数内でのみが存在します。 1585 01:12:12,270 --> 01:12:15,610 そして、それの上に、あなたはこれを持っています キューブと呼ばれる別の機能。 1586 01:12:15,610 --> 01:12:18,240 あなたはそれがパラメータだ持っています だけでなく、それらの地元の人々。 1587 01:12:18,240 --> 01:12:21,540 >> 理性と次のことができます ことで、ここで何を参照してください 1588 01:12:21,540 --> 01:12:25,030 キューブを取り込むときに起こります メイン関数から値 1589 01:12:25,030 --> 01:12:27,640 実際にはその超えるコピーであるということです。 1590 01:12:27,640 --> 01:12:31,470 だから私はキューブにたい場合 2と8を返すと、その2 1591 01:12:31,470 --> 01:12:33,730 実際に入力され、 パラメータとして、それはです 1592 01:12:33,730 --> 01:12:37,690 あなたはそれが既存しているようにコピーされ メモリ内の2つの異なる場所です。 1593 01:12:37,690 --> 01:12:40,520 そして、あなたは非常に注意する必要があります 覚えるものの一つに 1594 01:12:40,520 --> 01:12:42,520 あなたが実際に操作しています。 1595 01:12:42,520 --> 01:12:47,170 そして、何が起こったかの例 それは非常に、非常に悪いだろう 1596 01:12:47,170 --> 01:12:48,050 右ここに存在しています。 1597 01:12:48,050 --> 01:12:50,760 1598 01:12:50,760 --> 01:12:58,650 >> だから右ここで、私が持っている、理論的には、 右ここでプログラム、主な機能 1599 01:12:58,650 --> 01:13:02,180 私はint型を宣言していることをX 1に等しいです。 1600 01:13:02,180 --> 01:13:04,505 私は別のint yが2に等しいと宣言しています。 1601 01:13:04,505 --> 01:13:06,380 そして、私はそれを実行していますよ この機能により 1602 01:13:06,380 --> 01:13:09,647 私はと仮定と呼ばれるスワップ、 それは2つの値を交換するです。 1603 01:13:09,647 --> 01:13:11,480 そして私はするつもりです 右、それらをプリントアウト? 1604 01:13:11,480 --> 01:13:13,220 それは私がこのプログラムが何をしたいのです。 1605 01:13:13,220 --> 01:13:15,180 >> それでは、降りてくると見てみましょう。 1606 01:13:15,180 --> 01:13:18,200 だから私は実際には別のを書いた場合 機能、あなたが見ることができるように、 1607 01:13:18,200 --> 01:13:19,750 我々はここで私たちの主な機能を持っています。 1608 01:13:19,750 --> 01:13:22,860 そして、我々は我々のを持っています ここで第二の機能。 1609 01:13:22,860 --> 01:13:24,520 ボイドスワップ。 1610 01:13:24,520 --> 01:13:27,090 ボイドがちょうどそれがだことを意味し 何も返さするつもりはありません。 1611 01:13:27,090 --> 01:13:28,930 関数名は スワップと呼ばれ、それはです 1612 01:13:28,930 --> 01:13:33,730 摂取2つの変数のint aに行くと あなたの[聞こえない]機能から、Bをint型。 1613 01:13:33,730 --> 01:13:39,010 >> だから、基本的にここで、私たちはしています この関数にxとyを渡します。 1614 01:13:39,010 --> 01:13:40,760 そして、私たちがした場合 私たちが望むthis--作成 1615 01:13:40,760 --> 01:13:42,420 右、一時的な値を作成するには? 1616 01:13:42,420 --> 01:13:43,930 我々はにそれを割り当てるつもりです。 1617 01:13:43,930 --> 01:13:45,388 そして今、同じBに起こっています。 1618 01:13:45,388 --> 01:13:47,660 Bはバックになるだろう 一時値があったところ、 1619 01:13:47,660 --> 01:13:51,070 なぜならときに、これは あなたは物事を交換したいです、 1620 01:13:51,070 --> 01:13:52,320 あなただけのそれらを交換ようにすることはできません。 1621 01:13:52,320 --> 01:13:54,360 >> あなたは1アウトを維持する必要があります ここでは、覚えているように、 1622 01:13:54,360 --> 01:13:56,485 何それが原因で一度、あります あなたは1を交換し、あなたは忘れます 1623 01:13:56,485 --> 01:13:58,200 その元の値は、右何だったのでしょうか? 1624 01:13:58,200 --> 01:14:00,990 このプログラムは、理論的にはそう 右、動作するはずですか? 1625 01:14:00,990 --> 01:14:03,630 私はスワップしたい場合 2、彼らは交換する必要があります。 1626 01:14:03,630 --> 01:14:05,490 それでは、それを実行してみましょう、それが動作するかどうかを確認します。 1627 01:14:05,490 --> 01:14:11,130 1628 01:14:11,130 --> 01:14:16,940 >> あなたたちが見ることができるように、X 一度1とyかつて2でした。 1629 01:14:16,940 --> 01:14:21,475 そして、私はそれを印刷する場合、 xは好ましくは1であり、yは2です。 1630 01:14:21,475 --> 01:14:25,970 うーん、このプログラムはしていないようです 私はそれが仕事をしたい方法を作業。 1631 01:14:25,970 --> 01:14:29,950 誰もがでショットを取りたいん これが起こった理由を推測? 1632 01:14:29,950 --> 01:14:34,430 それは方法に関係しています 異なるものがあること 1633 01:14:34,430 --> 01:14:38,172 メモリ内の別の場所に保存されています。 1634 01:14:38,172 --> 01:14:39,377 >> OK。 1635 01:14:39,377 --> 01:14:41,960 だからみんなが心配する必要はありません 今このことについてあまり。 1636 01:14:41,960 --> 01:14:46,610 しかし、そのキューブのローカル知っています 変数aとbでした、 1637 01:14:46,610 --> 01:14:49,230 ここに私達の機能であるため、 我々はAとBを宣言しました 1638 01:14:49,230 --> 01:14:53,570 存在する変数として キューブ内の、その関数。 1639 01:14:53,570 --> 01:14:59,490 しかし、あなたが見ることができるように、パラメータは、 それがここに格納されていた中で取っています。 1640 01:14:59,490 --> 01:15:01,370 しかし、我々は実際にはありませんでした 何かを返します。 1641 01:15:01,370 --> 01:15:03,120 我々は、実際には、xとyを変更しませんでした。 1642 01:15:03,120 --> 01:15:04,440 私達はちょうどAとBを変えました。 1643 01:15:04,440 --> 01:15:08,340 >> 我々はに、xとyをコピーしていました 何かがAとBと呼ばれます。 1644 01:15:08,340 --> 01:15:11,092 しかし、我々は決して実際に xとyの自分自身を操作しました。 1645 01:15:11,092 --> 01:15:12,800 あなたたちは見ています どのようにそれが起きているのでしょうか? 1646 01:15:12,800 --> 01:15:16,140 我々は単にそれをコピーしたということです 以上の、しかし、我々は実際に保たれていません 1647 01:15:16,140 --> 01:15:18,030 彼らは、メモリにあった場所のトラック。 1648 01:15:18,030 --> 01:15:20,127 >> そして今コンピュータ 私は、ああ、きました探しています 1649 01:15:20,127 --> 01:15:21,960 このことを実行します この素敵な機能。 1650 01:15:21,960 --> 01:15:23,690 しかし、xとyは、xとyのままです。 1651 01:15:23,690 --> 01:15:26,240 何も起こらなかったですし それらのため実際の 1652 01:15:26,240 --> 01:15:28,340 これらのパラメータこと ローカル変数 1653 01:15:28,340 --> 01:15:30,150 異なるに格納されています メモリに配置します。 1654 01:15:30,150 --> 01:15:32,030 これは高レベルであります コンセプト我々'LL 1655 01:15:32,030 --> 01:15:34,300 コー​​スの後半で見始めます。 1656 01:15:34,300 --> 01:15:36,950 しかし、これだけであることを知っています 起こることができる問題 1657 01:15:36,950 --> 01:15:41,400 私たちはどのように上の方法を見つけ出すだろうと コー​​スの後半でこれに対処。 1658 01:15:41,400 --> 01:15:41,900 OK。 1659 01:15:41,900 --> 01:15:47,750 1660 01:15:47,750 --> 01:15:48,250 大丈夫。 1661 01:15:48,250 --> 01:15:51,780 私たちがいるそう最後の概念 本当にカバーするために行きます 1662 01:15:51,780 --> 01:15:53,880 それが便利になるだろう PSET今週 1663 01:15:53,880 --> 01:15:56,060 呼ばれるものです コマンドライン引数。 1664 01:15:56,060 --> 01:16:00,820 だから、彼の講義でロブが通過しました どのようにこれらの作業の簡単のようなもの。 1665 01:16:00,820 --> 01:16:02,770 基本的にことを知っています あなたが書いているとき 1666 01:16:02,770 --> 01:16:06,280 主な機能のように、ときに我々 過去に前の関数を書いて、 1667 01:16:06,280 --> 01:16:07,804 我々はint型のメイン空洞を持っていました。 1668 01:16:07,804 --> 01:16:10,470 そこに、私たちが持っていた理由は、ボイド 私たちのプログラムがなかったので、でした 1669 01:16:10,470 --> 01:16:12,520 右、実行するために入力値に必要ですか? 1670 01:16:12,520 --> 01:16:16,020 私はマリオを実行したとき、私は必要はありませんでした 実際に何かを入力します 1671 01:16:16,020 --> 01:16:16,970 私はマリオを実行したとき。 1672 01:16:16,970 --> 01:16:20,170 私は後にユーザに促すことができます。 1673 01:16:20,170 --> 01:16:22,450 しかし、それは必ずしもそうではありません。 1674 01:16:22,450 --> 01:16:24,980 >> 例えば、この中 今週の問題セット、 1675 01:16:24,980 --> 01:16:28,365 あなたはで、それを求められることになるだろう あなたのプログラムを実行することに加え、 1676 01:16:28,365 --> 01:16:30,990 あなたが入力したいとしています あなたのようにまっすぐに特定のもの 1677 01:16:30,990 --> 01:16:32,050 あなたのプログラムを実行します。 1678 01:16:32,050 --> 01:16:34,720 だから我々はそれを行う方法が呼ばれています コマンドライン引数、どの 1679 01:16:34,720 --> 01:16:37,280 引数のようなものです あなたは、直接入力することができます 1680 01:16:37,280 --> 01:16:39,260 あなたがプログラムを実行しようとしているよう。 1681 01:16:39,260 --> 01:16:44,680 >> したがって、このための表記法、 それはかなり複雑に見えるのです、 1682 01:16:44,680 --> 01:16:47,320 しかし、それは本当にありません 難しいです。だからint型main-- 1683 01:16:47,320 --> 01:16:48,910 それはちょうどあなたの主な機能です。 1684 01:16:48,910 --> 01:16:52,110 ブラケットARGV ARGCカンマ文字列に。 1685 01:16:52,110 --> 01:16:56,040 そう言っていることすべてがこのことです int型argc--すべてのことはあなたを伝えるです 1686 01:16:56,040 --> 01:17:00,560 それらは数であるということです 引数は、コンピュータが期待するべきです。 1687 01:17:00,560 --> 01:17:03,130 >> 本当にそうだ一つのこと を追跡することが重要 1688 01:17:03,130 --> 01:17:07,080 あなたのプログラムの物理的な名前であります これらの引数の1つとしてカウントされます。 1689 01:17:07,080 --> 01:17:11,080 私は私のプログラムを持っているしたいのであれば プラスつの追加のコマンドラインを実行します。 1690 01:17:11,080 --> 01:17:13,310 引数、私は実際によ 2を持っているつもり。 1691 01:17:13,310 --> 01:17:15,080 ARGCは、実際には2つのことになるだろう。 1692 01:17:15,080 --> 01:17:18,010 そして、文字列ARGV bracket--すべてのことをやっています、 1693 01:17:18,010 --> 01:17:20,410 それは私に与えています 文字列の配列です 1694 01:17:20,410 --> 01:17:24,870 ただ何を表示し、保存するために行きます これらのコマンドライン引数のすべてがあります。 1695 01:17:24,870 --> 01:17:34,090 >> ですから、例えば、私はこれを持っているしたい場合 プログラムは、右、OUTFILE INFILE ./copy? 1696 01:17:34,090 --> 01:17:37,330 それはちょうど一般的なLinuxコマンドです。 1697 01:17:37,330 --> 01:17:38,830 何が実際にARGCのですか? 1698 01:17:38,830 --> 01:17:41,320 どのように多くのコマンドライン引数 この中には、実際にあるのですか? 1699 01:17:41,320 --> 01:17:45,130 これはすべてのコピーを作成しているん 一つのファイルの名前のINFILE 1700 01:17:45,130 --> 01:17:47,070 それそこにコピー 別のファイル、右? 1701 01:17:47,070 --> 01:17:48,700 それはすべて、これはやっているのです。 1702 01:17:48,700 --> 01:17:53,080 あなたが見ることができるように、私は1つの行でそれをやっています 実際にプログラムを必要とせず。 1703 01:17:53,080 --> 01:17:55,380 >> この場合、私たちのargcとは何ですか? 1704 01:17:55,380 --> 01:17:58,968 私たちはどのように多くの引数を持っていますか? 1705 01:17:58,968 --> 01:17:59,634 聴衆:三? 1706 01:17:59,634 --> 01:18:01,200 ANDI PENG:私たちは、正確に、3を持っています。 1707 01:18:01,200 --> 01:18:05,030 だから、と非常に直感的です ただそれだけだと思います 1708 01:18:05,030 --> 01:18:06,290 INFILEとOUTFILE。 1709 01:18:06,290 --> 01:18:10,190 しかし、知っているの物理名 プログラムは、1つとしてカウントを実行しています。 1710 01:18:10,190 --> 01:18:13,220 したがって、この場合には、ARGCは実際には3です。 1711 01:18:13,220 --> 01:18:15,860 方法については、argvの0は何ですか? 1712 01:18:15,860 --> 01:18:18,180 、のすべてを覚えています コマンドライン引数 1713 01:18:18,180 --> 01:18:20,500 文字列の配列に格納されていました。 1714 01:18:20,500 --> 01:18:24,140 だから私はそれにアクセスしようとした場合、どのような ブラケット0は私を与えるとargvでしょうか? 1715 01:18:24,140 --> 01:18:25,364 >> 聴衆:[聞こえません]。 1716 01:18:25,364 --> 01:18:26,155 ANDI PENG:その通り。 1717 01:18:26,155 --> 01:18:28,550 それは私にドットを与えるだろう それはだから、コピーを大幅に削減 1718 01:18:28,550 --> 01:18:31,070 0番目の要素、 私の配列の最初の要素。 1719 01:18:31,070 --> 01:18:33,236 何ARGV 1は? 1720 01:18:33,236 --> 01:18:33,945 >> 聴衆:INFILE。 1721 01:18:33,945 --> 01:18:35,070 ANDI PENG:INFILE、まさに。 1722 01:18:35,070 --> 01:18:36,272 何のargv 2はどうですか? 1723 01:18:36,272 --> 01:18:37,022 聴衆:OUTFILE。 1724 01:18:37,022 --> 01:18:38,190 ANDI PENG:OUTFILE。 1725 01:18:38,190 --> 01:18:39,290 これは、今少しトリッキーです。 1726 01:18:39,290 --> 01:18:42,630 あなたたちはどう思いますARGV 3は私を与えることにしようとしています 1727 01:18:42,630 --> 01:18:45,522 私はそれをプリントアウトしようとした場合はどうなりますか? 1728 01:18:45,522 --> 01:18:48,260 >> 聴衆:[聞こえませんか]? 1729 01:18:48,260 --> 01:18:50,164 >> ANDI PENG:あなたは手のアップがありましたか? 1730 01:18:50,164 --> 01:18:50,663 うん。 1731 01:18:50,663 --> 01:18:51,550 >> 聴衆:代替。 1732 01:18:51,550 --> 01:18:52,341 >> ANDI PENG:その通り。 1733 01:18:52,341 --> 01:18:55,440 だから私たちは講義で覚えています レース何かの終わりに持っています 1734 01:18:55,440 --> 01:18:56,640 ヌルターミネータと呼ばれますか? 1735 01:18:56,640 --> 01:18:58,890 また、この中に取得します さらに上のクラスです。 1736 01:18:58,890 --> 01:19:02,472 しかし、表記であることを知っています、 方法コンピュータ 1737 01:19:02,472 --> 01:19:04,430 それは終わりだということを知っています 配列のことということです 1738 01:19:04,430 --> 01:19:07,310 ヌルと呼ばれるものを置きます ターミネータまたはダッシュゼロ。 1739 01:19:07,310 --> 01:19:12,047 >> ですから、ARGV 3にアクセスしようとすると、 あなたはこのダッシュ0を打つつもりです。 1740 01:19:12,047 --> 01:19:13,630 これはトリックの質問の一層です。 1741 01:19:13,630 --> 01:19:17,020 何ARGV約4? 1742 01:19:17,020 --> 01:19:20,920 これは、過去のnull終端であります 私たちの配列の境界過去。 1743 01:19:20,920 --> 01:19:24,380 に起こっているあなたをどう思いますか 我々はそれをしようとするときに起こりますか? 1744 01:19:24,380 --> 01:19:25,842 >> 聴衆:[聞こえませんか]? 1745 01:19:25,842 --> 01:19:26,550 ANDI PENG:申し訳ありませんか? 1746 01:19:26,550 --> 01:19:28,025 そのビット大声で言いますか? 1747 01:19:28,025 --> 01:19:29,086 >> 聴衆:[聞こえません]。 1748 01:19:29,086 --> 01:19:29,710 ANDI PENG:はい。 1749 01:19:29,710 --> 01:19:32,420 それはの名前です。 面積はあなたが最も可能性の高い取得します。 1750 01:19:32,420 --> 01:19:36,610 しかし、それARGVを知っ4-- それがアクセスすることができます 1751 01:19:36,610 --> 01:19:38,610 お使いのコンピュータの中の場所 メモリあなたは本当に 1752 01:19:38,610 --> 01:19:41,650 ので、触れてはなりません 今、あなたは何であるかARGVを知っています。 1753 01:19:41,650 --> 01:19:46,220 あなたはそれがサイズ3の配列だということを知っています それはドットコピー、INFILEとOUTFILEを持っています。 1754 01:19:46,220 --> 01:19:50,200 >> あなたがそれを超え、これまで行くことにしよう あなたがヌル終端を過ぎていること、 1755 01:19:50,200 --> 01:19:53,050 お使いのコンピュータは、おそらく持っています ARGV 4で保存されたもの。 1756 01:19:53,050 --> 01:19:55,790 そして、あなたが本当にすべきではありません 、ARGV 4へのアクセスを許可 1757 01:19:55,790 --> 01:19:58,130 あなたがファイルを持っているので、 キャビネットとあなただけです 1758 01:19:58,130 --> 01:19:59,790 これらの3つの棚へのアクセスを可能にしました。 1759 01:19:59,790 --> 01:20:02,870 しかし、あなたが道を越えて到達しようとした場合 あなたが許可されている場所の棚、 1760 01:20:02,870 --> 01:20:04,930 あなたはいじり開始するつもりです コンピュータのメモリ内の他のもの。 1761 01:20:04,930 --> 01:20:06,690 それは本当に、本当に悪いことになるだろう。 1762 01:20:06,690 --> 01:20:07,440 だから、ちょうどそれを知っています。 1763 01:20:07,440 --> 01:20:10,370 あなたが非常に注意してください ただランダムに開始されません。 1764 01:20:10,370 --> 01:20:14,772 配列の要素にアクセスすること あなたが作成したいものではありませんでした。 1765 01:20:14,772 --> 01:20:17,114 うん。 1766 01:20:17,114 --> 01:20:18,430 >> OK。 1767 01:20:18,430 --> 01:20:26,360 だから我々は別のものをやろうとしています ここでは、端末の例。 1768 01:20:26,360 --> 01:20:27,300 OK。 1769 01:20:27,300 --> 01:20:29,900 すぐに講義でロブそう 先日は行っ 1770 01:20:29,900 --> 01:20:35,040 この例を通して、どこに彼 int型メインのint argcの文字列ARGVを持っていました 1771 01:20:35,040 --> 01:20:39,090 私はことを私に語っているブラケット、 コマンドライン引数を持つことになります。 1772 01:20:39,090 --> 01:20:41,860 >> ARGCが等しい場合、彼は、持っています 2--が、覚えているに等しいです 1773 01:20:41,860 --> 01:20:45,070 等号は比較を意味等しいです。 1774 01:20:45,070 --> 01:20:47,980 それが2の場合、私はよ こんにちは、印刷しようとして、 1775 01:20:47,980 --> 01:20:51,190 何でも最初に 配列の要素です。 1776 01:20:51,190 --> 01:20:54,100 それ以外の印刷、こんにちは世界。 1777 01:20:54,100 --> 01:20:56,300 これがために起こっています 基本的に起こりますか? 1778 01:20:56,300 --> 01:21:00,570 誰かがちょうどで説明することができます 英語は、このプログラムは何をしているのですか? 1779 01:21:00,570 --> 01:21:01,272 うん。 1780 01:21:01,272 --> 01:21:08,160 >> 聴衆:誰かがコマンドを入力した場合は そして彼らの最初と最後の名前は言いました、 1781 01:21:08,160 --> 01:21:12,096 それだけでは印刷されません 最初のものと言う、こんにちは、 1782 01:21:12,096 --> 01:21:14,090 どのようなあなたの最初の名前です。 1783 01:21:14,090 --> 01:21:15,410 >> ANDI鵬:OK、のはそれを実行してみましょう。 1784 01:21:15,410 --> 01:21:22,470 したがって、たとえば、私がいた場合には作ります このファイルには、ハローハローto--作ります 1785 01:21:22,470 --> 01:21:24,500 あなたは私は入力に何したいですかto--? 1786 01:21:24,500 --> 01:21:25,900 >> 対象:姓と名。 1787 01:21:25,900 --> 01:21:27,280 >> ANDI PENG:最初と最後の名前は? 1788 01:21:27,280 --> 01:21:28,180 スペース? 1789 01:21:28,180 --> 01:21:29,690 >> 聴衆:うん。 1790 01:21:29,690 --> 01:21:33,490 >> ANDI PENG:誰かが言うことができます 私、今、argcが何ですか? 1791 01:21:33,490 --> 01:21:35,630 ちょうどそこに? 1792 01:21:35,630 --> 01:21:36,290 おっと、申し訳ありません。 1793 01:21:36,290 --> 01:21:37,920 私は戻りましょう。 1794 01:21:37,920 --> 01:21:40,740 どのように多くのコマンドライン引数 あなたは人が実際に見ることができませんare--。 1795 01:21:40,740 --> 01:21:43,760 しかし、私はズームインしようとするでしょう。 1796 01:21:43,760 --> 01:21:44,290 私はしようとしています。 1797 01:21:44,290 --> 01:21:45,414 うん、右、3があるのか​​? 1798 01:21:45,414 --> 01:21:48,750 それは、ハロードットスラッシュです それはアンディだし、それが鵬です。 1799 01:21:48,750 --> 01:21:51,870 >> だから、みんながこれをどう思いますか プログラムは、プリントアウトされようとしていますか? 1800 01:21:51,870 --> 01:21:55,550 1801 01:21:55,550 --> 01:21:56,060 ああ。 1802 01:21:56,060 --> 01:21:57,120 あ、ごめんなさい。 1803 01:21:57,120 --> 01:21:57,810 間違った名前。 1804 01:21:57,810 --> 01:22:03,630 1805 01:22:03,630 --> 01:22:06,130 それはこんにちは、世界をプリントアウトしています。 1806 01:22:06,130 --> 01:22:09,603 誰も説明したいん なぜそれが起きているのでしょうか? 1807 01:22:09,603 --> 01:22:10,103 うん? 1808 01:22:10,103 --> 01:22:11,019 >> 聴衆:[聞こえません]。 1809 01:22:11,019 --> 01:22:14,439 1810 01:22:14,439 --> 01:22:15,230 ANDI PENG:その通り。 1811 01:22:15,230 --> 01:22:19,940 だからここに、条件付きです ARGCが2に等しい等しい場合、です。 1812 01:22:19,940 --> 01:22:23,650 だから、唯一のケースでありますことを 2つのコマンドライン引数。 1813 01:22:23,650 --> 01:22:25,850 その後、私は印刷するつもりです、 こんにちは、どのようなことがあります。 1814 01:22:25,850 --> 01:22:28,210 しかし、それ以外の、私はするつもりです ただ、Hello Worldのを印刷します。 1815 01:22:28,210 --> 01:22:30,040 だから、誰かがしたいん 私の例を与えるために 1816 01:22:30,040 --> 01:22:35,050 私は実際にできるようになる方法 それはARGV 1の値を印刷してもらいますか? 1817 01:22:35,050 --> 01:22:38,600 >> 私はここで入力に何を持っているでしょうか? 1818 01:22:38,600 --> 01:22:39,840 一つだけ、右? 1819 01:22:39,840 --> 01:22:42,900 ドットこんにちは、すでににあるため 最初の引数としてカウントされます。 1820 01:22:42,900 --> 01:22:43,930 私は唯一の多くを持っています。 1821 01:22:43,930 --> 01:22:46,470 私はアンディをすればそれでこんにちは点在しています。 1822 01:22:46,470 --> 01:22:47,270 こんにちは、アンディ。 1823 01:22:47,270 --> 01:22:49,186 誰もが理解しています なぜそれが起きているのでしょうか? 1824 01:22:49,186 --> 01:22:49,602 うん。 1825 01:22:49,602 --> 01:22:52,500 >> 聴衆:だからとの間のスペース コマンドline--は[聞こえない]ですか? 1826 01:22:52,500 --> 01:22:56,247 1827 01:22:56,247 --> 01:22:56,830 ANDI PENG:いいえ 1828 01:22:56,830 --> 01:23:03,810 コマンドラインでスペースだから 引数、xは、お使いのコンピュータを伝えるために 1829 01:23:03,810 --> 01:23:06,820 このことは、新しい文字列の先頭です。 1830 01:23:06,820 --> 01:23:11,130 だから、文字列のargvはそれを格納しhere-- あなたのコマンドライン引数のすべて 1831 01:23:11,130 --> 01:23:13,110 文字列インチ 1832 01:23:13,110 --> 01:23:17,420 だから、コマンドラインでスペース 、しても、そのすべてはあなたを教えていますargument-- 1833 01:23:17,420 --> 01:23:21,030 これは、1つの文字列の末尾にあります そして、それは別のに移動する時間です。 1834 01:23:21,030 --> 01:23:21,990 >> うん。 1835 01:23:21,990 --> 01:23:23,530 これがためにかなり重要です あなたのPSET、あなたがしているので、 1836 01:23:23,530 --> 01:23:24,613 これらのテストをすることになるだろう。 1837 01:23:24,613 --> 01:23:29,300 だから、誰もが持っていません この上の任意の質問? 1838 01:23:29,300 --> 01:23:30,016 うんいいね。 1839 01:23:30,016 --> 01:23:30,515 うん? 1840 01:23:30,515 --> 01:23:35,008 >> 観客:あなたが希望だから理由 代わりに整数引数CALCを置きます 1841 01:23:35,008 --> 01:23:40,059 [聞こえない]のお好きな時になります に追加情報を入力します 1842 01:23:40,059 --> 01:23:41,030 [聞こえませんか]? 1843 01:23:41,030 --> 01:23:42,090 >> ANDI PENG:うん、まさに。 1844 01:23:42,090 --> 01:23:45,370 一部のプログラムはあなたが必要になります 入力するコマンドライン引数 1845 01:23:45,370 --> 01:23:47,732 それはに渡し、それはそれを使用します。 1846 01:23:47,732 --> 01:23:49,035 うん。 1847 01:23:49,035 --> 01:23:50,410 聴衆:だから何であれば[聞こえませんか]? 1848 01:23:50,410 --> 01:23:55,440 1849 01:23:55,440 --> 01:23:58,870 >> ANDI PENG:まあ、私は何がありますか 私のプログラムでは、次に変更するには? 1850 01:23:58,870 --> 01:23:59,870 >> 聴衆:ちょうど3。 1851 01:23:59,870 --> 01:24:12,460 1852 01:24:12,460 --> 01:24:15,020 >> ANDI PENG:なぜということです 起こって、あなたは思いますか? 1853 01:24:15,020 --> 01:24:18,940 >> 聴衆:[聞こえない]から。 1854 01:24:18,940 --> 01:24:22,370 >> 観客:あなたがする必要があるだろう [聞こえない] 2に変更します。 1855 01:24:22,370 --> 01:24:23,484 >> 対象:1と2。 1856 01:24:23,484 --> 01:24:24,650 ANDI PENG:1と2、正確に。 1857 01:24:24,650 --> 01:24:29,150 したがって、このケースでは、あなたはおそらくだろう 2のprintf statements--を持つようにしたいです 1858 01:24:29,150 --> 01:24:32,601 ARGV 1を印刷し、1 ARGV 2を印刷1。 1859 01:24:32,601 --> 01:24:33,100 ここに。 1860 01:24:33,100 --> 01:24:34,516 私は実際にその実際に素早く行うことができます。 1861 01:24:34,516 --> 01:24:46,720 1862 01:24:46,720 --> 01:24:47,320 そこに行きます。 1863 01:24:47,320 --> 01:24:48,287 ああ。 1864 01:24:48,287 --> 01:24:49,370 あなたが望んで非常にされていません。 1865 01:24:49,370 --> 01:24:52,590 しかし、あなたの周りの人の混乱であれば 書式は、それが出てきます。 1866 01:24:52,590 --> 01:24:54,981 うん。 1867 01:24:54,981 --> 01:24:55,480 クール。 1868 01:24:55,480 --> 01:24:57,670 私たちは時間を少し短くしている知っています。 1869 01:24:57,670 --> 01:25:02,469 しかし、私はちょうどすぐに費やすつもりです helpful--を通過する数分 1870 01:25:02,469 --> 01:25:03,760 観客:あなたは2分を持っています。 1871 01:25:03,760 --> 01:25:05,010 ANDI PENG:私は2分がありますか? 1872 01:25:05,010 --> 01:25:06,340 ありがとう。 1873 01:25:06,340 --> 01:25:09,180 いくつかの簡単なのpsetのヒント。 1874 01:25:09,180 --> 01:25:13,100 したがって、このPSETのために、私は非常に、お勧めします 私が言ったように、誰もが仕様を読み取ります。 1875 01:25:13,100 --> 01:25:16,804 次の3つのprograms-- 1を書くことでしょう 、caesar.cと呼ばれるもの、initials.cと呼ばれます 1876 01:25:16,804 --> 01:25:17,720 vigenere.cと呼ばれるもの。 1877 01:25:17,720 --> 01:25:20,465 1878 01:25:20,465 --> 01:25:22,340 そのいくつかの重要なヒント 君たちは本当にしたいです 1879 01:25:22,340 --> 01:25:25,040 そうmind--に保つために この機能があります 1880 01:25:25,040 --> 01:25:27,770 私が言いたいようトロワ、atoi--と呼ばれます。 1881 01:25:27,770 --> 01:25:29,520 それはだ場合不明 実際にあなたがそれを言いますか。 1882 01:25:29,520 --> 01:25:32,510 しかし、それはやっているすべては、それが入力です。 1883 01:25:32,510 --> 01:25:34,320 これは、int型に文字列を変換します。 1884 01:25:34,320 --> 01:25:37,490 だから私整数にASCIIを表します。 1885 01:25:37,490 --> 01:25:40,310 それはちょうど、ASCII変換です 値は、値を整数へ。 1886 01:25:40,310 --> 01:25:44,510 だから、その格納した配列をARGVを覚えています あなたのコマンドラインのすべてのarguments-- 1887 01:25:44,510 --> 01:25:46,300 それは文字列としてそれらをすべて格納します。 1888 01:25:46,300 --> 01:25:50,010 だから、あなたのことができるようにしたい場合 そのうちの一つが整数となっています、 1889 01:25:50,010 --> 01:25:52,750 あなたが必要があるとしています ここで、この値を使用しています。 1890 01:25:52,750 --> 01:25:56,690 >> モデューロ、我々がカバーのように 以前のクラスの今日、 1891 01:25:56,690 --> 01:25:59,550 あなたが持つことができます あなたが持っているものは何でもの残りの部分。 1892 01:25:59,550 --> 01:26:03,620 だから、私たちは本当に、本当に持っている場合 シーザーで多数、 1893 01:26:03,620 --> 01:26:06,117 私たちは、エンドを持っている場合 Vigenereの文字列の? 1894 01:26:06,117 --> 01:26:08,450 どのようにできるようにするつもりされています それがラップアラウンドしてもらうには? 1895 01:26:08,450 --> 01:26:11,330 私は、zヒットし、私がしたい場合 それに戻って行くために、 1896 01:26:11,330 --> 01:26:13,650 どのように私は取得するつもりです それはラップアラウンドするには? 1897 01:26:13,650 --> 01:26:15,960 おそらく、使用したいです どこかでモジュロ。 1898 01:26:15,960 --> 01:26:19,190 >> 第二に、周りの閲覧 あなたのライブラリー。 ctype.h。 1899 01:26:19,190 --> 01:26:20,680 それは我々が持っている新しいライブラリです。 1900 01:26:20,680 --> 01:26:25,270 あなたは本当に、本当にたくさんのを見つけることができます 便利functions-- isupper、islowerは、 1901 01:26:25,270 --> 01:26:27,681 TOUPPER、tolowerは、はisalpha、エトセトラ。 1902 01:26:27,681 --> 01:26:30,680 非常に有用であろうすべての機能 あなたが把握しようとしているときに、 1903 01:26:30,680 --> 01:26:33,780 この文字は小文字のですか? 1904 01:26:33,780 --> 01:26:35,730 私はこれを変換するにはどうすればよいです 大文字に文字列? 1905 01:26:35,730 --> 01:26:38,146 これらすべてのものは、非常になります あなたのpsetのために非常に役立ちます。 1906 01:26:38,146 --> 01:26:42,720 1907 01:26:42,720 --> 01:26:45,500 OK。 1908 01:26:45,500 --> 01:26:49,644 >> オフィスアワー今夜です午前8時00分に TEALの教室で午前11時明日 1909 01:26:49,644 --> 01:26:51,310 だけでなく、水曜日と木曜日の夜。 1910 01:26:51,310 --> 01:26:53,280 営業時間はコモンズです。 1911 01:26:53,280 --> 01:26:56,180 高君たちを提案 すべては、すぐに使い始めます 1912 01:26:56,180 --> 01:27:00,490 あなたはそれをしたくないので、 木曜日の夜は、問題を抱えている子供 1913 01:27:00,490 --> 01:27:03,870 され、あなたのpsetを提出し、 以下のように、私は何をすべきかわかりません。 1914 01:27:03,870 --> 01:27:05,870 私は終了し、開始し、私が提出しました。 1915 01:27:05,870 --> 01:27:09,737 自分自身にいくつかの余地を与えるようにしてください、 コー​​ドの問題が常に発生するため。 1916 01:27:09,737 --> 01:27:11,570 あなたは確認します あなた自身を与えること 1917 01:27:11,570 --> 01:27:14,810 多くの時間をできるようにします psetを完了します。 1918 01:27:14,810 --> 01:27:15,310 クール。 1919 01:27:15,310 --> 01:27:16,720 私はここでたむろします。 1920 01:27:16,720 --> 01:27:18,226 >> 聴衆:このオンラインはすでにありますか? 1921 01:27:18,226 --> 01:27:20,850 ANDI PENG:それはだ場合、私は知りません オンライン既に、それがされます。 1922 01:27:20,850 --> 01:27:23,500 誰場合、私はここにたむろう すでにご質問があります。 1923 01:27:23,500 --> 01:27:25,390 来てくれてありがとう。 1924 01:27:25,390 --> 01:27:27,105