1 00:00:00,000 --> 00:00:00,310 2 00:00:00,310 --> 00:00:01,750 >> DAVID MALAN: اب آپ کے دماغ اڑا دو. 3 00:00:01,750 --> 00:00:06,500 تقسیم حقیقی دنیا کے 1 میں باہر کر دیتا ہے 10 کی طرف سے 1/10، یا 0.1 یقینا ہے. 4 00:00:06,500 --> 00:00:10,370 لیکن کمپیوٹر میں صرف ایک محدود ہے بٹس کی تعداد ہے جس کے ساتھ کرنے کے لئے 5 00:00:10,370 --> 00:00:14,290 تعداد کی نمائندگی کرتے ہیں، آپ کو ہمیشہ نہیں کر سکتے ہیں کے ساتھ 1/10 کی طرح تعداد کی نمائندگی 6 00:00:14,290 --> 00:00:15,500 کامل صحت سے متعلق. 7 00:00:15,500 --> 00:00:18,640 دوسرے الفاظ میں، کمپیوٹر کبھی کبھی ہے فیصلے کالز اور نہیں بنانے کے لئے 8 00:00:18,640 --> 00:00:22,740 ضروری تعداد میں آپ کی نمائندگی کے طور پر خاص طور پر اگر آپ کا ارادہ رکھتے ہیں کے طور پر کرنا چاہتے ہیں. 9 00:00:22,740 --> 00:00:27,020 >> مثال کے طور پر، میں میں واپس جانے لگتا ہے اس پروگرام اور 0.1 تبدیل، 10 00:00:27,020 --> 00:00:32,073 اوہ، 0.28، اس طرح اشارہ ہے کہ میں printf سے printf طرح تھا 11 00:00:32,073 --> 00:00:34,350 صحت سے متعلق کے 28 مقامات. 12 00:00:34,350 --> 00:00:39,330 اب بچانے کے لئے اور پروگرام مرتب کرتے ہیں، بنانے floats2 کے ساتھ اس وقت. 13 00:00:39,330 --> 00:00:41,910 ڈاٹ سلیش floats2 کے ساتھ چلا. 14 00:00:41,910 --> 00:00:49,980 اور، عزیز خدا، میں 0.1 نہیں دیکھتے اس وقت، لیکن خوبصورت ہے جس 0.10000000، 15 00:00:49,980 --> 00:00:51,070 اچھا اب تک. 16 00:00:51,070 --> 00:00:57,830 لیکن اس وقت، 14901161193847656250. 17 00:00:57,830 --> 00:00:58,880 >> ٹھیک ہے، کیا ہو رہا ہے؟ 18 00:00:58,880 --> 00:01:02,280 ٹھیک ہے، یہ ایک فلوٹ ہے کہ باہر کر دیتا ہے عام طور پر ایک کمپیوٹر کے اندر ذخیرہ 19 00:01:02,280 --> 00:01:03,500 32 بٹس کے ساتھ. 20 00:01:03,500 --> 00:01:07,340 32 ظاہر ہے ایک محدود تعداد، ہے جو آپ کو صرف کی نمائندگی کر سکتے ہیں اس کا مطلب 21 00:01:07,340 --> 00:01:11,050 32 بٹس ایک محدود تعداد کے ساتھ کے نقطہ اقدار تیرتا. 22 00:01:11,050 --> 00:01:14,980 بدقسمتی سے، اس کا مطلب ہے کہ کمپیوٹر تمام ممکنہ کی نمائندگی نہیں کر سکتے ہیں 23 00:01:14,980 --> 00:01:18,110 چل نقاط کی تعداد، یا اصل تعداد، دنیا میں موجود ہے، 24 00:01:18,110 --> 00:01:19,980 یہ صرف بہت سے بٹس ہے کیونکہ. 25 00:01:19,980 --> 00:01:23,940 >> اور اس طرح کمپیوٹر بظاہر کیا ہے اس صورت میں کیا 1/10 کی نمائندگی ہے 26 00:01:23,940 --> 00:01:26,880 قریب ترین ممکن فلوٹنگ نقطہ قیمت یہ کر سکتے ہیں کہ. 27 00:01:26,880 --> 00:01:31,050 لیکن ہم دیکھتے ہیں، ہم یہاں کے طور پر، 28 اعشاری مقامات، ہم اس کو دیکھنے کے لئے شروع 28 00:01:31,050 --> 00:01:31,970 گئی imprecision. 29 00:01:31,970 --> 00:01:34,480 تو اس کے ساتھ ایک مسئلہ ہے کوئی بہترین حل ہے. 30 00:01:34,480 --> 00:01:38,060 ہم، اس کی بجائے ایک فلوٹ کی ایک ڈبل استعمال کر سکتے ہیں کے طور پر 64 بٹس استعمال کرنے کے لئے جاتا ہے، جس میں 31 00:01:38,060 --> 00:01:39,410 32 کی مخالفت کی. 32 00:01:39,410 --> 00:01:42,290 لیکن کورس کے، 64، بھی محدود ہے تو مسئلہ ہو جائے گا 33 00:01:42,290 --> 00:01:43,630 بھی ڈبلز کے ساتھ رہیں. 34 00:01:43,630 --> 00:01:46,323