1 00:00:00,000 --> 00:00:02,360 >> डेविड जे मालन: आप शायद जानते हैं, तापमान मापा का उपयोग कर रहे हैं 2 00:00:02,360 --> 00:00:04,360 अलग में अलग तराजू दुनिया के कुछ हिस्सों. 3 00:00:04,360 --> 00:00:09,370 उदाहरण के लिए, 212 डिग्री फारेनहाइट है 100 डिग्री सेल्सियस और 32 डिग्री 4 00:00:09,370 --> 00:00:11,810 फारेनहाइट 0 डिग्री सेल्सियस दर्ज किया गया है. 5 00:00:11,810 --> 00:00:14,230 हम एक कंप्यूटर था, तो यह अच्छा नहीं होगा हमें की अनुमति दी है कि कार्यक्रम 6 00:00:14,230 --> 00:00:16,950 फेरनहाइट, कहते हैं, से परिवर्तित सेल्सियस करने के लिए? 7 00:00:16,950 --> 00:00:18,510 >> ठीक है, हम उस प्रोग्राम लिख सकते हैं. 8 00:00:18,510 --> 00:00:24,350 की पहली cs50.h शामिल साथ शुरू करते हैं, हम नाम से एक समारोह का उपयोग कर सकते हैं ताकि 9 00:00:24,350 --> 00:00:28,610 मिल INT की तरह हो जाता है, जो, नाव, मिल एक उपयोगकर्ता से संख्या है, लेकिन इस बार एक 10 00:00:28,610 --> 00:00:31,440 चल बिन्दु संख्या - एक एक दशमलव बिंदु के साथ. 11 00:00:31,440 --> 00:00:34,840 >> चलो यह भी मानक io.h शामिल करते हैं हम करने के लिए उपयोग किया है कि इतना 12 00:00:34,840 --> 00:00:36,230 छापा च की तरह कार्य करता है. 13 00:00:36,230 --> 00:00:40,000 और हम भी मुख्य घोषित करते हैं हमेशा की तरह. 14 00:00:40,000 --> 00:00:42,675 >> के अगले के लिए उपयोगकर्ता का संकेत करते हैं फ़ारेनहाइट में एक तापमान. 15 00:00:42,675 --> 00:00:46,050 16 00:00:46,050 --> 00:00:49,220 अब चलो वास्तव में है कि तापमान मिल उपयोगकर्ता से, पहले से 17 00:00:49,220 --> 00:00:52,910 कहा जाता है एक चर घोषित प्रकार नाव की च. 18 00:00:52,910 --> 00:00:56,750 एक नाव, फिर से, एक चर जिसका अर्थ है कि , एक चल बिन्दु मान संग्रहीत 19 00:00:56,750 --> 00:00:58,200 एक दशमलव बिंदु के साथ एक. 20 00:00:58,200 --> 00:01:01,780 >> चलो यह वापसी आवंटित मिल नाव का मूल्य. 21 00:01:01,780 --> 00:01:06,080 और फिर गणित के एक बिट करते हैं उस पर, पहले एक अन्य नाव की घोषणा 22 00:01:06,080 --> 00:01:11,690 सी में सेल्सियस और दुकान के लिए बुलाया सी कुछ सामान्य गणित का नतीजा है. 23 00:01:11,690 --> 00:01:19,060 5.0 से 9.0 गुना एफ शून्य से 32.0 से विभाजित. 24 00:01:19,060 --> 00:01:23,440 >> चलो अब परिणाम प्रिंट इस गणना की. 25 00:01:23,440 --> 00:01:24,730 प्रतिशत च - 26 00:01:24,730 --> 00:01:27,890 के लिए एक प्लेसहोल्डर वाचक चल बिन्दु मान - 27 00:01:27,890 --> 00:01:31,680 बाहर मुद्रित करने के लिए अल्पविराम सी सेल्सियस के तापमान में. 28 00:01:31,680 --> 00:01:33,000 के अपने अंतिम बचा लो. 29 00:01:33,000 --> 00:01:38,220 सी. भागो एफ कार्यक्रम के साथ संकलन सी. डॉट स्लेश एफ के साथ 30 00:01:38,220 --> 00:01:39,940 >> और हम उन आम की कोशिश करते हैं तापमान. 31 00:01:39,940 --> 00:01:45,820 फारेनहाइट में 212 डिग्री 100 डिग्री सेल्सियस है. 32 00:01:45,820 --> 00:01:50,090 फारेनहाइट में 32 डिग्री है सेल्सियस में 0 डिग्री. 33 00:01:50,090 --> 00:01:54,240 >> अब इस कार्यक्रम के लिए एक छोटी सी को निखारने की सुविधा देता है काफी के रूप में कई 0 का मुद्रण नहीं द्वारा बिट 34 00:01:54,240 --> 00:01:55,820 उस दशमलव स्थान के बाद. 35 00:01:55,820 --> 00:01:57,940 ऐसा करने के लिए, मैं जा रहा हूँ वापस 11 लाइन के पास जाओ. 36 00:01:57,940 --> 00:02:03,430 और बजाय सिर्फ प्रतिशत च निर्दिष्ट, मैं, कहते हैं, बजाय निर्दिष्ट करने के लिए जा रहा हूँ 37 00:02:03,430 --> 00:02:08,800 कि मैं केवल 0.1 एफ, बताए प्रिंट च एक चल बिन्दु मान मुद्रित करना चाहते हैं 38 00:02:08,800 --> 00:02:11,750 दशमलव स्थान के बाद एक मूल्य के लिए. 39 00:02:11,750 --> 00:02:13,630 >> चलो मेरे कार्यक्रम resave करते हैं. 40 00:02:13,630 --> 00:02:19,680 तब सी. बनाने एफ के साथ यह recompile डॉट स्लेश सी. एफ और साथ में यह फिर से दौड़ना 41 00:02:19,680 --> 00:02:24,910 के 212, कहते हैं, के साथ पुन: प्रयास करते हैं, जो मुझे 100.0 देता है. 42 00:02:24,910 --> 00:02:28,360 >> अब यह मैंने किया है कि ध्यान देने योग्य है बहुत जानबूझ 9 लाइन में कुछ. 43 00:02:28,360 --> 00:02:35,830 मैं 5 5.0, 9 लिखा सूचना कैसे 9.0, और 32.0 के रूप में भी 32 के रूप में. 44 00:02:35,830 --> 00:02:39,000 खैर, उन मूल्यों के पहले दो थे बहुत जानबूझ होने के लिए चुना 45 00:02:39,000 --> 00:02:42,200 चल बिन्दु मान, सिर्फ इसलिए नहीं बाकी के साथ संगति की 46 00:02:42,200 --> 00:02:42,940 अपने कार्यक्रम के - 47 00:02:42,940 --> 00:02:45,110 जो स्पष्ट रूप से चल शामिल बात मान - 48 00:02:45,110 --> 00:02:50,210 लेकिन आप तो यह, कि सी पता चला है क्योंकि एक और int द्वारा एक पूर्णांक विभाजित, 49 00:02:50,210 --> 00:02:54,350 आप करने जा रहे हैं जिसके परिणामस्वरूप जवाब है खुद एक पूर्णांक, भले ही इसका मतलब है कि 50 00:02:54,350 --> 00:02:57,450 सब कुछ दूर फेंक करने के लिए होने दशमलव बिंदु के बाद. 51 00:02:57,450 --> 00:03:04,990 >> दूसरे शब्दों में, मैं यह 5.0 बदलते हैं करने के लिए 5 या तो इस 9.0-9 और resave 52 00:03:04,990 --> 00:03:10,550 मेरे कार्यक्रम, सी के लिए make एफ के साथ recompile और फिर डॉट स्लेश एफ के साथ इसे फिर से चलाने 53 00:03:10,550 --> 00:03:15,310 212 की तरह का एक इनपुट में सी और टाइप करने के लिए, सूचना है कि मैं जा रहा हूँ जवाब 54 00:03:15,310 --> 00:03:17,860 इस समय वास्तव में काफी गलत है मिलता है. 55 00:03:17,860 --> 00:03:23,570 0.0 में सही डिग्री नहीं है 212 फारेनहाइट रूप सेल्सियस. 56 00:03:23,570 --> 00:03:24,500 >> खैर, क्या चल रहा है? 57 00:03:24,500 --> 00:03:29,410 खैर, 9 लाइन में, 5 क्योंकि अब एक है पूर्णांक और क्योंकि 9 अब एक है 58 00:03:29,410 --> 00:03:34,810 पूर्णांक, परिणाम गणितीय इतने पर 0.5555 होना चाहिए. 59 00:03:34,810 --> 00:03:39,120 लेकिन परिणाम के अनुसार करने के लिए, क्योंकि सी के नियम, एक पूर्णांक हो गया है कि 60 00:03:39,120 --> 00:03:44,020 0.5555, दूर फेंक दिया जाता है बस 0 के साथ हमें छोड़कर. 61 00:03:44,020 --> 00:03:48,600 >> तो अंत में, मैं गुणा अंत तक काफी अकस्मात 0 बार एफ शून्य 62 00:03:48,600 --> 00:03:52,830 कोई बात नहीं क्या है जो 32.0, मुझे हमेशा 0 देने जा रहा. 63 00:03:52,830 --> 00:03:56,930 तो का उपयोग कर, मन में किसी भी समय रहते हो की निकटता में चल बिन्दु मूल्यों 64 00:03:56,930 --> 00:03:59,860 ints, आप कर सकते हैं, जरूरी नहीं जैसा कि आप उम्मीद तो जवाब मिलता है. 65 00:03:59,860 --> 00:04:04,220 मैं में किया था और इसलिए, उपयोग करने के लिए ध्यान रखना पहले मामले, चल बिन्दु मूल्यों 66 00:04:04,220 --> 00:04:06,530 भर में किसी भी तरह के मुद्दों से बचने के लिए. 67 00:04:06,530 --> 00:04:08,267