1 00:00:00,000 --> 00:00:05,860 >> [موسیقی بجانے] 2 00:00:05,860 --> 00:00:09,530 >> ڈوگ لایڈ: آپ نے شاید لگتا ہے کہ کوڈ کو صرف ایک کام کو پورا کرنے کے لئے استعمال ہے. 3 00:00:09,530 --> 00:00:10,450 تم نے اسے لکھنے. 4 00:00:10,450 --> 00:00:11,664 یہ کچھ کرتا ہے. 5 00:00:11,664 --> 00:00:12,580 اس سے بہت زیادہ ہے. 6 00:00:12,580 --> 00:00:13,160 >> آپ نے اسے مرتب. 7 00:00:13,160 --> 00:00:13,993 آپ پروگرام چلاتے ہیں. 8 00:00:13,993 --> 00:00:15,370 تم جانا اچھا ہو. 9 00:00:15,370 --> 00:00:17,520 >> لیکن یہ یقین ہے یا نہیں، تو آپ کو ایک طویل وقت کے لئے کوڈ 10 00:00:17,520 --> 00:00:20,550 آپ اصل کو دیکھنے کے لئے آ سکتا ہے خوبصورت ہے کہ کچھ کے طور پر کوڈ. 11 00:00:20,550 --> 00:00:23,275 یہ ایک مسئلہ میں حل ایک بہت ہی دلچسپ طریقہ، 12 00:00:23,275 --> 00:00:26,510 یا واقعی صرف وہاں کچھ ہے یہ لگتا ہے جس طرح کے بارے میں صاف. 13 00:00:26,510 --> 00:00:28,750 تم ہںس کیا جا سکتا ہے مجھ پر، لیکن یہ سچ ہے. 14 00:00:28,750 --> 00:00:31,530 اور تکرار ایک طریقہ ہے قسم کے اس خیال حاصل کرنے کے لئے 15 00:00:31,530 --> 00:00:34,090 خوبصورت، خوبصورت نظر کوڈ. 16 00:00:34,090 --> 00:00:37,740 یہ طریقوں سے مسائل حل کرتی ہے کہ ، دیکھ کرنے کے لئے آسان، دلچسپ ہیں 17 00:00:37,740 --> 00:00:39,810 اور حیرت کی بات مختصر. 18 00:00:39,810 --> 00:00:43,190 >> راستہ تکرار کام ایک پنراورتی تقریب، ہے 19 00:00:43,190 --> 00:00:49,291 بلاتا ہے کہ ایک تقریب کے طور پر بیان کیا جاتا ہے خود اس پر عملدرآمد کے حصے کے طور. 20 00:00:49,291 --> 00:00:51,790 یہ ایک چھوٹا سا عجیب لگتا ہے ہو سکتا اور ہم تھوڑا سا نظر آئے گا 21 00:00:51,790 --> 00:00:53,750 اس ایک لمحے میں کس طرح کام کرتا. 22 00:00:53,750 --> 00:00:55,560 لیکن ایک بار پھر، ان پنراورتی طریقہ کار ہیں 23 00:00:55,560 --> 00:00:57,730 اتنا خوبصورت ہونے جا رہا وہ جا رہے ہیں کیونکہ 24 00:00:57,730 --> 00:01:00,410 بغیر اس مسئلے کو حل کرنے ان تمام دیگر افعال ہونے 25 00:01:00,410 --> 00:01:02,710 یا ان طویل loops کے. 26 00:01:02,710 --> 00:01:06,310 تم ان پنراورتی دیکھیں گے کہ طریقہ کار اتنی مختصر دیکھنے کے لئے جا رہے ہیں. 27 00:01:06,310 --> 00:01:10,610 اور وہ واقعی بنانے کے لئے جا رہے ہیں اپنے کوڈ کو بہت زیادہ خوبصورت لگ رہی ہو. 28 00:01:10,610 --> 00:01:12,560 >> میں آپ کو ایک مثال دیتا ہوں اس کی کس طرح دیکھنے کے لئے 29 00:01:12,560 --> 00:01:14,880 ایک پنراورتی طریقہ کار بیان کیا جا سکتا ہے. 30 00:01:14,880 --> 00:01:18,202 آپ کو اس سے واقف ہیں تو ، کئی سال پہلے ریاضی کی کلاس سے 31 00:01:18,202 --> 00:01:20,910 وہاں کچھ کہا جاتا ہے عام طور پر ہے جو جز ضربیہ تقریب، 32 00:01:20,910 --> 00:01:25,340 فجائیہ نقطہ، کے طور پر ظاہر کیا جاتا ہے جس تمام مثبت صحیح عدد سے زیادہ بیان کیا جاتا ہے. 33 00:01:25,340 --> 00:01:28,850 اور جس طرح کہ (ن) جز ضربیہ شمار کیا جاتا ہے 34 00:01:28,850 --> 00:01:31,050 آپ سب ضرب ہے مقابلے کی تعداد کم 35 00:01:31,050 --> 00:01:33,750 یا برابر N together-- سے تمام integers کے مقابلے میں کم 36 00:01:33,750 --> 00:01:34,880 یا ایک ساتھ (ن) کے برابر. 37 00:01:34,880 --> 00:01:39,850 >> لہذا 5 جز ضربیہ 5 بار ہے 4 اوقات 3 بار 2 بار 1. 38 00:01:39,850 --> 00:01:43,020 اور 4 جز ضربیہ 4 گنا زیادہ ہے 3 بار 2 بار 1 اور اسی طرح. 39 00:01:43,020 --> 00:01:44,800 آپ کو اندازہ ہو. 40 00:01:44,800 --> 00:01:47,060 >> پروگرامر کے طور پر، ہم ایسا نہیں کرتے (ن)، فجائیہ نقطہ استعمال. 41 00:01:47,060 --> 00:01:51,840 تو ہم جز ضربیہ کی وضاحت کریں گے (ن) کی حقیقت کے طور پر تقریب. 42 00:01:51,840 --> 00:01:56,897 اور ہم پیدا کرنے کے جز ضربیہ کا استعمال کریں گے ایک مسئلہ ایک پنراورتی حل. 43 00:01:56,897 --> 00:01:59,230 اور میں آپ کو مل سکتا ہے یہ ایک بہت زیادہ ضعف ہے کہ 44 00:01:59,230 --> 00:02:02,380 تکراری سے اپیل اس کا ورژن، جس 45 00:02:02,380 --> 00:02:05,010 ہم بھی ایک لمحے میں ایک نظر ڈالیں گے. 46 00:02:05,010 --> 00:02:08,310 >> تو یہاں کے ایک جوڑے ہیں facts-- شلیش ارادہ 47 00:02:08,310 --> 00:02:10,169 کے بارے میں factorial-- جز ضربیہ تقریب. 48 00:02:10,169 --> 00:02:13,090 میں نے کہا کہ 1 جز ضربیہ،، 1 ہے. 49 00:02:13,090 --> 00:02:15,690 2 جز ضربیہ 2 بار 1. 50 00:02:15,690 --> 00:02:18,470 3 جز ضربیہ 3 2 مرتبہ اسی اوقات 1، اور. 51 00:02:18,470 --> 00:02:20,810 ہم نے پہلے ہی 4 اور 5 کے بارے میں بات. 52 00:02:20,810 --> 00:02:23,940 >> لیکن یہ دیکھ کر، یہ سچ نہیں ہے؟ 53 00:02:23,940 --> 00:02:28,220 2 جز ضربیہ نہیں ہے صرف 2 بار 1 جز ضربیہ؟ 54 00:02:28,220 --> 00:02:31,130 میرا مطلب ہے، 1 جز ضربیہ 1 ہے. 55 00:02:31,130 --> 00:02:34,940 تو کیوں نہ ہم صرف کا کہنا ہے کہ نہیں کر سکتے ہیں، 2 جز ضربیہ 2 بار 1 ہے کے بعد سے، 56 00:02:34,940 --> 00:02:38,520 یہ واقعی صرف 2 بار ہے 1 جز ضربیہ؟ 57 00:02:38,520 --> 00:02:40,900 >> اور پھر، اس خیال میں توسیع 3 جز ضربیہ نہیں ہے 58 00:02:40,900 --> 00:02:44,080 صرف 3 بار 2 جز ضربیہ؟ 59 00:02:44,080 --> 00:02:50,350 اور 4 جز ضربیہ 4 گنا زیادہ ہے تو 3، اور جز ضربیہ؟ 60 00:02:50,350 --> 00:02:52,530 اصل میں، جز ضربیہ کسی بھی تعداد کے صرف کر سکتے ہیں 61 00:02:52,530 --> 00:02:54,660 قسم اگر ہم اظہار کیا کے ہمیشہ کے لئے اس سے باہر لے جانے. 62 00:02:54,660 --> 00:02:56,870 ہم اس قسم کی عام کر سکتے ہیں جز ضربیہ مسئلہ 63 00:02:56,870 --> 00:02:59,910 یہ ہے کے طور پر (ن) بار ن مائنس 1 جز ضربیہ. 64 00:02:59,910 --> 00:03:04,840 یہ (ن) بار مصنوعات کی ہے تمام اعداد و شمار مجھ سے کم. 65 00:03:04,840 --> 00:03:08,890 >> یہ خیال، اس مسئلے کا سامانییکرن، 66 00:03:08,890 --> 00:03:13,410 ہم تکراری کرنے کی اجازت دیتا جز ضربیہ تقریب کی وضاحت. 67 00:03:13,410 --> 00:03:15,440 آپ کو ایک تقریب کی وضاحت جب تکراری طور پر، وہاں ہے 68 00:03:15,440 --> 00:03:17,470 اس کا ایک حصہ بننے کے لئے کی ضرورت ہے کہ دو چیزیں. 69 00:03:17,470 --> 00:03:20,990 تم کچھ ایک نام نہاد حاصل کرنے کی ضرورت بنیاد کیس، جس میں، آپ کو اس متحرک جب، 70 00:03:20,990 --> 00:03:22,480 پنراورتی عمل کو روک دے گا. 71 00:03:22,480 --> 00:03:25,300 >> دوسری صورت میں، ایک تقریب جو بلاتا ہے itself-- آپ imagine-- سکتا ہے 72 00:03:25,300 --> 00:03:26,870 ہمیشہ کے لئے پر جا سکتے ہیں. 73 00:03:26,870 --> 00:03:29,047 تقریب بلاتا ہے تقریب کالیں 74 00:03:29,047 --> 00:03:30,380 تقریب بلاتا ہے. 75 00:03:30,380 --> 00:03:32,380 آپ کو ایک راستہ نہیں ہے تو ، آپ کے پروگرام کو روکنے کے لئے 76 00:03:32,380 --> 00:03:34,760 مؤثر طریقے سے پھنس جائے گا ایک لامتناہی لوپ میں. 77 00:03:34,760 --> 00:03:37,176 یہ، آخر میں کریش گا یہ میموری سے باہر چلانے گا کیونکہ. 78 00:03:37,176 --> 00:03:38,990 لیکن اس نقطہ نظر کے سوا ہے. 79 00:03:38,990 --> 00:03:42,210 >> ہم کو روکنے کے لئے کسی دوسرے طریقے سے حاصل کرنے کی ضرورت ہمارے پروگرام اجلاس ہونے کے تناظر کے علاوہ چیزیں، 80 00:03:42,210 --> 00:03:46,010 کریش کہ ایک پروگرام ہے کیونکہ شاید خوبصورت یا خوبصورت نہیں. 81 00:03:46,010 --> 00:03:47,690 اور ہم اس کی بنیاد کیس کہتے ہیں. 82 00:03:47,690 --> 00:03:50,610 یہ ایک آسان حل ہے رک جاتا ہے جس میں ایک مسئلے سے 83 00:03:50,610 --> 00:03:52,770 واقع ہونے سے پنراورتی عمل. 84 00:03:52,770 --> 00:03:55,220 تو اس میں سے ایک حصہ ہے ایک پنراورتی تقریب. 85 00:03:55,220 --> 00:03:56,820 >> دوسرا حصہ پنراورتی معاملہ ہے. 86 00:03:56,820 --> 00:03:59,195 یہ جہاں تکرار ہے اصل میں جگہ لے جائے گا. 87 00:03:59,195 --> 00:04:02,200 یہ ہے جہاں تقریب میں خود کو فون کروں گا. 88 00:04:02,200 --> 00:04:05,940 >> یہ بالکل میں خود فون نہیں کرے گا اسی طرح یہ کہا گیا تھا. 89 00:04:05,940 --> 00:04:08,880 یہ تھوڑا سا مختلف حالتوں کو ہو گا یہ بات ہے مسئلہ ہے 90 00:04:08,880 --> 00:04:11,497 ایک teeny سا چھوٹا حل کرنے کی کوشش. 91 00:04:11,497 --> 00:04:14,330 لیکن یہ عام طور پر ہرن گزر کے حل کا بڑا حصہ حل 92 00:04:14,330 --> 00:04:17,450 کی لکیر سے نیچے ایک مختلف کال کرنے کے لئے. 93 00:04:17,450 --> 00:04:20,290 >> ان میں سے کون سا لگتا ہے یہاں بنیاد کیس کی طرح؟ 94 00:04:20,290 --> 00:04:25,384 جس طرح ان میں سے ایک لگتا ہے ایک مسئلہ کرنے کا آسان ترین حل کیا ہے؟ 95 00:04:25,384 --> 00:04:27,550 ہم factorials کے کا ایک گروپ ہے، اور ہم جاری کر سکتے ہیں 96 00:04:27,550 --> 00:04:30,470 اسی on-- 6، 7، 8، 9، 10، اور جا. 97 00:04:30,470 --> 00:04:34,130 >> لیکن ایک طرح ان میں سے ایک لگتا ہے اچھا معاملہ بنیاد کیس ہونے کے لئے. 98 00:04:34,130 --> 00:04:35,310 یہ ایک بہت آسان حل ہے. 99 00:04:35,310 --> 00:04:37,810 ہم خصوصی کچھ بھی کرنے کی ضرورت نہیں. 100 00:04:37,810 --> 00:04:40,560 >> 1 جز ضربیہ صرف 1 ہے. 101 00:04:40,560 --> 00:04:42,790 ہم کسی کو ایسا کرنے کی ضرورت نہیں ہے ضرب بالکل. 102 00:04:42,790 --> 00:04:45,248 ہم جا رہے ہیں تو ایسا لگتا ہے کوشش کریں اور اس مسئلہ کو حل کرنے، 103 00:04:45,248 --> 00:04:47,600 اور ہم کو روکنے کے لئے کی ضرورت ہے کہیں تکرار، 104 00:04:47,600 --> 00:04:50,610 ہم شاید کو روکنے کے لئے چاہتے ہیں یہ ہم 1 حاصل کرنے کے لئے جب. 105 00:04:50,610 --> 00:04:54,580 ہم اس سے پہلے روکنے کے لئے نہیں کرنا چاہتا. 106 00:04:54,580 --> 00:04:56,660 >> ہم وضاحت کر رہے ہیں تو اپنے جز ضربیہ تقریب، 107 00:04:56,660 --> 00:04:58,690 یہاں ایک کنکال کے لئے ہے ہم ایسا ہو سکتا ہے کہ کس طرح. 108 00:04:58,690 --> 00:05:03,110 ہم ان دو چیزوں میں پلگ کرنے کی ضرورت بنیاد کیس اور پنراورتی کیس. 109 00:05:03,110 --> 00:05:04,990 بنیاد کیس کیا ہے؟ 110 00:05:04,990 --> 00:05:10,150 N 1 سے برابر ہے تو واپسی 1-- ہے ایک بہت سادہ مسئلہ کو حل کرنے. 111 00:05:10,150 --> 00:05:11,890 >> 1 جز ضربیہ 1 ہے. 112 00:05:11,890 --> 00:05:13,860 یہ 1 اوقات کچھ ہے. 113 00:05:13,860 --> 00:05:15,020 یہ صرف 1 ہے. 114 00:05:15,020 --> 00:05:17,170 یہ ایک بہت آسان حقیقت ہے. 115 00:05:17,170 --> 00:05:19,620 اور تو ہے کہ ہماری بنیاد کیس ہو سکتا ہے. 116 00:05:19,620 --> 00:05:24,730 ہم اس میں 1 منظور ہو تو تقریب، ہم نے صرف 1 واپس آ جائیں گے. 117 00:05:24,730 --> 00:05:27,320 >> پنراورتی کیا ہے کیس شاید طرح نظر آتے ہیں؟ 118 00:05:27,320 --> 00:05:32,445 ہر دوسرے نمبر کے لئے 1 اس کے علاوہ، پیٹرن کیا ہے؟ 119 00:05:32,445 --> 00:05:35,780 ٹھیک ہے، ہم لے جا رہے ہیں تو (ن) کے جز ضربیہ، 120 00:05:35,780 --> 00:05:38,160 یہ (ن) اوقات (ن) کے جز ضربیہ مائنس 1. 121 00:05:38,160 --> 00:05:42,130 >> ہم 3 جز ضربیہ لے جا رہے ہیں تو، یہ 3 مائنس 1 میں 3 بار جز ضربیہ ہے 122 00:05:42,130 --> 00:05:43,070 یا 2. 123 00:05:43,070 --> 00:05:47,330 اور ہم نہیں ہیں اگر ایسا ہے تو دوسری صورت میں، 1 تلاش 124 00:05:47,330 --> 00:05:51,710 واپسی (ن) بار ن مائنس 1 جز ضربیہ. 125 00:05:51,710 --> 00:05:53,210 یہ بہت سیدھا ہے. 126 00:05:53,210 --> 00:05:57,360 >> اور تھوڑا سا ہونے کی خاطر کلینر اور کوڈ سے زیادہ خوبصورت، 127 00:05:57,360 --> 00:06:01,440 جانتے ہیں کہ ہم ایک لائن loops ہے اگر یا سنگل لائن مشروط شاخوں، 128 00:06:01,440 --> 00:06:04,490 ہم میں سے سب سے چھٹکارا حاصل کر سکتے ہیں ان کے ارد گرد گھوبگھرالی منحنی خطوط وحدانی. 129 00:06:04,490 --> 00:06:06,850 تو ہم اس کے لیے اس کو مضبوط بنانے کے کر سکتے ہیں. 130 00:06:06,850 --> 00:06:09,640 یہ بالکل ایک ہی ہے اس کے طور پر فعالیت. 131 00:06:09,640 --> 00:06:13,850 >> میں صرف گھوبگھرالی دور لے جا رہا ہوں صرف ایک ہی لائن ہے کیونکہ، منحنی خطوط وحدانی 132 00:06:13,850 --> 00:06:18,500 ان مشروط شاخوں کے اندر. 133 00:06:18,500 --> 00:06:21,160 تو ان شناختی برتاؤ. 134 00:06:21,160 --> 00:06:23,800 N 1 سے برابر ہے تو، 1 واپس. 135 00:06:23,800 --> 00:06:28,351 ورنہ N اوقات واپس ن مائنس 1 جز ضربیہ. 136 00:06:28,351 --> 00:06:29,850 تو ہم چھوٹے مسئلہ بنا رہے ہیں. 137 00:06:29,850 --> 00:06:33,850 N 5 کے طور پر باہر شروع ہوتا ہے، ہم جا رہے ہیں 4 5 بار جز ضربیہ واپس. 138 00:06:33,850 --> 00:06:37,100 اور ہم بات کرتے ہیں ایک منٹ میں دیکھیں گے ایک اور ویڈیو میں کال stack-- بارے میں 139 00:06:37,100 --> 00:06:39,390 جہاں ہم کے بارے میں بات ہم سیکھنے گے stack-- کال 140 00:06:39,390 --> 00:06:41,630 بالکل اس عمل کام کرتا ہے کیوں کے بارے میں. 141 00:06:41,630 --> 00:06:46,970 >> لیکن اس کی 5 جبکہ جز ضربیہ کا کہنا ہے کہ 5 بار جز ضربیہ 4 کی واپسی، اور 4 142 00:06:46,970 --> 00:06:49,710 اچھی طرح سے، ٹھیک ہے، کا کہنا ہے کہ جا رہا ہے، کی واپسی 4 بار 3 جز ضربیہ. 143 00:06:49,710 --> 00:06:51,737 آپ دیکھ سکتے ہیں کے طور پر، ہم ہیں قسم 1 کے قریب. 144 00:06:51,737 --> 00:06:53,820 ہم قریب ہو رہی ہے اور اس کی بنیاد کیس کے قریب. 145 00:06:53,820 --> 00:06:58,180 >> اور ہم بنیاد کیس مارا ایک بار، گزشتہ افعال میں سے سب 146 00:06:58,180 --> 00:07:00,540 انہوں نے کے لئے تلاش کر رہے تھے جواب ہے. 147 00:07:00,540 --> 00:07:03,900 2 جز ضربیہ کی واپسی کہہ رہا تھا 2 بار 1 جز ضربیہ. 148 00:07:03,900 --> 00:07:06,760 ویسے، 1 ریٹرن 1 جز ضربیہ. 149 00:07:06,760 --> 00:07:10,090 جز ضربیہ کے لئے تو کال 2، 2 بار 1 واپس آ سکتے ہیں 150 00:07:10,090 --> 00:07:13,980 اور جز ضربیہ ہے کہ واپس دینے کے اس کے نتیجے کے لئے انتظار کر رہا ہے جس میں 3،. 151 00:07:13,980 --> 00:07:17,110 >> اور پھر یہ حساب کر سکتے ہیں اس کا نتیجہ، 3 بار 2، 6 152 00:07:17,110 --> 00:07:18,907 اور 4 جز ضربیہ لئے اسے واپس دے. 153 00:07:18,907 --> 00:07:20,740 اور پھر، ہم ایک ہیں کال اسٹیک پر ویڈیو 154 00:07:20,740 --> 00:07:23,810 یہ ایک چھوٹا سا سچتر ہے جہاں میں ابھی کیا کہہ رہا ہوں کے مقابلے میں زیادہ. 155 00:07:23,810 --> 00:07:25,300 لیکن یہ بات ہے. 156 00:07:25,300 --> 00:07:29,300 یہ اکیلے کا حل ہے ایک بڑی تعداد کے جز ضربیہ حساب. 157 00:07:29,300 --> 00:07:31,527 >> یہ کوڈ کا صرف چار لائنوں ہے. 158 00:07:31,527 --> 00:07:32,610 یہ ٹھیک ہے، بہت اچھا ہے؟ 159 00:07:32,610 --> 00:07:35,480 یہ شہوانی، شہوت انگیز کی طرح ہے. 160 00:07:35,480 --> 00:07:38,580 >> تو عام طور پر، لیکن نہیں ہمیشہ، ایک پنراورتی تقریب 161 00:07:38,580 --> 00:07:41,190 ایک میں ایک لوپ جگہ لے سکتے ہیں غیر پنراورتی تقریب. 162 00:07:41,190 --> 00:07:46,100 تو یہاں، شانہ بہ شانہ، تکراری ہے جز ضربیہ تقریب کے ورژن. 163 00:07:46,100 --> 00:07:49,650 ان دونوں کا حساب بالکل ایک ہی بات. 164 00:07:49,650 --> 00:07:52,170 >> وہ دونوں (ن) کے جز ضربیہ حساب. 165 00:07:52,170 --> 00:07:54,990 بائیں پر ورژن ایسا کرنے کے لئے تکرار استعمال کرتا ہے. 166 00:07:54,990 --> 00:07:58,320 دائیں ورژن ایسا کرنے کے لئے تکرار استعمال کرتا ہے. 167 00:07:58,320 --> 00:08:02,050 >> اور نوٹس، ہم اعلان کرنا ہوگا ایک عددی کی مصنوعات کو ایک متغیر. 168 00:08:02,050 --> 00:08:02,940 اور پھر ہم لوپ. 169 00:08:02,940 --> 00:08:06,790 جب تک کے طور پر ہم ن، زیادہ 0 ہے (ن) کی طرف سے اس کی مصنوعات کو ضرب رکھنے 170 00:08:06,790 --> 00:08:09,890 اور جب تک این decrementing ہم نے مصنوعات کے حساب. 171 00:08:09,890 --> 00:08:14,600 تو ان دو افعال، ایک بار پھر، بالکل ایک ہی بات کرتے ہیں. 172 00:08:14,600 --> 00:08:19,980 لیکن وہ ایسا نہیں کرتے بالکل اسی طرح. 173 00:08:19,980 --> 00:08:22,430 >> اب، یہ ممکن ہے ایک سے زیادہ کی بنیاد ہے 174 00:08:22,430 --> 00:08:25,770 کیس یا ایک سے زیادہ پنراورتی کیس، منحصر ہے 175 00:08:25,770 --> 00:08:27,670 کیا آپ کی تقریب میں کرنے کی کوشش کر رہا ہے. 176 00:08:27,670 --> 00:08:31,650 آپ کو لازمی طور صرف تک محدود نہیں کر رہے ہیں ایک بنیاد کیس یا ایک پنراورتی 177 00:08:31,650 --> 00:08:32,370 معاملہ. 178 00:08:32,370 --> 00:08:35,320 کچھ کے بارے میں تو ایک مثال کے طور پر ایک سے زیادہ بیس مقدمات کے ساتھ 179 00:08:35,320 --> 00:08:37,830 ہو سکتا ہے this-- فبونیکی تعداد ترتیب. 180 00:08:37,830 --> 00:08:41,549 >> آپ کی طرف سے یاد کر سکتے ہیں ابتدائی اسکول کے دنوں 181 00:08:41,549 --> 00:08:45,740 فبونیکی ترتیب بیان کیا جاتا ہے کہ this-- طرح پہلے عنصر 0. 182 00:08:45,740 --> 00:08:46,890 دوسرا عنصر 1 ہے. 183 00:08:46,890 --> 00:08:49,230 ان میں سے دونوں صرف تعریف کی طرف سے ہیں. 184 00:08:49,230 --> 00:08:55,920 >> پھر ہر دوسرے عنصر بیان کیا جاتا ہے ن مائنس 1 اور ن مائنس 2 کی رقم کے طور پر. 185 00:08:55,920 --> 00:09:00,330 تیسرا عنصر تو 0 علاوہ 1 1 ہے ہو جائے گا. 186 00:09:00,330 --> 00:09:03,280 اور پھر چوتھا عنصر دوسرا عنصر، 1 ہو جائے گا، 187 00:09:03,280 --> 00:09:06,550 علاوہ تیسرا عنصر، 1. 188 00:09:06,550 --> 00:09:08,507 اس 2 ہو جائے گا. 189 00:09:08,507 --> 00:09:09,340 اور اسی طرح اور اسی طرح. 190 00:09:09,340 --> 00:09:11,680 >> تو اس صورت میں، ہم نے دو کی بنیاد مقدمات ہیں. 191 00:09:11,680 --> 00:09:14,850 N 1 سے برابر ہے تو، 0 واپس. 192 00:09:14,850 --> 00:09:18,560 N 2 کے برابر ہے تو، 1 واپس. 193 00:09:18,560 --> 00:09:25,930 دوسری صورت میں، (ن) کے فبونیکی واپس مائنس 1 پلس ن مائنس 2 فبونیکی. 194 00:09:25,930 --> 00:09:27,180 >> تو اس سے زیادہ بیس مقدمات ہے. 195 00:09:27,180 --> 00:09:29,271 کیا ایک سے زیادہ پنراورتی مقدمات کے بارے میں؟ 196 00:09:29,271 --> 00:09:31,520 ویسے، وہاں کچھ ہے Collatz اٹکل بلایا. 197 00:09:31,520 --> 00:09:34,630 میں، کا کہنا ہے کہ نہیں کر رہا ہوں آپ، یہ ہے کہ کیا معلوم 198 00:09:34,630 --> 00:09:38,170 یہ اصل میں ہمارے حتمی ہے کیونکہ یہ خاص طور پر ویڈیو کے لئے مسئلہ. 199 00:09:38,170 --> 00:09:43,220 اور یہ ہمارے ورزش ہے ایک دوسرے کے ساتھ پر کام کرنے کے. 200 00:09:43,220 --> 00:09:46,760 >> تو یہاں کیا ہے Collatz اٹکل is-- 201 00:09:46,760 --> 00:09:48,820 یہ ہر مثبت عدد صحیح پر لاگو ہوتا ہے. 202 00:09:48,820 --> 00:09:51,500 اور یہ ہے کہ speculates کے ہمیشہ ممکن واپس حاصل کرنے کے 203 00:09:51,500 --> 00:09:55,060 1 آپ ان اقدامات پر عمل کریں تو. 204 00:09:55,060 --> 00:09:57,560 N 1 ہے، کو روکنے کے. 205 00:09:57,560 --> 00:10:00,070 N 1 ہے تو ہم 1 واپس مل گیا ہے. 206 00:10:00,070 --> 00:10:05,670 >> دوسری صورت میں، اس کے ذریعے جانے عمل پھر ن 2 سے تقسیم. 207 00:10:05,670 --> 00:10:08,200 آپ 1 کو واپس حاصل کر سکتے ہیں اور دیکھو. 208 00:10:08,200 --> 00:10:13,260 (ن) عجیب ہے تو دوسری صورت میں،، کے ذریعے جانا پھر 3N پلس 1 پر اس عمل کو، 209 00:10:13,260 --> 00:10:15,552 یا 3 اوقات (ن) کے علاوہ 1. 210 00:10:15,552 --> 00:10:17,010 تو یہاں ہم ایک بنیاد کیس ہے. 211 00:10:17,010 --> 00:10:18,430 N 1 سے برابر ہے تو، کو روکنے کے. 212 00:10:18,430 --> 00:10:20,230 ہم کسی بھی زیادہ تکرار نہیں کر رہے ہیں. 213 00:10:20,230 --> 00:10:23,730 >> لیکن ہم دو پنراورتی مقدمات ہیں. 214 00:10:23,730 --> 00:10:28,750 (ن) بھی ہے تو، ہم ایک پنراورتی کرتے کیس، ن 2 سے تقسیم بلا. 215 00:10:28,750 --> 00:10:33,950 (ن) عجیب ہے تو، ہم ایک مختلف کرنا 3 اوقات (ن) کے علاوہ 1 پنراورتی کیس. 216 00:10:33,950 --> 00:10:39,120 >> اور اس طرح یہ ویڈیو کے لئے مقصد ہے ، ایک دوسرے کے لے ویڈیو کو روکنے کے لئے، 217 00:10:39,120 --> 00:10:42,440 اور کوشش کریں اور یہ لکھیں پنراورتی تقریب Collatz 218 00:10:42,440 --> 00:10:47,640 تم کہاں، ایک قدر ن میں منتقل اور یہ کتنے قدم یہ حساب لگاتا ہے 219 00:10:47,640 --> 00:10:52,430 آپ (ن) کی طرف سے شروع کرتے ہیں تو 1 حاصل کرنے کے لئے لیتا ہے اور آپ کے اوپر ان اقدامات پر عمل کریں. 220 00:10:52,430 --> 00:10:56,660 N 1 ہے تو، یہ 0 اقدامات. 221 00:10:56,660 --> 00:11:00,190 دوسری صورت میں، یہ جا رہا ہے تاہم ایک قدم کے علاوہ لے 222 00:11:00,190 --> 00:11:06,200 یہ یا تو (ن) پر لے جاتا ہے کئی اقدامات 2 سے تقسیم ن بھی ہے، یا 3N پلس 1 تو 223 00:11:06,200 --> 00:11:08,100 (ن) عجیب ہے. 224 00:11:08,100 --> 00:11:11,190 >> اب، میں یہاں کی سکرین پر ڈال دیا آپ کے لئے ٹیسٹ چیزوں کے ایک جوڑے، 225 00:11:11,190 --> 00:11:15,690 آپ کے لئے ٹیسٹ مقدمات کی ایک جوڑے، کو دیکھنے کے لئے ان مختلف Collatz تعداد ہیں، 226 00:11:15,690 --> 00:11:17,440 اور یہ بھی ایک مثال اقدامات کی کہ 227 00:11:17,440 --> 00:11:20,390 تو آپ کر سکتے ہیں کے ذریعے چلا گیا کیا جا کرنے کی ضرورت ہے قسم کی کارروائی میں اس عمل کو دیکھنے. 228 00:11:20,390 --> 00:11:24,222 (ن) کے برابر ہے تو 1، (ن) کے Collatz 0. 229 00:11:24,222 --> 00:11:26,180 تمہیں کیا کرنا ہے نہیں ہے کچھ 1 کو واپس حاصل کرنے. 230 00:11:26,180 --> 00:11:27,600 آپ نے پہلے ہی وہاں ہو. 231 00:11:27,600 --> 00:11:30,550 >> ن 2 ہے تو، یہ لیتا ہے ایک مرحلہ نمبر 1 حاصل کرنے کے لئے. 232 00:11:30,550 --> 00:11:31,810 آپ کو 2 کے ساتھ شروع. 233 00:11:31,810 --> 00:11:33,100 ویسے، 2 1 کے برابر نہیں ہے. 234 00:11:33,100 --> 00:11:36,580 تو یہ ایک قدم جا رہا ہے علاوہ تاہم بہت سے قدم یہ 235 00:11:36,580 --> 00:11:38,015 پر لیتا ن 2 سے تقسیم. 236 00:11:38,015 --> 00:11:41,280 237 00:11:41,280 --> 00:11:42,910 >> 2 سے تقسیم 2 1 ہے. 238 00:11:42,910 --> 00:11:47,200 تو یہ تاہم ایک قدم کے علاوہ لیتا بہت سے اقدامات 1 کے لئے لیتا ہے. 239 00:11:47,200 --> 00:11:49,720 1 صفر اقدامات. 240 00:11:49,720 --> 00:11:52,370 >> آپ دیکھ سکتے ہیں کے طور پر 3 کے طور پر، وہاں ہے بہت چند قدم ملوث. 241 00:11:52,370 --> 00:11:53,590 آپ 3 سے چلے جاؤ. 242 00:11:53,590 --> 00:11:56,710 اور پھر آپ کے پاس جاؤ 10، 5، 16، 8، 4، 2، 1. 243 00:11:56,710 --> 00:11:58,804 1 کو واپس حاصل کرنے سات اقدامات. 244 00:11:58,804 --> 00:12:01,220 آپ دیکھ سکتے ہیں کے طور پر، وہاں ایک یہاں جوڑے دیگر ٹیسٹ کے مقدمات 245 00:12:01,220 --> 00:12:02,470 آپ کے پروگرام کے باہر کی جانچ کرنے کے لئے. 246 00:12:02,470 --> 00:12:03,970 تو ایک بار پھر، ویڈیو کو روکنے کے. 247 00:12:03,970 --> 00:12:09,210 اور مجھے اب واپس کود جائیں گے اصل عمل یہاں کیا، 248 00:12:09,210 --> 00:12:11,390 قیاس ہے. 249 00:12:11,390 --> 00:12:14,140 >> آپ کو پتہ کر سکتے ہیں دیکھو (ن) کے Collatz کی وضاحت کرنے کے لئے کس طرح 250 00:12:14,140 --> 00:12:19,967 یہ کتنے کا حساب لگاتا ہے تاکہ 1 حاصل کرنے کے لئے لیتا ہے اقدامات. 251 00:12:19,967 --> 00:12:23,050 تو امید ہے کہ، آپ کو ویڈیو کو روک دیا ہے اور آپ کو صرف میرے لئے انتظار کر رہے ہیں نہیں کر رہے ہیں 252 00:12:23,050 --> 00:12:25,820 یہاں آپ کو جواب دینے کے لئے. 253 00:12:25,820 --> 00:12:29,120 لیکن اگر آپ اچھی طرح سے، یہاں جواب ویسے بھی ہے. 254 00:12:29,120 --> 00:12:33,070 >> تو یہاں ایک ممکنہ تعریف ہے Collatz تقریب کی. 255 00:12:33,070 --> 00:12:35,610 (ن) ہے تو ہماری بنیاد case-- 1 سے برابر، ہم 0 واپس. 256 00:12:35,610 --> 00:12:38,250 یہ کسی بھی لے نہیں ہے اقدامات 1 کو واپس حاصل کرنے. 257 00:12:38,250 --> 00:12:42,710 >> دوسری صورت میں، ہم نے دو پنراورتی cases-- ہے بھی تعداد کے لئے ایک اور عجیب کے لئے ایک. 258 00:12:42,710 --> 00:12:47,164 میں بھی تعداد کے لئے ٹیسٹ طریقہ ن جدید 2 0 کے برابر ہے تو جانچ پڑتال کرنے کے لئے ہے. 259 00:12:47,164 --> 00:12:49,080 یہ، ایک بار پھر، بنیادی طور پر ہے سوال پوچھ، 260 00:12:49,080 --> 00:12:54,050 تم کیا جدید is-- یاد اگر میں 2 کی طرف سے تقسیم (ن) کوئی باقی ہے؟ 261 00:12:54,050 --> 00:12:55,470 کہ اس سے بھی بڑی تعداد ہو جائے گا. 262 00:12:55,470 --> 00:13:01,370 >> اور تو (ن) جدید 2 0 برابر ہے ٹیسٹنگ اس سے بھی بڑی تعداد ہے. 263 00:13:01,370 --> 00:13:04,250 اگر ایسا ہے تو، میں نے 1 واپس کرنا چاہتے ہیں، یہ یقینی طور پر ہے کیونکہ 264 00:13:04,250 --> 00:13:09,270 ایک قدم کے علاوہ Collatz لینے جو کچھ بھی نمبر مجھ سے نصف ہے. 265 00:13:09,270 --> 00:13:13,910 دوسری صورت میں، میں نے 1 واپس کرنا چاہتے ہیں علاوہ Collatz کے 3 اوقات (ن) کے علاوہ 1. 266 00:13:13,910 --> 00:13:16,060 کہ دوسرے تھا پنراورتی قدم ہے کہ ہم 267 00:13:16,060 --> 00:13:19,470 حساب کرنے لگ سکتا ہے اقدامات کی تعداد Collatz-- 268 00:13:19,470 --> 00:13:22,610 اسے واپس حاصل کرنے کے لئے لیتا 1 ایک نمبر دیا. 269 00:13:22,610 --> 00:13:24,610 تو امید ہے کہ، اس مثال آپ کو تھوڑا سا دیا 270 00:13:24,610 --> 00:13:26,620 پنراورتی طریقہ کار کی ایک ذائقہ. 271 00:13:26,620 --> 00:13:30,220 امید ہے، آپ کو کوڈ ہے تھوڑا زیادہ تو خوبصورت لاگو 272 00:13:30,220 --> 00:13:32,760 ایک خوبصورت، پنراورتی انداز میں. 273 00:13:32,760 --> 00:13:35,955 بھی نہیں لیکن اگر، تکرار ہے بہر حال واقعی طاقتور آلہ. 274 00:13:35,955 --> 00:13:38,330 اور اس طرح یہ یقینی طور پر کچھ ہے ارد گرد اپنے سر حاصل کرنے کے لئے، 275 00:13:38,330 --> 00:13:41,360 آپ کو بنانے کے لئے قابل ہو جائے گا، کیونکہ تکرار استعمال بہت اچھا پروگرام 276 00:13:41,360 --> 00:13:45,930 کہ دوسری صورت میں لکھنے کے لئے پیچیدہ ہو سکتا ہے آپ loops اور iteration کے استعمال کر رہے ہیں. 277 00:13:45,930 --> 00:13:46,980 میں ڈوگ لایڈ ہوں. 278 00:13:46,980 --> 00:13:48,780 یہ CS50 ہے. 279 00:13:48,780 --> 00:13:50,228