1 00:00:00,000 --> 00:00:12,510 2 00:00:12,510 --> 00:00:13,870 >> आरओबी: सब ठीक है. 3 00:00:13,870 --> 00:00:16,770 प्रथम खंड में आपका स्वागत है. 4 00:00:16,770 --> 00:00:17,480 मैं रोब हूँ. 5 00:00:17,480 --> 00:00:18,806 >> यूसुफ: मैं यूसुफ हूँ. 6 00:00:18,806 --> 00:00:21,540 >> आरओबी: तो हम सही अंदर डुबकी हूँ 7 00:00:21,540 --> 00:00:23,420 के बारे में बात करने के लिए सबसे पहले बात उपकरण है. 8 00:00:23,420 --> 00:00:27,150 तो उम्मीद है कि आप में से अधिकांश है यह पहले से ही डाउनलोड किया. 9 00:00:27,150 --> 00:00:37,180 लेकिन तुम निर्देश देख सकते हैं cs50.net/appliance पर. 10 00:00:37,180 --> 00:00:38,430 हे भगवान, अब मैं स्वयं के प्रति सजग हूँ. 11 00:00:38,430 --> 00:00:44,590 12 00:00:44,590 --> 00:00:45,430 मैं अभी भी यह सुना है. 13 00:00:45,430 --> 00:00:47,232 >> यूसुफ: वाह, यह जैसा लगता है यह disoriented है. 14 00:00:47,232 --> 00:00:52,460 >> आरओबी: तो कुछ लोगों को कर दिया गया है इसके साथ मुद्दों है, इसलिए जब तक इंतजार नहीं करते 15 00:00:52,460 --> 00:00:54,940 समस्या के आखिरी मिनट के लिए सेट कोशिश करते हैं और उपकरण का समाधान और 16 00:00:54,940 --> 00:00:56,320 यह काम नहीं कर रहा है कि बाहर ढूँढने. 17 00:00:56,320 --> 00:00:59,010 >> यूसुफ: और कुछ काम नहीं कर रहा है और आपको मदद की जरूरत है, आप के लिए जा सकते हैं 18 00:00:59,010 --> 00:01:03,390 cs50.net/discussion जहां हम जहां आप एक मंच है 19 00:01:03,390 --> 00:01:04,110 अपने प्रश्न पोस्ट कर सकते हैं. 20 00:01:04,110 --> 00:01:06,655 और हम अंत में उन्हें मिल जाएगा. 21 00:01:06,655 --> 00:01:07,490 >> आरओबी: सब ठीक है. 22 00:01:07,490 --> 00:01:12,180 तो यह क्या उपकरण है की तरह दिखता है. 23 00:01:12,180 --> 00:01:15,480 फिर, यह सिर्फ एक पूरी तरह से अलग है ऑपरेटिंग सिस्टम के भीतर चल रहा है 24 00:01:15,480 --> 00:01:19,440 जो भी ऑपरेटिंग सिस्टम आप अपने लैपटॉप पर चल रहे हैं. 25 00:01:19,440 --> 00:01:24,450 और तुम मुख्य बातें का उपयोग किया जीएडिट हैं. 26 00:01:24,450 --> 00:01:28,050 तो उम्मीद है कि यह पहले से ही है एक परिचित साइट बन जाते हैं. 27 00:01:28,050 --> 00:01:29,470 टर्मिनल. 28 00:01:29,470 --> 00:01:31,890 >> और तुम भी क्रोम चला सकते हैं उपकरण के भीतर. 29 00:01:31,890 --> 00:01:33,860 लोगों के एक जोड़े किया गया है इंटरनेट सूचना दी है जो 30 00:01:33,860 --> 00:01:35,390 उपकरण में काम नहीं. 31 00:01:35,390 --> 00:01:38,090 और उनमें से कुछ ही ग्रहण किया माना जाता है कि नहीं 32 00:01:38,090 --> 00:01:39,190 उपकरण में इंटरनेट. 33 00:01:39,190 --> 00:01:40,750 लेकिन हाँ, वहाँ माना जाता है इंटरनेट हो. 34 00:01:40,750 --> 00:01:44,000 35 00:01:44,000 --> 00:01:46,410 >> मैं अभी यह कहना होगा, लेकिन यह नहीं है वास्तव में कुछ भी मतलब है. 36 00:01:46,410 --> 00:01:50,680 इंटरनेट काम नहीं कर रहा है, इस में आप की जरूरत के लिए करते हैं क्या है 37 00:01:50,680 --> 00:01:52,180 इसे ठीक करने के लिए चलाने के लिए. 38 00:01:52,180 --> 00:01:55,602 आप इंटरनेट मुद्दों कर रहे हैं, नहीं करते यह याद है, अभी इस पर पोस्ट 39 00:01:55,602 --> 00:01:57,560 चर्चा है, और हम उस चलाने, कहता हूँ. 40 00:01:57,560 --> 00:02:00,420 लेकिन इंटरनेट काम किया जाना चाहिए. 41 00:02:00,420 --> 00:02:06,650 >> इसलिए केवल दूसरी बात - हाँ, कुछ भी नहीं किसी और वास्तव में प्रासंगिक है. 42 00:02:06,650 --> 00:02:08,979 लेकिन मैं सिर्फ इतना है कि बाहर बात करना चाहता था - 43 00:02:08,979 --> 00:02:13,290 इस दाहिने कोने में देखते हैं. 44 00:02:13,290 --> 00:02:16,530 तो अपने उपकरणों के प्रत्येक चाहिए एक आईपी पता है. 45 00:02:16,530 --> 00:02:22,350 और बाद में सेमेस्टर में, इस आईपी पते और अधिक प्रासंगिक हो जाएगा जब 46 00:02:22,350 --> 00:02:27,230 यदि आप वेब P-सेट पर काम कर रहे हैं, क्योंकि आप का उपयोग करने में सक्षम हो जाएगा 47 00:02:27,230 --> 00:02:32,310 वेबसाइट आप से पर काम कर रहे हैं अपने इस आईपी पते का उपयोग कर स्थानीय क्रोम. 48 00:02:32,310 --> 00:02:35,400 >> लेकिन मैं आईपी पते का उपयोग करने के लिए क्या पसंद के लिए - और आप ऐसा करने की जरूरत नहीं है, मैं 49 00:02:35,400 --> 00:02:37,460 सिर्फ यह कहना चाहता हूँ - 50 00:02:37,460 --> 00:02:39,540 यहाँ है. 51 00:02:39,540 --> 00:02:42,910 तो इस पर एक टर्मिनल विंडो है मेरे मैक, इस में नहीं है 52 00:02:42,910 --> 00:02:44,580 पर सभी उपकरण. 53 00:02:44,580 --> 00:02:47,190 और आप देख सकते हैं क्या इस आदेश करता है. 54 00:02:47,190 --> 00:02:51,855 लेकिन मैं सीधे SSH करने के लिए जा रहा हूँ मेरे उपकरण के लिए. 55 00:02:51,855 --> 00:02:53,410 मैं आईपी क्या है पता नहीं है. 56 00:02:53,410 --> 00:02:54,300 >> यूसुफ: 168 - 57 00:02:54,300 --> 00:02:56,080 >> 168.224.1.0. 58 00:02:56,080 --> 00:02:59,950 >> आरओबी: तो एक बार मैं कर रहा हूँ इस के साथ, अंदर प्रवेश 59 00:02:59,950 --> 00:03:05,450 अब, असल में, यह एक के समान है मेरे उपकरण के भीतर टर्मिनल विंडो. 60 00:03:05,450 --> 00:03:10,280 तो मैं बहुत ज्यादा वास्तव में काम नहीं किया उपकरण के भीतर ही से. 61 00:03:10,280 --> 00:03:12,550 मैं तो बस हमेशा यह चल रहा है कम से कम पृष्ठभूमि में 62 00:03:12,550 --> 00:03:15,890 और इसे में SSHed. 63 00:03:15,890 --> 00:03:24,270 >> इस के साथ इस मुद्दे को आप नहीं जा रहे है आसानी से जीएडिट का उपयोग करने में सक्षम हो 64 00:03:24,270 --> 00:03:25,600 इस सीधे से. 65 00:03:25,600 --> 00:03:31,500 लेकिन अगर आप एक असली शांत होना चाहते हैं हैकर, तो आप एक के लिए इस्तेमाल किया जाना चाहिए 66 00:03:31,500 --> 00:03:34,220 वैसे भी कमांड लाइन पाठ संपादक. 67 00:03:34,220 --> 00:03:39,620 तो विम और Emacs और नैनो, इन सब अलग विकल्प हैं. 68 00:03:39,620 --> 00:03:41,560 नैनो के लिए सबसे आसान हो जाता है. 69 00:03:41,560 --> 00:03:45,006 और मैं यह नहीं लगता है कि वाक्यविन्यास पर प्रकाश डाला. 70 00:03:45,006 --> 00:03:47,620 ओह, नहीं, यह पूरी तरह से करता है. 71 00:03:47,620 --> 00:03:49,870 तो तुम, नैनो का उपयोग कर सकते हैं क्योंकि एक बहुत आसान है कि. 72 00:03:49,870 --> 00:03:52,000 >> आप इन सभी आदेशों को देखने तल पर. 73 00:03:52,000 --> 00:03:54,750 इस छोटे से गाजर प्रतीक. 74 00:03:54,750 --> 00:03:57,620 इससे पहले कि आप इसे नहीं देखा है, तो आप हूँ शायद अब यह एक बहुत देखते हैं. 75 00:03:57,620 --> 00:04:02,350 यह आम तौर पर नियंत्रण गाजर का मतलब है, अपने कीबोर्ड के नीचे बाईं तरह 76 00:04:02,350 --> 00:04:04,130 नियंत्रण चरित्र. 77 00:04:04,130 --> 00:04:07,260 यहाँ तो यह मुझे यहाँ नीचे कह रहा है - 78 00:04:07,260 --> 00:04:08,710 मैं अंदर ज़ूम अगर ओह, इसे काट नहीं है 79 00:04:08,710 --> 00:04:11,040 इसलिए नियंत्रण, एक्स कैसे है मैं बाहर निकलने के लिए जा रहा हूँ. 80 00:04:11,040 --> 00:04:14,710 और यह मैं के लिए वाई हिट कर सकते हैं कहते हैं हाँ, बचाने के लिए, एन के लिए नहीं. 81 00:04:14,710 --> 00:04:17,190 तो यह है कि नैनो की. 82 00:04:17,190 --> 00:04:22,860 >> विम और Emacs से थोड़ा अधिक हो जाते हैं जटिल और भारी. 83 00:04:22,860 --> 00:04:28,840 लेकिन अगर आप इसकी आदत हो सकता है, और फिर तुम इसे प्यार करती हूँ. 84 00:04:28,840 --> 00:04:30,590 तो वह है कि. 85 00:04:30,590 --> 00:04:31,720 >> यूसुफ: ऐसा करने की कोई जरूरत नहीं है. 86 00:04:31,720 --> 00:04:31,840 >> रोब: हाँ. 87 00:04:31,840 --> 00:04:37,510 आप के लिए जीएडिट उपयोग करने के लिए स्वतंत्र हैं सेमेस्टर के शेष. 88 00:04:37,510 --> 00:04:40,630 इसलिए किसी भी उपकरण से संबंधित सवाल? 89 00:04:40,630 --> 00:04:42,820 या फिर आप क्या बाकी पर कोई विचार है के बारे में के बारे में बात करने की आवश्यकता है 90 00:04:42,820 --> 00:04:43,610 उपकरण? 91 00:04:43,610 --> 00:04:43,996 हां. 92 00:04:43,996 --> 00:04:47,720 >> स्पीकर 1: आप में SSHed जब अपने बात, पासवर्ड क्रिमसन था? 93 00:04:47,720 --> 00:04:48,390 >> रोब: हाँ. 94 00:04:48,390 --> 00:04:50,170 बहुत ज्यादा सब कुछ के लिए पासवर्ड उपकरण में जा रहा है 95 00:04:50,170 --> 00:04:52,473 क्रिमसन हो. 96 00:04:52,473 --> 00:04:56,517 >> अध्यक्ष 2: एक असली आईडीई की तरह स्थापित करें उपकरण पर, यह काम करेगा? 97 00:04:56,517 --> 00:04:59,200 98 00:04:59,200 --> 00:05:07,290 >> रोब: मैं ग्रहण करता है की कल्पना एक फेडोरा संस्करण है, जो मामले में, हाँ, 99 00:05:07,290 --> 00:05:08,420 आप ऐसा कर सकते हैं. 100 00:05:08,420 --> 00:05:10,875 यह शायद वास्तव में इसके लायक नहीं है. 101 00:05:10,875 --> 00:05:11,742 >> अध्यक्ष 2: ठीक है. 102 00:05:11,742 --> 00:05:15,924 तो यह शायद अगर मैं चाहता था आसान है ग्रहण का उपयोग करें, सिर्फ देशी उपयोग और 103 00:05:15,924 --> 00:05:17,646 तब तक अपलोड - 104 00:05:17,646 --> 00:05:21,090 >> आरओबी: ओह, यह भी शायद आसान है. 105 00:05:21,090 --> 00:05:24,046 लेकिन आप यह काम कर प्राप्त कर सकते हैं उपकरण के भीतर. 106 00:05:24,046 --> 00:05:27,740 >> यूसुफ: और कैमरे के लिए, सवाल था, तुम एक और स्थापित कर सकते हैं 107 00:05:27,740 --> 00:05:29,490 उपकरण के अंदर आईडीई? 108 00:05:29,490 --> 00:05:31,520 >> रोब: ग्रहण एक किया जा रहा है एक आईडीई का उदाहरण. 109 00:05:31,520 --> 00:05:34,800 110 00:05:34,800 --> 00:05:36,050 किसी अन्य उपकरण सवाल? 111 00:05:36,050 --> 00:05:38,250 112 00:05:38,250 --> 00:05:38,680 ठीक है. 113 00:05:38,680 --> 00:05:44,920 >> इसलिए हम अब कमांड लाइन के लिए आगे बढ़ना होगा इंटरफ़ेस से संबंधित बातें है, तो सीएलआई. 114 00:05:44,920 --> 00:05:47,990 और फिर, मैं बस में काम करने के लिए जा रहा हूँ यहां, इस के समान है क्योंकि 115 00:05:47,990 --> 00:05:52,780 एक टर्मिनल विंडो के भीतर काम उपकरण के भीतर. 116 00:05:52,780 --> 00:05:54,160 कैसे फ़ॉन्ट कि लग रहा है? 117 00:05:54,160 --> 00:05:55,970 कि काफी बड़ा है? 118 00:05:55,970 --> 00:05:57,000 ठीक है. 119 00:05:57,000 --> 00:06:02,480 >> तो आदेशों की एक बहुत कुछ कर रहे हैं कि तुम बहुत करने के लिए इस्तेमाल किया जाना चाहिए 120 00:06:02,480 --> 00:06:04,490 सेमेस्टर भर में. 121 00:06:04,490 --> 00:06:09,480 नेविगेट करने के लिए बड़ी दो रास, सूची में हैं इस निर्देशिका में फाइल, और 122 00:06:09,480 --> 00:06:11,380 सीडी, तो निर्देशिका बदलें. 123 00:06:11,380 --> 00:06:18,390 तो मैं तो डेस्कटॉप को बदलने के लिए और कर सकते हैं एक बहुत ही आम पैटर्न एक करने के लिए सीडी है 124 00:06:18,390 --> 00:06:22,550 निर्देशिका और तुरंत रास निर्देशिका में क्या है. 125 00:06:22,550 --> 00:06:25,540 >> लोग भी कभी कभी एहसास नहीं है उस टैब पूरा एक बात है. 126 00:06:25,540 --> 00:06:28,370 तो जैसे सीडी, VH, और फिर मैं टैब मारा. 127 00:06:28,370 --> 00:06:30,790 मैं बाहर प्रकार लगभग कभी नहीं पूरी बात. 128 00:06:30,790 --> 00:06:32,920 और फिर मैं टैब मार रखने अगर फिर, यह स्वतः हूँ 129 00:06:32,920 --> 00:06:33,670 मेरे लिए लिस्टिंग शुरू. 130 00:06:33,670 --> 00:06:37,000 तो मैं सीडी vhosts, स्थानीय होस्ट कर सकते हैं. 131 00:06:37,000 --> 00:06:39,880 और कहा कि अभी जा रहा है - 132 00:06:39,880 --> 00:06:43,380 मामले में आप शब्द नहीं सुना है इससे पहले, निर्देशिका सिर्फ एक और शब्द है 133 00:06:43,380 --> 00:06:45,170 फ़ोल्डर के लिए. 134 00:06:45,170 --> 00:06:49,930 तो अब आप देखते हैं - 135 00:06:49,930 --> 00:06:51,810 के शीर्ष पर है कि लाने. 136 00:06:51,810 --> 00:06:55,380 >> तो अब तुम कोष्ठक में देखते हैं थोड़ा टिल्ड, स्लैश, vhost देखते हैं, 137 00:06:55,380 --> 00:06:56,810 स्थानीय मेजबान स्लेश. 138 00:06:56,810 --> 00:07:00,040 तो टिल्ड, कि संदर्भित करता है मेरे घर निर्देशिका करने के लिए. 139 00:07:00,040 --> 00:07:03,090 यह आप कर रहे हैं एक निर्देशिका है आप अंदर SSH जब में 140 00:07:03,090 --> 00:07:05,660 यह आप जब में हैं निर्देशिका है आप एक टर्मिनल खोलें. 141 00:07:05,660 --> 00:07:08,650 तुम कहाँ शुरू लगता है. 142 00:07:08,650 --> 00:07:13,110 और इसलिए मैं अपने घर निर्देशिका के अंदर हूँ, और मैं vhost के अंदर हूँ 143 00:07:13,110 --> 00:07:14,475 मेरे घर निर्देशिका की निर्देशिका अंदर. 144 00:07:14,475 --> 00:07:19,670 और फिर मैं स्थानीय के अंदर हूँ उस के अंदर निर्देशिका की मेजबानी. 145 00:07:19,670 --> 00:07:23,740 >> सीडी के साथ तो कुछ अन्य उपयोगी बातें - 146 00:07:23,740 --> 00:07:29,220 या ठीक है, सामान्य रूप में, तो हमेशा डॉट वर्तमान निर्देशिका को संदर्भित करता है. 147 00:07:29,220 --> 00:07:31,130 सीडी, डॉट एक बहुत बेकार आदेश है. 148 00:07:31,130 --> 00:07:35,150 लेकिन उस के लिए बदल रहा है वर्तमान निर्देशिका. 149 00:07:35,150 --> 00:07:38,230 के मामले में एक और अधिक उपयोगी एक सीडी डॉट, डॉट, जो है 150 00:07:38,230 --> 00:07:40,220 अभी तक एक निर्देशिका जाना. 151 00:07:40,220 --> 00:07:43,360 >> और ध्यान दें कि इन - 152 00:07:43,360 --> 00:07:48,610 मैं उपनामों कहना चाहता हूँ, लेकिन इन प्रतीक, बिंदी, और डॉट, दूरसंचार विभाग, उन काम 153 00:07:48,610 --> 00:07:51,740 आप कर रहे हैं काफी किसी भी आदेश के लिए चलाने की सोच होने जा रहा. 154 00:07:51,740 --> 00:07:55,370 तुम कहाँ हो जाएगा तो जैसे सीडी शायद है अधिकांश का उपयोग कर, लेकिन इन नहीं कर रहे हैं 155 00:07:55,370 --> 00:07:56,780 सिर्फ सीडी समझता कि चीजें. 156 00:07:56,780 --> 00:07:59,980 यह बहुत ज्यादा कुछ अपने पूरे है कमांड लाइन समझता है. 157 00:07:59,980 --> 00:08:01,932 कार्यक्रमों की एक बहुत कुछ समझ डॉट और डॉट डॉट. 158 00:08:01,932 --> 00:08:04,830 159 00:08:04,830 --> 00:08:09,090 >> तो अन्य उपयोगी हैं - सीडी, पानी का छींटा. 160 00:08:09,090 --> 00:08:13,460 इसलिए कि मुझे लाने जा रही है मैं अंदर गया था कि पिछले निर्देशिका 161 00:08:13,460 --> 00:08:15,980 तो कभी कभी मैं ऐसा कुछ कर लेंगे ओह, मैं यहां काम कर रहा हूँ. 162 00:08:15,980 --> 00:08:21,110 और मैं कुछ के साथ कुछ त्रुटि देखते हैं, मैं करने जा रहा द्वारा यह जांच जाऊँगा 163 00:08:21,110 --> 00:08:24,020 कहीं कुछ बेतरतीब निर्देशिका. 164 00:08:24,020 --> 00:08:25,260 यह हूँ और अगर मैं नहीं जानता वहां मुझे जाने. 165 00:08:25,260 --> 00:08:25,720 यह होगा. 166 00:08:25,720 --> 00:08:27,615 तो फिर मैं जो मैं चाहता हूँ इस निर्देशिका में. 167 00:08:27,615 --> 00:08:28,950 बकवास, बकवास, बकवास, बकवास, बकवास. 168 00:08:28,950 --> 00:08:31,770 और मुझे लगता है मैं चाहता हूँ, सब ठीक है, की तरह था वापस मैं कहाँ था पर जाने के लिए. 169 00:08:31,770 --> 00:08:34,490 सीडी, डैश, और यह सही मुझे वापस लाता है. 170 00:08:34,490 --> 00:08:39,970 >> तो मैं एक बहुत फेंक करने के लिए जा रहा हूँ आज आप पर इनमें से. 171 00:08:39,970 --> 00:08:43,730 मैं आपको याद करने की उम्मीद नहीं है उन सभी को. 172 00:08:43,730 --> 00:08:46,170 यह एक तरह से सिर्फ इतना पता है वे मौजूद हैं. 173 00:08:46,170 --> 00:08:48,690 और फिर बाद में आप की तरह कर रहे हैं पर, हम्म, मैं करने के लिए वापस जाना चाहता हूँ 174 00:08:48,690 --> 00:08:51,870 मैं बस में था कि निर्देशिका, ओह, रुको, कुछ उस तरह से मौजूद है. 175 00:08:51,870 --> 00:08:53,980 तुम बस में टाइप करने के लिए नहीं है फिर पूरी निर्देशिका. 176 00:08:53,980 --> 00:08:56,090 >> यूसुफ: और अंत में आप सिर्फ होगा पर और फिर उन का उपयोग, और 177 00:08:56,090 --> 00:08:57,830 यह मांसपेशियों की स्मृति बन जाऊँगा. 178 00:08:57,830 --> 00:09:00,090 >> रोब: हाँ. 179 00:09:00,090 --> 00:09:02,930 जैसा कि मैंने पहले कहा तो कैसे, कि टिल्ड आपके घर निर्देशिका है. 180 00:09:02,930 --> 00:09:04,820 तो मैं सीडी, टिल्ड कर सकते हैं. 181 00:09:04,820 --> 00:09:07,280 लेकिन मैं भी करने के लिए नहीं है ऐसा लगता है कि मैं सिर्फ अगर - 182 00:09:07,280 --> 00:09:09,760 मैं तो निर्देशिका के लिए वापस जाना होगा यह एक व्यर्थ उदाहरण नहीं है. 183 00:09:09,760 --> 00:09:14,560 मैं सिर्फ सीडी करते हैं लेकिन अगर वह भी है के रूप में ही, मेरे घर निर्देशिका पर जाएं. 184 00:09:14,560 --> 00:09:18,380 185 00:09:18,380 --> 00:09:19,880 मैं कमान लालकृष्ण करना 186 00:09:19,880 --> 00:09:24,015 >> यूसुफ: आप भी स्पष्ट लिख सकते हैं, शब्द, और यह कि यह स्पष्ट करना चाहिए. 187 00:09:24,015 --> 00:09:28,650 >> आरओबी: और मैं नियंत्रण, यह भी लगता है एल भी यह होता है. 188 00:09:28,650 --> 00:09:29,690 अलग अलग तरीकों से तो बहुत सारे. 189 00:09:29,690 --> 00:09:34,070 मैं कुछ मतभेद हैं जहां आपको लगता है स्पष्ट और नियंत्रण, एल बस 190 00:09:34,070 --> 00:09:37,280 वास्तव में यह शीर्ष पर धक्का और मैं अभी भी वापस स्क्रॉल कर सकते हैं. 191 00:09:37,280 --> 00:09:40,580 कमान, कश्मीर सचमुच नष्ट कर देता है सब कुछ, और आप 192 00:09:40,580 --> 00:09:42,960 ऊपर वापस स्क्रॉल नहीं कर सकते हैं. 193 00:09:42,960 --> 00:09:45,530 बहुत कम से कम, कि यह iTerm2 में कैसे काम करता है. 194 00:09:45,530 --> 00:09:48,690 मैं कैसे अन्य बातें पता नहीं है - 195 00:09:48,690 --> 00:09:49,360 ओह. 196 00:09:49,360 --> 00:09:55,450 >> SSHing के साथ, आप विंडोज पर हैं तो आप पुटी डाउनलोड करने के लिए जा रहे हैं 197 00:09:55,450 --> 00:10:02,360 विंडोज नहीं है SSH के क्रम में एक निर्मित SSH उपकरण की तरह है. 198 00:10:02,360 --> 00:10:06,150 एमएसीएस से, आप सिर्फ SSH सीधे कर सकते हैं एक टर्मिनल विंडो से. 199 00:10:06,150 --> 00:10:08,755 200 00:10:08,755 --> 00:10:09,690 ठीक है. 201 00:10:09,690 --> 00:10:11,840 प्रश्न? 202 00:10:11,840 --> 00:10:19,260 >> लोकसभा के साथ, तो कुछ के लिए इस्तेमाल किया जाना इन आदेशों की सबसे अधिक है साथ - 203 00:10:19,260 --> 00:10:20,060 ठीक है, मैं सिर्फ एक कोशिश करूँगा. 204 00:10:20,060 --> 00:10:21,310 रास, डैश, एल. 205 00:10:21,310 --> 00:10:26,330 तो पानी का छींटा, एल हम जा रहे हैं क्या है रास के लिए एक झंडा कॉल करने के लिए. 206 00:10:26,330 --> 00:10:30,770 और इन आदेशों का एक बहुत झंडे आप उन्हें पारित कर सकते हैं. 207 00:10:30,770 --> 00:10:35,020 तो इस मामले में, पानी का छींटा, एल एक ध्वज है कि मुझे एक पूर्ण देने के लिए यह बताता है 208 00:10:35,020 --> 00:10:37,850 सभी जानकारी की लिस्टिंग इन फ़ाइलों की. 209 00:10:37,850 --> 00:10:44,790 >> इसलिए हम डेस्कटॉप था कि यहाँ देख 12:54 30 जुलाई को संशोधित. 210 00:10:44,790 --> 00:10:47,160 डाउनलोड 6 सितंबर में संशोधित किया गया था. 211 00:10:47,160 --> 00:10:52,350 ये मौजूदा आकार के होते हैं और इन निर्देशिकाओं की बाइट. 212 00:10:52,350 --> 00:10:54,412 तुम समझने की जरूरत नहीं है इस सब के सब. 213 00:10:54,412 --> 00:11:00,380 >> यह सामान बाईं तरफ, इन drwx की, कि और अधिक प्रासंगिक हो जाएगा 214 00:11:00,380 --> 00:11:02,290 आप से निपटने के लिए बाद में जब - 215 00:11:02,290 --> 00:11:05,900 कि अनुमतियाँ प्राप्त के साथ नहीं है इन फ़ाइलों को देखने के लिए. 216 00:11:05,900 --> 00:11:09,880 और तो आप पर ही उपयोगकर्ता नहीं थे इस कंप्यूटर, आप करने में सक्षम होगा 217 00:11:09,880 --> 00:11:13,345 कहते हैं, ठीक है, मैं केवल एक ही होना चाहिए इस फाइल को देखने के लिए अनुमति दी है या मैं कर रहा हूँ 218 00:11:13,345 --> 00:11:14,870 अनुमति देने के लिए जा रहा हर कोई इस फाइल को देखने के लिए. 219 00:11:14,870 --> 00:11:17,710 तो अपने कंप्यूटर पर किसी और को इस फाइल में देख सकते हैं. 220 00:11:17,710 --> 00:11:22,190 221 00:11:22,190 --> 00:11:25,600 मैं भी क्या यह नहीं पता है - यह क्या करता है? 222 00:11:25,600 --> 00:11:26,840 >> यूसुफ: मैं वास्तव में काफी यकीन नहीं है. 223 00:11:26,840 --> 00:11:27,705 >> रोब: पता नहीं. 224 00:11:27,705 --> 00:11:30,530 >> यूसुफ: तुम नहीं जानते लेकिन अगर वहाँ है आप उपयोग कर सकते हैं कि एक उपयोगी आदेश 225 00:11:30,530 --> 00:11:31,680 उत्पादन का मतलब है क्या आप बता सकते हैं. 226 00:11:31,680 --> 00:11:33,780 और तुम आदमी में टाइप आदेश से पहले - 227 00:11:33,780 --> 00:11:35,000 इतना एम ए एन. आरओबी: यार. 228 00:11:35,000 --> 00:11:37,690 तो आदमी एक और एक है यह बहुत उपयोगी है. 229 00:11:37,690 --> 00:11:39,540 और आदमी, रास. 230 00:11:39,540 --> 00:11:47,320 तो आदमी पृष्ठों, वे दोनों है आप का उपयोग करने जा रहे हैं कि आदेशों 231 00:11:47,320 --> 00:11:50,330 कमांड लाइन पर, और वे भी है प्रासंगिक होगा कि कार्यों 232 00:11:50,330 --> 00:11:52,530 तुम आदमी कर सकते हैं तो सी. के साथ - 233 00:11:52,530 --> 00:11:53,720 और मैं 3 पर ध्यान नहीं दिया. 234 00:11:53,720 --> 00:11:57,410 लेकिन मैन 3 printf लाने जा रही है printf के सी संस्करण. 235 00:11:57,410 --> 00:12:01,030 मैं सिर्फ आदमी printf लेकिन अगर, यह है आदेश printf को लाने के लिए जा रहा 236 00:12:01,030 --> 00:12:03,540 आदेश पंक्ति पर होता है. 237 00:12:03,540 --> 00:12:05,730 >> तो आदमी, रास. 238 00:12:05,730 --> 00:12:09,030 आदमी पृष्ठों सुंदर हो सकता है भारी. 239 00:12:09,030 --> 00:12:12,770 इधर, हालांकि, आपको यह लिस्टिंग देखेंगे इन झंडे के सभी की कि लोकसभा 240 00:12:12,770 --> 00:12:14,300 समझता है. 241 00:12:14,300 --> 00:12:17,876 तो हम, एल पानी का छींटा, और करने के लिए जाना है - 242 00:12:17,876 --> 00:12:19,300 मैं सिर्फ तुम पर इस फेंक करने के लिए जा रहा हूँ. 243 00:12:19,300 --> 00:12:23,050 लेकिन खोज करने के क्रम में, आप चाहते हैं पहला सवाल हिट करने के लिए 244 00:12:23,050 --> 00:12:24,780 मार्क या स्लैश बटन. 245 00:12:24,780 --> 00:12:26,040 तो स्लेश. 246 00:12:26,040 --> 00:12:29,000 >> और फिर मैं खोज कर सकते हैं जो मैं चाहता हूँ के लिए. 247 00:12:29,000 --> 00:12:33,780 तो मैं पानी का छींटा, एल के लिए स्लेश करने के लिए जा रहा हूँ. 248 00:12:33,780 --> 00:12:35,110 और यह वहाँ था. 249 00:12:35,110 --> 00:12:37,450 तो एक लंबे लिस्टिंग प्रारूप का उपयोग करें. 250 00:12:37,450 --> 00:12:40,060 यही कारण है कि मुझे बाहर निकालने में मदद नहीं करता है क्या उस विशेष स्तंभ का मतलब है, लेकिन मैं 251 00:12:40,060 --> 00:12:44,480 यहां कहीं मान यह समझाना होगा कि. 252 00:12:44,480 --> 00:12:48,740 इसलिए किसी भी आदेश के लिए मैन पेज का उपयोग आप तुरंत समझ में नहीं आता कि. 253 00:12:48,740 --> 00:12:51,080 >> मैं आप भी आदमी, आदमी कर सकते हैं पूरा यकीन है. 254 00:12:51,080 --> 00:12:53,070 ऑनलाइन के लिए एक इंटरफेस संदर्भ मैनुअल. 255 00:12:53,070 --> 00:12:57,700 256 00:12:57,700 --> 00:13:03,570 ओह, शायद थोड़ा है कि एक आखरी प्रासंगिक है रास, पानी का छींटा, एक. 257 00:13:03,570 --> 00:13:08,490 मैं सिर्फ लोकसभा करते हैं तो नोटिस, मैं इन पांच फाइलें मिलता है. 258 00:13:08,490 --> 00:13:11,480 मैं रास करते हैं, पानी का छींटा, एक, मैं एक बहुत अधिक फाइलें मिलता है. 259 00:13:11,480 --> 00:13:15,350 इन सब के बीच आम में तो बात नई फ़ाइलें पहले से डॉट है. 260 00:13:15,350 --> 00:13:21,220 >> तो परंपरा है कि एक फ़ाइल है कि एक डॉट छिपा है के साथ शुरू होता है. 261 00:13:21,220 --> 00:13:25,300 तो क्या आप उस फ़ाइल को देखने के लिए नहीं करना चाहती साथ यह गड़बड़ नहीं करना चाहता है 262 00:13:25,300 --> 00:13:26,750 अपनी निर्देशिका लिस्टिंग. 263 00:13:26,750 --> 00:13:30,020 आप स्पष्ट रूप से पूछना जब यह केवल है सब ठीक है, रास, पानी का छींटा, एक, मुझे दिखाओ. 264 00:13:30,020 --> 00:13:32,830 एक, सभी फाइलों के लिए खड़ा है छिपा लोगों सहित. 265 00:13:32,830 --> 00:13:37,260 266 00:13:37,260 --> 00:13:39,270 तो कुछ अन्य आदेश. 267 00:13:39,270 --> 00:13:41,323 ओह, उस बिंदु पर सवाल? 268 00:13:41,323 --> 00:13:41,746 हां. 269 00:13:41,746 --> 00:13:45,914 >> स्पीकर 3: आप रास करते हैं, एक, डॉट, डॉट क्या है? 270 00:13:45,914 --> 00:13:46,870 >> आरओबी: ओह. 271 00:13:46,870 --> 00:13:48,780 तो इस बारे में मैं बात कर रहा था क्या है. 272 00:13:48,780 --> 00:13:50,890 यह एक ही बात है, जहां मैं सीडी, डॉट, दूरसंचार विभाग की तरह कर सकते हैं. 273 00:13:50,890 --> 00:13:56,790 तो तकनीकी तौर पर, डॉट और डॉट, डॉट हैं हर एक में मौजूद फाइलें 274 00:13:56,790 --> 00:14:03,620 डॉट फ़ाइल संदर्भित करता है जहां निर्देशिका वर्तमान निर्देशिका करने के लिए. 275 00:14:03,620 --> 00:14:06,930 तो मैं सीडी, डॉट, मैं अभी जा रहा हूँ अगर निर्देशिका में रहने के लिए. 276 00:14:06,930 --> 00:14:10,870 और दूरसंचार विभाग, दूरसंचार विभाग हमेशा के लिए संदर्भित करता है पिछले निर्देशिका एक स्तर ऊपर. 277 00:14:10,870 --> 00:14:18,200 तो मैं लॉग और लोकसभा में जाना, पानी का छींटा, अल, मैं डॉट, दूरसंचार विभाग देखेंगे. डॉट को सीडी, डॉट 278 00:14:18,200 --> 00:14:20,390 पिछले निर्देशिका करने के लिए मुझे लाता है. 279 00:14:20,390 --> 00:14:24,530 280 00:14:24,530 --> 00:14:25,780 हाँ. 281 00:14:25,780 --> 00:14:27,160 282 00:14:27,160 --> 00:14:28,110 ठीक है. 283 00:14:28,110 --> 00:14:33,070 >> तो एक और बहुत महत्वपूर्ण आदेश आरएम है. 284 00:14:33,070 --> 00:14:35,650 इसलिए कि हम जा रहे हैं दूर करने के लिए उपयोग करने के लिए. 285 00:14:35,650 --> 00:14:38,100 और मुझे वास्तव में एक और करते हैं आदेश पहले. 286 00:14:38,100 --> 00:14:39,610 तो mkdir. 287 00:14:39,610 --> 00:14:42,770 Mkdir है कि कैसे आप कर सकते हैं निर्देशिका बनाने. 288 00:14:42,770 --> 00:14:47,530 और मैं एक अस्थायी निर्देशिका बनाने देंगे और कि अस्थायी निर्देशिका में चलते हैं. 289 00:14:47,530 --> 00:14:49,590 और उम्मीद के रूप में, यह खाली है. 290 00:14:49,590 --> 00:14:53,680 लेकिन मैं रास, पानी का छींटा, एक, मैं अभी भी बिंदु है अगर डॉट को संदर्भित करता है और डॉट, डॉट, क्योंकि 291 00:14:53,680 --> 00:14:54,480 वर्तमान निर्देशिका. 292 00:14:54,480 --> 00:14:56,170 और दूरसंचार विभाग, दूरसंचार विभाग को संदर्भित करता है पिछले निर्देशिका. 293 00:14:56,170 --> 00:14:58,700 और उन हमेशा कोई बात नहीं मौजूद होगा आप अंदर हैं निर्देशिका 294 00:14:58,700 --> 00:15:01,910 295 00:15:01,910 --> 00:15:09,010 >> और यह एक पूरी तरह से अनावश्यक है आदेश, लेकिन स्पर्श. 296 00:15:09,010 --> 00:15:11,880 यह इसलिए है क्योंकि मैं सिर्फ यह उपयोग कर रहा हूँ फाइल बनाने के लिए एक आसान तरीका है. 297 00:15:11,880 --> 00:15:16,180 तो सी बस है स्पर्श, बी स्पर्श, एक टच एक बुलाया तीन फाइल बनाने के लिए जा रहे हैं, 298 00:15:16,180 --> 00:15:17,845 पूरी तरह से खाली कर रहे हैं कि बी, और सी. 299 00:15:17,845 --> 00:15:20,450 300 00:15:20,450 --> 00:15:24,980 तो मुझे की बात में उन बनाने पहली जगह है कि आरएम है तो बस इतना है 301 00:15:24,980 --> 00:15:26,250 हम उन्हें कैसे दूर कर सकते हैं. 302 00:15:26,250 --> 00:15:27,850 तो RM, एक. 303 00:15:27,850 --> 00:15:30,960 इसे हटाने, मुझे पूछने के लिए जा रहा है नियमित रूप से खाली फ़ाइल एक? 304 00:15:30,960 --> 00:15:33,170 और फिर मैंने हाँ कह देंगे. 305 00:15:33,170 --> 00:15:39,090 >> मैं यकीन के लिए पता तो अगर मैं चाहता हूँ कि होना करने के लिए बिना उस फाइल को मिटा 306 00:15:39,090 --> 00:15:44,500 कहा जाए, नियमित रूप से खाली फ़ाइल हटाना चाहते हैं?, फिर RM, डैश, च होने जा रहा है 307 00:15:44,500 --> 00:15:48,230 कहते हैं कि झंडा, बिना दूर मजबूर यहां तक ​​कि मेरे उत्साह, ओह, आप कर रहे हैं 308 00:15:48,230 --> 00:15:49,710 सुनिश्चित करें कि आप फ़ाइल हटाना चाहते हैं? 309 00:15:49,710 --> 00:15:50,810 हाँ, मुझे यकीन है. 310 00:15:50,810 --> 00:15:56,050 तो RM, डैश, अमेरिकन प्लान सिर्फ होगा बिना पूछे इसे करते हैं. 311 00:15:56,050 --> 00:15:57,950 >> तो चलो कुछ ज्यादा निर्देशिका बनाते हैं. 312 00:15:57,950 --> 00:16:03,670 mkdir, tmp2, सीडी, tmp2, एक, स्पर्श बी स्पर्श. 313 00:16:03,670 --> 00:16:04,300 ठीक है. 314 00:16:04,300 --> 00:16:08,180 तो अब मैं निकालना चाहते हैं एक निर्देशिका के रूप में tmp2. 315 00:16:08,180 --> 00:16:10,316 तो RM tmp2. 316 00:16:10,316 --> 00:16:12,920 आप tmp2 नहीं निकाल सकते हैं, यह एक निर्देशिका है. 317 00:16:12,920 --> 00:16:21,370 इसलिए इस मुद्दे को यहाँ RM नहीं है तुरंत निर्देशिका पर काम करते हैं. 318 00:16:21,370 --> 00:16:26,530 यह केवल तरह फ़ाइलों के लिए है गैर निर्देशिका फ़ाइलें. 319 00:16:26,530 --> 00:16:30,800 >> और तो हम क्या कर सकते हैं यहाँ RM, डैश, आर है. 320 00:16:30,800 --> 00:16:35,160 यही कारण है कि बारी बारी के लिए खड़ा है, जो हो सकता है अभी तक आप कुछ भी मतलब नहीं. 321 00:16:35,160 --> 00:16:38,280 लेकिन आप प्रत्यावर्तन के लिए मिलता है, यह अधिक मतलब होगा. 322 00:16:38,280 --> 00:16:43,540 तो RM, डैश, आर, tmp2 जा रहा है बारी बारी से उस निर्देशिका में चलते हैं. 323 00:16:43,540 --> 00:16:45,540 इसलिए निर्देशिका tmp2 में उतर? 324 00:16:45,540 --> 00:16:47,330 हाँ, उस में चलते हैं. 325 00:16:47,330 --> 00:16:49,360 हम एक / tmp2 को दूर करना चाहते हैं? 326 00:16:49,360 --> 00:16:49,745 हां. 327 00:16:49,745 --> 00:16:51,830 हम tmp2 / ख को दूर करना चाहते हैं? 328 00:16:51,830 --> 00:16:52,840 हां. 329 00:16:52,840 --> 00:16:55,170 अब हम हटाना चाहते हैं निर्देशिका tmp2? 330 00:16:55,170 --> 00:16:56,040 हां. 331 00:16:56,040 --> 00:16:58,410 और इसलिए अब निर्देशिका और अंदर सब कुछ 332 00:16:58,410 --> 00:16:59,660 इसे हटा दिया गया है. 333 00:16:59,660 --> 00:17:02,850 334 00:17:02,850 --> 00:17:07,250 >> एक आदेश rmdir तकनीकी रूप से है आप को दूर करने के लिए उपयोग कर सकते हैं 335 00:17:07,250 --> 00:17:11,670 निर्देशिकाओं, लेकिन यह केवल काम करता है वैसे भी खाली निर्देशिका पर. 336 00:17:11,670 --> 00:17:14,109 और यह देखना है कि, चलो बस फिर mkdir, tmp2 करना. 337 00:17:14,109 --> 00:17:15,940 Tmp2, एक स्पर्श. 338 00:17:15,940 --> 00:17:16,800 ठीक है. 339 00:17:16,800 --> 00:17:22,770 मैं dirtmp2 को दूर करने का प्रयास करते हैं तो, यह हूँ निर्देशिका खाली नहीं, कहना. 340 00:17:22,770 --> 00:17:29,540 इसलिए मैं दूर का उपयोग बहुत ज्यादा कभी नहीं वैसे भी dir आदेश, क्योंकि RM, डैश, 341 00:17:29,540 --> 00:17:35,140 आर खाली निर्देशिका पर काम करेंगे और गैर खाली निर्देशिका. 342 00:17:35,140 --> 00:17:37,760 >> और यह भी, मैं करने के लिए नहीं करना चाहते, तो का है कि इस पूरी प्रक्रिया के माध्यम से जाना 343 00:17:37,760 --> 00:17:40,720 निर्देशिका में उतरते और प्रत्येक व्यक्ति फ़ाइल को हटाने, आर एम, 344 00:17:40,720 --> 00:17:44,190 पानी का छींटा, आरएफ, tmp2. 345 00:17:44,190 --> 00:17:45,670 और अब वह चला गया. 346 00:17:45,670 --> 00:17:51,220 >> सावधान होने के लिए कुछ के बारे में आरएम, डैश, आरएफ है. 347 00:17:51,220 --> 00:17:53,660 और यह मुझे भी यह टाइप करने के लिए डराता है, क्योंकि अगर मैं गलती 348 00:17:53,660 --> 00:17:55,090 हिट दर्ज करें या कुछ और. 349 00:17:55,090 --> 00:18:02,735 तो RM, डैश, आरएफ, टिल्ड होगा, बिना मुझे उत्साह, च संकेत नहीं देता 350 00:18:02,735 --> 00:18:05,670 मुझे, यह स्वचालित रूप से निकाल देंगे मेरे पूरे घर निर्देशिका और 351 00:18:05,670 --> 00:18:06,780 यह सब कुछ. 352 00:18:06,780 --> 00:18:11,460 तो आपको लगता है कि लगता है कि हो सकता है ऐसा करने के लिए एक बेवकूफ बात. 353 00:18:11,460 --> 00:18:12,830 और अच्छी तरह से, यह है. 354 00:18:12,830 --> 00:18:18,600 >> लेकिन यह द्वारा बहुत आसानी से हो सकता है दुर्घटना मैं दूर करना चाहता था, कहते हैं, अगर 355 00:18:18,600 --> 00:18:21,640 मेरे स्लैश, vhost निर्देशिका. 356 00:18:21,640 --> 00:18:26,610 और बस जल्दी टाइपिंग में, मैं गलती से ऐसा करते हैं. 357 00:18:26,610 --> 00:18:31,880 यही कारण है कि मेरे दोनों बारी बारी से निकाल देंगे घर निर्देशिका और vhost निर्देशिका 358 00:18:31,880 --> 00:18:35,450 इस विशेष निर्देशिका में है कि बस सही अब मौजूद नहीं होता है. 359 00:18:35,450 --> 00:18:39,520 लेकिन यह अभी भी दूर करेगा मेरे पूरे घर निर्देशिका. 360 00:18:39,520 --> 00:18:43,090 कम से कम एक एफ नहीं होने से, यह पहली बार मुझे शीघ्र होगा. 361 00:18:43,090 --> 00:18:45,670 और मैं, ओह, जैसा होगा नहीं, मैं ऐसा करने के लिए नहीं करना चाहती. 362 00:18:45,670 --> 00:18:50,570 लेकिन लोगों को, सहित स्लेश मुझे में मिल जाते हैं 363 00:18:50,570 --> 00:18:53,090 हमेशा आरएफ आईएनजी की आदत. 364 00:18:53,090 --> 00:18:58,713 मैं सिर्फ rm सकता है कि यहां तक ​​कि नियमित रूप से फ़ाइलें, सी, मैं सिर्फ RM, ​​डैश, आरएफ, सी के लिए करते हैं. 365 00:18:58,713 --> 00:19:01,330 आप आरएफ रही हो जब बस सावधान रहना. 366 00:19:01,330 --> 00:19:03,160 >> अध्यक्ष 4: सी क्या करता है? 367 00:19:03,160 --> 00:19:11,570 >> रोब: सी मुझे लगता है कि सी फाइल के बारे में बात कर रहा हूँ है इस निर्देशिका में, कि आर एम, सी. 368 00:19:11,570 --> 00:19:15,730 >> यूसुफ: और अधिक खतरनाक तरीके से, आप का उपयोग करें एक सितारा, यह सब कुछ करने के लिए संदर्भित करता है 369 00:19:15,730 --> 00:19:16,450 निर्देशिका. 370 00:19:16,450 --> 00:19:20,040 तो क्या मैं आमतौर पर करते हैं तो मैं लूंगा है एक निर्देशिका में जाओ और मैं चाहता हूँ 371 00:19:20,040 --> 00:19:21,510 वहाँ में सभी फाइलों को हटा दें. 372 00:19:21,510 --> 00:19:23,640 तो RM, डैश, आरएफ, सितारा. 373 00:19:23,640 --> 00:19:25,700 >> रोब: हाँ. 374 00:19:25,700 --> 00:19:26,780 RM, डैश, आरएफ, सितारा. 375 00:19:26,780 --> 00:19:29,530 >> यूसुफ: और अगर तुम नहीं हो सावधान आप में क्या कर रहे हैं निर्देशिका - 376 00:19:29,530 --> 00:19:33,340 मैं अस्थायी में नहीं था, लेकिन मैं गलती थी मेरे घर निर्देशिका में, 377 00:19:33,340 --> 00:19:35,450 तो मैं सब कुछ हटा देंगे मेरे घर निर्देशिका में. 378 00:19:35,450 --> 00:19:39,095 और मैं वास्तव में उस से पहले किया है, और मैं तुम से पहले या इस किया है लगता है 379 00:19:39,095 --> 00:19:40,640 जे पहले जो कुछ किया गया है. 380 00:19:40,640 --> 00:19:42,480 >> रोब: मैं गलती से हटा दिया है - 381 00:19:42,480 --> 00:19:44,480 इसलिए एक बिट के लिए उस आदेश की अनदेखी. 382 00:19:44,480 --> 00:19:45,800 >> यूसुफ: मज़ा नहीं. 383 00:19:45,800 --> 00:19:52,650 >> आरओबी: तो स्लैश बिन निर्देशिका में एक है वहाँ कहाँ होगा बाइनरी फ़ाइलों का गुच्छा 384 00:19:52,650 --> 00:19:54,840 बजना तरह परिचित लोगों को हो. 385 00:19:54,840 --> 00:20:00,740 खैर, बजना और मूल रूप से इन सभी का मैं आदेश पर चल रहा हूँ कि चीजें 386 00:20:00,740 --> 00:20:02,060 रेखा इस स्लैश बिन निर्देशिका में हैं. 387 00:20:02,060 --> 00:20:03,090 >> यूसुफ: लोकसभा की तरह यहाँ में है. 388 00:20:03,090 --> 00:20:06,285 >> आरओबी: तो रास, स्लेश, होगा डॉट इस निर्देशिका की सूची. 389 00:20:06,285 --> 00:20:08,120 >> यूसुफ: Rm इस निर्देशिका में भी है. 390 00:20:08,120 --> 00:20:12,770 >> रोब: मैं गलती से rm है, आरएफ एड बिन, मैं कर सकता है किसी भी आदेश को हटा दिया जो 391 00:20:12,770 --> 00:20:14,380 संभवतः कभी चाहते हैं. 392 00:20:14,380 --> 00:20:18,085 कौन सा है तो मैं बस को पुन: स्थापित एक उस बिंदु पर नए उपकरण. 393 00:20:18,085 --> 00:20:20,170 >> यूसुफ: तो बहुत सावधान रहना है जब आप इस आदेश का उपयोग करें. 394 00:20:20,170 --> 00:20:21,120 >> दर्शक: [सुनाई]? 395 00:20:21,120 --> 00:20:22,640 >> रोब: हाँ. 396 00:20:22,640 --> 00:20:24,135 वह भी में लाने के लिए एक बुरी आदत है. 397 00:20:24,135 --> 00:20:27,920 398 00:20:27,920 --> 00:20:30,170 आप देखते हैं, तो मैं अब कर रहा हूँ - 399 00:20:30,170 --> 00:20:33,580 ठीक है, तुम नोटिस, लेकिन नहीं कर सकते मेरे ज़ूम में शायद कर सकते हैं. 400 00:20:33,580 --> 00:20:35,360 इसलिए मैं अब जड़ @ उपकरण हूँ. 401 00:20:35,360 --> 00:20:39,790 तो jharvard हम चाहते हैं कि उपयोगकर्ता है आप हमेशा का उपयोग किया जाना है. 402 00:20:39,790 --> 00:20:43,820 जड़ अनुमति है कि उपयोगकर्ता है बिल्कुल कुछ भी करने को. 403 00:20:43,820 --> 00:20:50,260 >> मैं jharvard हूँ तो, जब नोटिस मैं सीडी करने की कोशिश - 404 00:20:50,260 --> 00:20:52,461 कि एक निर्देशिका क्या है? 405 00:20:52,461 --> 00:20:53,980 ओह, जड़ एक अच्छा उदाहरण है. 406 00:20:53,980 --> 00:20:54,950 तो सीडी, जड़. 407 00:20:54,950 --> 00:20:56,030 अनुमति अस्वीकृत. 408 00:20:56,030 --> 00:21:00,060 क्योंकि हम यह लिस्टिंग पर लगता है कि - 409 00:21:00,060 --> 00:21:02,410 और फिर, आप के लिए नहीं है पूरी तरह से इस बात को समझ. 410 00:21:02,410 --> 00:21:09,210 लेकिन इन तीन डैश कह रहे हैं कि किसी भी अन्य ऐसा नहीं करते 411 00:21:09,210 --> 00:21:11,120 इस निर्देशिका में उपयोगकर्ता. 412 00:21:11,120 --> 00:21:14,540 और निर्देशिका के लिए होता है उपयोगकर्ता रूट के स्वामित्व में हो. 413 00:21:14,540 --> 00:21:20,310 >> तो मैं कर रहा हूँ कि इस तथ्य jharvard और कोई जड़ नहीं है जो एक में अनुमति दी है 414 00:21:20,310 --> 00:21:23,490 इस निर्देशिका, कि मैं कर रहा हूँ इसका मतलब है कि अनुमति से इनकार करने के लिए जा रहा है जब मैं 415 00:21:23,490 --> 00:21:25,160 इसे में सीडी के लिए प्रयास करें. 416 00:21:25,160 --> 00:21:31,370 मैं जड़ हूँ तो, जब मैं अनुमति के लिए है सहित बिल्कुल कुछ भी करते हैं, 417 00:21:31,370 --> 00:21:34,660 आवश्यक फाइलों को नष्ट उपकरण और को 418 00:21:34,660 --> 00:21:36,640 पूरी बात को नष्ट कर. 419 00:21:36,640 --> 00:21:41,240 >> तो यह में शामिल होने के लिए एक बुरी आदत है बस अपने चारों ओर घूम 420 00:21:41,240 --> 00:21:43,650 रूट के रूप में ऑपरेटिंग सिस्टम. 421 00:21:43,650 --> 00:21:46,520 मैं यह भी है. 422 00:21:46,520 --> 00:21:48,710 प्रश्न? 423 00:21:48,710 --> 00:21:52,230 और मुझे लगता है, जड़ से बाहर निकलने jharvard के रूप में रहना होगा. 424 00:21:52,230 --> 00:21:54,510 ठीक है. 425 00:21:54,510 --> 00:21:55,820 >> अधिक प्रासंगिक आदेशों. 426 00:21:55,820 --> 00:22:03,975 इसलिए हमारे अस्थायी में वापस जा रहे हैं, एमवी आदेश चाल के लिए खड़ा है. 427 00:22:03,975 --> 00:22:05,450 तुम एक ले जा सकते हैं. 428 00:22:05,450 --> 00:22:07,610 अब हम, बी इसे कॉल करना चाहते तो अब यह बी कहा जाता है. 429 00:22:07,610 --> 00:22:10,650 या हो सकता है कि हम ले जाना चाहते हैं बी एक निर्देशिका अप. 430 00:22:10,650 --> 00:22:12,730 तो अब इस निर्देशिका खाली है. 431 00:22:12,730 --> 00:22:15,410 मैं वापस अपने घर निर्देशिका करने के लिए जाना है, और हूँ हम, बी यहां देखते हैं कि क्योंकि 432 00:22:15,410 --> 00:22:19,230 घर निर्देशिका से एक निर्देशिका उठ गया था बी अंदर गया था कि निर्देशिका 433 00:22:19,230 --> 00:22:24,710 434 00:22:24,710 --> 00:22:26,580 >> सी.पी. भी है. 435 00:22:26,580 --> 00:22:33,210 तो सी.पी., सुपर खंड को कॉपी है डॉट, पाठ. 436 00:22:33,210 --> 00:22:35,750 मैं एस, डॉट, पाठ यह कह सकते हैं. 437 00:22:35,750 --> 00:22:39,780 अब हम दोनों सुपर खंड है, डॉट, पाठ, और एस, डॉट, पाठ. 438 00:22:39,780 --> 00:22:41,340 यह भी निर्देशिकाओं पर काम करता है. 439 00:22:41,340 --> 00:22:44,040 440 00:22:44,040 --> 00:22:46,560 मैं एक एकल फाइल एड आरएफ. 441 00:22:46,560 --> 00:22:48,200 तो सी.पी. - 442 00:22:48,200 --> 00:22:51,710 खैर, पहले की सी.पी., tmp, tmp2 की कोशिश करते हैं. 443 00:22:51,710 --> 00:22:53,220 इसलिए निर्देशिका tmp छोड़ते हुए. 444 00:22:53,220 --> 00:22:57,440 आरएम तो इसी तरह, डिफ़ॉल्ट व्यवहार निर्देशिका पर काम नहीं कर रहा है. 445 00:22:57,440 --> 00:23:01,570 >> और फिर, आर एम के समान, Default व्यवहार - ठीक है, यह काम करने के लिए हो रही है 446 00:23:01,570 --> 00:23:04,230 निर्देशिका के साथ एक, पानी का छींटा-R की दूरी पर है. 447 00:23:04,230 --> 00:23:09,240 इसलिए बारी बारी से अस्थायी को कॉपी tmp2 में निर्देशिका. 448 00:23:09,240 --> 00:23:13,700 और इसलिए अब हम tmp और tmp2 दोनों है और वह है कि उपयोगी नहीं है क्योंकि tmp 449 00:23:13,700 --> 00:23:16,814 पहली जगह में खाली था. 450 00:23:16,814 --> 00:23:18,660 Tmp2. 451 00:23:18,660 --> 00:23:22,680 >> अब के tmp2 में tmp को कॉपी करते हैं. 452 00:23:22,680 --> 00:23:27,900 और हम tmp2 भी फाइल देखना है कि एक, क्योंकि खबरें 453 00:23:27,900 --> 00:23:32,220 उस के अंदर सब कुछ निर्देशिका नकल की थी. 454 00:23:32,220 --> 00:23:36,000 और वह कुछ हद तक मददगार हो सकता है , आप काम कर रहे हैं का कहना है कि अगर 455 00:23:36,000 --> 00:23:38,860 समस्या पर एक सेट - 456 00:23:38,860 --> 00:23:41,320 या वास्तव में, बाद में समस्या सेट कर रहे हैं इससे भी ज्यादा महत्वपूर्ण है, क्योंकि वहाँ 457 00:23:41,320 --> 00:23:43,660 एक पूरी गुच्छा हो जाएगा फ़ाइलें और बातें की. 458 00:23:43,660 --> 00:23:47,010 >> लेकिन तुम सिर्फ एक विभाजन के लिए, करना चाहते हैं दूसरा, आप ठीक है, की तरह हो, मैं हूँ 459 00:23:47,010 --> 00:23:50,210 कुछ अलग करने की कोशिश की जा रही. 460 00:23:50,210 --> 00:23:57,860 मुझे सिर्फ मेरे पूरे pset1 को कॉपी करते हैं pset1 बैकअप में निर्देशिका इसलिए कि अगर 461 00:23:57,860 --> 00:24:01,490 मैं मैं कर सकता हूँ, बातें पंगा लेना अंत तक वापस अपने बैकअप निर्देशिका में चलते हैं. 462 00:24:01,490 --> 00:24:07,340 के अधिक उपयुक्त तरीके हैं अपने कोड को समर्थन संस्करण है, लेकिन 463 00:24:07,340 --> 00:24:10,610 यह हमेशा सिर्फ बनाने के लिए एक त्वरित तरीका है सुनिश्चित करें कि आप कुछ की एक प्रति है 464 00:24:10,610 --> 00:24:11,860 आप को संशोधित करने के बारे में हो. 465 00:24:11,860 --> 00:24:16,974 466 00:24:16,974 --> 00:24:27,090 >> तो गूंज भी एक से एक आदेश है कि बेवकूफी की तरह बस को मुद्रित होगा 467 00:24:27,090 --> 00:24:31,540 कमांड लाइन वास्तव में क्या आप गूंज चाहता था. 468 00:24:31,540 --> 00:24:32,680 तो हाय गूंज. 469 00:24:32,680 --> 00:24:35,420 हम सिर्फ हाय मुद्रित करेंगे. 470 00:24:35,420 --> 00:24:38,030 दुनिया नमस्ते गूंज. 471 00:24:38,030 --> 00:24:39,800 हम नमस्ते विश्व मुद्रित करेंगे. 472 00:24:39,800 --> 00:24:44,350 कि उपयोग में आता है जब आप आदेशों के संयोजन शुरू करते हैं. 473 00:24:44,350 --> 00:24:48,300 >> और फिर, आप पूरी तरह की उम्मीद नहीं है अभी तक यह समझते हैं, लेकिन यह बात है 474 00:24:48,300 --> 00:24:49,910 देखने के लिए कुछ है. 475 00:24:49,910 --> 00:24:52,470 और फिर आप उदाहरण के लिए Googling रहे हैं या आप क्या करना चाहते हैं एहसास 476 00:24:52,470 --> 00:24:55,030 कुछ, यह सहायक हो सकता है. 477 00:24:55,030 --> 00:24:59,020 तो चलो, एक उदाहरण के रूप में, इतना रास, डैश, एल. 478 00:24:59,020 --> 00:25:01,160 तो यहाँ मैं उत्पादन देखना लोकसभा की, डैश, एल. 479 00:25:01,160 --> 00:25:06,560 और मैं ठीक है, मैं चाहता हूँ, कहते हैं एक फाइल में उस दुकान. 480 00:25:06,560 --> 00:25:11,620 यहाँ इस उत्पादन के सभी, मैं चाहता हूँ एक अलग फाइल में डाल दिया. 481 00:25:11,620 --> 00:25:16,080 >> प्रतीक से तो इस छोटे से अधिक हम कॉल करने के लिए जा रहे हैं क्या है. 482 00:25:16,080 --> 00:25:18,570 हम पुनः निर्देशित कर रहे हैं एक फ़ाइल में उत्पादन. 483 00:25:18,570 --> 00:25:21,680 कि क्योंकि, की फाइल ब्ला कहते हैं मैं हमेशा यह कॉल करने के लिए क्या करते हैं. 484 00:25:21,680 --> 00:25:26,430 तो अब हम हमारे पास देखना एक यहीं ब्ला फ़ाइल. 485 00:25:26,430 --> 00:25:30,270 और मैं इसे खोलते हैं, तो मैं यह देखेंगे आदेश से बिल्कुल उत्पादन 486 00:25:30,270 --> 00:25:31,990 मैं बस दौड़ा. 487 00:25:31,990 --> 00:25:36,020 और इसी तरह, आप कर सकते हैं - 488 00:25:36,020 --> 00:25:41,260 इस एक फाइल करने के लिए उत्पादन, यह था अगर एक फ़ाइल से इनपुट मिल रहा है. 489 00:25:41,260 --> 00:25:45,790 490 00:25:45,790 --> 00:25:47,050 एक आदेश क्या है कि मैं - 491 00:25:47,050 --> 00:25:49,620 >> यूसुफ: मैं आप उपयोग कर सकते हैं शायद, कम या अधिक. 492 00:25:49,620 --> 00:25:53,031 >> रोब: लेकिन यह कैसे सिर्फ कम बकवास के बारे में? 493 00:25:53,031 --> 00:25:53,930 मुझे नहीं मालूम. 494 00:25:53,930 --> 00:25:57,870 आप इस परिदृश्य में आते हैं, जैसे इसके लिए उपयोगी है कि psets नहीं है. 495 00:25:57,870 --> 00:25:59,950 >> यूसुफ: आप गूंज में पाइप यह कर सकते हैं. 496 00:25:59,950 --> 00:26:02,920 पाइप यह देखने के लिए गूंज में फ़ाइल. 497 00:26:02,920 --> 00:26:04,060 >> आरओबी: यह पाइप है. 498 00:26:04,060 --> 00:26:04,860 >> यूसुफ: क्षमा करें. 499 00:26:04,860 --> 00:26:06,190 >> आरओबी: सब ठीक है. 500 00:26:06,190 --> 00:26:12,720 तो यह एक फाइल करने के लिए उत्पादन है. 501 00:26:12,720 --> 00:26:18,700 इस फ़ाइल से पाठ मिलता है और कार्यक्रम के हाथ. 502 00:26:18,700 --> 00:26:20,560 और अगर आप भी इस आदमी देखेंगे. 503 00:26:20,560 --> 00:26:24,410 तो इस तरह से एक ही बार में दोनों कर रही है. 504 00:26:24,410 --> 00:26:28,310 और वास्तव में, मैं दो नई मिलवाता हूँ बस इसे बनाने के लिए उपयोग करने के लिए आदेश. 505 00:26:28,310 --> 00:26:33,060 >> इतिहास सिर्फ है कि एक आसान कमांड है की एक सूची मुद्रित करने के लिए जा रहा 506 00:26:33,060 --> 00:26:34,940 कुछ भी मैं कभी भी एक कमांड लाइन चलाने की है. 507 00:26:34,940 --> 00:26:38,290 तो हम यहाँ मुझे लगता है कि सब कुछ देख इस पूरे समय चल रहा. 508 00:26:38,290 --> 00:26:39,540 लोकसभा के बहुत सारे. 509 00:26:39,540 --> 00:26:41,570 510 00:26:41,570 --> 00:26:48,470 >> और एक और उपयोगी आदेश ग्रेप है कि अपने उद्देश्य पर खोज करने के लिए है 511 00:26:48,470 --> 00:26:52,060 पैटर्न के लिए देख पाठ, अच्छी तरह से, जो कुछ भी आप की तलाश में 512 00:26:52,060 --> 00:26:53,310 यह देखने के लिए चाहते हैं. 513 00:26:53,310 --> 00:26:59,770 और तो यहाँ एक आसान उपयोग कहना है, हम इतिहास हथियाना चाहते हैं. 514 00:26:59,770 --> 00:27:03,860 और मैं आदेशों के लिए देखना चाहता हूँ मैं जहां - एक क्या है 515 00:27:03,860 --> 00:27:05,000 के लिए देखने के लिए उपयोगी एक? 516 00:27:05,000 --> 00:27:06,898 >> यूसुफ [सुनाई]? 517 00:27:06,898 --> 00:27:09,710 >> आरओबी: या चलो बस सभी के लिए देखो जो भी कारण के लिए, छू लेती है. 518 00:27:09,710 --> 00:27:13,850 तो यह है कि यह कैसा दिखेगा है. 519 00:27:13,850 --> 00:27:15,560 और आप पूरी तरह से करने के लिए नहीं है समझते हैं. 520 00:27:15,560 --> 00:27:20,570 लेकिन विचार यहाँ है, इतिहास दे रहा है यह यहाँ था ही उत्पादन 521 00:27:20,570 --> 00:27:25,030 यह पूरे बाहर मुद्रण है जहां मैं कभी भी भाग लिया है सब कुछ का इतिहास. 522 00:27:25,030 --> 00:27:27,030 हम तो उस गुजर रहे हैं - 523 00:27:27,030 --> 00:27:30,230 तो बजाय स्क्रीन करने के लिए यह छपाई की, हम करने के लिए कि पास करना चाहते हैं 524 00:27:30,230 --> 00:27:34,640 की तलाश में है जो आदेश ग्रेप शब्द को छूने के सभी उदाहरणों. 525 00:27:34,640 --> 00:27:40,280 >> और तो और इस संयोजन का उपयोग उपकरणों इतिहास और grep, मैं, ठीक है, देख सकते हैं 526 00:27:40,280 --> 00:27:44,820 यहाँ आदेशों के सभी मैं कभी है चलाने के लिए, और यहाँ कुछ हद तक एक आम एक है. 527 00:27:44,820 --> 00:27:45,510 हम नीचे पर रहे. 528 00:27:45,510 --> 00:27:47,930 और यह भी मुझे आदेश दे रही है मैं सिर्फ था कि भागा 529 00:27:47,930 --> 00:27:51,240 यह शब्द स्पर्श. 530 00:27:51,240 --> 00:27:58,500 लेकिन पाइप एक बहुत उपयोगी चीज है कई कार्यक्रमों के संयोजन के लिए. 531 00:27:58,500 --> 00:28:04,670 और वास्तव में, यह जाने के लिए एक शॉर्टकट है मुझे उत्पादन ब्ला दायर करने का इतिहास है, और 532 00:28:04,670 --> 00:28:10,190 मुझे फाइल ब्ला का उपयोग कर grep जाने मैं देखना चाहता हूँ के रूप में. 533 00:28:10,190 --> 00:28:13,460 तो पाइप सिर्फ एक शॉर्टकट है उन दो आदेशों के लिए. 534 00:28:13,460 --> 00:28:13,950 हां. 535 00:28:13,950 --> 00:28:15,306 >> अध्यक्ष 4 [सुनाई]? 536 00:28:15,306 --> 00:28:16,556 >> रोब: हाँ. 537 00:28:16,556 --> 00:28:20,142 538 00:28:20,142 --> 00:28:21,110 क्या है - 539 00:28:21,110 --> 00:28:21,858 ओह. 540 00:28:21,858 --> 00:28:24,820 टेस्ट करते हैं. 541 00:28:24,820 --> 00:28:29,170 तो बिल्ली, कुत्ते, मछली. 542 00:28:29,170 --> 00:28:33,770 इसलिए मैं grep करना चाहते हैं. 543 00:28:33,770 --> 00:28:37,680 डैश, आर, फिर से, होने जा रहा है बारी बारी से, तो मैं नीचे उतरना चाहते हैं 544 00:28:37,680 --> 00:28:38,870 सभी निर्देशिका. 545 00:28:38,870 --> 00:28:43,210 मैं बारी बारी से सभी के लिए grep करना चाहते हैं - और मुझे अस्थायी रूप से मिलता है 546 00:28:43,210 --> 00:28:44,460 जिस तरह के इस बाहर. 547 00:28:44,460 --> 00:28:48,650 548 00:28:48,650 --> 00:28:50,740 मुझे ध्यान न दें. 549 00:28:50,740 --> 00:28:51,360 ठीक है. 550 00:28:51,360 --> 00:28:56,740 >> तो मैं अस्थायी रूप से लिए grep करना चाहते हैं शब्द मछली के सभी उदाहरणों. 551 00:28:56,740 --> 00:29:00,510 और तो यहाँ मैं क्या कर रहा हूँ grepping है बारी बारी से शब्द मछली के लिए. 552 00:29:00,510 --> 00:29:05,410 और सितारा इन सब के ऊपर का मतलब इस निर्देशिका में फाइल. 553 00:29:05,410 --> 00:29:08,930 और इसलिए यह मुझे अस्वीकृत कोई अनुमति दे दी है यह है कि पढ़ने के लिए अनुमति नहीं है क्योंकि 554 00:29:08,930 --> 00:29:10,060 खास फाइल. 555 00:29:10,060 --> 00:29:14,040 लेकिन यह फाइल, परीक्षण में मछली में पाया गया. 556 00:29:14,040 --> 00:29:18,450 >> मैं भी विशेष रूप से, कहते हैं, मैं ही कर सकता है में, फ़ाइल ब्ला में देखना चाहता हूँ 557 00:29:18,450 --> 00:29:19,580 यह कुछ भी नहीं मिलेगा जो मामला. 558 00:29:19,580 --> 00:29:20,990 मैं केवल फ़ाइल, परीक्षण में देखना चाहता हूँ. 559 00:29:20,990 --> 00:29:22,240 यह मछली मिल जाएगा. 560 00:29:22,240 --> 00:29:25,980 561 00:29:25,980 --> 00:29:29,260 यह एक बहुत उपयोगी आदेश है सामान्य में पता करने के लिए. 562 00:29:29,260 --> 00:29:31,640 Grep करने के लिए कुछ विकल्प हैं अधिक होने की अपेक्षा की जाती है कि 563 00:29:31,640 --> 00:29:36,780 अनुकूल प्रोग्रामर, लेकिन मैं जाते हैं अभी भी grep पर वापस गिर करने के लिए. 564 00:29:36,780 --> 00:29:38,030 प्रश्न? 565 00:29:38,030 --> 00:29:39,965 566 00:29:39,965 --> 00:29:40,919 ठीक है. 567 00:29:40,919 --> 00:29:42,520 >> अन्य कमानों रहे हैं? 568 00:29:42,520 --> 00:29:45,270 ओह. 569 00:29:45,270 --> 00:29:48,370 कि मैं हमेशा से ही एक से एक एक मज़ा कैलोरी है हो पाते हैं. 570 00:29:48,370 --> 00:29:55,610 मैं इस सुंदर में हूँ इसलिए जब नोटिस पूर्ण स्क्रीन मोड, मैं नहीं की तरह ऊपर है 571 00:29:55,610 --> 00:29:56,720 उपकरण पट्टी या कुछ भी. 572 00:29:56,720 --> 00:29:59,530 तो सीएएल बस मुझे एक अच्छा सा देता है सही है कि कैलेंडर 573 00:29:59,530 --> 00:30:02,380 अब काट, मुझे लगता है. 574 00:30:02,380 --> 00:30:04,770 लेकिन अच्छा सा आदेश. 575 00:30:04,770 --> 00:30:06,540 >> यूसुफ: यह [सुनाई] है. 576 00:30:06,540 --> 00:30:09,170 तुम हो सकता है कि अन्य आदेश देखा बजना में शामिल हैं और बनाते हैं. 577 00:30:09,170 --> 00:30:11,180 हम में उन पर जाना होगा अधिक विस्तार के बाद. 578 00:30:11,180 --> 00:30:13,400 लेकिन आप पर काम कर रहा है अगर PSET, तुम होना चाहिए 579 00:30:13,400 --> 00:30:15,160 उन लोगों के साथ परिचित. 580 00:30:15,160 --> 00:30:16,640 >> आरओबी: सब ठीक है. 581 00:30:16,640 --> 00:30:18,520 कमांड लाइन बातों पर सवाल? 582 00:30:18,520 --> 00:30:22,450 583 00:30:22,450 --> 00:30:23,260 ठीक है. 584 00:30:23,260 --> 00:30:27,416 तो चलो कुछ पर चलते हैं सी से संबंधित सामान. 585 00:30:27,416 --> 00:30:28,666 चर गणित. 586 00:30:28,666 --> 00:30:39,078 587 00:30:39,078 --> 00:30:40,060 ठीक है. 588 00:30:40,060 --> 00:30:45,230 हम खरोंच में गणित था, तो बस की तरह आप भी सी. में गणित का उपयोग कर सकते हैं 589 00:30:45,230 --> 00:30:49,270 >> हम पूरी तरह से उस तक पहुंचने से पहले इसलिए चर. 590 00:30:49,270 --> 00:30:53,920 याद रखें कि आप एक घोषित जब भी INT एक्स या नाव वाई, आप की तरह चर 591 00:30:53,920 --> 00:30:56,710 यह पहले प्रकार देने के लिए है चर नाम. 592 00:30:56,710 --> 00:31:03,020 तो हमने देखा है प्रकार अब तक, int रहे हैं नाव, डबल, लंबे, जो मैं 593 00:31:03,020 --> 00:31:06,150 वास्तव में हम है पता नहीं है अब तक देखा गया है कि. 594 00:31:06,150 --> 00:31:07,700 >> कुछ अन्य लोगों को कर रहे हैं. 595 00:31:07,700 --> 00:31:09,990 हम चार देख लिया है. 596 00:31:09,990 --> 00:31:13,920 यह है की तरह है, जो कम नहीं है विपरीत के लंबे समय तक इसे जहां 597 00:31:13,920 --> 00:31:16,650 एक पूर्णांक की तुलना में छोटे. 598 00:31:16,650 --> 00:31:18,580 हम भी स्ट्रिंग देखा है. 599 00:31:18,580 --> 00:31:23,070 तो क्या स्ट्रिंग के बारे में खास है? 600 00:31:23,070 --> 00:31:25,350 क्यों मैं यह कहना चाहूँगा नहीं काफी INT की तरह? 601 00:31:25,350 --> 00:31:27,030 >> अध्यक्ष 4: यह वास्तव में मौजूद नहीं है. 602 00:31:27,030 --> 00:31:27,990 >> रोब: हाँ. 603 00:31:27,990 --> 00:31:31,820 हम स्ट्रिंग है तो एक ही कारण है जब आप ऐसा करेंगे क्योंकि 604 00:31:31,820 --> 00:31:33,215 हैश, cs50.h. शामिल 605 00:31:33,215 --> 00:31:36,530 606 00:31:36,530 --> 00:31:42,670 और हम बाद में इस बात का उदाहरण देखेंगे - ओह, यह है कि अच्छी तरह से संभाल नहीं करता है - 607 00:31:42,670 --> 00:31:46,160 cs50.h कुछ कर रही है, जहां प्रकार की पंक्तियों के साथ 608 00:31:46,160 --> 00:31:49,230 डेफ, चार सितारा, स्ट्रिंग. 609 00:31:49,230 --> 00:31:53,280 >> और इसलिए है कि हम भी नहीं कर कह रहा है कि एक चार सितारा अभी तक क्या है. 610 00:31:53,280 --> 00:31:56,770 लेकिन यह हम स्ट्रिंग चाहते कह रहा है. 611 00:31:56,770 --> 00:32:00,250 क्या आप, स्ट्रिंग का उपयोग किया गया है किसी भी जगह चार सितारा का उपयोग किया जा सकता था, 612 00:32:00,250 --> 00:32:04,670 वास्तव में एक प्रकार है जो कि सी भाषा में मौजूद है. 613 00:32:04,670 --> 00:32:06,680 लेकिन हम उस के लिए मिल जाएगा. 614 00:32:06,680 --> 00:32:07,860 ओह, और यह सही वापस चला जाता है. 615 00:32:07,860 --> 00:32:10,170 साफ. 616 00:32:10,170 --> 00:32:15,370 >> Bool के साथ तो एक ही बात जहां सही और गलत. 617 00:32:15,370 --> 00:32:22,510 यह वास्तव में सी में एक निर्मित प्रकार नहीं है इसके बजाय, यह सिर्फ इस करता है 618 00:32:22,510 --> 00:32:23,740 मूल्य शून्य? 619 00:32:23,740 --> 00:32:26,200 तो हम बस पर विचार करेंगे यह गलत हो. 620 00:32:26,200 --> 00:32:27,350 यह मान भी करता है - 621 00:32:27,350 --> 00:32:30,530 खैर, यह किसी भी है शून्य नहीं है कि मूल्य? 622 00:32:30,530 --> 00:32:32,200 फिर हम इसे सच करने के लिए विचार करेंगे. 623 00:32:32,200 --> 00:32:35,940 तो एक, दो सच है, सच है अशून्य कुछ भी सच है. 624 00:32:35,940 --> 00:32:38,710 625 00:32:38,710 --> 00:32:42,790 तो उन उन हैं. 626 00:32:42,790 --> 00:32:47,624 घोषणा के चर पर प्रश्न और चर प्रकार और सब है? 627 00:32:47,624 --> 00:32:48,100 हाँ. 628 00:32:48,100 --> 00:32:52,384 >> अध्यक्ष 4: लंबे अरसे से, पुस्तक में, यह यह लंबे INT होने के लिए कहा था. 629 00:32:52,384 --> 00:32:54,288 लेकिन अभी लंबे समय तक काम करेंगे? 630 00:32:54,288 --> 00:32:58,210 631 00:32:58,210 --> 00:33:01,470 >> आरओबी: तो इन प्रकार संशोधक. 632 00:33:01,470 --> 00:33:04,170 तो INT एक्स. 633 00:33:04,170 --> 00:33:07,710 तो हम भी अहस्ताक्षरित int एक्स कह सकते हैं. 634 00:33:07,710 --> 00:33:09,640 हम कम int x कह सकते हैं. 635 00:33:09,640 --> 00:33:12,570 हम int एक्स लंबे कह सकते हैं. 636 00:33:12,570 --> 00:33:17,250 लेकिन उन बातों के बारे में बहुत ज़्यादा किसी भी मैं सिर्फ इतना कहा, अहस्ताक्षरित int, लघु INT, 637 00:33:17,250 --> 00:33:21,480 INT लंबे, आप में से छुटकारा मिल सकता है INT और यह सिर्फ ग्रहण करेंगे 638 00:33:21,480 --> 00:33:22,510 आप int मतलब है कि. 639 00:33:22,510 --> 00:33:26,045 बस, जिसका मतलब है तो अहस्ताक्षरित एक्स - 640 00:33:26,045 --> 00:33:29,400 तुम्हें पता है कि सामान्य रूप से एक पूर्णांक के साथ, आप एक्स नकारात्मक 3 बराबर होती है कह सकते हैं? 641 00:33:29,400 --> 00:33:31,636 एक अहस्ताक्षरित int के साथ, तुम नहीं कर सकते. 642 00:33:31,636 --> 00:33:34,480 >> यूसुफ: और फिर, कैमरा के लिए, सवाल क्या अंतर है, था 643 00:33:34,480 --> 00:33:37,796 लंबे int के बीच और सिर्फ लंबे समय तक? 644 00:33:37,796 --> 00:33:38,410 >> रोब: हाँ. 645 00:33:38,410 --> 00:33:42,850 तो मैं लगभग कभी नहीं होगा लंबे INT लिखें. 646 00:33:42,850 --> 00:33:44,100 मैं लंबे समय तक लिखना होगा. 647 00:33:44,100 --> 00:33:47,770 648 00:33:47,770 --> 00:33:50,636 >> यूसुफ: कोई सवाल? 649 00:33:50,636 --> 00:33:51,886 >> रोब: ठीक है. 650 00:33:51,886 --> 00:33:56,180 651 00:33:56,180 --> 00:34:02,390 इस बात का तो मूर्ख थोड़ा याद दिलाते है कि कैसे हम एक चर घोषणा और इनिशियलाइज़ 652 00:34:02,390 --> 00:34:04,450 चर और एक अन्य की घोषणा चर और इनिशियलाइज़ 653 00:34:04,450 --> 00:34:05,870 यह एक कदम में सब. 654 00:34:05,870 --> 00:34:09,370 तो चर की घोषणा और आरंभीकरण चर नहीं है 655 00:34:09,370 --> 00:34:11,120 लेकिन एक ही लाइन पर किया जा सकता है. 656 00:34:11,120 --> 00:34:15,409 657 00:34:15,409 --> 00:34:20,060 >> इसलिए हम मानक गणित ऑपरेटरों है आप करने के लिए इस्तेमाल कर रहे हैं कि - 658 00:34:20,060 --> 00:34:22,199 इसके अलावा, ऋण, विभाजन, टाइम्स. 659 00:34:22,199 --> 00:34:24,389 हम देखेंगे जो सापेक्ष, वहाँ भी है. 660 00:34:24,389 --> 00:34:29,060 कम से कम में, वहाँ नहीं है सी, एक अंतर्निहित शक्ति 661 00:34:29,060 --> 00:34:31,765 घातांक कैरट ऑपरेटर. 662 00:34:31,765 --> 00:34:33,770 खैर, एक कैरट ऑपरेटर है, लेकिन यह शक्ति नहीं है. 663 00:34:33,770 --> 00:34:34,239 >> यूसुफ: लेकिन यह घातांक नहीं है, हां. 664 00:34:34,239 --> 00:34:36,210 >> रोब: कैरट का उपयोग न करें इसका मतलब यह है कि कल्पना करने के लिए 665 00:34:36,210 --> 00:34:39,980 वर्ग या जो भी पसंद है. 666 00:34:39,980 --> 00:34:42,289 इसलिए कुछ बातों में रखने के लिए प्रभाग के बारे में कोई बात. 667 00:34:42,289 --> 00:34:46,282 668 00:34:46,282 --> 00:34:48,880 मैं खड़ा हूँ. 669 00:34:48,880 --> 00:34:51,315 तो प्रारंभ जवाब घोषित कर दिया. 670 00:34:51,315 --> 00:34:54,670 तो हम नाव जवाब कह रहे हैं 10 से विभाजित 1 के बराबर होती है. 671 00:34:54,670 --> 00:34:57,500 दो दशमलव स्थानों के लिए जवाब प्रिंट. 672 00:34:57,500 --> 00:35:02,180 >> और इस तरह की बात है कि मैं यह पता लगाने के लिए printf आदमी होगा कि 673 00:35:02,180 --> 00:35:05,110 , डॉट, 2 एफ% बिल्ली क्या मतलब है? 674 00:35:05,110 --> 00:35:07,930 और वह बस, ठीक है, इसका मतलब है 0.2 की अनदेखी. 675 00:35:07,930 --> 00:35:10,420 और%, च का उपयोग हम क्या है फ्लोट करने के लिए मुद्रित करने के लिए. 676 00:35:10,420 --> 00:35:15,370 0.2 कह रहा है, प्रिंट कि दो दशमलव स्थानों के लिए तैरने लगते हैं. 677 00:35:15,370 --> 00:35:19,600 इसलिए इस कार्यक्रम में एक बग है, और तुम हो सकता है कुछ में पहले देखा है 678 00:35:19,600 --> 00:35:20,870 पूर्व सीएस कोर्स. 679 00:35:20,870 --> 00:35:22,170 लेकिन उस बग क्या है? 680 00:35:22,170 --> 00:35:23,050 >> स्पीकर 5: शून्य. 681 00:35:23,050 --> 00:35:24,130 >> रोब: हाँ. 682 00:35:24,130 --> 00:35:29,630 जब हम कहते हैं तो, जवाब के बराबर होती है 1 10 से विभाजित है, हम चाहते हैं 683 00:35:29,630 --> 00:35:31,610 0.1 होने का जवाब. 684 00:35:31,610 --> 00:35:37,450 लेकिन 1 10 से विभाजित, 1 एक है पूर्णांक, 10 एक पूर्णांक है. 685 00:35:37,450 --> 00:35:41,060 और इसलिए हम द्वारा विभाजित एक पूर्णांक करते हैं एक पूर्णांक, हम वापस पाने के लिए जा रहे हैं 686 00:35:41,060 --> 00:35:42,190 एक पूर्णांक. 687 00:35:42,190 --> 00:35:43,660 तो 10 से विभाजित 1 0.1 है. 688 00:35:43,660 --> 00:35:46,760 >> यह हमें एक पूर्णांक देने की आवश्यकता होती है, यह सिर्फ दूर फेंक करने के लिए जा रहा है कि 689 00:35:46,760 --> 00:35:49,410 दशमलव स्थान हैं और कहते हैं कि जवाब 0 है. 690 00:35:49,410 --> 00:35:55,314 और इसलिए हम यहाँ का जवाब मुद्रित करते हैं यह 0.00 मुद्रित करने के लिए जा रहा है. 691 00:35:55,314 --> 00:35:58,430 >> यूसुफ: और बस एक नोट के रूप में, यह वास्तव में के बाद क्या दूर फेंकता 692 00:35:58,430 --> 00:35:59,390 दशमलव बिंदु. 693 00:35:59,390 --> 00:36:03,180 आप के बजाय था तो अगर 6 से 10 से विभाजित, आप यह आपको दे देंगे सोच सकते हैं कि 694 00:36:03,180 --> 00:36:05,200 0.6 और उसके बाद आप 1 तक दौर होगा. 695 00:36:05,200 --> 00:36:10,520 यह टाइप करें लेकिन जब वास्तव में, क्या होता है कार्य यह है कि यह क्या बूँदें है 696 00:36:10,520 --> 00:36:11,470 दशमलव बिंदु के बाद. 697 00:36:11,470 --> 00:36:13,020 तो 0.6 0 बन जाता है. 698 00:36:13,020 --> 00:36:13,370 >> रोब: हाँ. 699 00:36:13,370 --> 00:36:15,160 और हम उसके लिए TRUNCATE कहूँगा. 700 00:36:15,160 --> 00:36:21,760 तो तुम एक पूर्णांक के लिए डाली जब भी, दशमलव सीमित किया जाता है. 701 00:36:21,760 --> 00:36:23,980 तो उस के लिए ठीक - वहाँ वास्तव में दो. 702 00:36:23,980 --> 00:36:27,890 और मुझे लगता है कि दूसरा क्या करने जा रहा हूँ क्योंकि यह एक बहुत आसान तय है. 703 00:36:27,890 --> 00:36:32,670 >> एक तो तय मंगाई का उपयोग है संभाग में. 704 00:36:32,670 --> 00:36:34,720 और वास्तव में, आप केवल करने के लिए है उनमें से एक एक नाव बनाने के. 705 00:36:34,720 --> 00:36:37,400 लेकिन यह कुछ हद तक साफ है बस उन दोनों तैरता बनाने के लिए. 706 00:36:37,400 --> 00:36:41,170 तो 1.0 10.0 से विभाजित दो मंगाई विभाजित. 707 00:36:41,170 --> 00:36:43,970 तो जवाब जा रहा है खत्म हो जाएगा एक नाव, और इसलिए तुम जाएगा 708 00:36:43,970 --> 00:36:48,050 सही ढंग से यहां 0.10 मुद्रित. 709 00:36:48,050 --> 00:36:52,220 >> इतनी अच्छी तरह से काम नहीं करता है कुछ के बारे में जो है, ठीक है, बेशक, यह आसान था 710 00:36:52,220 --> 00:36:56,240 एक करने के लिए 1 परिवर्तित करने के लिए पर्याप्त यह 1.0 बनाकर तैरने लगते हैं. 711 00:36:56,240 --> 00:37:02,180 लेकिन क्या अगर इसके बजाय हम दो पूर्णांकों था INT तरह एक्स 1 और int y बराबर होती है 712 00:37:02,180 --> 00:37:05,660 10 के बराबर होती है, और फिर हम चाहते थे एक्स वाई द्वारा विभाजित करने के लिए? 713 00:37:05,660 --> 00:37:10,420 तो यह सिर्फ करने के लिए आसान नहीं है x.0 या कुछ करो. 714 00:37:10,420 --> 00:37:12,790 >> तो उस के लिए तय कास्टिंग है. 715 00:37:12,790 --> 00:37:19,780 तो कास्टिंग सी कन्वर्ट करने के लिए एक रास्ता है दूसरे के लिए एक चर प्रकार से. 716 00:37:19,780 --> 00:37:22,320 तो यहाँ, 1 एक पूर्णांक है. 717 00:37:22,320 --> 00:37:27,050 और के सामने यह नाव डाल द्वारा यह, हम एक नाव के लिए 1 कास्टिंग कर रहे हैं. 718 00:37:27,050 --> 00:37:30,350 और इसलिए इस परिवर्तित कर देंगे एक 1.0 करने के लिए 1. 719 00:37:30,350 --> 00:37:33,380 और इस के लिए बदल जाएगा एक 10.0 करने के लिए 10. 720 00:37:33,380 --> 00:37:36,790 >> और फिर बातें करने के लिए इसी तरह व्यवहार हम अभी पता चला है कि पिछले संस्करण 721 00:37:36,790 --> 00:37:42,190 जहां, उम्मीद के रूप में, हम 0.10 मिलता है और यह कि मुद्रित करेंगे. 722 00:37:42,190 --> 00:37:44,120 और हम के साथ ऐसा कर सकते हैं बहुत चर,. 723 00:37:44,120 --> 00:37:47,376 तो हम कहते हैं, नाव एक्स कर सकते हैं नाव y से विभाजित. 724 00:37:47,376 --> 00:37:48,626 >> यूसुफ: कोई सवाल? 725 00:37:48,626 --> 00:37:54,182 726 00:37:54,182 --> 00:38:00,090 >> आरओबी: तो बस नियमित रूप से गणित में जैसे, हम ऑपरेटर पूर्वता है. 727 00:38:00,090 --> 00:38:06,960 तो गणित वर्ग में, आप और अधिक होने की संभावना हो कार्रवाई के आदेश इसे कहते हैं. 728 00:38:06,960 --> 00:38:09,890 इधर, आधिकारिक शब्द है ऑपरेटर पूर्वता. 729 00:38:09,890 --> 00:38:15,230 लेकिन ऑपरेटर पूर्वता, या सबसे ऑपरेटरों, आप उम्मीद करेंगे है. 730 00:38:15,230 --> 00:38:22,660 >> तो सिर्फ गणित में की तरह, 2 बार 10 है और अधिक बारीकी से वर्गीकृत किया जा करने के लिए जा रहा 731 00:38:22,660 --> 00:38:25,410 इस 10 2 से विभाजित और फिर 2. 732 00:38:25,410 --> 00:38:29,745 कार्रवाई के आदेश, यह 2 करना होगा बार 10, 10 तो 2 से विभाजित है, और 733 00:38:29,745 --> 00:38:32,720 यह 20 से अधिक 5 प्लस 2 करूँगा. 734 00:38:32,720 --> 00:38:37,020 इसलिए यह उम्मीद के रूप में है, और आप उपयोग कर सकते हैं समूह अभिव्यक्ति के लिए कोष्ठक. 735 00:38:37,020 --> 00:38:41,063 तुम वर्ग कोष्ठक का उपयोग नहीं कर सकते समूह अभिव्यक्ति के लिए. 736 00:38:41,063 --> 00:38:41,544 हाँ? 737 00:38:41,544 --> 00:38:43,468 >> स्पीकर 5: क्या आप वास्तव में अभी वापस एक दूसरे जाना? 738 00:38:43,468 --> 00:38:47,316 आप एक स्ट्रिंग के लिए एक पूर्णांक डाल सकते हैं? 739 00:38:47,316 --> 00:38:53,330 >> आरओबी: तो सी में, आप कुछ भी डाल सकते हैं क्या आप चाहते हैं कुछ भी करना चाहते हैं. 740 00:38:53,330 --> 00:38:55,600 बस यही बात है मतलब यह नहीं है ऐसा करने के लिए एक अच्छी बात है. 741 00:38:55,600 --> 00:38:59,760 तो आप को एक int डाली जब एक स्ट्रिंग, इसका मतलब है कि - 742 00:38:59,760 --> 00:39:03,240 और हम इस में मिल जाएगा बहुत अधिक अच्छी तरह - 743 00:39:03,240 --> 00:39:03,720 >> यूसुफ: काफी समय बाद. 744 00:39:03,720 --> 00:39:06,840 >> रोब: मैं बहुत बाद में कहने के लिए नहीं चाहता था, इसलिए मैं अपने वाक्य को बदलने की कोशिश की. 745 00:39:06,840 --> 00:39:13,370 हम और अधिक अच्छी तरह से इसे में मिल जाएगा बाद में, जहां वास्तव में आप एक है जब 746 00:39:13,370 --> 00:39:14,810 स्ट्रिंग चर - 747 00:39:14,810 --> 00:39:17,160 इसलिए एक स्ट्रिंग मनमाने ढंग से किया जा सकता है लंबे, है ना? 748 00:39:17,160 --> 00:39:21,850 और हम एक पूर्णांक है कि कह रहा हूँ लंबे चार बाइट्स और आठ है 749 00:39:21,850 --> 00:39:23,620 बाइट्स और एक नाव चार बाइट्स है. 750 00:39:23,620 --> 00:39:29,520 तो एक स्ट्रिंग, बस एक पूर्णांक की तरह ही है यह करने के लिए बाइट की एक निश्चित संख्या. 751 00:39:29,520 --> 00:39:31,800 और कहा कि चार बाइट्स होगा. 752 00:39:31,800 --> 00:39:34,750 >> लेकिन एक स्ट्रिंग सुंदर हो सकता है मनमाने ढंग से लंबे समय, सही? 753 00:39:34,750 --> 00:39:40,190 तो हैलो दुनिया पहले से ही है कि 10 है अगर वर्ण या जो कुछ भी, कि पहले से ही है 754 00:39:40,190 --> 00:39:42,670 4 बाइट्स से अधिक होने जा रहा मैं एक स्ट्रिंग में फिट कर सकते हैं. 755 00:39:42,670 --> 00:39:51,140 और तो तार वास्तव में कैसे काम करता है वे जहां स्मृति में कि स्ट्रिंग हैं 756 00:39:51,140 --> 00:39:52,380 रखा जा रहा है. 757 00:39:52,380 --> 00:39:57,290 >> और इसलिए यहाँ पर, जब मैं कहता हूँ स्ट्रिंग X है एक्स के अंदर, नमस्ते विश्व के बराबर होती है 758 00:39:57,290 --> 00:40:01,840 बस ओह, नमस्ते विश्व संग्रहीत किया जाता है, कह रही है स्मृति में इस विशेष जगह पर. 759 00:40:01,840 --> 00:40:07,060 तो हम एक के लिए एक पूर्णांक कास्ट करने के लिए प्रयास करते हैं तो स्ट्रिंग, तो हम व्याख्या करने के लिए कोशिश कर रहे हैं 760 00:40:07,060 --> 00:40:10,500 स्मृति की कुछ बेतरतीब हिस्सा एक स्ट्रिंग के रूप में. 761 00:40:10,500 --> 00:40:14,465 और वह लगभग हमेशा चीजों को तोड़ता है. 762 00:40:14,465 --> 00:40:17,040 >> यूसुफ: लेकिन अगर वह भ्रमित आप, हम इसे कवर किया जाएगा 763 00:40:17,040 --> 00:40:17,550 बाद में और अधिक गहराई में. 764 00:40:17,550 --> 00:40:17,850 >> रोब: हाँ. 765 00:40:17,850 --> 00:40:20,540 तुम कहाँ जा रहे हैं यह है संकेत में मिलता है. 766 00:40:20,540 --> 00:40:25,485 और वह एक महत्वपूर्ण हिस्सा है इस कोर्स के लिए दो सप्ताह का. 767 00:40:25,485 --> 00:40:28,275 >> अध्यक्ष 6: यह वस्तुओं की तरह काम करता है अन्य भाषाओं में है या नहीं सच में? 768 00:40:28,275 --> 00:40:34,050 >> आरओबी: तो अन्य भाषाओं, वस्तुओं में संकेत का उपयोग प्रतिनिधित्व किया जाएगा. 769 00:40:34,050 --> 00:40:37,070 770 00:40:37,070 --> 00:40:38,793 हालांकि यह एक ही बात नहीं है. 771 00:40:38,793 --> 00:40:42,110 772 00:40:42,110 --> 00:40:42,910 किसी भी विचार? 773 00:40:42,910 --> 00:40:43,760 >> यूसुफ: सं 774 00:40:43,760 --> 00:40:44,185 कोई विचार. 775 00:40:44,185 --> 00:40:44,980 >> रोब: ठीक है. 776 00:40:44,980 --> 00:40:46,994 >> यूसुफ: अगले. 777 00:40:46,994 --> 00:40:48,255 >> आरओबी: बस उस के साथ जाना. 778 00:40:48,255 --> 00:40:48,670 ठीक है. 779 00:40:48,670 --> 00:40:51,120 तो सापेक्ष. 780 00:40:51,120 --> 00:40:53,900 बस हम साथ साथ है, शून्य की तरह विभाजित और गुणा. 781 00:40:53,900 --> 00:40:56,720 तो सापेक्ष आप कर सकते हैं एक है इससे पहले नहीं देखा होगा. 782 00:40:56,720 --> 00:40:59,540 और यह सिर्फ देते हैं, कहते हैं, मेरे शेष. 783 00:40:59,540 --> 00:41:02,850 तो 55% से 10. 784 00:41:02,850 --> 00:41:06,840 विभाजित 55 कर का शेष 10 से 5 होगा. 785 00:41:06,840 --> 00:41:09,630 तो 55% से 10 5 है. 786 00:41:09,630 --> 00:41:12,260 और 3% 5 3 होगा. 787 00:41:12,260 --> 00:41:14,180 8% 8 0 होगा. 788 00:41:14,180 --> 00:41:15,903 16% 15 1 हो जाएगा. 789 00:41:15,903 --> 00:41:20,670 >> यूसुफ: इस के साथ एक नोट को बात, भी, यह उम्मीद के रूप में काम नहीं कर सकता है 790 00:41:20,670 --> 00:41:22,700 आप एक नकारात्मक संख्या का उपयोग करते हैं. 791 00:41:22,700 --> 00:41:26,215 तो नकारात्मक 5% 4, कुछ लोग लगता है कि हो सकता है - 792 00:41:26,215 --> 00:41:28,890 793 00:41:28,890 --> 00:41:33,808 आप नकारात्मक लगता है कि क्या होगा 5% 4 हो सकता है? 794 00:41:33,808 --> 00:41:34,792 >> स्पीकर 5: एक. 795 00:41:34,792 --> 00:41:37,920 >> यूसुफ: तो कुछ लोग, एक का कहना है कुछ लोगों को नकारात्मक एक का कहना है. 796 00:41:37,920 --> 00:41:38,450 लेकिन क्या - 797 00:41:38,450 --> 00:41:40,820 >> रोब: मैं भी नहीं होता उन में से एक ने कहा. 798 00:41:40,820 --> 00:41:42,370 >> यूसुफ: दो, क्षमा करें. 799 00:41:42,370 --> 00:41:43,240 कुछ लोगों का कहना है कि - 800 00:41:43,240 --> 00:41:43,450 >> आरओबी: तीन. 801 00:41:43,450 --> 00:41:43,800 >> यूसुफ: तीन? 802 00:41:43,800 --> 00:41:44,890 >> आरओबी: नकारात्मक - 803 00:41:44,890 --> 00:41:45,950 नकारात्मक पाँच - क्या था - 804 00:41:45,950 --> 00:41:47,100 >> यूसुफ: तीन, तीन, तीन. 805 00:41:47,100 --> 00:41:48,450 माफ़ कीजिए. 806 00:41:48,450 --> 00:41:51,910 क्योंकि आप कर लें, तो आम तौर पर, modulo इसे कहीं देखा है, यह आमतौर पर इसका मतलब 807 00:41:51,910 --> 00:41:54,000 सही, एक सकारात्मक संख्या में वापसी? 808 00:41:54,000 --> 00:42:01,160 >> आरओबी: तो हम गणित में जब कहते हैं, 10% के, वे तुम्हें देने के लिए चाहते हैं - 809 00:42:01,160 --> 00:42:05,980 हम 10 से आधुनिक हैं, तो हम करने के लिए उम्मीद 0 से 9 के बीच एक नंबर मिलता है. 810 00:42:05,980 --> 00:42:09,860 यहाँ में, ऐसी बात नहीं है कि आप ऋणात्मक संख्याओं लौट मिलेगा. 811 00:42:09,860 --> 00:42:15,898 >> यूसुफ: तो नकारात्मक 5% 4 1 नकारात्मक होगा. 812 00:42:15,898 --> 00:42:19,325 >> आरओबी: लेकिन यह आप आधुनिक आईएनजी रहे हैं कि दुर्लभ है साथ शुरू करने के लिए नकारात्मक संख्या. 813 00:42:19,325 --> 00:42:25,490 814 00:42:25,490 --> 00:42:25,970 इस करें. 815 00:42:25,970 --> 00:42:27,314 >> यूसुफ: हाँ. 816 00:42:27,314 --> 00:42:29,420 >> आरओबी: हम्म. 817 00:42:29,420 --> 00:42:29,990 ठीक है. 818 00:42:29,990 --> 00:42:36,400 बाहर के बारे में बात करने के लिए तो एक अंतिम बात तैरता है, यह एक खतरनाक व्यवहार है 819 00:42:36,400 --> 00:42:39,850 लेकिन तैरता एक सटीक नहीं हैं प्रस्तुति. 820 00:42:39,850 --> 00:42:46,190 तो फिर वापस बाइट्स के लिए जा रहा, याद एक पूर्णांक हमेशा चार बाइट्स और एक है कि 821 00:42:46,190 --> 00:42:47,830 नाव हमेशा चार बाइट्स है. 822 00:42:47,830 --> 00:42:51,340 तो लुकास के उदाहरण बहुत अच्छा है. 823 00:42:51,340 --> 00:42:55,730 >> तो 3 से विभाजित 1 के बारे में सोच. 824 00:42:55,730 --> 00:42:57,800 तो 0.3333333. 825 00:42:57,800 --> 00:43:03,540 मैं केवल 32 बिट, कैसे कर सकते हैं, तो मैं बिल्कुल 0.33333 दुकान? 826 00:43:03,540 --> 00:43:07,250 और हो सकता है, जो भी कारण के लिए, तुम कहते हो, सब ठीक है, ठीक है, चलो बस कहना है 827 00:43:07,250 --> 00:43:13,210 इस विशेष 1011001, चलो कि सिर्फ इतना है कि 0.333333 होना चाहिए. 828 00:43:13,210 --> 00:43:16,960 खैर, आप केवल एक निश्चित संख्या का है उन बिट्स, तो यह नामुमकिन है 829 00:43:16,960 --> 00:43:22,550 हर एक अस्थायी बिंदु का प्रतिनिधित्व सिर्फ 32 बिट दिया मूल्य. 830 00:43:22,550 --> 00:43:25,580 >> खैर, यह किसी भी प्रतिनिधित्व करने के लिए असंभव है चल बिन्दु मान अनंत दिया - 831 00:43:25,580 --> 00:43:28,480 खैर, बिट्स के किसी भी परिमित संख्या दी. 832 00:43:28,480 --> 00:43:38,265 हम प्रयोग किया जाए तो इस मुद्दे को यहाँ है, ठीक है, दो दशमलव स्थानों के लिए मुद्रित करने के लिए, 833 00:43:38,265 --> 00:43:42,000 हम सही ढंग से जवाब 0.10 से मिला. 834 00:43:42,000 --> 00:43:47,510 लेकिन हुड के नीचे, यह सच है करने के लिए संभव के रूप में बंद के रूप में जमा किया जा रहा है 835 00:43:47,510 --> 00:43:51,790 उन बिट्स के रूप में 0.10 प्रतिनिधित्व कर सकते हैं. 836 00:43:51,790 --> 00:43:53,200 इस अगली स्लाइड पर है? 837 00:43:53,200 --> 00:43:53,830 या यह नहीं है? 838 00:43:53,830 --> 00:43:54,660 >> यूसुफ: हाँ, यह है. 839 00:43:54,660 --> 00:43:55,750 >> रोब: Blegh, blegh. 840 00:43:55,750 --> 00:43:57,760 >> यूसुफ: हाँ, आप कर सकते हैं बस एक बिट नोटों ऊपर खींच. 841 00:43:57,760 --> 00:43:59,700 >> रोब: मैं सिर्फ ज़ूम करने के लिए जा रहा हूँ उस पर पिछले पर. 842 00:43:59,700 --> 00:44:00,950 हे भगवान, कि [सुनाई] है. 843 00:44:00,950 --> 00:44:06,089 844 00:44:06,089 --> 00:44:08,300 तो उस नंबर. 845 00:44:08,300 --> 00:44:12,300 यही कारण है कि मुद्रित किया जाएगा क्या है हम उस प्रोग्राम चलाते हैं. 846 00:44:12,300 --> 00:44:20,340 और वह वास्तव में एक बड़ा सौदा नहीं है नोटिस हम केवल तरह के बारे में देखभाल कर रहे हैं 847 00:44:20,340 --> 00:44:21,920 02:58 दशमलव स्थानों. 848 00:44:21,920 --> 00:44:26,700 जैसा कि हम केवल मूल, 0.10 मुद्रित हम कुछ भी गलत नहीं देखा था और यही कारण है कि है. 849 00:44:26,700 --> 00:44:31,380 लेकिन हम में शुरू हो रही एक बार सटीक, सही संख्या यह है कि 850 00:44:31,380 --> 00:44:35,660 का प्रतिनिधित्व, हम ऐसा नहीं कर सकते देखना वास्तव में 0.1 प्रतिनिधित्व करते हैं. 851 00:44:35,660 --> 00:44:40,900 >> और यहाँ समस्या का हिस्सा है, की तरह है सब ठीक है, कि, ठीक है, ठीक है, लेकिन 852 00:44:40,900 --> 00:44:46,120 पहला, क्या हम ऐसा करने की कोशिश की, जवाब 0.1 बराबर? 853 00:44:46,120 --> 00:44:49,200 सही है या गलत वापस जाने के लिए जा रहा है? 854 00:44:49,200 --> 00:44:51,850 और इसलिए यह कहना मुश्किल है. 855 00:44:51,850 --> 00:44:53,330 मैं यह वास्तव में सच वापसी हो सकती है. 856 00:44:53,330 --> 00:44:55,265 यह पहला - 857 00:44:55,265 --> 00:44:56,180 मुझे नहीं मालूम. 858 00:44:56,180 --> 00:45:00,090 आप काम शुरू एक बार जवाब है चल बिन्दु मान के साथ, आप सुंदर 859 00:45:00,090 --> 00:45:05,150 बहुत समानता का उपयोग नहीं किया जाना चाहिए इस अस्पष्टता की वजह से. 860 00:45:05,150 --> 00:45:09,470 >> और आप सभी जानते हैं, यह सौवां है दशमलव स्थान है कि 861 00:45:09,470 --> 00:45:13,670 चल बिन्दु में सक्षम नहीं था सही ढंग से संभाल करने के लिए. 862 00:45:13,670 --> 00:45:18,180 और तो समानता सिर्फ असफल हो जायेगी और भी हालांकि संख्या - आप से किया गया था अगर 863 00:45:18,180 --> 00:45:24,450 सटीक संख्या का उपयोग कर, संख्या चाहिए बिल्कुल वैसा ही किया गया है. 864 00:45:24,450 --> 00:45:27,790 यह जैसे 50 के पाठ्यक्रम पर है इन अस्थायी उपयोग कर गणना 865 00:45:27,790 --> 00:45:30,270 बात मान, त्रुटि का निर्माण कर सकते हैं ऊपर और ऊपर और ऊपर, और 866 00:45:30,270 --> 00:45:31,125 बातें सिर्फ गलत. 867 00:45:31,125 --> 00:45:33,870 >> यूसुफ: और वास्तव में वहाँ गया है यह हो रहा है की प्रसिद्ध उदाहरण हैं. 868 00:45:33,870 --> 00:45:37,190 नासा के इंजीनियरों इस मिल गया है की तरह में विस्फोट करने के लिए गलत है, के कारण रॉकेट 869 00:45:37,190 --> 00:45:38,665 वे शुरू किया गया है के बाद हवा. 870 00:45:38,665 --> 00:45:41,490 और इस तरह के मुद्दों के बहुत सारे. 871 00:45:41,490 --> 00:45:41,956 तो हाँ. 872 00:45:41,956 --> 00:45:45,218 >> अध्यक्ष 6: आप 0.3 एफ कहते हैं, यह बाकी truncate करता है? 873 00:45:45,218 --> 00:45:46,468 या यह नीचे गोल या है? 874 00:45:46,468 --> 00:45:48,800 875 00:45:48,800 --> 00:45:50,200 >> रोब: यह दौर printf होगा? 876 00:45:50,200 --> 00:45:52,180 >> यूसुफ: मैं printf truncates लगता. 877 00:45:52,180 --> 00:45:52,640 >> रोब: ठीक है. 878 00:45:52,640 --> 00:45:59,890 तो हम इसी तरह विपरीत में जा सकते हैं इस जहाँ की दिशा, इस मामले में, 879 00:45:59,890 --> 00:46:03,320 यह प्रतिनिधित्व कर सकता है निकटतम 0.1 इस संख्या के साथ था. 880 00:46:03,320 --> 00:46:06,820 यह करने में सक्षम हो सकता है निकटतम का प्रतिनिधित्व 0.2 विपरीत में है 881 00:46:06,820 --> 00:46:11,420 दिशा, ०.१९९९९९९९६३५६ या कुछ और. 882 00:46:11,420 --> 00:46:17,480 हम उस दिशा में चला गया तो अगर चीजें, तो printf 0.3 च लौटेंगे 883 00:46:17,480 --> 00:46:20,866 1.99 के बजाय 2.00. 884 00:46:20,866 --> 00:46:22,960 >> यूसुफ: और मैं पूरी तरह से नहीं उस पर यकीन. 885 00:46:22,960 --> 00:46:25,430 आप एक छोटा सा, छोटी सी लिखने के लिए चाहते हो सकता है कार्यक्रम सिर्फ इतना है कि जाँच करने के लिए. 886 00:46:25,430 --> 00:46:29,370 >> आरओबी: हालांकि, क्या हम के बारे में सुनिश्चित कर रहे हैं कि है आप एक के लिए है कि कास्ट करने की कोशिश की 887 00:46:29,370 --> 00:46:33,660 INT, और एक int के लिए कास्टिंग के लिए जा रहा है यह अगर, दशमलव truncate करने के लिए कारण 888 00:46:33,660 --> 00:46:38,140 आप 1.9999999 कास्ट करने की कोशिश एक पूर्णांक के लिए, यदि आप 1 मिलेगा. 889 00:46:38,140 --> 00:46:41,440 और तो आप आम तौर पर इस्तेमाल करना चाहिए गणित पुस्तकालय में दौर समारोह. 890 00:46:41,440 --> 00:46:44,190 891 00:46:44,190 --> 00:46:45,440 प्रश्न? 892 00:46:45,440 --> 00:46:47,660 893 00:46:47,660 --> 00:46:48,982 ठीक है. 894 00:46:48,982 --> 00:46:54,000 >> यूसुफ: तो स्थितियों पर जाने से और बूलियन अभिव्यक्ति. 895 00:46:54,000 --> 00:46:58,120 तो इससे पहले कि आप इन देखा है. 896 00:46:58,120 --> 00:47:07,420 और वास्तव में, मुझे यकीन है कि मेरे बनाते हैं कंप्यूटर यहाँ सही प्रारूप में है. 897 00:47:07,420 --> 00:47:08,670 अंतरिक्ष. 898 00:47:08,670 --> 00:47:10,630 899 00:47:10,630 --> 00:47:13,870 क्षमा करें, हम सौदा करने के लिए जा रहे हैं एक किनारों पर कटऑफ के साथ थोड़ा सा. 900 00:47:13,870 --> 00:47:15,830 >> लेकिन हाँ, तुम लोगों को देखा है इस से पहले स्क्रैच में. 901 00:47:15,830 --> 00:47:19,930 तो यहाँ यह सही अभिव्यक्ति है में प्रयोग किया जाता है जो 902 00:47:19,930 --> 00:47:21,250 एक सशर्त बयान. 903 00:47:21,250 --> 00:47:23,930 तो शून्य होगा से अधिक का जवाब सही है या गलत आपको बता. 904 00:47:23,930 --> 00:47:26,530 और ये वास्तव में महत्वपूर्ण हैं क्योंकि वे हमें शुरू करने की अनुमति 905 00:47:26,530 --> 00:47:28,670 हमारे कोड में तर्क. 906 00:47:28,670 --> 00:47:32,820 >> तो उदाहरण के लिए, यह एक कार्यक्रम है उपयोगकर्ता पूछता है कि खरोंच में लिखा 907 00:47:32,820 --> 00:47:36,980 एक पूर्णांक के लिए और क्या उन्हें बताता है वे तुम्हें दिया था कि पूर्णांक एक था 908 00:47:36,980 --> 00:47:38,690 सकारात्मक या नकारात्मक संख्या. 909 00:47:38,690 --> 00:47:42,980 और देखने के लिए यहाँ पर रूपांतरण है जब आप पहली बार, बयान प्रिंट आउट 910 00:47:42,980 --> 00:47:43,870 मुझे एक पूर्णांक दे. 911 00:47:43,870 --> 00:47:45,980 और फिर तुम एक पूर्णांक के लिए उन्हें पूछना. 912 00:47:45,980 --> 00:47:49,870 >> और फिर तुम पर सशर्त तर्क का उपयोग यहाँ की जांच करने के लिए कि क्या उस नंबर 913 00:47:49,870 --> 00:47:52,030 शून्य या नहीं की तुलना में वास्तव में अधिक से अधिक था. 914 00:47:52,030 --> 00:47:58,960 तो यहाँ हम एक बूलियन अभिव्यक्ति है बयान तो एक सशर्त के अंदर. 915 00:47:58,960 --> 00:48:00,660 किसी भी सवाल है? 916 00:48:00,660 --> 00:48:03,030 इस बारे में कोई सवाल कर रहे हैं? 917 00:48:03,030 --> 00:48:03,950 ठीक है. 918 00:48:03,950 --> 00:48:06,140 >> तो बस से अधिक है ज़ाहिर है, की तुलना में ज्यादा है. 919 00:48:06,140 --> 00:48:10,385 आप बूलियन अभिव्यक्ति का निर्माण कर सकते हैं चीजों की तरह के अधिकांश का उपयोग आप 920 00:48:10,385 --> 00:48:11,150 गणित में के बारे में सोचना होगा. 921 00:48:11,150 --> 00:48:12,370 से तो ज्यादा है. 922 00:48:12,370 --> 00:48:13,740 उस से भी एक कम होना चाहिए. 923 00:48:13,740 --> 00:48:14,990 माफ़ कीजिए. 924 00:48:14,990 --> 00:48:18,520 925 00:48:18,520 --> 00:48:19,760 और रिक्ति. 926 00:48:19,760 --> 00:48:22,971 >> रोब: भगवान न करे कि आप इसे छोड़ दें. 927 00:48:22,971 --> 00:48:23,620 >> यूसुफ: सब ठीक है. 928 00:48:23,620 --> 00:48:25,950 अधिक से अधिक, की तुलना में कम है, की तुलना में इतनी अधिक से अधिक से, या, कम करने के लिए बराबर 929 00:48:25,950 --> 00:48:27,070 से, या बराबर है. 930 00:48:27,070 --> 00:48:31,980 हम के लिए जाँच करने के लिए डबल बराबरी का उपयोग समानता, एक साधन के बराबर होती है क्योंकि 931 00:48:31,980 --> 00:48:32,810 असाइनमेंट, सही? 932 00:48:32,810 --> 00:48:33,140 हां. 933 00:48:33,140 --> 00:48:37,130 और फिर हम भी द्वारा बराबर होती नहीं है सकते हैं विस्मयादिबोधक चिह्न का उपयोग, के बराबर होती है. 934 00:48:37,130 --> 00:48:41,530 >> और इस विस्मयबोधक चिह्न प्रतीक कर सकते हैं भी बढ़ाया जा इतना है कि अगर आप चाहते हैं 935 00:48:41,530 --> 00:48:44,050 बूलियन के किसी भी तरह पलटना अभिव्यक्ति, आप ऐसा कर सकते हैं. 936 00:48:44,050 --> 00:48:48,530 तो यह सत्य पर मूल्यांकन करेंगे जवाब कम है ही अगर 937 00:48:48,530 --> 00:48:51,240 से अधिक या शून्य के बराबर. 938 00:48:51,240 --> 00:48:53,950 उस पर कोई सवाल? 939 00:48:53,950 --> 00:48:55,180 ठीक है. 940 00:48:55,180 --> 00:48:58,840 >> तो आप भी इन गठजोड़ कर सकते हैं तार्किक और और का उपयोग कर अभिव्यक्ति 941 00:48:58,840 --> 00:48:59,790 तार्किक या. 942 00:48:59,790 --> 00:49:03,530 तो यह सिर्फ और प्रतीक है जो शिफ्ट, 7 होना चाहिए. 943 00:49:03,530 --> 00:49:07,720 और यह है, जो पाइप प्रतीक है एक कम मामले एल यह किसी के नहीं 944 00:49:07,720 --> 00:49:09,440 सही है कि अपने Enter कुंजी ऊपर है. 945 00:49:09,440 --> 00:49:12,870 तो आप का प्रतीक इनमें से दो का इस्तेमाल तार्किक और तार्किक या. 946 00:49:12,870 --> 00:49:18,180 >> तो यह केवल सच वापसी करेंगे अगर जवाब एक, दो, तीन, या चार है. 947 00:49:18,180 --> 00:49:23,030 और यह केवल सच वापसी करेंगे अगर जवाब दोनों तरफ से परे है कि है. 948 00:49:23,030 --> 00:49:26,190 तो यह एक, दो, तीन, या चार नहीं है. 949 00:49:26,190 --> 00:49:28,385 और आप का प्रयोग करेंगे रास्ता एक अभिव्यक्ति में - 950 00:49:28,385 --> 00:49:29,990 >> आरओबी: या एक शून्य या एक पांच. 951 00:49:29,990 --> 00:49:32,200 >> यूसुफ: शून्य या एक पांच. 952 00:49:32,200 --> 00:49:32,380 माफ़ कीजिए. 953 00:49:32,380 --> 00:49:33,320 हां, हां, हां. 954 00:49:33,320 --> 00:49:34,180 ठीक है. 955 00:49:34,180 --> 00:49:38,980 और अब यहाँ पर, एक ही रास्ता है कि आप कि अभिव्यक्ति का प्रयोग करेंगे, एक छोटे 956 00:49:38,980 --> 00:49:42,000 एक तो सशर्त की अभिव्यक्ति की ओर बयान, आप भी इसका इस्तेमाल होता है 957 00:49:42,000 --> 00:49:47,800 बस के अंदर रखकर उसी तरह यदि बयान के कोष्ठकों. 958 00:49:47,800 --> 00:49:54,020 तो यह printf केवल आग जाएगा अगर जवाब एक, दो, तीन, या चार है. 959 00:49:54,020 --> 00:49:56,002 संयोजन पर कोई प्रश्न अभिव्यक्ति? 960 00:49:56,002 --> 00:50:00,450 961 00:50:00,450 --> 00:50:04,240 >> तो एक और सशर्त वहाँ हम एक हैं / और कॉल का निर्माण. 962 00:50:04,240 --> 00:50:08,120 तो बुनियादी तौर पर, यह अब है, तो ठीक है, इसका मतलब है मैं देखना चाहता था कुछ नहीं था 963 00:50:08,120 --> 00:50:11,600 यह सच है, तो किसी और को जाने और कि अन्य कार्रवाई प्रदर्शन करते हैं. 964 00:50:11,600 --> 00:50:15,570 इसलिए इस विशेष मामले में, मैंने पूछा एक पूर्णांक के लिए उपयोगकर्ता. 965 00:50:15,570 --> 00:50:17,790 पूर्णांक शून्य से अधिक है? 966 00:50:17,790 --> 00:50:18,310 हाँ? 967 00:50:18,310 --> 00:50:20,100 ठीक है, तो वे उठाया एक सकारात्मक संख्या. 968 00:50:20,100 --> 00:50:22,320 यदि नहीं, तो यह होनी चाहिए नकारात्मक या एक शून्य कर दिया गया. 969 00:50:22,320 --> 00:50:27,530 तो तुम एक नकारात्मक संख्या उठाया या फिर इस मामले में एक शून्य. 970 00:50:27,530 --> 00:50:29,235 हां. 971 00:50:29,235 --> 00:50:30,485 या फिर एक शून्य. 972 00:50:30,485 --> 00:50:36,320 973 00:50:36,320 --> 00:50:39,300 >> और फिर हम भी, अगर / और है यदि और कुछ. 974 00:50:39,300 --> 00:50:45,640 तो यह हम में से एक दृश्य को अंजाम देता है चीजें पहले वाले असफल ही है. 975 00:50:45,640 --> 00:50:49,540 तो इस मामले में, अब हम कर रहे हैं आप शून्य लेने आखरी. 976 00:50:49,540 --> 00:50:53,080 वे एक सकारात्मक उठाया और न ही न तो अगर एक नकारात्मक संख्या है, तो वे चाहिए 977 00:50:53,080 --> 00:50:53,640 शून्य उठाया है. 978 00:50:53,640 --> 00:50:56,720 तो यह सिर्फ नीचे चला जाता है इस तरह श्रृंखला. 979 00:50:56,720 --> 00:50:59,960 >> कैसे एक का तो एक उदाहरण यदि से अलग है - 980 00:50:59,960 --> 00:51:02,590 एक तो / और से अलग है आईएफएस के सिर्फ एक दृश्य. 981 00:51:02,590 --> 00:51:07,680 और यह एक आम सवाल है कि आप एक तरह मिलता है, तो लोगों को अच्छी तरह से, है पूछना 982 00:51:07,680 --> 00:51:11,265 95 CS50 में, क्या होगा इस कार्यक्रम तुम बताओ? 983 00:51:11,265 --> 00:51:12,600 >> स्पीकर 5: आप एक ए मिला 984 00:51:12,600 --> 00:51:13,490 >> यूसुफ: हाँ. 985 00:51:13,490 --> 00:51:14,960 आप हर एक मिला सही उन में से एक. 986 00:51:14,960 --> 00:51:17,130 तुम, तुम एक बी मिला, एक एक मिला सही, एक सी और डी को मिला? 987 00:51:17,130 --> 00:51:19,770 तो इन सब का मूल्यांकन मिल आदेश में. 988 00:51:19,770 --> 00:51:23,570 एक 95 90 से अधिक है तो, जबकि यह है 80 से भी अधिक से अधिक, यह भी है 989 00:51:23,570 --> 00:51:25,790 70 से अधिक है, और यह बात है यह भी 60 से अधिक. 990 00:51:25,790 --> 00:51:27,620 तो आप उन श्रेणियों के सभी मिल गया. 991 00:51:27,620 --> 00:51:31,630 और मैं तुम्हें होगा मान केवल ए चाहते हैं 992 00:51:31,630 --> 00:51:34,060 >> तय है कि जिस तरह से बदलने के लिए है वरना यदि / के साथ थे. 993 00:51:34,060 --> 00:51:37,540 इसलिए इस परिदृश्य में, यह 95 है कि देखता है 90 से अधिक है, और फिर यह करता है 994 00:51:37,540 --> 00:51:38,885 बाकी का मूल्यांकन नहीं बयान की. 995 00:51:38,885 --> 00:51:41,900 996 00:51:41,900 --> 00:51:43,150 उस के बारे में कोई सवाल? 997 00:51:43,150 --> 00:51:48,580 998 00:51:48,580 --> 00:51:52,470 >> तो एक और सशर्त तरह की नहीं है हम यहाँ है कि संरचना जो हम 999 00:51:52,470 --> 00:51:53,390 एक स्विच बयान कहते हैं. 1000 00:51:53,390 --> 00:51:57,390 तो यह आप मूल रूप से जाँच करने के लिए अनुमति देता है क्या तुम डाल एक नंबर का मूल्य 1001 00:51:57,390 --> 00:51:59,000 स्विच बयान में है. 1002 00:51:59,000 --> 00:52:03,200 इसलिए इस परिदृश्य में, हम जा रहे हैं n है अगर एन पर, और हम, ओह, कह रहे हैं 1003 00:52:03,200 --> 00:52:04,710 एक, तब उस बयान मुद्रित. 1004 00:52:04,710 --> 00:52:07,910 और फिर बाहर निकलने का मतलब है, जो तोड़ स्विच बयान से बाहर है. 1005 00:52:07,910 --> 00:52:12,670 >> यह एक नहीं था, तो, ठीक है, बस अंततः उन सभी मामलों की जांच. 1006 00:52:12,670 --> 00:52:16,280 यह एक या दो या अगर और इसलिए यह जांच करता है तीन, और यह तदनुसार प्रिंट. 1007 00:52:16,280 --> 00:52:19,780 और क्या इस डिफ़ॉल्ट कीवर्ड यहाँ नीचे वे किसी भी दर्ज नहीं किया था साधन है 1008 00:52:19,780 --> 00:52:21,690 उन की, तब अमान्य कहना. 1009 00:52:21,690 --> 00:52:25,910 तो चलो मैं n के लिए पूछना है और हम कहते हैं उपयोगकर्ता मेरे चार देता है. 1010 00:52:25,910 --> 00:52:29,470 खैर, यह उन मामलों में से कोई भी मेल खाता है, तो इसमें क्या बाहर प्रिंट होगा 1011 00:52:29,470 --> 00:52:30,540 डिफ़ॉल्ट अनुभाग. 1012 00:52:30,540 --> 00:52:31,180 हाँ, सवाल? 1013 00:52:31,180 --> 00:52:32,614 >> स्पीकर 5: आप बूलियन उपयोग कर सकते हैं अभिव्यक्ति के बजाय 1014 00:52:32,614 --> 00:52:33,570 एक, दो, तीन या? 1015 00:52:33,570 --> 00:52:36,940 >> यूसुफ: तो सवाल आप उपयोग कर सकते है एक के बजाय बूलियन अभिव्यक्ति, 1016 00:52:36,940 --> 00:52:37,940 दो और तीन? 1017 00:52:37,940 --> 00:52:40,520 और सी में, मैं तुम पर विश्वास ऐसा नहीं कर सकते. 1018 00:52:40,520 --> 00:52:44,320 लेकिन अन्य भाषाओं में, जो आप कर सकते हैं के अंत में मुठभेड़ 1019 00:52:44,320 --> 00:52:46,460 आप कर सकते हैं जावास्क्रिप्ट, जैसे सेमेस्टर. 1020 00:52:46,460 --> 00:52:50,050 खैर, आप पहली बार की गणना करने के लिए होगा फिर उस मूल्य और में इसका इस्तेमाल करते हैं 1021 00:52:50,050 --> 00:52:50,650 बयान स्विच. 1022 00:52:50,650 --> 00:52:50,930 हाँ? 1023 00:52:50,930 --> 00:52:54,760 >> रोब: स्विच के लाभ का तो हिस्सा आप इस किया था अगर बयानों के बारे में सोच रहा है 1024 00:52:54,760 --> 00:52:58,680 एक तो / वरना, तो के रूप में n के बराबर होती है, तो जैसे एक या जो भी बराबर होती है. 1025 00:52:58,680 --> 00:53:00,300 वरना / एन के बराबर होती है, तो दो, जो भी बराबर होती है. 1026 00:53:00,300 --> 00:53:01,960 वरना / एन के बराबर होती है, तो तीन बराबर होती है. 1027 00:53:01,960 --> 00:53:05,930 इसलिए कार्यक्रम चला जाएगा तरीका यह है क्रमिक रूप से है कि इस सूची में नीचे जाना होगा 1028 00:53:05,930 --> 00:53:07,500 और, जाँच एक n है? 1029 00:53:07,500 --> 00:53:08,040 नहींं. 1030 00:53:08,040 --> 00:53:09,070 N दो है? 1031 00:53:09,070 --> 00:53:09,490 नहींं. 1032 00:53:09,490 --> 00:53:10,940 N तीन है? 1033 00:53:10,940 --> 00:53:11,710 हाँ. 1034 00:53:11,710 --> 00:53:12,610 यह मत करो. 1035 00:53:12,610 --> 00:53:15,270 >> स्विच बयान के साथ, जबकि यह है यह होने के लिए संकलन करने के लिए वास्तव में सक्षम 1036 00:53:15,270 --> 00:53:16,360 वास्तव में तेजी से. 1037 00:53:16,360 --> 00:53:19,550 और जैसे ही यह स्विच, यह कहते हैं सब ठीक है, n मैं हूँ, दो है, कहते हैं 1038 00:53:19,550 --> 00:53:23,060 तुरंत जहां पर कूदने के लिए जा रहा मैं निष्पादित शुरू करने वाला हूँ. 1039 00:53:23,060 --> 00:53:26,080 मैं पहले की जांच करने के लिए नहीं जा रहा हूँ, n एक, दो n है है? 1040 00:53:26,080 --> 00:53:28,860 यह तुरंत शुरू कर सकते हैं यह करने के लिए माना जाता है. 1041 00:53:28,860 --> 00:53:33,830 >> और उसकी वजह से, यह नहीं कर सकते बूलियन शर्तों ले. 1042 00:53:33,830 --> 00:53:36,480 वरना यह करना होगा अनुक्रमिक, जैसे, सब ठीक है, पता है 1043 00:53:36,480 --> 00:53:37,820 शून्य से अधिक? 1044 00:53:37,820 --> 00:53:41,140 वरना 10 या जो कुछ भी की तुलना में n अधिक है. 1045 00:53:41,140 --> 00:53:44,780 >> यूसुफ: इस मामले में, अगर आप इस्तेमाल किया अगर / वरना, अगर, तो स्विच होगा 1046 00:53:44,780 --> 00:53:47,792 लगभग तीन बार चलाने अगर / वरना, तो तुलना में तेजी. 1047 00:53:47,792 --> 00:53:53,060 1048 00:53:53,060 --> 00:53:56,040 हम ऐसे में स्विच व्यवस्थित कर सकते हैं हम तोड़ नहीं है कि एक तरह से 1049 00:53:56,040 --> 00:53:57,520 मामलों में से प्रत्येक के बाद. 1050 00:53:57,520 --> 00:54:00,960 तो इस मामले में, मैं का विभाजन कर रहा हूँ हम एक में चुनते हैं और कि संख्या 1051 00:54:00,960 --> 00:54:04,250 दो उच्च संख्या नहीं किया जा रहा है और तीन एक उच्च संख्या है. 1052 00:54:04,250 --> 00:54:08,290 >> तो इस मामले में, अगर n यह एक या दो है मामले मारा और फिर यह होगा होगा 1053 00:54:08,290 --> 00:54:10,640 , के माध्यम से गिर क्योंकि कोई तोड़ नहीं है. 1054 00:54:10,640 --> 00:54:11,610 और यह यहाँ खत्म हो जाएगा. 1055 00:54:11,610 --> 00:54:15,360 हम एक चुनना तो, अगर यह printf करना होगा और फिर इतना है कि कोई भी तोड़ 1056 00:54:15,360 --> 00:54:17,610 इस मार डाला है. 1057 00:54:17,610 --> 00:54:21,870 और हां, वे तीन में दर्ज करते हैं या कुछ और, तो इसे छोड़ देंगे 1058 00:54:21,870 --> 00:54:25,320 उन और वहाँ नहीं जाना है, और यह बजाय अमल करेंगे 1059 00:54:25,320 --> 00:54:27,490 लाइन इसी. 1060 00:54:27,490 --> 00:54:29,390 इस बारे में कोई सवाल कर रहे हैं? 1061 00:54:29,390 --> 00:54:29,780 हाँ? 1062 00:54:29,780 --> 00:54:32,642 >> अध्यक्ष 4: आपको कोई त्रुटि मिलती चाहेंगे आप अगर मामले एक के बाद एक ब्रेक की थी लेकिन यह 1063 00:54:32,642 --> 00:54:34,550 यह करने के लिए के लिए कुछ नहीं था? 1064 00:54:34,550 --> 00:54:37,820 >> यूसुफ: तो सवाल आप मिल जाएगा है एक त्रुटि आप के बाद एक तोड़ दिया है अगर 1065 00:54:37,820 --> 00:54:39,730 एक मामले लेकिन ऐसा करने के लिए कुछ भी नहीं है? 1066 00:54:39,730 --> 00:54:41,520 और जवाब नहीं है. 1067 00:54:41,520 --> 00:54:43,172 आप वास्तव में कोई त्रुटि नहीं मिलेगा. 1068 00:54:43,172 --> 00:54:44,590 हम्म मिमी, हाँ. 1069 00:54:44,590 --> 00:54:54,540 >> यहाँ तो के रूप में की तरह एक छोटे से बदलाव, मैं यहाँ एक printf डाला जा रहा हूँ. 1070 00:54:54,540 --> 00:54:55,790 वूप्स. 1071 00:54:55,790 --> 00:55:00,994 1072 00:55:00,994 --> 00:55:04,880 तो क्या हुआ अगर यह मुद्रित होगा मैं निवेश के रूप में एक डाल दिया? 1073 00:55:04,880 --> 00:55:07,530 1074 00:55:07,530 --> 00:55:07,770 हाँ. 1075 00:55:07,770 --> 00:55:10,360 यह यह नहीं ले गए थे तुम्हें बताना होगा दो बार एक उच्च संख्या, सही? 1076 00:55:10,360 --> 00:55:13,500 यह है कि पहले मामले को मारा जाएगा, इसे तोड़ने नहीं होगा, और यह गिर जाएगा 1077 00:55:13,500 --> 00:55:15,730 दूसरे मामले के माध्यम से. 1078 00:55:15,730 --> 00:55:16,950 उस के बारे में कोई सवाल? 1079 00:55:16,950 --> 00:55:18,280 >> रोब: आप एक और सवाल है? 1080 00:55:18,280 --> 00:55:20,840 >> यूसुफ: ठीक है, शांत. 1081 00:55:20,840 --> 00:55:22,400 ठीक है. 1082 00:55:22,400 --> 00:55:25,780 तो हम एक फोन वहाँ कुछ और है जो मूल रूप से त्रिगुट ऑपरेटर एक 1083 00:55:25,780 --> 00:55:29,010 ऐसा करने के लिए वैकल्पिक वाक्यविन्यास यदि और तो और. 1084 00:55:29,010 --> 00:55:30,470 और इसे आप एक पंक्ति पर यह सब करने की सुविधा देता है. 1085 00:55:30,470 --> 00:55:34,110 इस विशेष कार्यक्रम में तो मैं n के लिए उपयोगकर्ता पूछ रहा हूँ. 1086 00:55:34,110 --> 00:55:37,190 N 100 से अधिक है, तो मैं बताना उन्हें वे एक उच्च संख्या उठाया. 1087 00:55:37,190 --> 00:55:39,560 वरना मैं उन्हें बता वे एक कम संख्या उठाया. 1088 00:55:39,560 --> 00:55:43,030 >> इसलिए हम इस सच लंबे वाक्य रचना का उपयोग कर सकते हैं, n है यदि स्ट्रिंग, एस, और फिर जाँच 1089 00:55:43,030 --> 00:55:45,260 100 से अधिक और आवंटित यह तदनुसार. 1090 00:55:45,260 --> 00:55:49,450 लेकिन हम इतना अधिक संक्षिप्त कर सकते हैं इस त्रिगुट ऑपरेटर सिंटैक्स का उपयोग कर 1091 00:55:49,450 --> 00:55:52,090 एक प्रश्न शामिल है जो मार्क और एक पेट के. 1092 00:55:52,090 --> 00:55:55,070 तो सवालिया निशान अनिवार्य है सही, एक प्रश्न पूछ? 1093 00:55:55,070 --> 00:55:56,625 >> आरओबी: हो सकता है कि पर ज़ूम. 1094 00:55:56,625 --> 00:55:57,372 >> यूसुफ: हाँ. 1095 00:55:57,372 --> 00:56:00,210 अच्छी बात है. 1096 00:56:00,210 --> 00:56:02,550 तो इस त्रिगुट ऑपरेटर है. 1097 00:56:02,550 --> 00:56:06,100 मैं पहला सवाल पूछना, 100 से n अधिक से अधिक है? 1098 00:56:06,100 --> 00:56:09,770 अगर ऐसा है, तो मैं पहले निष्पादित पेट के पहले भाग. 1099 00:56:09,770 --> 00:56:13,360 यदि ऐसा नहीं है, तो मैं निष्पादित पेट के बाद दूसरा हिस्सा. 1100 00:56:13,360 --> 00:56:16,640 तो अगर एन, 100 से अधिक है तो यह उच्च उठाता है और कहते हैं 1101 00:56:16,640 --> 00:56:18,360 कि स्ट्रिंग एस में. 1102 00:56:18,360 --> 00:56:22,170 N 100 से कम है तो उसे कम उठाता और फिर स्ट्रिंग है कि में डालता है. 1103 00:56:22,170 --> 00:56:30,186 इसलिए कि यह बड़ा हिस्सा गाढ़ा होगा सिर्फ इतना है कि एक लाइन में नीचे. 1104 00:56:30,186 --> 00:56:32,010 >> स्पीकर 5: कि लोकप्रिय है? 1105 00:56:32,010 --> 00:56:36,070 >> यूसुफ: हाँ, इसके लिए काफी लोकप्रिय है आप करना चाहते हैं जहां अनिवार्य रूप से बातें 1106 00:56:36,070 --> 00:56:38,700 एक काम पर आधारित है हालत किसी प्रकार का. 1107 00:56:38,700 --> 00:56:43,110 और इस मामले में, हम कोशिश कर रहे थे स्ट्रिंग के लिए एक मूल्य प्रदान करने के लिए. 1108 00:56:43,110 --> 00:56:44,840 ऐसा नहीं है - 1109 00:56:44,840 --> 00:56:47,670 मुझे लगता है मैं वास्तव में पसंद नहीं है लगता है यह अन्य मामलों में. 1110 00:56:47,670 --> 00:56:49,390 लेकिन यह विशेष रूप से उपयोगी है इस काम के लिए. 1111 00:56:49,390 --> 00:56:54,490 >> आरओबी: यह एक बहुत ही आम पैटर्न है आप कुछ चर है कि जहां 1112 00:56:54,490 --> 00:56:58,200 कुछ, सेट अगर तुम, कहने जा रहे हैं एक मूल्य के लिए इस चर, अन्यथा, सेट 1113 00:56:58,200 --> 00:56:59,810 एक और मूल्य के लिए इस चर. 1114 00:56:59,810 --> 00:57:03,360 और वह परिदृश्य है जहां एक त्रिगुट का उपयोग करें. 1115 00:57:03,360 --> 00:57:05,220 >> यूसुफ: और आप बचत कर रहे हैं लाइनों की बहुत सारी, सही? 1116 00:57:05,220 --> 00:57:08,090 और यह सिर्फ यकीनन आपके कोड बनाता है थोड़ा और अधिक पठनीय. 1117 00:57:08,090 --> 00:57:08,635 हाँ, सवाल? 1118 00:57:08,635 --> 00:57:12,384 >> अध्यक्ष 6: एक त्रिगुट के लिए, आप जा सकते हैं स्ट्रिंग के बराबर होती है, प्रश्न चिह्न? 1119 00:57:12,384 --> 00:57:15,280 और फिर आप कहते हैं, हो सकता है पाँच अलग अलग विकल्प. 1120 00:57:15,280 --> 00:57:18,310 और पर निर्भर करता है क्या पता की संख्या , आप उन लोगों में से एक को चुनना होता था? 1121 00:57:18,310 --> 00:57:22,210 >> यूसुफ: तो, वहाँ एक सवाल है आप स्ट्रिंग कर सकते हैं जहां वाक्य रचना की तरह 1122 00:57:22,210 --> 00:57:25,910 एन के बराबर होती है, और उसके बाद दो से अधिक है कि प्रश्न चिह्न के बाद विकल्प? 1123 00:57:25,910 --> 00:57:29,740 और एक साधारण सवाल का जवाब नहीं, वहाँ नहीं है ऐसा करने के लिए वास्तव में एक अच्छा तरीका है कि जब तक 1124 00:57:29,740 --> 00:57:33,850 आप घोंसला कई त्रिगुट करना चाहते हैं एक दूसरे के अंदर ऑपरेटरों. 1125 00:57:33,850 --> 00:57:38,050 >> आप 100 से n अधिक से अधिक की तरह कर सकता है प्रश्न चिह्न, और फिर एक और 1126 00:57:38,050 --> 00:57:41,850 त्रिगुट ऑपरेटर, एन 50 से अधिक, प्रश्न चिह्न, और घोंसला यह है कि जिस तरह से. 1127 00:57:41,850 --> 00:57:45,240 लेकिन उस परिदृश्य में, अपने कोड है , एक तरह से अस्पष्ट और गंदा हो रही 1128 00:57:45,240 --> 00:57:47,920 और यह सिर्फ करने के लिए जाने के लिए बेहतर हो सकता है उस बिंदु पर एक अगर / और बयान. 1129 00:57:47,920 --> 00:57:54,530 >> आरओबी: और भी, के रूप में एक तरफ ध्यान दें, पीएचपी गलत तरीके से त्रिगुट लागू करता है 1130 00:57:54,530 --> 00:57:58,053 ऑपरेटर ऐसे कि नेस्टेड ternaries वे चाहिए के रूप में भी काम नहीं करते. 1131 00:57:58,053 --> 00:57:58,840 >> यूसुफ: हाँ. 1132 00:57:58,840 --> 00:58:01,170 तो यह एक छोटा सा भ्रमित हो जाता है तुम जाओ, खासकर जब 1133 00:58:01,170 --> 00:58:02,145 विभिन्न भाषाओं में. 1134 00:58:02,145 --> 00:58:04,810 >> आरओबी: यह काफी भ्रमित करने वाला है कि भाषा इसके बारे में गलत कर रहे हैं. 1135 00:58:04,810 --> 00:58:08,030 1136 00:58:08,030 --> 00:58:11,510 >> यूसुफ: तो वास्तव में, बस स्पष्ट करने के लिए, हर किसी को पता नहीं क्या है कि 1137 00:58:11,510 --> 00:58:13,900 % S यहाँ पर करता है? 1138 00:58:13,900 --> 00:58:15,650 उस के बारे में कोई सवाल? 1139 00:58:15,650 --> 00:58:19,760 मुझे लगता है कि सिर्फ कैमरे के लिए है,% s मूल रूप से हमें एक प्लेसहोल्डर डाल देता है 1140 00:58:19,760 --> 00:58:20,790 एक स्ट्रिंग के लिए. 1141 00:58:20,790 --> 00:58:23,920 और फिर अंत में, हम द्वारा निर्दिष्ट चर हम इस में लाना चाहता हूँ 1142 00:58:23,920 --> 00:58:25,500 जगह धारक है है. 1143 00:58:25,500 --> 00:58:27,730 तो यह है कि मूल रूप से लेता है और यह यहाँ में डालता है. 1144 00:58:27,730 --> 00:58:32,130 और फिर यह आप उठाया, बाहर मुद्रित होगा एक उच्च या आप एक कम संख्या उठाया. 1145 00:58:32,130 --> 00:58:33,770 ठीक है. 1146 00:58:33,770 --> 00:58:36,970 >> तो छोरों आप चीजों को प्रदर्शन करने की अनुमति परिपत्र गति में, सही? 1147 00:58:36,970 --> 00:58:40,300 आप में इस का सामना करना पड़ा है हो सकता है हमेशा के रूप में खरोंच छोरों 1148 00:58:40,300 --> 00:58:45,650 या जब तक दोहराएँ या एक विशेष दोहराएँ बार की संख्या. 1149 00:58:45,650 --> 00:58:47,540 तो क्यों यह हमारे लिए अच्छा है? 1150 00:58:47,540 --> 00:58:51,500 खैर, सी में, हम यह है हम कहते हैं गीत स्क्रैच में लागू कि 1151 00:58:51,500 --> 00:58:53,450 गाती है, यह गाना है कि कभी समाप्त नहीं होती. 1152 00:58:53,450 --> 00:58:55,710 यह बस पर और पर चला जाता है और हमेशा के लिए और हमेशा के लिए. 1153 00:58:55,710 --> 00:58:59,395 ठीक है, तुम वास्तव में एक कार्यक्रम नहीं बना सकते कि printf की एक अनंत संख्या है 1154 00:58:59,395 --> 00:59:00,850 यह वक्तव्य में, सही? 1155 00:59:00,850 --> 00:59:04,900 >> इसलिए इस विशेष परिदृश्य में, एक ही रास्ता आप यह काम कर सकता है और उस 1156 00:59:04,900 --> 00:59:09,330 यह है हमेशा के लिए मुद्रित करने के लिए बजाय एक समय पाश का उपयोग करें. 1157 00:59:09,330 --> 00:59:13,640 तो एक समय पाश क्या होगा अंजाम दो ब्रेसिज़ के शरीर में है कि 1158 00:59:13,640 --> 00:59:17,250 के आधार पर यह के अंतर्गत आता है क्या हालत है. 1159 00:59:17,250 --> 00:59:21,170 अगर, पहले इस विशिष्ट उदाहरण में तो हम हमेशा के लिए इस प्रिंट करने के लिए क्या चाहते हैं 1160 00:59:21,170 --> 00:59:23,590 हम क्या कर सकते हैं? 1161 00:59:23,590 --> 00:59:25,190 खैर, यकीन है, है ना? 1162 00:59:25,190 --> 00:59:32,290 >> तो इस तरह के विचार को जोड़ती है कुछ बूलियन अभिव्यक्ति की 1163 00:59:32,290 --> 00:59:33,610 एक पाश के साथ. 1164 00:59:33,610 --> 00:59:35,780 और हम बूलियन के बारे में सीखा पहले का भाव. 1165 00:59:35,780 --> 00:59:39,650 इसलिए जब भी अंदर की हालत कि हालांकि, इस लूप सही रहता है 1166 00:59:39,650 --> 00:59:41,480 पर और पर और पर अमल करेंगे. 1167 00:59:41,480 --> 00:59:44,640 और इस मामले में, अगर हम सिर्फ यह आपूर्ति सच के साथ, यह एक अनंत का कारण बनता है 1168 00:59:44,640 --> 00:59:49,310 पर पर गीत प्रिंट और जो लूप और हम बिना पहले के रूप में वांछित पर 1169 00:59:49,310 --> 00:59:52,410 एक अनंत है कि एक कार्यक्रम होने printf बयान की संख्या, जो है 1170 00:59:52,410 --> 00:59:55,220 संभव नहीं. 1171 00:59:55,220 --> 00:59:57,810 >> इसलिए अधिक compellingly, हालांकि, आप एक साथ इस का उपयोग कर सकते हैं 1172 00:59:57,810 --> 00:59:59,710 चर और एक शर्त. 1173 00:59:59,710 --> 01:00:04,420 तो चलिए हम दोहराना चाहते हैं हम कहते हैं पूरी तरह दीवाना वाक्यांश,, 10 बार. 1174 01:00:04,420 --> 01:00:08,380 तो क्या आप एक समय पाश के साथ कर सकते है जब आप पहली बार एक काउंटर प्रारंभ कर सकते हैं 1175 01:00:08,380 --> 01:00:10,860 के चर बाहर 10 के पाश है. 1176 01:00:10,860 --> 01:00:14,360 और फिर असल में, हर बार तुम जाओ जबकि पाश के माध्यम से, तुम बाहर प्रिंट 1177 01:00:14,360 --> 01:00:19,090 फिर बयान और आप कमी काउंटर चर अंत में जब तक, 1178 01:00:19,090 --> 01:00:23,020 कुछ बिंदु पर, एक बार हम पर्याप्त मैं घटाना टाइम्स, 1 मैं काफी समय से - 1179 01:00:23,020 --> 01:00:27,290 और बस, मैं शून्य शून्य से स्पष्ट करने के लिए मैं शून्य से 1 मैं बराबर होती है इसका मतलब है. 1180 01:00:27,290 --> 01:00:31,280 >> वह मूल रूप से करने के लिए मैं नीचे लाना होगा एक बार मैं शून्य मारा बिंदु है, जहां इस 1181 01:00:31,280 --> 01:00:35,260 शर्त सही नहीं रह गया है और इसलिए यह लूप के बाहर से बाहर निकालता है. 1182 01:00:35,260 --> 01:00:37,045 तो पूरी तरह दीवाना केवल 10 बार मुद्रित करता है. 1183 01:00:37,045 --> 01:00:39,550 1184 01:00:39,550 --> 01:00:41,080 एक समय पाश के बारे में कोई सवाल? 1185 01:00:41,080 --> 01:00:44,580 1186 01:00:44,580 --> 01:00:46,790 ठीक है. 1187 01:00:46,790 --> 01:00:50,550 >> तो हम क्या कर सकते हैं एक तरीका है कि हम क्या बस एक और अधिक संक्षिप्त तरीके के साथ किया था 1188 01:00:50,550 --> 01:00:51,715 हम एक पाश के लिए क्या कहते हैं. 1189 01:00:51,715 --> 01:00:55,750 तो एक के लिए पाश एक के होते हैं आरंभीकरण, एक शर्त है, और एक 1190 01:00:55,750 --> 01:00:58,950 हम पहले था, बस की तरह अद्यतन, इस समय पाश में. 1191 01:00:58,950 --> 01:00:59,890 तो चलिए एक नजर डालते हैं. 1192 01:00:59,890 --> 01:01:02,900 इस समय पाश में, हम एक था आरंभीकरण, तो हम एक था 1193 01:01:02,900 --> 01:01:04,260 हम जाँच की कि हालत. 1194 01:01:04,260 --> 01:01:06,450 और फिर हम एक अद्यतन था शीर्ष पर कदम. 1195 01:01:06,450 --> 01:01:10,060 >> एक के लिए पाश के साथ, यह मूल रूप से लेता है इन तीन बातों और यह condenses 1196 01:01:10,060 --> 01:01:11,370 नीचे एक लाइन में. 1197 01:01:11,370 --> 01:01:15,130 इसमें इतना है कि पहली बात पाश के लिए आरंभीकरण है. 1198 01:01:15,130 --> 01:01:19,090 और फिर तुम तो एक अर्धविराम करते हैं, और आपको मैं जो हालत है, करना 1199 01:01:19,090 --> 01:01:22,200 शून्य से अधिक, वहाँ पर चला जाता है और उसके बाद अद्यतन कदम. 1200 01:01:22,200 --> 01:01:26,470 तो इस पर प्रदर्शन किया जाता है पाश शरीर के बहुत अंत. 1201 01:01:26,470 --> 01:01:28,790 तो इन दो कार्यक्रमों रहे हैं अनिवार्य रूप से बराबर. 1202 01:01:28,790 --> 01:01:31,960 1203 01:01:31,960 --> 01:01:33,870 >> कोई सवाल? 1204 01:01:33,870 --> 01:01:37,000 एक तो क्या फर्क पड़ता है इन दोनों के बीच? 1205 01:01:37,000 --> 01:01:38,000 किसी को भी यह बात बाहर कर सकते हैं? 1206 01:01:38,000 --> 01:01:40,480 यह थोड़ा सूक्ष्म हो सकता है. 1207 01:01:40,480 --> 01:01:41,930 यह सिर्फ एक बहुत छोटा सा फर्क है. 1208 01:01:41,930 --> 01:01:42,330 हाँ? 1209 01:01:42,330 --> 01:01:49,008 >> स्पीकर 5: आप का उपयोग करने में सक्षम नहीं होगा के लिए लूप के बाहर मैं चर 1210 01:01:49,008 --> 01:01:49,962 [सुनाई]? 1211 01:01:49,962 --> 01:01:50,900 >> यूसुफ: बिल्कुल है. 1212 01:01:50,900 --> 01:01:53,550 तो यह है कि हम करने के लिए मिल जाएगा कुछ है बाद में चर गुंजाइश बुलाया. 1213 01:01:53,550 --> 01:01:56,610 लेकिन अनिवार्य रूप से, यह मैं जीवन int इस समय पाश के बाहर. 1214 01:01:56,610 --> 01:01:59,800 तो एक बार इस समय पाश किया जाता है क्रियान्वित करने, मैं बाद में मैं का उपयोग करने में सक्षम हो जाएगा 1215 01:01:59,800 --> 01:02:00,880 कार्यक्रम में पर. 1216 01:02:00,880 --> 01:02:05,430 >> जबकि इस के साथ पाश के लिए, यह int i पाश के लिए इस के अंदर scoped है. 1217 01:02:05,430 --> 01:02:10,240 और यह इस भाग के अंदर है क्योंकि के लिए लूप की, कि शुरू होता है 1218 01:02:10,240 --> 01:02:13,200 साथ कोष्ठक और सिरों पर वहाँ पर घुंघराले ब्रेस. 1219 01:02:13,200 --> 01:02:16,120 के अंदर घोषित कुछ भी है कि यहाँ बाहर नहीं किया जा सकता. 1220 01:02:16,120 --> 01:02:20,420 मैं बाहर मैं का उपयोग करने का प्रयास करते हैं तो, यह हूँ , अघोषित प्रतीक मुझे बताओ. 1221 01:02:20,420 --> 01:02:22,420 और अनिवार्य रूप से, मैं नहीं होता इसका इस्तेमाल करने में सक्षम हो. 1222 01:02:22,420 --> 01:02:28,460 >> आरओबी: और अच्छी तरह से 10 साल पहले, में सचमुच सभी मामलों, घुंघराले ब्रेसिज़ हैं 1223 01:02:28,460 --> 01:02:31,140 आप निर्धारित किया क्या एक चर के दायरे. 1224 01:02:31,140 --> 01:02:37,240 तो वहीं, मैं 10 के बराबर है int इस के अंदर घोषित किया जाता है 1225 01:02:37,240 --> 01:02:38,520 घुंघराले ब्रेसिज़ का सेट. 1226 01:02:38,520 --> 01:02:42,530 और यदि ऐसा है तो जब तक आप मैं का उपयोग करने की कोशिश के रूप में इस घुंघराले ब्रेस से पहले, यह ठीक है. 1227 01:02:42,530 --> 01:02:47,090 1228 01:02:47,090 --> 01:02:51,460 आप कर टाइप करते समय, आप देख सकते हैं डैश, डैश, एसटीडी, के बराबर होती है, C99 देखें. 1229 01:02:51,460 --> 01:02:57,100 >> तो यह है कि सी के बाद के संस्करण है कि जीसीसी भी देता है कि लागू किया गया है 1230 01:02:57,100 --> 01:02:58,740 इस शॉर्टकट. 1231 01:02:58,740 --> 01:03:03,505 इसलिए इस सी में अनुमति नहीं दी जानी करने के लिए इस्तेमाल किया और आप देख सकते हैं क्यों, क्योंकि इस INT 1232 01:03:03,505 --> 01:03:07,600 मैं इस घुंघराले ब्रेस के बाहर है लेकिन यह अभी भी में माना जाता है 1233 01:03:07,600 --> 01:03:09,750 इन घुंघराले ब्रेसिज़ के दायरे. 1234 01:03:09,750 --> 01:03:14,120 लेकिन यह एक बहुत ही सुविधाजनक बात है, और इसलिए यह एक अच्छा विस्तार है. 1235 01:03:14,120 --> 01:03:15,370 >> यूसुफ: कोई सवाल? 1236 01:03:15,370 --> 01:03:17,550 1237 01:03:17,550 --> 01:03:19,260 ठीक है. 1238 01:03:19,260 --> 01:03:22,820 तो क्या और अधिक उपयोगी है है कि कभी कभी आप गतिशीलता की तरह चाहते हैं 1239 01:03:22,820 --> 01:03:23,410 अपने पाश, सही? 1240 01:03:23,410 --> 01:03:26,350 तुम सिर्फ जरूरी मुद्रित नहीं करना चाहती पूरी तरह से हर समय दीवाना, तुम 1241 01:03:26,350 --> 01:03:28,650 से नीचे की गणना करना चाहते 10 या कुछ और. 1242 01:03:28,650 --> 01:03:32,010 और तो आप काउंटर चर का उपयोग कर सकते हैं उस लूप के अंदर के रूप में अच्छी तरह से. 1243 01:03:32,010 --> 01:03:35,530 और इस मामले में, इस कार्यक्रम बस नीचे सभी तरह से नीचे 10 से गिना जाता है. 1244 01:03:35,530 --> 01:03:39,260 और यह क्या मुद्रित नहीं करता है? 1245 01:03:39,260 --> 01:03:42,790 यह शून्य मुद्रित नहीं करता, ठीक है, क्योंकि जब - 1246 01:03:42,790 --> 01:03:45,460 हाँ, यह भी 11 मुद्रित नहीं करता. 1247 01:03:45,460 --> 01:03:49,200 >> तो यह शून्य मुद्रित नहीं करता क्योंकि जब मैं शून्य है, यह मूल्यांकन करता है, याद 1248 01:03:49,200 --> 01:03:52,170 उस पर चला जाता है से पहले शर्त पाश शरीर पर अमल करने की. 1249 01:03:52,170 --> 01:03:56,820 मैं शून्य है और जब यह ऐसा है, तो गलत है यह नीचे की गिनती बाहर मुद्रित नहीं करता 1250 01:03:56,820 --> 01:04:00,200 शून्य, यह सिर्फ गिनती प्रिंट 1 करने के लिए सभी तरह से नीचे 10 नीचे. 1251 01:04:00,200 --> 01:04:03,420 हम वास्तव में यह शून्य मुद्रित करने के लिए चाहता था, तो तो हम एक बराबर चिह्न रखा जाएगा 1252 01:04:03,420 --> 01:04:04,750 साइन तुलना में यह अधिक से अधिक के बाद. 1253 01:04:04,750 --> 01:04:09,400 1254 01:04:09,400 --> 01:04:10,130 ठीक है. 1255 01:04:10,130 --> 01:04:16,410 >> इनपुट सत्यापन ऐसा करने के लिए एक ही रास्ता है, जो तुम क्या करने के लिए उपयोगकर्ता पूछने जब है 1256 01:04:16,410 --> 01:04:18,620 कुछ, आप यकीन है कि वे बनाना चाहते अपने निर्देशों का पालन करें, उपयोग करने के लिए है 1257 01:04:18,620 --> 01:04:19,400 जबकि पाश, सही? 1258 01:04:19,400 --> 01:04:22,990 इसलिए इस विशेष मामले में, मैं पूछ रहा हूँ एक सकारात्मक संख्या के लिए और फिर मैं हूँ 1259 01:04:22,990 --> 01:04:23,810 इनपुट के लिए प्रतीक्षारत. 1260 01:04:23,810 --> 01:04:28,210 >> इनपुट है और फिर मैं जाँच शून्य से कम है, उन्हें पूछते रहते हैं. 1261 01:04:28,210 --> 01:04:32,100 तो जब तक वे मुझे एक नंबर दे रूप कि सकारात्मक नहीं है, पूछते रहते हैं, 1262 01:04:32,100 --> 01:04:33,600 पूछते रहते हैं, पूछते रहते हैं. 1263 01:04:33,600 --> 01:04:35,860 लेकिन एक तरह से अजीब इस बारे में क्या है? 1264 01:04:35,860 --> 01:04:38,570 या फिर क्या बारे में इष्टतम प्रतीत नहीं होता यहीं इस संरचना? 1265 01:04:38,570 --> 01:04:44,282 1266 01:04:44,282 --> 01:04:44,758 कोई है? 1267 01:04:44,758 --> 01:04:45,234 हाँ? 1268 01:04:45,234 --> 01:04:47,614 >> अध्यक्ष 6: आप दोहरा रहे हैं अनुदेश दो बार. 1269 01:04:47,614 --> 01:04:48,100 >> यूसुफ: ठीक है. 1270 01:04:48,100 --> 01:04:50,090 इसलिए हम दो printf बयान यहाँ, सही? 1271 01:04:50,090 --> 01:04:53,440 तो हम सिर्फ यह मिल सकता है एक तरीका है करना होगा कि एक करने के लिए नीचे हमारी 1272 01:04:53,440 --> 01:04:57,170 कोड आसान पढ़ने के लिए और एक को थोड़ा और अधिक साफ. 1273 01:04:57,170 --> 01:05:00,180 और फिर हम नहीं होता साथ ही दो बार में मिलता है. 1274 01:05:00,180 --> 01:05:03,740 और अगर आप ऐसा कर सकते हैं एक ही रास्ता है एक मत का समय पाश का उपयोग करके. 1275 01:05:03,740 --> 01:05:07,670 >> और एक मत का समय पाश मूल रूप से एक एक समय पाश के विभिन्न प्रपत्र जहां 1276 01:05:07,670 --> 01:05:11,460 घुंघराले ब्रेसिज़ के भीतर जो कुछ भी है कम से कम एक बार मार डाला जाता है. 1277 01:05:11,460 --> 01:05:14,840 तो यहाँ में, मैं घोषणा, INT इनपुट, के बाहर पहले. 1278 01:05:14,840 --> 01:05:18,100 और फिर मैं सिर्फ यह करना है, कहना अनुदेश जबकि इनपुट 1279 01:05:18,100 --> 01:05:19,140 शून्य से भी कम है. 1280 01:05:19,140 --> 01:05:20,530 तो यह पहले क्या हिट. 1281 01:05:20,530 --> 01:05:24,190 यह हमेशा कम से कम इस पर अमल करेंगे एक बार, तो यह हमेशा के लिए उपयोगकर्ता पूछेंगे 1282 01:05:24,190 --> 01:05:25,960 कम से कम एक बार निवेश के लिए. 1283 01:05:25,960 --> 01:05:29,390 और फिर यह है कि निवेश का मूल्यांकन करता है, और यह एक चक्र में चला जाता है. 1284 01:05:29,390 --> 01:05:30,135 हाँ, सवाल? 1285 01:05:30,135 --> 01:05:32,602 >> अध्यक्ष 6: यह करने के लिए एक रास्ता है [सुनाई] प्रकार, अगर आप कहते हैं की तरह, 1286 01:05:32,602 --> 01:05:34,268 GetString, और किसी [सुनाई] 1287 01:05:34,268 --> 01:05:35,220 [सुनाई] के लिए एक रास्ता है 1288 01:05:35,220 --> 01:05:40,060 >> यूसुफ: तो, वहाँ एक सवाल है इनपुट सत्यापन करने का तरीका अगर उपयोगकर्ता 1289 01:05:40,060 --> 01:05:41,850 सही में डाल नहीं है चर के प्रकार? 1290 01:05:41,850 --> 01:05:44,460 हम एक पूर्णांक के लिए पूछना है और यदि ऐसा है तो वे बजाय हमें एक स्ट्रिंग दे. 1291 01:05:44,460 --> 01:05:49,110 और हम कार्यान्वित कार्यों में आप के लिए, GetInt, सभी में GetString 1292 01:05:49,110 --> 01:05:52,680 उन कार्यों, वे वास्तव में पहले से ही बुनियादी प्रकार इनपुट की है कि ऐसा 1293 01:05:52,680 --> 01:05:54,120 हुड के तहत मान्यता. 1294 01:05:54,120 --> 01:05:57,390 तो आप कार्यों का उपयोग कर रहे हैं कि हम जो दिया, क्या तुम सच में की जरूरत नहीं है. 1295 01:05:57,390 --> 01:06:01,380 >> लेकिन तुम कैसे में और अधिक देखने के लिए चाहते हैं आप वास्तव में ऐसा कर सकते हैं, आप देख सकते हैं 1296 01:06:01,380 --> 01:06:03,360 फाइल पर हुड के तहत I/O-- 1297 01:06:03,360 --> 01:06:07,990 मानक मैं / हे कार्यों, फाइल नहीं जैसे एक मानक इनपुट से पढ़ने और 1298 01:06:07,990 --> 01:06:08,580 मानक उत्पादन. 1299 01:06:08,580 --> 01:06:10,630 और आप एक बेहतर समझ प्राप्त कर सकते हैं कैसे की आप ऐसा कर सकते हैं. 1300 01:06:10,630 --> 01:06:13,670 >> आरओबी: एक मुद्दा है, हालांकि, विशेष रूप से है उदाहरण के साथ आप 1301 01:06:13,670 --> 01:06:17,070 कहा, आप एक स्ट्रिंग की उम्मीद और मैं एक पूर्णांक दर्ज करें. 1302 01:06:17,070 --> 01:06:20,110 आप कैसे फर्क बताना होगा जानबूझकर चाहने के बीच 1303 01:06:20,110 --> 01:06:23,130 INT 123 चाहने बनाम स्ट्रिंग 123? 1304 01:06:23,130 --> 01:06:29,230 तो स्ट्रिंग, यह बहुत ज्यादा नहीं है वहाँ है सत्यापन, यह सिर्फ वे जो कुछ भी 1305 01:06:29,230 --> 01:06:31,600 आप व्याख्या करेगा प्रवेश किया एक स्ट्रिंग के रूप में. 1306 01:06:31,600 --> 01:06:35,790 >> इंटरनैशनल, आसान है, कोई बात नहीं क्योंकि आप उपयोगकर्ता से ले इनपुट, आप कर रहे हैं 1307 01:06:35,790 --> 01:06:37,470 हमेशा एक स्ट्रिंग ले रही है. 1308 01:06:37,470 --> 01:06:40,650 और इतना है कि स्ट्रिंग आप फिर से कर सकते हैं जाँच, इन सब कर रहे हैं 1309 01:06:40,650 --> 01:06:44,218 वास्तव में संख्यात्मक अंक? 1310 01:06:44,218 --> 01:06:45,170 >> यूसुफ: ठीक है. 1311 01:06:45,170 --> 01:06:46,420 एक मत का समय पाश के बारे में कोई सवाल? 1312 01:06:46,420 --> 01:06:49,170 >> आरओबी: ओह, और यह भी है - 1313 01:06:49,170 --> 01:06:55,130 गुंजाइश के लिए वापस जा रहा, कुछ हद तक एक आम गलती कुछ स्थानीय उपयोग करने के लिए कोशिश कर रहा है 1314 01:06:55,130 --> 01:06:59,540 इस मत का जबकि भीतर से चर इस शर्त के अंदर पाश. 1315 01:06:59,540 --> 01:07:02,850 और वास्तव में, हम सिर्फ से छुटकारा मिल गया है अगर इस और int इनपुट के बराबर होती है, कहा 1316 01:07:02,850 --> 01:07:06,990 GetInt, तो संकलक पर चिल्लाना होगा हमें, इनपुट मौजूद नहीं है क्योंकि 1317 01:07:06,990 --> 01:07:08,900 के दायरे से बाहर इन घुंघराले ब्रेसिज़. 1318 01:07:08,900 --> 01:07:10,792 >> यूसुफ: और यही कारण है कि हम यहाँ इस लाइनअप की जरूरत है. 1319 01:07:10,792 --> 01:07:13,620 1320 01:07:13,620 --> 01:07:14,630 ठीक है. 1321 01:07:14,630 --> 01:07:17,530 तो आप भी एक के बाहर तोड़ सकते हैं पाश जल्दी यदि आप चाहते हैं. 1322 01:07:17,530 --> 01:07:21,240 तो यह एक अलग तरह का है हम सिर्फ कार्यान्वित क्या लागू करने. 1323 01:07:21,240 --> 01:07:24,340 और बदले शर्त का उपयोग करने का कोष्ठकों के भीतर, हम एक प्रयोग कर रहे हैं 1324 01:07:24,340 --> 01:07:26,920 यदि शरीर के अंदर बयान मत का समय पाश की. 1325 01:07:26,920 --> 01:07:30,000 >> और असल में, जब इनपुट अंत में है शून्य से अधिक है, हम करेंगे 1326 01:07:30,000 --> 01:07:31,000 लूप के बाहर तोड़. 1327 01:07:31,000 --> 01:07:33,420 और इसलिए हम सभी को जाना होगा यहाँ नीचे रास्ता. 1328 01:07:33,420 --> 01:07:37,920 और आप देख सकते हैं कि यह होगा शायद इस में पसंद किया 1329 01:07:37,920 --> 01:07:39,870 यह एक छोटी सी के परिदृश्य, क्योंकि थोड़ा क्लीनर और एक छोटे से 1330 01:07:39,870 --> 01:07:41,380 पढ़ने में आसान सा. 1331 01:07:41,380 --> 01:07:45,210 इस जबकि, आप की तरह इसमें अतिरिक्त लाइनें है. 1332 01:07:45,210 --> 01:07:47,890 यह सिर्फ एक छोटा सा भद्दा है मैं एक अर्थ में, लगता है. 1333 01:07:47,890 --> 01:07:48,530 हाँ, सवाल? 1334 01:07:48,530 --> 01:07:52,178 >> अध्यक्ष 4: मिल ही तोड़ दोगे ब्रेसिज़ के एक सेट से बाहर? 1335 01:07:52,178 --> 01:07:53,080 >> यूसुफ: ठीक है. 1336 01:07:53,080 --> 01:07:58,100 तो सवाल ही टूट जाएगा है आप एक पाश से बाहर निकलने? 1337 01:07:58,100 --> 01:07:59,280 और इसका जवाब हां में है. 1338 01:07:59,280 --> 01:08:04,290 तो क्या आप के लिए, loops के लिए नेस्ट किया है उदाहरण के लिए, मैं int के लिए है, तो मैं 0 के बराबर होती है 1339 01:08:04,290 --> 01:08:09,040 जम्मू 0 के बराबर होती है 10 और फिर int के लिए जब तक 10 तक, मैं भीतर से बाहर तोड़ 1340 01:08:09,040 --> 01:08:12,310 पाश, मैं अभी जाना होगा बाहरी पाश के लिए. 1341 01:08:12,310 --> 01:08:15,760 तो यह प्रदर्शन रखेंगे बाहर पर कार्रवाई. 1342 01:08:15,760 --> 01:08:17,640 उस के बारे में कोई सवाल? 1343 01:08:17,640 --> 01:08:18,000 हाँ? 1344 01:08:18,000 --> 01:08:21,760 >> स्पीकर 5: लेकिन केवल कार्यों तोड़ घुंघराले ब्रेसिज़ के लिए, नहीं अन्य के लिए 1345 01:08:21,760 --> 01:08:22,230 बयान? 1346 01:08:22,230 --> 01:08:22,700 [सुनाई] 1347 01:08:22,700 --> 01:08:27,620 >> यूसुफ: तो सवाल टूट जाएगा है विरोध के रूप में छोरों के लिए केवल समारोह 1348 01:08:27,620 --> 01:08:29,014 जैसे कि अगर अन्य बयान? 1349 01:08:29,014 --> 01:08:32,950 और हाँ, कि मामला है, क्योंकि अगर आप सही, एक पाश से बाहर तोड़ रहे हो 1350 01:08:32,950 --> 01:08:33,630 एक अर्थ में. 1351 01:08:33,630 --> 01:08:37,215 >> रोब: अधिकांश मामलों में, यह है यदि यह कुछ की तरह है, 1352 01:08:37,215 --> 01:08:37,660 फिर टूट गया. 1353 01:08:37,660 --> 01:08:41,580 तो आप को लागू करने के लिए तोड़ने के लिए नहीं है इसके चारों ओर लपेटकर है कि अगर. 1354 01:08:41,580 --> 01:08:45,250 और भी, यह एक पाश के लिए काफी नहीं है, लेकिन स्विच भी कर रहे हैं याद 1355 01:08:45,250 --> 01:08:46,340 टूटता द्वारा की बाहर टूट. 1356 01:08:46,340 --> 01:08:48,390 हम टूटता इस्तेमाल किया जा रहा देखा पहले स्विच के साथ. 1357 01:08:48,390 --> 01:08:52,189 >> यूसुफ: और तुम भी उन का उपयोग कर सकते हैं जबकि छोरों में और loops के लिए. 1358 01:08:52,189 --> 01:08:54,560 कोई सवाल? 1359 01:08:54,560 --> 01:08:55,830 ठीक है. 1360 01:08:55,830 --> 01:08:57,779 तो अगले कार्य है. 1361 01:08:57,779 --> 01:09:01,500 तो आप इन BYOB में से एक का इस्तेमाल किया गया हो सकता है अपने खरोंच परियोजना में ब्लॉकों. 1362 01:09:01,500 --> 01:09:04,569 और यह मूल रूप से अनुमति देता है आप एक सेट की परिभाषित करने के लिए 1363 01:09:04,569 --> 01:09:05,680 पीछा किया जाना निर्देश. 1364 01:09:05,680 --> 01:09:09,569 >> और मैं उस से क्या मतलब है चलो लगता है वापस गणित के लिए, सही, बीजगणित. 1365 01:09:09,569 --> 01:09:13,370 आप हम एक्स के एक समारोह में क्या कहते है, कुछ चर, और के यह कहने दो. 1366 01:09:13,370 --> 01:09:16,080 समारोह एक्स के एफ है एक्स के बराबर होती प्लस 5. 1367 01:09:16,080 --> 01:09:20,410 तो अगर आप इस काली के रूप में एक्स के एफ के बारे में सोच सकते हैं फिर में 15 लेता है और उस बॉक्स 1368 01:09:20,410 --> 01:09:22,590 20 पैदा करता है. 1369 01:09:22,590 --> 01:09:26,630 >> इसलिए अधिक आम तौर पर, एक समारोह है कुछ जानकारी और ले जाता है कि कुछ 1370 01:09:26,630 --> 01:09:27,880 फिर कुछ outputs पैदा करता है. 1371 01:09:27,880 --> 01:09:31,920 1372 01:09:31,920 --> 01:09:32,960 और क्यों कार्यों अच्छा कर रहे हैं? 1373 01:09:32,960 --> 01:09:35,189 वे कारणों की एक संख्या के लिए अच्छा कर रहे हैं. 1374 01:09:35,189 --> 01:09:40,470 इसलिए किसी एक चाकू ले जाना चाहता है इसका मतलब क्या संगठन पर? 1375 01:09:40,470 --> 01:09:42,630 क्यों कार्यों के संदर्भ में सहायक होते हैं? 1376 01:09:42,630 --> 01:09:43,090 हाँ? 1377 01:09:43,090 --> 01:09:44,735 >> अध्यक्ष 4: यह बनाता है अपने कोड और अधिक पठनीय. 1378 01:09:44,735 --> 01:09:45,399 >> यूसुफ: ठीक है. 1379 01:09:45,399 --> 01:09:47,670 तो बातों में से एक यह बनाता है अपने कोड और अधिक पठनीय, सही? 1380 01:09:47,670 --> 01:09:53,710 इसके बजाय int की तरह होने की एक्स एक्स के बराबर होती है बार एक्स बार एक्स, मैं एक्स के घन हो सकता है 1381 01:09:53,710 --> 01:09:57,190 अधिक पठनीय और अधिक है जो एक पाठक के लिए समझ में आता है. 1382 01:09:57,190 --> 01:10:01,150 >> संगठन के मामले में भी है प्रबंधनीय में अपने कोड तेज 1383 01:10:01,150 --> 01:10:05,610 अंश, इतना है कि बजाय करने की कोशिश की सब एक लंबे खंड में यह लागू 1384 01:10:05,610 --> 01:10:09,070 मुख्य में, आप की तरह इसे विभाजित कर सकते हैं जैसे में, ठीक है, चलो एक समारोह लिखने 1385 01:10:09,070 --> 01:10:11,910 कुछ घन के लिए, के लिखने एक कुछ वर्ग के लिए कार्य करते हैं. 1386 01:10:11,910 --> 01:10:15,950 आप छोटे में विभाजित कर सकते हैं, आप हल कर सकते हैं कि छोटे भागों 1387 01:10:15,950 --> 01:10:18,944 से निपटने की कोशिश कर के रूप में विरोध सभी को एक बार में एक बड़ी समस्या है. 1388 01:10:18,944 --> 01:10:21,806 >> आरओबी: या यहां तक ​​कि छोटे, छोटे भागों कि आप और एक साथी निपटने कर सकते हैं. 1389 01:10:21,806 --> 01:10:22,283 >> यूसुफ: हाँ. 1390 01:10:22,283 --> 01:10:23,855 >> आरओबी: तो दोनों के बजाय का आप एक प्रत्यारोपण करने के लिए कोशिश कर रहा 1391 01:10:23,855 --> 01:10:27,170 एक ही समय में कार्य करते हैं. 1392 01:10:27,170 --> 01:10:28,800 >> यूसुफ: सरलीकरण. 1393 01:10:28,800 --> 01:10:30,050 किसी को भी एक अनुमान ले करना चाहते हैं? 1394 01:10:30,050 --> 01:10:33,080 1395 01:10:33,080 --> 01:10:33,410 हाँ? 1396 01:10:33,410 --> 01:10:34,675 >> स्पीकर 5: और अधिक पुनरावृत्ति. 1397 01:10:34,675 --> 01:10:35,260 >> यूसुफ: ठीक है. 1398 01:10:35,260 --> 01:10:39,210 आप के साथ ऐसा कर सकते हैं तो एक बात सरलीकरण यह की तरह पर है कि है 1399 01:10:39,210 --> 01:10:42,520 पुन: प्रयोज्य के रूप में एक ही लाइनों है कि मैं एक घन समारोह लिखना एक बार, मैं कर सकता हूँ 1400 01:10:42,520 --> 01:10:45,410 बस का उपयोग करने वाले और अधिक से अधिक और अधिक फिर बजाय टाइपिंग के अपने कार्यक्रम में 1401 01:10:45,410 --> 01:10:49,610 एक्स बार एक्स बार एक्स से अधिक और पर और फिर से. 1402 01:10:49,610 --> 01:10:52,980 और सरलीकरण यहां भी बस यह अपने कोड की तरह बना देता है इसका मतलब 1403 01:10:52,980 --> 01:10:55,900 आप विभाजित एक बार आसान डिबग करने के लिए कार्यों में यह ऊपर. 1404 01:10:55,900 --> 01:10:58,250 तो आप जहां स्थानीयकरण कर सकते हैं क्योंकि अपनी समस्याओं की तरह हैं. 1405 01:10:58,250 --> 01:11:00,910 1406 01:11:00,910 --> 01:11:02,160 कोई सवाल? 1407 01:11:02,160 --> 01:11:04,200 1408 01:11:04,200 --> 01:11:06,540 >> तो एक और विचार सही, अमूर्त है? 1409 01:11:06,540 --> 01:11:07,390 इस ब्लैक बॉक्स. 1410 01:11:07,390 --> 01:11:11,360 जैसे कि अगर आप GetInt करता है क्या जानते हो उपयोगकर्ता से इनपुट प्राप्त करने के लिए? 1411 01:11:11,360 --> 01:11:12,510 हम वास्तव में सही कहा था, तुम नहीं किया है? 1412 01:11:12,510 --> 01:11:15,670 हम आपको बता दिया है सभी GetInt करता है यह है कहते हैं कि वास्तव में क्या. 1413 01:11:15,670 --> 01:11:18,440 हम आपको बता नहीं है तो भी अगर कैसे यह काम करता है, तो भी आप जानते हैं. 1414 01:11:18,440 --> 01:11:21,670 >> इसलिए इस विशेष मामले में, यह है करता है जो एक चौगुनी समारोह 1415 01:11:21,670 --> 01:11:24,520 एक इनपुट के लिए अलग अलग बातें एक उत्पादन का उत्पादन करने के लिए. 1416 01:11:24,520 --> 01:11:28,050 और तुम एक नंबर चौगुना कर सकते हैं यह चार से गुणा करके. 1417 01:11:28,050 --> 01:11:30,790 या फिर आप हम क्या कॉल कर सकते हैं सा दो से यह बदलाव. 1418 01:11:30,790 --> 01:11:32,960 और हम इस कवर करेंगे एक छोटा सा बाद में. 1419 01:11:32,960 --> 01:11:36,570 और पता करने की कोई जरूरत नहीं है कि यह कैसे समारोह वास्तव में यह रूप में लंबे समय के रूप में काम करता है 1420 01:11:36,570 --> 01:11:37,640 जैसा कि कहा गया काम करता है. 1421 01:11:37,640 --> 01:11:40,740 >> तो हुड के तहत, मैं हो सकता है जैसे, इनपुट बार लौटने 1422 01:11:40,740 --> 01:11:41,690 आठ दो से विभाजित. 1423 01:11:41,690 --> 01:11:42,510 और तुम सही, पता नहीं होता? 1424 01:11:42,510 --> 01:11:44,970 आपको पता है की जरूरत है यह यह क्या कहता है. 1425 01:11:44,970 --> 01:11:48,070 इसलिए कि उपयोगी बात है अमूर्त के बारे में. 1426 01:11:48,070 --> 01:11:52,910 >> और एक बात की तरह इस विचार है एक करने के लिए अपने कोड की स्थानीयकृत 1427 01:11:52,910 --> 01:11:54,280 विशेष खंड. 1428 01:11:54,280 --> 01:11:57,450 यदि आप एक समस्या है, तो आप नहीं करते कोशिश कर सभी अपने कोड पर जाना है 1429 01:11:57,450 --> 01:11:58,730 समस्या यह थी जहां तय करने के लिए. 1430 01:11:58,730 --> 01:12:00,990 तो इस मामले में, मैं कार्यान्वित गलत घन. 1431 01:12:00,990 --> 01:12:02,820 मैं घन गुणा रहा था तीन से. 1432 01:12:02,820 --> 01:12:05,760 >> तो इस मामले में, यह एक कार्यक्रम है कि सिर्फ तीन से गुणा किया गया है 1433 01:12:05,760 --> 01:12:06,750 हर जगह. 1434 01:12:06,750 --> 01:12:10,910 और है कि एक और कार्यक्रम नहीं है बाहर एक समारोह में सकारात्मक असर घन. 1435 01:12:10,910 --> 01:12:14,040 और इसलिए अब मैं अपनी गलती को ठीक करना चाहते हैं यहां, मैं हर एक लाइन ठीक करने के लिए है 1436 01:12:14,040 --> 01:12:15,620 इस कार्यक्रम में कोड की. 1437 01:12:15,620 --> 01:12:19,190 जबकि दूसरी ओर, अगर मैं इस्तेमाल समारोह, मैं ही बदलने की जरूरत 1438 01:12:19,190 --> 01:12:20,650 क्या एक ही स्थान में गलत था. 1439 01:12:20,650 --> 01:12:25,330 1440 01:12:25,330 --> 01:12:28,730 >> तो कंप्यूटर विज्ञान के क्षेत्र में, हम इनपुट और आउटपुट कहते हैं. 1441 01:12:28,730 --> 01:12:31,640 आदानों पैरामीटर कहा जाता है या कर रहे हैं तर्क, और outputs कहा जाता है 1442 01:12:31,640 --> 01:12:32,950 मान देते हैं. 1443 01:12:32,950 --> 01:12:39,000 और हम इस तरह की मदद करता है हमें कैसे देखेंगे के एक दूसरे में एक समारोह को परिभाषित. 1444 01:12:39,000 --> 01:12:41,430 तो यह एक समारोह परिभाषा है cubing के लिए. 1445 01:12:41,430 --> 01:12:45,110 तो यह तो एक इनपुट लेता है, और यह देता है कि संख्या बार 1446 01:12:45,110 --> 01:12:47,020 खुद तीन बार. 1447 01:12:47,020 --> 01:12:48,020 तो चलो इस टूट. 1448 01:12:48,020 --> 01:12:53,090 >> तो हम एक समारोह शीर्षक है जो मूल रूप से तीन चीजों के होते हैं. 1449 01:12:53,090 --> 01:12:56,050 तो हम, पैरामीटर है जो जैसा कि मैंने पहले कहा था, कर रहे हैं, 1450 01:12:56,050 --> 01:12:57,680 इस समारोह में आदानों. 1451 01:12:57,680 --> 01:12:59,300 और फिर हम समारोह एक नाम दे. 1452 01:12:59,300 --> 01:13:00,740 इस मामले में, यह क्यूब कहा जाता है. 1453 01:13:00,740 --> 01:13:03,860 और फिर हम किस प्रकार निर्दिष्ट की मान है. 1454 01:13:03,860 --> 01:13:06,760 >> तो इस मामले में, मेरे क्यूब समारोह एक पूर्णांक में ले जाता है और यह भी 1455 01:13:06,760 --> 01:13:07,890 एक पूर्णांक देता है. 1456 01:13:07,890 --> 01:13:11,510 मैं दो में पारित तो, अगर दो, एक पूर्णांक है यह मेरे लिए आठ जो रिटर्न 1457 01:13:11,510 --> 01:13:13,250 एक पूर्णांक है. 1458 01:13:13,250 --> 01:13:15,420 तो प्रकार का नाम मापदंडों वापसी. 1459 01:13:15,420 --> 01:13:16,670 उस के बारे में प्रश्न? 1460 01:13:16,670 --> 01:13:19,440 1461 01:13:19,440 --> 01:13:24,230 >> और फिर वापस मूल्य वास्तव में है वापसी कह कर अंत में निर्दिष्ट 1462 01:13:24,230 --> 01:13:27,540 और फिर लौटने के लिए जो कुछ भी वापसी मान होता है. 1463 01:13:27,540 --> 01:13:30,940 तो इस मामले में, हम यह सब डाल एक साथ, एक समारोह में ले जाता है 1464 01:13:30,940 --> 01:13:35,100 मापदंडों, यह कुछ कहा जाता है, और है यह प्रकार है कि कुछ रिटर्न 1465 01:13:35,100 --> 01:13:36,350 हम यह होने जा रहा था कहना है कि. 1466 01:13:36,350 --> 01:13:39,830 1467 01:13:39,830 --> 01:13:41,080 कोई सवाल? 1468 01:13:41,080 --> 01:13:43,710 1469 01:13:43,710 --> 01:13:45,080 >> तो कैसे हम एक समारोह का उपयोग करते हैं? 1470 01:13:45,080 --> 01:13:49,230 खैर, हम तो एक समारोह लिखने और हम सही, हमारे कार्यक्रम में इसका इस्तेमाल करते हैं? 1471 01:13:49,230 --> 01:13:51,565 तो मैं घन यह कहा जाता है, और तो मैं घन का उपयोग कर सकते हैं. 1472 01:13:51,565 --> 01:13:54,200 >> लेकिन क्या महत्वपूर्ण है ध्यान दें इसी क्रम मामलों है. 1473 01:13:54,200 --> 01:13:58,100 मैं मुख्य नीचे घन है, तो यह बात है क्यूब में चला जा रहा. 1474 01:13:58,100 --> 01:14:00,360 और इस बिंदु पर, कुछ भी नहीं है कार्यक्रम में घन कहा जाता है, और यह बात है 1475 01:14:00,360 --> 01:14:02,550 अभी मेरे पास है, की तरह होने जा रहा पता नहीं क्या क्यूब है. 1476 01:14:02,550 --> 01:14:05,060 >> इसलिए यह अंतर्निहित, आपको बता देगा समारोह की घोषणा. 1477 01:14:05,060 --> 01:14:06,690 यही कारण है कि ऊपर से पता चलता है कि त्रुटि है. 1478 01:14:06,690 --> 01:14:10,230 और इसलिए इस मामले में, घन नीचे है मुख्य है, तो यह नहीं जा रहा है 1479 01:14:10,230 --> 01:14:12,006 इसके बारे में पता करने के लिए. 1480 01:14:12,006 --> 01:14:14,724 >> स्पीकर 5: तो मुख्य आमतौर पर है पिछले समारोह परिभाषित? 1481 01:14:14,724 --> 01:14:17,290 >> यूसुफ: तो सवाल है मुख्य आमतौर पर पिछले है 1482 01:14:17,290 --> 01:14:18,170 आप को परिभाषित करता हूं कि बात है? 1483 01:14:18,170 --> 01:14:19,730 और कोई नहीं. 1484 01:14:19,730 --> 01:14:22,280 हम आम तौर पर मुख्य पसंद है क्योंकि यह है ठीक है, शीर्ष पर होना चाहिए? 1485 01:14:22,280 --> 01:14:24,640 पहली बात है कि आप क्योंकि प्रोग्रामर खोलने चाहते हैं 1486 01:14:24,640 --> 01:14:25,640 देखने के लिए कार्यक्रम. 1487 01:14:25,640 --> 01:14:29,950 और इसलिए हम कैसे हम इस मुद्दे को हल करते हैं शीर्ष पर होना करने के लिए मुख्य चाहते हैं, लेकिन 1488 01:14:29,950 --> 01:14:33,750 हम चाहते हैं कि काम करता है, हम उन्हें चाहते हैं मुख्य नीचे होना अभी तक उपयोग करने के लिए सक्षम होने के लिए 1489 01:14:33,750 --> 01:14:34,930 मुख्य के अंदर उन्हें? 1490 01:14:34,930 --> 01:14:36,870 >> ठीक है, हम हम क्या कॉल का उपयोग एक समारोह के प्रोटोटाइप. 1491 01:14:36,870 --> 01:14:40,830 तो क्या एक समारोह प्रोटोटाइप अनिवार्य रूप यह पहली बार क्या ले जाता है 1492 01:14:40,830 --> 01:14:45,060 हस्ताक्षर या समारोह हेडर हम नीचे लागू करने के लिए क्या करना चाहते हैं 1493 01:14:45,060 --> 01:14:47,420 यहाँ, और हम पर डाल एक कार्यक्रम के ऊपर. 1494 01:14:47,420 --> 01:14:51,400 >> तो इस मामले में, हम कहते हैं कि, ठीक है, बाद में हमारे कार्यक्रम में, हम जा रहे हैं 1495 01:14:51,400 --> 01:14:55,010 इस लागू करने के लिए एक वादा करना लेता है जो INT घन बुलाया समारोह, 1496 01:14:55,010 --> 01:14:56,260 एक पूर्णांक इनपुट. 1497 01:14:56,260 --> 01:15:00,870 तो अब, कि मुख्य ऊपर है क्योंकि, मुख्य, यह कहने के लिए जा रहा है, ओह, ठीक है, 1498 01:15:00,870 --> 01:15:03,910 बाद में कार्यक्रम में, कि होने जा रहा है तो वहाँ मैं यह उल्लेख कर सकते हैं, तो मैं हूँ 1499 01:15:03,910 --> 01:15:05,230 बस यह अभी के लिए के माध्यम से चलते हैं. 1500 01:15:05,230 --> 01:15:07,660 >> और फिर नीचे, हम घन लागू. 1501 01:15:07,660 --> 01:15:11,180 और फिर मुख्य बस कहेंगे, खैर, यह कड़ी की तरह का होगा 1502 01:15:11,180 --> 01:15:12,250 एक साथ इन दो प्रतीकों. 1503 01:15:12,250 --> 01:15:14,320 और हम कवर करेंगे कि क्या पर बाद में इसका मतलब है. 1504 01:15:14,320 --> 01:15:17,090 और तो यह है कि यह पता चल जाएगा इसे इस्तेमाल करना चाहिए कि घन समारोह. 1505 01:15:17,090 --> 01:15:19,630 1506 01:15:19,630 --> 01:15:23,383 >> आरओबी [सुनाई] चाहने के बारे में नीचे या में मुख्य 1507 01:15:23,383 --> 01:15:24,880 शीर्ष, मैं दोनों को देखा है. 1508 01:15:24,880 --> 01:15:28,630 जैसे कि बातें कर रहे हैं तल पर मुख्य रख दिया. 1509 01:15:28,630 --> 01:15:32,520 लेकिन एक परियोजना विशेष रूप से हो जाता है एक बार बड़ा, आमतौर पर मुख्य एक में है 1510 01:15:32,520 --> 01:15:34,290 सभी अपनी फ़ाइल. 1511 01:15:34,290 --> 01:15:38,170 और उस समय, जैसे INT घन लाइन होगा - 1512 01:15:38,170 --> 01:15:42,460 stdio.h के अंदर एक गुच्छा रहे हैं सिर्फ इतना है कि INT तरह लाइनों की 1513 01:15:42,460 --> 01:15:44,010 घन INT इनपुट लाइन. 1514 01:15:44,010 --> 01:15:50,170 >> और इसलिए उन प्रोटोटाइप चीजें आप कर रहे हैं पर, हेडर फाइल में डाल देते हैं 1515 01:15:50,170 --> 01:15:52,140 जो बात, यह बात नहीं है. 1516 01:15:52,140 --> 01:15:54,700 खैर, यह बात नहीं है. 1517 01:15:54,700 --> 01:15:56,070 वे हमेशा शीर्ष पर जाओ. 1518 01:15:56,070 --> 01:15:59,490 और मुख्य सभी का अपना एक फ़ाइल नहीं है, तो तुम डाल के बारे में चिंता करने की ज़रूरत नहीं है 1519 01:15:59,490 --> 01:16:02,360 व्यक्तिगत समारोह प्रोटोटाइप फ़ाइल में. 1520 01:16:02,360 --> 01:16:05,370 >> यूसुफ: और हम उस एक छोटी सी के लिए मिल जाएगा थोड़ी देर बाद रोब बात कर शुरू होता है जब 1521 01:16:05,370 --> 01:16:06,380 संकलन के बारे में. 1522 01:16:06,380 --> 01:16:09,480 और इसलिए एक फर्क भी नहीं है पैरामीटर और तर्क के बीच. 1523 01:16:09,480 --> 01:16:12,500 और पैरामीटर अभी क्या है हम इन सूचनाओं जब फोन 1524 01:16:12,500 --> 01:16:13,820 हम समारोह को परिभाषित. 1525 01:16:13,820 --> 01:16:16,950 और हम एक तर्क यह कहते हैं जब हम वास्तव में समारोह में इसे पारित. 1526 01:16:16,950 --> 01:16:19,600 >> तो इस मामले में, यह एक पैरामीटर है, हम पहले कहा था. 1527 01:16:19,600 --> 01:16:24,130 और हम वास्तव में वहाँ पर इसका इस्तेमाल करते हैं, एक्स के घन, तब ही है x 1528 01:16:24,130 --> 01:16:25,910 हम एक तर्क क्या कॉल समारोह घन के लिए. 1529 01:16:25,910 --> 01:16:28,150 >> आरओबी: तो पैरामीटर के तर्क हैं - 1530 01:16:28,150 --> 01:16:33,270 इस तरह के अंतर, वहाँ बहुत दूसरे के स्थान पर उलझन में है. 1531 01:16:33,270 --> 01:16:37,090 इस बिंदु पर, मेरे लिए, यह एक की तरह है उन शब्दों है कि मैं इसे बाहर देख जब 1532 01:16:37,090 --> 01:16:41,190 जंगली, मैं तुरंत मदद नहीं कर सकते वे में यह प्रयोग कर रहे हैं कि क्या सवाल 1533 01:16:41,190 --> 01:16:44,120 सही संदर्भ, क्योंकि अंतर बहुत सूक्ष्म है कि बस 1534 01:16:44,120 --> 01:16:45,500 हर किसी के लिए जाता है - 1535 01:16:45,500 --> 01:16:48,530 मैं लगभग हमेशा तर्क कहना परवाह किए बिना मैं क्या मतलब है की. 1536 01:16:48,530 --> 01:16:51,230 1537 01:16:51,230 --> 01:16:54,630 >> यूसुफ: और कार्यों में भी उपयोगी होते हैं हम दुष्प्रभाव क्या कॉल के लिए. 1538 01:16:54,630 --> 01:16:59,230 तो एक समारोह नहीं आदानों ले सकते हैं, और यह भी कोई outputs उत्पादन कर सकते हैं. 1539 01:16:59,230 --> 01:17:03,280 इसलिए इस विशेष मामले में, मैं कर रहा हूँ कोई है जो एक उपनेमका को परिभाषित 1540 01:17:03,280 --> 01:17:03,970 मूल्य वापसी. 1541 01:17:03,970 --> 01:17:07,730 और कहा कि निर्दिष्ट करने के क्रम में, हम का उपयोग हम यहाँ पर एक शून्य क्या कहते हैं. 1542 01:17:07,730 --> 01:17:10,890 और इसलिए इस समारोह के पक्ष प्रभाव यह सिर्फ सामान है कि प्रिंट है 1543 01:17:10,890 --> 01:17:11,920 पेज के लिए बाहर. 1544 01:17:11,920 --> 01:17:13,840 यह वास्तव में किसी भी नहीं ले करता है आदानों, और यह नहीं है 1545 01:17:13,840 --> 01:17:15,360 वास्तव में किसी भी outputs उत्पादन. 1546 01:17:15,360 --> 01:17:18,230 >> लेकिन इस मायने में उपयोगी हो सकता है आप के लिए, उदाहरण के लिए, डिबग चाहते हैं 1547 01:17:18,230 --> 01:17:21,530 अपने कार्यक्रम में कुछ, अगर आप चाहते हैं एक छोटी सी उपनेमका लिखने के लिए कि 1548 01:17:21,530 --> 01:17:25,160 बाहर प्रिंट, सामग्री, हम कहते हैं स्मृति या कुछ और. 1549 01:17:25,160 --> 01:17:29,800 और इसलिए इन दुष्प्रभावों कभी कभी रहे हैं संदर्भ से बाहर उपयोगी 1550 01:17:29,800 --> 01:17:33,010 की बस इनपुट और आउटपुट पसंद है. 1551 01:17:33,010 --> 01:17:34,260 कोई सवाल? 1552 01:17:34,260 --> 01:17:37,270 1553 01:17:37,270 --> 01:17:44,240 >> और इस विशेष खंड समाप्त करने के लिए, इस कार्यक्रम क्या करता है? 1554 01:17:44,240 --> 01:17:47,420 मैं तुम लोगों के एक जोड़े के लिए दे देंगे इसके माध्यम से पढ़ने के लिए सेकंड. 1555 01:17:47,420 --> 01:17:52,720 1556 01:17:52,720 --> 01:17:56,880 एक बहुत ही बुनियादी स्तर पर, क्या हम करना चाहते हैं कहते हैं कि यह सही है, एक्स और वाई कि स्वैप है? 1557 01:17:56,880 --> 01:18:00,090 >> तो आप में से कितने वास्तव में लगता है इस एक्स और वाई स्वैप जाएगा? 1558 01:18:00,090 --> 01:18:02,160 अपने हाथ उठाओ. 1559 01:18:02,160 --> 01:18:02,760 कोई नहीं. 1560 01:18:02,760 --> 01:18:03,070 ठीक है. 1561 01:18:03,070 --> 01:18:06,720 कौन सोचता है कि यह होगा एक्स और वाई स्वैप नहीं? 1562 01:18:06,720 --> 01:18:09,120 और उस का योग था नहीं पूरे कमरे में. 1563 01:18:09,120 --> 01:18:10,440 तो कुछ लोगों को यकीन नहीं कर रहे हैं. 1564 01:18:10,440 --> 01:18:10,920 ठीक है. 1565 01:18:10,920 --> 01:18:11,630 यही उचित है. 1566 01:18:11,630 --> 01:18:16,450 >> तो चलो क्या होता है जब के माध्यम से चलते हैं आप वास्तव में पहला कार्य कॉल 1567 01:18:16,450 --> 01:18:18,320 इस सवाल का जवाब देने के लिए. 1568 01:18:18,320 --> 01:18:21,430 तो यह क्या स्मृति है तरह की तरह दिखता है. 1569 01:18:21,430 --> 01:18:23,860 इस तरह के एक सरल मॉडल की तरह है जैसे जब स्मृति लग रहा है की 1570 01:18:23,860 --> 01:18:24,800 आप एक प्रोग्राम चलाते हैं. 1571 01:18:24,800 --> 01:18:27,270 इसलिए कहा जाता है कि वहाँ कुछ यहाँ नीचे ढेर और 1572 01:18:27,270 --> 01:18:28,330 कुछ ढेर कहा जाता है. 1573 01:18:28,330 --> 01:18:30,950 और इन की ओर बढ़ने स्मृति के बीच. 1574 01:18:30,950 --> 01:18:33,860 >> इस विशेष मामले में, इसलिए जब आप एक समारोह फोन, यह 1575 01:18:33,860 --> 01:18:35,680 ढेर पर डाल दिया जाता है. 1576 01:18:35,680 --> 01:18:38,900 और फिर उस में निहित है जो कुछ भी समारोह हम चाहते हैं कि क्या फोन में रहता है 1577 01:18:38,900 --> 01:18:40,550 समारोह के ढेर फ्रेम. 1578 01:18:40,550 --> 01:18:44,500 और इसलिए एक अच्छा दृश्य के पाने के लिए यह let's - उदाहरण के लिए, हम था 1579 01:18:44,500 --> 01:18:45,960 कार्यक्रम मुख्य पहले. 1580 01:18:45,960 --> 01:18:47,820 और मुख्य के अंदर, हम घन कहा जाता है. 1581 01:18:47,820 --> 01:18:50,650 तो मुख्य पहली ढेर पर जाना होगा यह पहला समारोह है, क्योंकि फ्रेम 1582 01:18:50,650 --> 01:18:51,640 कि कहा जाता है. 1583 01:18:51,640 --> 01:18:55,740 >> और फिर घन के अंदर भी कहा जाता है जब मुख्य, यह मुख्य के शीर्ष पर डाल दिया जाता है 1584 01:18:55,740 --> 01:18:57,790 स्मृति के अंदर. 1585 01:18:57,790 --> 01:19:02,090 तो क्या आप यहाँ नोटिस हूँ कि घन है अपने स्वयं के मानकों और इसकी है 1586 01:19:02,090 --> 01:19:02,950 खुद के स्थानीय लोगों को. 1587 01:19:02,950 --> 01:19:06,720 तो आप वास्तव में करने के लिए कुछ पारित जब एक समारोह पैरामीटर कि यह 1588 01:19:06,720 --> 01:19:09,910 क्या था की प्रतियां हैं हो जाता है मुख्य से पारित कर दिया. 1589 01:19:09,910 --> 01:19:14,140 >> और की तरह यह समझाने के लिए, चलो एक कार्यक्रम के माध्यम से चलते हैं. 1590 01:19:14,140 --> 01:19:16,960 इसलिए हम ढेर है, यह है सिर्फ ढेर भाग. 1591 01:19:16,960 --> 01:19:21,240 और हम क्या हम पहले इनिशियलाइज़ है एक और दो के लिए एक्स और वाई. 1592 01:19:21,240 --> 01:19:22,400 इसलिए हम इन छोटे बक्से है. 1593 01:19:22,400 --> 01:19:25,310 वे मुख्य के ढेर में बैठे हैं ढेर पर फ्रेम. 1594 01:19:25,310 --> 01:19:26,580 वे एक और दो होते हैं. 1595 01:19:26,580 --> 01:19:28,820 >> अब हम स्वैप कहते हैं. 1596 01:19:28,820 --> 01:19:33,940 क्या होता है कि हम में एक्स और वाई गुजरती है स्वैप, और स्वैप अपनी खुद की प्रतियां बनाता है 1597 01:19:33,940 --> 01:19:36,520 उन चर के अंदर का उपयोग करने की अपने ढेर फ्रेम की. 1598 01:19:36,520 --> 01:19:39,920 तो अब खत्म हो गई है, हम एक, जो है एक्स था कि मूल्य शामिल हैं, और बी, 1599 01:19:39,920 --> 01:19:41,620 जो y था कि मूल्य में शामिल है. 1600 01:19:41,620 --> 01:19:42,670 तो एक, दो. 1601 01:19:42,670 --> 01:19:47,130 >> और तुम इस अलग है कि ध्यान देंगे मुख्य के अंदर एक्स और वाई से. 1602 01:19:47,130 --> 01:19:51,390 तो अब हम एक अस्थायी बना एक को रोकने के लिए चर. 1603 01:19:51,390 --> 01:19:56,100 हम बी को बराबर सेट है, तो यह 1-2 बदल जाता है. 1604 01:19:56,100 --> 01:19:59,340 और फिर हम बराबर बी सेट अस्थायी करने के लिए, जो एक है. 1605 01:19:59,340 --> 01:20:01,640 >> और फिर अब हम बाहर बाहर निकलें इस समारोह का. 1606 01:20:01,640 --> 01:20:04,310 1607 01:20:04,310 --> 01:20:07,410 तुम समारोह के बाहर से बाहर निकलते हैं, ढेर फ्रेम ढेर बंद popped हो जाता है. 1608 01:20:07,410 --> 01:20:08,270 हम इसे धक्का कहते हैं. 1609 01:20:08,270 --> 01:20:12,750 आप ढेर पर एक ढेर फ्रेम धक्का ढेर बंद और अगर आप पॉप. 1610 01:20:12,750 --> 01:20:16,080 और तो क्या होता है कि सब कुछ है बस की कि ढेर फ्रेम प्रकार में था 1611 01:20:16,080 --> 01:20:17,280 आग की लपटों में चला जाता है. 1612 01:20:17,280 --> 01:20:19,180 और इतना है कि अब मौजूद नहीं है. 1613 01:20:19,180 --> 01:20:20,470 >> लेकिन हम क्या सूचना है? 1614 01:20:20,470 --> 01:20:23,690 हम वास्तव में कभी नहीं बदला एक्स और वाई के मूल्यों, है ना? 1615 01:20:23,690 --> 01:20:26,530 तो उन मुख्य करने के लिए स्थानीय रुके. 1616 01:20:26,530 --> 01:20:29,900 और स्वैप में चीजों से गुजर रहा है, हम वास्तव में उन मूल्यों को कभी नहीं बदला. 1617 01:20:29,900 --> 01:20:31,260 और क्या हम इस कहते हैं? 1618 01:20:31,260 --> 01:20:33,040 हम मान से यह पारित कहते हैं. 1619 01:20:33,040 --> 01:20:36,860 >> तो सी में, आप में बातें पारित जब काम करता है, यह मूल्य द्वारा उन्हें गुजरता है और 1620 01:20:36,860 --> 01:20:40,160 के लिए उनमें से एक प्रतिलिपि बनाता है उपयोग करने के लिए कार्य करते हैं. 1621 01:20:40,160 --> 01:20:43,980 और हम बुलाया कुछ के बारे में सीखना होगा बाद में संदर्भ से गुजर रहा है, लेकिन है कि 1622 01:20:43,980 --> 01:20:45,390 आप इस समस्या को हल कर सकते हैं एक तरीका है. 1623 01:20:45,390 --> 01:20:47,080 लेकिन हम के बारे में चिंता नहीं होगी कि बाद में जब तक. 1624 01:20:47,080 --> 01:20:52,200 >> आरओबी: और वास्तव में, उस शब्द, पासिंग संदर्भ से, इतनी सी भी नहीं है 1625 01:20:52,200 --> 01:20:54,270 संदर्भित कर गुजर रहा है. 1626 01:20:54,270 --> 01:20:56,760 सी विशेष रूप से मूल्य के पास से गुजर गया है. 1627 01:20:56,760 --> 01:20:59,630 कोई फर्क नहीं पड़ता कि आप क्या करते हैं, आप हमेशा से रहे हैं कुछ की एक प्रति गुजर रहा है. 1628 01:20:59,630 --> 01:21:03,395 मैं एक तरह से उल्लेख किया है जैसे यह सिर्फ है कि उससे पहले संकेत के साथ 1629 01:21:03,395 --> 01:21:07,690 और एक स्ट्रिंग सिर्फ सच में चार है कि स्मृति में किसी जगह की ओर इशारा करते बाइट्स. 1630 01:21:07,690 --> 01:21:11,890 >> ठीक है, मैं इस स्ट्रिंग है और अगर यह बात है कि स्ट्रिंग जहां है मुझे बता रहा है - 1631 01:21:11,890 --> 01:21:15,470 ठीक है, मैं इस सूचक है अगर यह करने के लिए स्मृति में रखें, उसके बाद मैं एक पारित कर सकते हैं 1632 01:21:15,470 --> 01:21:19,160 एक समारोह के लिए कि सूचक की प्रतिलिपि, और उस समारोह अभी भी जहां में जानता है 1633 01:21:19,160 --> 01:21:19,780 स्मृति यह है. 1634 01:21:19,780 --> 01:21:22,950 तो ये संकेत के दोनों ओर इशारा करते हैं उसी स्मृति में जगह है, और करने के लिए 1635 01:21:22,950 --> 01:21:26,460 कि हम सक्षम होने के लिए जा रहे है कैसे परे चीजों को संशोधित करने के लिए 1636 01:21:26,460 --> 01:21:29,852 वर्तमान स्टैक फ्रेम. 1637 01:21:29,852 --> 01:21:31,040 >> यूसुफ: आप संकलन करना चाहते हैं? 1638 01:21:31,040 --> 01:21:31,820 >> आरओबी: नहीं, यह 5:30 है. 1639 01:21:31,820 --> 01:21:32,910 >> यूसुफ: ठीक है. 1640 01:21:32,910 --> 01:21:35,040 यह 5:30 है. 1641 01:21:35,040 --> 01:21:35,360 ठीक है. 1642 01:21:35,360 --> 01:21:39,280 इसलिए हम मैं में लगता संकलन को कवर किया जाएगा अगले अनुभाग, या अपने अनुभाग 1643 01:21:39,280 --> 01:21:42,795 नेता उस बिंदु पर होगा. 1644 01:21:42,795 --> 01:21:43,272 और - 1645 01:21:43,272 --> 01:21:44,630 >> रोब: कोई सवाल? 1646 01:21:44,630 --> 01:21:46,760 >> यूसुफ: कोई सवाल? 1647 01:21:46,760 --> 01:21:47,150 हाँ? 1648 01:21:47,150 --> 01:21:52,469 >> स्पीकर 5: CS50, किसी से तार का उपयोग हम के लिए उपयोग करना चाहते हैं कि कार्यों 1649 01:21:52,469 --> 01:21:53,880 उन है कि, सी कार्य की तरह हो जाएगा. 1650 01:21:53,880 --> 01:21:59,050 CS50 में और नहीं गई कोई अतिरिक्त कर दिया. 1651 01:21:59,050 --> 01:22:01,850 >> आरओबी: सही है. 1652 01:22:01,850 --> 01:22:08,155 सी के किसी भी तुम, [सुनाई] की तरह हमारे तार पर उन का प्रयोग करेंगे. 1653 01:22:08,155 --> 01:22:12,400 >> यूसुफ: और एक आखिरी बात मैं करना चाहता हूँ उल्लेख है कि हम एक शैली गाइड है 1654 01:22:12,400 --> 01:22:13,130 इस वर्ग के लिए. 1655 01:22:13,130 --> 01:22:13,360 >> रोब: ओह, हाँ. 1656 01:22:13,360 --> 01:22:15,270 >> यूसुफ: तो आप एक से आया हूँ यदि आप पहले पृष्ठभूमि प्रोग्रामिंग 1657 01:22:15,270 --> 01:22:17,750 कुछ परंपराओं का हो सकता है जब तुम डाल की तरह कोड लिख रहे हैं 1658 01:22:17,750 --> 01:22:20,950 एक ही पंक्ति या विशेष पर ब्रेसेस इंडेंट के तरीके 1659 01:22:20,950 --> 01:22:22,240 या आपके चर नामकरण. 1660 01:22:22,240 --> 01:22:26,870 इस वर्ग में, हम पालन करना चाहते हैं एक विशिष्ट शैली गाइड बस, क्योंकि 1661 01:22:26,870 --> 01:22:31,100 वैसे, अगर आप बाहर जाने के लिए और अगर में काम उद्योग, आप की उम्मीद हो जा रहे हैं 1662 01:22:31,100 --> 01:22:34,780 की शैली गाइड का पालन करने के लिए आप के लिए जाना है, जिस पर कंपनी. 1663 01:22:34,780 --> 01:22:38,040 >> जैसा उदाहरण के लिए, सुझाव मुझे लगता है नामकरण की एक विशेष प्रकार का है 1664 01:22:38,040 --> 01:22:38,760 सम्मेलन. 1665 01:22:38,760 --> 01:22:42,570 और ऊंट के बीच मतभेद है आवरण चर और बस की तरह 1666 01:22:42,570 --> 01:22:44,610 अंडरस्कोर के साथ उन्हें अलग. 1667 01:22:44,610 --> 01:22:52,170 और यह भी, मैं जैसे, सबसे महत्वपूर्ण बात यह लगता है उदाहरण के लिए, खरोज, सही? 1668 01:22:52,170 --> 01:22:56,440 >> हम घुंघराले ब्रेसिज़ जहां शुरू करूँ हालत वे है, और 1669 01:22:56,440 --> 01:22:57,730 अगली पंक्ति पर हैं. 1670 01:22:57,730 --> 01:23:01,230 और हम भी में घुंघराले ब्रेसिज़ डाल यह केवल एक पंक्ति है, भले ही. 1671 01:23:01,230 --> 01:23:06,100 और, ऐसा करने के तरीके के समय की एक बहुत हैं यह आप इन ब्रेसिज़ छोड़ सकते हैं, जहां 1672 01:23:06,100 --> 01:23:08,380 यह केवल एक ही पंक्ति है अगर बंद यदि बयान के तहत. 1673 01:23:08,380 --> 01:23:12,070 लेकिन इस वर्ग में, हम पालन करना चाहते हैं एक विशिष्ट शैली गाइड अभी तो तुम मिल 1674 01:23:12,070 --> 01:23:13,550 उस चीज़ की तरह करते थे. 1675 01:23:13,550 --> 01:23:16,410 >> रोब: हाँ, और शैली 50 के लिए जा रहा है इस शैली गाइड लागू करने, और हम कर रहे हैं 1676 01:23:16,410 --> 01:23:18,080 शैली 50 उपयोग करने के लिए जा रहा ग्रेड अपने कोड के लिए. 1677 01:23:18,080 --> 01:23:25,150 इसलिए यह बातें हमारे लिए आसान बनाता है उम्मीद है कि चीजें नहीं बनाना चाहिए 1678 01:23:25,150 --> 01:23:30,120 तुम्हें दे दिया के लिए बहुत बुरा मानकीकृत शैली है कि नहीं होना चाहिए 1679 01:23:30,120 --> 01:23:31,460 अवास्तविक. 1680 01:23:31,460 --> 01:23:36,000 >> यूसुफ: और अंत में, शैली को खोजने के लिए , manual.cs50.net/style के लिए जाना गाइड. 1681 01:23:36,000 --> 01:23:37,725 और हाँ. 1682 01:23:37,725 --> 01:23:40,575 >> अध्यक्ष 4: आप को लागू करने के लिए जा रहे हैं प्रति पंक्ति किसी भी वर्ण? 1683 01:23:40,575 --> 01:23:42,480 >> रोब: हाँ. 1684 01:23:42,480 --> 01:23:45,405 >> यूसुफ: माफ करना, दोस्तों. 1685 01:23:45,405 --> 01:23:47,680 >> आरओबी: यह केवल लोगों में से एक की तरह है. 1686 01:23:47,680 --> 01:23:50,420 इस बिंदु पर, मैं 120 के साथ ठीक हूँ. 1687 01:23:50,420 --> 01:23:52,460 मैं 120 कह के साथ ठीक हूँ प्रति पंक्ति वर्ण. 1688 01:23:52,460 --> 01:23:53,830 मैं कुछ सीमा जा रहा है वहाँ समझते हैं. 1689 01:23:53,830 --> 01:23:57,130 मैं 80 इतना छोटा है, लेकिन लगता है हम इसे लागू कर रहे हैं. 1690 01:23:57,130 --> 01:24:00,260 >> यूसुफ: निजी तौर पर, मैं के साथ लगता है सी, 80 अक्षर और अधिक ठीक है. 1691 01:24:00,260 --> 01:24:04,160 आप अन्य करने के लिए शुरू हो रही है एक बार जावास्क्रिप्ट और PHP जैसी भाषाओं, नहीं 1692 01:24:04,160 --> 01:24:08,860 सिर्फ सीमित करने के लिए तो उचित 80 पात्रों के लिए यह. 1693 01:24:08,860 --> 01:24:09,260 ठीक है. 1694 01:24:09,260 --> 01:24:12,780 वैसे, यह सुपर अनुभाग था. 1695 01:24:12,780 --> 01:24:14,750 किसी को कैंडी चाहता है? 1696 01:24:14,750 --> 01:24:16,000 >> अध्यक्ष 4: हाँ. 1697 01:24:16,000 --> 01:24:18,667