1 00:00:00,000 --> 00:00:03,000 [Powered by Google Translate] [অনুচ্ছেদ 3] [কম আরামদায়ক] 2 00:00:03,000 --> 00:00:05,000 >> [Nate Hardison] [হার্ভার্ড বিশ্ববিদ্যালয়] 3 00:00:05,000 --> 00:00:08,000 >> [এটি CS50.] [CS50.TV] 4 00:00:08,000 --> 00:00:10,000 >> ঠিক আছে, এবার শুরু করি. 5 00:00:10,000 --> 00:00:13,000 স্বাগতম CS50 সপ্তাহের 4. 6 00:00:13,000 --> 00:00:19,000 আপনি যদি না একটি ওয়েব ব্রাউজার খুলুন এবং pset 3 খুলুন, 7 00:00:19,000 --> 00:00:23,000 CS50 সঙ্গে একত্র, আমরা যাব শুরু চলুন 8 00:00:23,000 --> 00:00:26,000 প্রশ্নের মাধ্যমে সেখানে বিভাগে. 9 00:00:26,000 --> 00:00:32,000 গত সপ্তাহেই মত, আমরা CS50 শূন্যস্থানের হবে কাজ, 10 00:00:32,000 --> 00:00:35,000 যদি আপনি যে ডাঁটা হিসাবে পাবেন, 11 00:00:35,000 --> 00:00:43,000 এবং আপনি যদি এগিয়ে যান এবং এই লিঙ্ক আছে যা আমি উপরে আছে এখানে আপ করেছি যান. 12 00:00:43,000 --> 00:00:45,000 এটা সময় শুরু. 13 00:00:45,000 --> 00:00:51,000 আমরা আমাদের সামান্য হাই এখানে প্রোগ্রাম পেয়েছেন. কিছুই ছবি. 14 00:00:51,000 --> 00:00:55,000 প্রথমে আমি আপনাকে বলছি সঙ্গে আজ কাজ করতে চান ওয়ান কয়েক সমাধান যেতে বেশী 15 00:00:55,000 --> 00:00:58,000 যাও সমস্যা সেট 1, যেমন সমাধান ধরনের, 16 00:00:58,000 --> 00:01:03,000 ঠিক তাই আপনি কোড কর্মীরা কি ধরণের লেখা হয় জন্য একটি অনুভূতি পেতে পারেন, 17 00:01:03,000 --> 00:01:07,000 লেখা কোড কি অন্যান্য ছাত্র ধরণের হয়, 18 00:01:07,000 --> 00:01:10,000 আছে এবং আপনি কি এটা বর্ণন কারণ আমি জানি এটা অদ্ভুত লাগতে 19 00:01:10,000 --> 00:01:14,000 আপনি যখন একটি সমস্যা সমাধান এবং একটি সেট জমা মন্তব্য পেতে 20 00:01:14,000 --> 00:01:18,000 আপনার নিজস্ব সংস্করণ, কখনও কখনও কিন্তু এটা কিভাবে অন্য জনের তা দেখতে সহায়ক, 21 00:01:18,000 --> 00:01:22,000 বিশেষ করে যা বেশী সুন্দর খুঁজছি. 22 00:01:22,000 --> 00:01:27,000 অধিকাংশ অংশ জন্য, আমি সত্যিই সমাধান যে আপনি না প্রযোজিত অঙ্কিত ছিল. 23 00:01:27,000 --> 00:01:31,000 আমি আপনার সমস্যা সেট 2s এ খুঁজছেন এখনো শুরু করেন নি, কিন্তু যদি তারা প্রথম ভালো কিছু, 24 00:01:31,000 --> 00:01:34,000 এটা আর কিছুই ভাল জিনিষ মানে. 25 00:01:34,000 --> 00:01:40,000 >> আপনি যদি আমার পুনর্বিবেচনা তাকান, যাক এর সমস্ত উপায় শুরু পরিবর্তনসমূহ 1 এ, 26 00:01:40,000 --> 00:01:47,000 এবং আমরা একটি মারিও সমাধান সময়ে দ্রুত কটাক্ষপাত চলুন. 27 00:01:47,000 --> 00:01:54,000 যদি আপনি এই থামা, এই প্রোগ্রামগুলি যে আমরা উপস্থাপন করতে যাচ্ছেন সঠিক. 28 00:01:54,000 --> 00:01:56,000 , ছিল না বরং এই সব সমস্যার শুদ্ধি বিষয় না, 29 00:01:56,000 --> 00:01:59,000 আমরা বিভিন্ন নকশা বিষয় সম্পর্কে সামান্য বিট কথা বলতে চান 30 00:01:59,000 --> 00:02:03,000 যে এখানে ছিল ব্যবহৃত হচ্ছে. 31 00:02:03,000 --> 00:02:08,000 সমাধান সম্পর্কে যে ছিল আকর্ষণীয় এক 32 00:02:08,000 --> 00:02:11,000 যা এই নতুন নির্মানের নামক আধা কেজি সংজ্ঞায়িত ব্যবহৃত, 33 00:02:11,000 --> 00:02:15,000 কখনও কখনও এছাড়াও হিসাবে সংজ্ঞায়িত একটি হ্যাশ উল্লেখ করা হয়. 34 00:02:15,000 --> 00:02:18,000 আমাকে এটা এখানে জুম. 35 00:02:18,000 --> 00:02:24,000 একটি # define আপনি আপনার প্রোগ্রামের মধ্যে এই সংখ্যা যাও যাও নাম দিতে পারবেন. 36 00:02:24,000 --> 00:02:28,000 এই ক্ষেত্রে, একটি পিরামিডের সর্বোচ্চ মারিও উচ্চতা 37 00:02:28,000 --> 00:02:34,000 ছিল 23 এবং বদলে আমার মধ্যে 23 নির্বাণ কোড- 38 00:02:34,000 --> 00:02:37,000 আমরা হার্ড কোডিং 23 হিসাবে যে পড়ুন হবে - 39 00:02:37,000 --> 00:02:43,000 পরিবর্তে এই যে নম্বর নামের MAX_HEIGHT দেয়, 40 00:02:43,000 --> 00:02:48,000 যাতে নিচে এখানে আমার কি সময় লুপ 41 00:02:48,000 --> 00:02:51,000 আপনি আসলে MAX_HEIGHT পাঠাতে পারেন 42 00:02:51,000 --> 00:02:55,000 এর পরিবর্তে সংখ্যা 23 নির্বাণ ইন 43 00:02:55,000 --> 00:02:57,000 [ছাত্র] কি যে এরকম সুবিধা? 44 00:02:57,000 --> 00:02:59,000 এটা একটি বড় প্রশ্ন. 45 00:02:59,000 --> 00:03:03,000 এর মধ্যে একটি হল পাঠযোগ্যতা. 46 00:03:03,000 --> 00:03:08,000 ব্যবহার করে এই # সংজ্ঞায়িত একটি সুবিধা হলো পাঠযোগ্যতা. 47 00:03:08,000 --> 00:03:11,000 যখন আমি এই কোড পড়া করছি, আমি কি ঘটছে তা দেখতে পারেন. 48 00:03:11,000 --> 00:03:15,000 >> আমি এখানে এই শর্তে যে, আমরা পরীক্ষা করে তা দেখতে পারেন 49 00:03:15,000 --> 00:03:19,000 জন্য উচ্চতা হচ্ছে <0, যা আমরা সংজ্ঞায়িত করতে 50 00:03:19,000 --> 00:03:22,000 একটি সর্বনিম্ন উচ্চতা অথবা একটি কমপক্ষে উচ্চতা হতে. 51 00:03:22,000 --> 00:03:25,000 অন্যান্য সুবিধা হল যে আমি তারপর লাইন বাকি দেখুন পড়তে পারেন 52 00:03:25,000 --> 00:03:30,000 যে আমরা নিশ্চিত যে উচ্চতা সর্বোচ্চ উচ্চতার তুলনায় বেশী নয়, তবে চেক করছি, 53 00:03:30,000 --> 00:03:35,000 কারণ আমরা যখন উচ্চতা হল সর্বোচ্চ উচ্চতার তুলনায় অধিকতর অগ্রসর চলুন. 54 00:03:35,000 --> 00:03:40,000 অন্যান্য সুবিধা হল, যদি আমি সামান্য বিট জুম আউট এখানে- 55 00:03:40,000 --> 00:03:49,000 যদি আমি এই প্রোগ্রাম চালানো এবং আমি 23 রান দিয়ে বলা যায়, এখন বলার অধিকার, 56 00:03:49,000 --> 00:03:52,000 এটি সব ঠিক সেই মতো 23 সারি প্রিন্ট আউট হবে. 57 00:03:52,000 --> 00:03:54,000 কিন্তু বলতে আমি সর্বোচ্চ উচ্চতা পরিবর্তন করতে চান, 58 00:03:54,000 --> 00:03:57,000 এবং এখন আমি পিরামিড সর্বোচ্চ উচ্চতা সীমাবদ্ধ করতে চান 59 00:03:57,000 --> 00:04:06,000 শুধুমাত্র-বলতে মানুষ, যে ছিল ভীত হবে. 60 00:04:06,000 --> 00:04:14,000 # অন্তর্ভুক্ত , # define MAX_HEIGHT, 61 00:04:14,000 --> 00:04:18,000 এবং এর যাক বলতে আমরা সমান 10 সেট চেয়েছিলেন. 62 00:04:18,000 --> 00:04:22,000 এখন এই সময়ে, আমি না হয় এই ছিল এক অবস্থান তা পরিবর্তন. 63 00:04:22,000 --> 00:04:27,000 আমি কোড recompile, এখন যদি আমি 12 এ চেষ্টা করতে পারেন এবং টাইপ করুন, 64 00:04:27,000 --> 00:04:30,000 এটা আবার সম্পর্কে লেখার অনুরোধ জানানো হবে. 65 00:04:30,000 --> 00:04:33,000 এই ক্ষেত্রে, আমরা কেবল MAX_HEIGHT একবার ব্যবহার করছেন. 66 00:04:33,000 --> 00:04:37,000 এটা যে বড় একটি ঝগড়া না এ যান 67 00:04:37,000 --> 00:04:40,000 এবং যখন লুপ আপনি যদি প্রয়োজন পরিবর্তন. 68 00:04:40,000 --> 00:04:44,000 কিন্তু প্রোগ্রাম যেখানে আপনি একই ম্যাজিক নম্বর উল্লেখ করছি 69 00:04:44,000 --> 00:04:47,000 বহুবার, # এই প্রক্রিয়া সংজ্ঞায়িত হয় সত্যিই সুবিধাজনক 70 00:04:47,000 --> 00:04:52,000 কারণ আপনি ফাইলটি-এর যেখানে আপনি এটা সাধারণত করা তাদের-শীর্ষে এক সময় এটি পরিবর্তন 71 00:04:52,000 --> 00:04:57,000 এবং পরিবর্তন ফাইল বাকি মাধ্যমে percolates. 72 00:04:57,000 --> 00:05:02,000 >> অন্যান্য বিষয় আমি এই নিয়োগ যে আমি মনে রাখবেন চেয়েছিলেন সত্যিই সুন্দর লাগছিল, 73 00:05:02,000 --> 00:05:05,000 এক ছিল ভেরিয়েবল এর নামকরণের. 74 00:05:05,000 --> 00:05:14,000 আপনি এখানে দেখতে যে আমরা পূর্ণসংখ্যা নামক সারি এবং তথাকথিত উচ্চতা ভেরিয়েবল পেয়েছেন. 75 00:05:14,000 --> 00:05:20,000 শূন্যস্থানের, hashes, এটি সাহায্য করে কোড সামান্য আরো পাঠযোগ্য না, 76 00:05:20,000 --> 00:05:25,000 এটা একটু বেশি বোধগম্য আসলে কি হচ্ছে না. 77 00:05:25,000 --> 00:05:31,000 এটি ব্যবহার করে এর বিপরীতে হয়, র্যান্ডম অক্ষর বলে, 78 00:05:31,000 --> 00:05:35,000 বা ঠিক পুরাপুরি gobbledygook. 79 00:05:35,000 --> 00:05:39,000 একটি জিনিস আমি চূড়ান্ত বাতলান করবেন তা loops জন্য যে, 80 00:05:39,000 --> 00:05:45,000 প্রায়ই এই iterator ভেরিয়েবল, এই কাউন্টারে যে আপনার মধ্যে আপনি loops জন্য ব্যবহার, 81 00:05:45,000 --> 00:05:51,000 এটা মান এবং হয় না এবং তারপর ঞ সঙ্গে তাদের প্রথাগত তারপর শুরু এবং ট 82 00:05:51,000 --> 00:05:54,000 এবং সেখান থেকে যাওয়া যদি আপনি আরো ভেরিয়েবল প্রয়োজন, 83 00:05:54,000 --> 00:05:56,000 এবং এটি শুধু একটি প্রচল. 84 00:05:56,000 --> 00:05:58,000 নিয়মাবলী প্রচুর আছে. 85 00:05:58,000 --> 00:06:00,000 এটা প্রোগ্রামিং ভাষা ব্যবহার করছেন উপর নির্ভর করে. 86 00:06:00,000 --> 00:06:04,000 কিন্তু সি, আমরা সাধারণত তোমার সাথে শুরু. 87 00:06:04,000 --> 00:06:08,000 এটা, বলতে না করা অর্থে ব্যবহার না একটি বা বো 88 00:06:08,000 --> 00:06:13,000 পরিস্থিতির উপর নির্ভর করে. 89 00:06:13,000 --> 00:06:15,000 এটা এই জন্য এটি একটি. 90 00:06:15,000 --> 00:06:25,000 এখন আপনি যদি পুনর্বিবেচনার 2 মুঠি ধরে টেনে তুলবো, আপনি অন্য মারিও দেখতে পাবেন, 91 00:06:25,000 --> 00:06:29,000 এবং এই এক অনুরূপ অন্য যে আমরা দেখেছি যাও, 92 00:06:29,000 --> 00:06:32,000 কিন্তু এটি শীতল কিছু ধরনের আছে. 93 00:06:32,000 --> 00:06:38,000 যদি আমরা এই অ w শটি তাকান অধিকার এখানে লুপ জন্য ভেতরের ভিতর, 94 00:06:38,000 --> 00:06:44,000 তারা কিছু ছবি খুঁজছি সিনট্যাক্স ব্যবহার করে এখানে ডান এই লাইনে থাকেন. 95 00:06:44,000 --> 00:06:47,000 এই একটি তিন অপারেটর বলা হয়. 96 00:06:47,000 --> 00:06:53,000 এটি একটি বিবৃতি যদি অন্য এক লাইন মধ্যে ঘনীভূত. 97 00:06:53,000 --> 00:06:57,000 শর্ত হল বন্ধনীর মধ্যে এই অংশ. 98 00:06:57,000 --> 00:07:05,000 এটা সমতুল্য বলছে যাও যদি ঞ <উচ্চতা - তোমার - 1. 99 00:07:05,000 --> 00:07:10,000 এবং তারপর কি যে বিষয়বস্তু যদি ব্লক করা যাবে স্থান 100 00:07:10,000 --> 00:07:16,000 এবং তারপর কি কি করতে হবে বিষয়বস্তুর # এই. 101 00:07:16,000 --> 00:07:20,000 এটা মূলত এই পরিবর্তনশীল এর একটি স্থান বরাদ্দ করুন. 102 00:07:20,000 --> 00:07:24,000 এটা ব্লক পরিবর্তনশীল বিষয়বস্তু মধ্যে একটি স্পেস এর নির্বাণ, 103 00:07:24,000 --> 00:07:29,000 যদি এই শর্ত পূরণ করা হয়, এবং যদি শর্ত পূরণ না হয়, 104 00:07:29,000 --> 00:07:32,000 তারপর পরিবর্তনশীল এই ব্লক # পায়. 105 00:07:32,000 --> 00:07:37,000 এবং তারপর, অবশ্যই, পরিবর্তে নির্মাণের একটি সম্পূর্ণ পংক্তি আপ 106 00:07:37,000 --> 00:07:43,000 এবং মুদ্রণ শেষে সবকিছু আউট এই সমাধান সেটা ছাপে একটি সময়ে এক চরিত্র. 107 00:07:43,000 --> 00:07:48,000 চমত্কার. 108 00:07:48,000 --> 00:07:53,000 >> জিনিষ তাকান আরেকটি দম্পতি. আমরা লোভী স্থানান্তরের উপর পাবেন. 109 00:07:53,000 --> 00:07:58,000 এখন যদি আমরা লোভী তাকান, এই প্রথম সমাধান 110 00:07:58,000 --> 00:08:00,000 এই ব্যবহার # বেশ একটু সংজ্ঞায়িত করে. 111 00:08:00,000 --> 00:08:06,000 আমরা একটি ধ্রুবক এই প্রোগ্রামের বিভিন্ন প্রতিটি সংখ্যার জন্য নির্ধারিত পেয়েছেন. 112 00:08:06,000 --> 00:08:12,000 আমরা এক ডলার প্রতি সেন্ট জন্য, ত্রৈমাসিক, dimes, nickels, এবং পেনিসমূহ জন্য এক পেয়েছেন, 113 00:08:12,000 --> 00:08:15,000 এবং এখন যদি আমরা স্ক্রোল ডাউন এবং কোড পড়া, 114 00:08:15,000 --> 00:08:22,000 আমরা একটি প্রমিত কাজ যখন লুপ মুদ্রণ সবকিছু দেখতে দেখতে পারেন. 115 00:08:22,000 --> 00:08:25,000 এই সমস্যার মূল অংশ কোন ধরনের বুঝতে ছিল যে 116 00:08:25,000 --> 00:08:29,000 আপনি float রূপান্তর একটি পূর্ণসংখ্যা যে আপনি থেকে ব্যবহারকারী পড়া প্রয়োজন 117 00:08:29,000 --> 00:08:32,000 যাও সঠিকভাবে গণিত, না এবং এই কারণ 118 00:08:32,000 --> 00:08:36,000 সঙ্গে ফ্লোটিং পয়েন্ট সংখ্যা, ভালো আমরা বক্তৃতায় সম্পর্কে সংক্ষেপে বললাম, 119 00:08:36,000 --> 00:08:41,000 এটি সঠিকভাবে প্রতি নম্বর লাইনে একক মূল্য অনুযায়ী সম্ভব নয় 120 00:08:41,000 --> 00:08:47,000 কারণ অসীম অনেক মধ্যে 3 এবং,, বলতে 3.1 এমনকি মান আছে. 121 00:08:47,000 --> 00:08:54,000 আপনি 3.01 এবং 3,001 এবং 3,0001 আছে, এবং আপনি বর্তা পারেন. 122 00:08:54,000 --> 00:09:00,000 এটি সক্রিয় আউট যখনই আপনি টাকা দিয়ে কাজ করছি, আপনি প্রায়ই তা রূপান্তর করতে চান 123 00:09:00,000 --> 00:09:05,000 পূর্ণসংখ্যা বিন্যাসে যাতে আপনি পেনিসমূহ এবং উপাদান ধরণের ক্ষতিকারক করছি না. 124 00:09:05,000 --> 00:09:09,000 এবং যে rounding Doing কী ছিল. 125 00:09:09,000 --> 00:09:14,000 এই সমাধান পুরোপুরি একটি সহজবোধ্য, মহান এলগরিদম ব্যবহার, 126 00:09:14,000 --> 00:09:17,000 যা decremented প্রথম ত্রৈমাসিক দ্বারা অবশিষ্ট সেন্ট নম্বর,, 127 00:09:17,000 --> 00:09:19,000 তারপর দ্বারা dimes, তারপর দ্বারা nickels, তারপর দ্বারা পেনিসমূহ, 128 00:09:19,000 --> 00:09:24,000 প্রতিটি কয়েন সময় সংখ্যা এবং যোগ. 129 00:09:24,000 --> 00:09:31,000 >> আরেকটি সমাধান যে আমরা, হিসাবে আমি জুম আউট এবং পুনর্বিবেচনার 4 যান দেখতে পাবেন, 130 00:09:31,000 --> 00:09:40,000 অনুরূপ একটি শুরুতে কিন্তু এর পরিবর্তে ব্যবহৃত div ও mod ছিল 131 00:09:40,000 --> 00:09:44,000 এখানে ডান উপর সেন্ট সংখ্যা গণনা. 132 00:09:44,000 --> 00:09:50,000 এই, ত্রৈমাসিক নম্বর সমান 25 দ্বারা বিভক্ত সেন্ট সংখ্যা, 133 00:09:50,000 --> 00:09:53,000 কারণ এবং এই কাজ করে কারণ আমরা পূর্ণসংখ্যা বিভাগ করছেন, 134 00:09:53,000 --> 00:09:58,000 তাই খারিজ কোনো অবশিষ্টাংশ. 135 00:09:58,000 --> 00:10:02,000 [ছাত্র] আমরা অনুসন্ধান মন্তব্য আছে কি? 136 00:10:02,000 --> 00:10:05,000 এটা সত্যিই নির্ভর করে. 137 00:10:05,000 --> 00:10:08,000 [ছাত্র] আপনি কোড বেশী মন্তব্য করছেন অধিকার এখানে. 138 00:10:08,000 --> 00:10:16,000 হ্যাঁ, তাই এবং এই দর্শন তারতম্য একটি গুচ্ছ আছে. 139 00:10:16,000 --> 00:10:21,000 আমার ব্যক্তিগত দর্শনের যে আপনার কোড সত্যিই সত্য, 140 00:10:21,000 --> 00:10:24,000 আপনার কোড মত কি কম্পিউটারে আসলে এর নির্বাহ, 141 00:10:24,000 --> 00:10:29,000 এবং তাই আপনি কোড সম্ভব হিসাবে হিসাবে অনেক মতামত হিসাবে অবশ্যম্ভাবী না পাঠযোগ্য হওয়া উচিত. 142 00:10:29,000 --> 00:10:33,000 যে বলেন, আপনি যখন প্রবঞ্চক এর জিনিষ যে ধরনের কাজ হয় গাণিতিকভাবে 143 00:10:33,000 --> 00:10:38,000 অথবা algorithmically, এটা যারা যাতে আপনি মন্তব্য করতে পারেন ভাল 144 00:10:38,000 --> 00:10:43,000 কেহ আপনার কোড পড়া হয় একটি অতিরিক্ত মাত্রা, একটি অতিরিক্ত স্তর যুক্ত. 145 00:10:43,000 --> 00:10:49,000 এই সমাধানগুলো ইন প্রায়ই, তারা আরো ব্যাপকভাবে ঠিক কারণ মন্তব্য করা হয় 146 00:10:49,000 --> 00:10:52,000 আমরা বিতরণ সক্ষম হতে চান এবং আছে মানুষ তাদের কুড়ান 147 00:10:52,000 --> 00:10:56,000 এবং তাদের চমত্কার সহজে পড়া. 148 00:10:56,000 --> 00:11:05,000 কিন্তু অবশ্যই, আমি যে এই ভারী সম্মত হবে. 149 00:11:05,000 --> 00:11:07,000 [ছাত্র] কিন্তু যখন সন্দেহ, ভারী যান? 150 00:11:07,000 --> 00:11:10,000 কোন সন্দেহ থাকলে, ভারী যান. 151 00:11:10,000 --> 00:11:17,000 কিছু মানুষ কখনো কখনো ফিরে যে ভালো 0 বা কিছু বলতে হবে. 152 00:11:17,000 --> 00:11:20,000 আমার মনে হয় এটা একটি হাস্যকর মন্তব্য নেই. 153 00:11:20,000 --> 00:11:22,000 স্পষ্টত যে কি ঘটছে. 154 00:11:22,000 --> 00:11:25,000 আমি ইংরেজি না যে সম্পর্কে বলা প্রয়োজন. 155 00:11:25,000 --> 00:11:28,000 কখনও কখনও জনের ভালো স্টাফ লিখুন "kthxbai!" হবে 156 00:11:28,000 --> 00:11:32,000 যে ছবি ধরনের কিন্তু না, 157 00:11:32,000 --> 00:11:35,000 যে মন্তব্য পয়েন্ট বা না করার মধ্যে পার্থক্য নেই. 158 00:11:35,000 --> 00:11:41,000 ঐ ধরণের মন্তব্য ঠিক আছে হে, হে. 159 00:11:41,000 --> 00:11:43,000 কুল. 160 00:11:43,000 --> 00:11:48,000 >> এই সময়ে, অপরিচিত কিছু সমস্যা প্রশ্নের অধ্যায় 3 সেট কাজ শুরু. 161 00:11:48,000 --> 00:11:52,000 আপনি যদি না এই আবার টানা, 162 00:11:52,000 --> 00:11:55,000 গত সপ্তাহে হিসাবে, আমরা এই বিভাগে হাফপ্যান্ট ঘড়ি যাচ্ছেন না. 163 00:11:55,000 --> 00:12:00,000 আমরা আপনাকে বলছি আপনার নিজের সময় যে দিন এবং প্রশ্ন সম্পর্কে আলাপ - আলোচনা করব. 164 00:12:00,000 --> 00:12:05,000 এই বিভাগে এখন কিন্তু আমরা একটু বেশী সময় কাটাতে যাচ্ছেন 165 00:12:05,000 --> 00:12:11,000 কোডিং বুনিয়াদি কম বিষয়ে কথা 166 00:12:11,000 --> 00:12:15,000 ভালো আমরা কি গত সপ্তাহে, এবং এর পরিবর্তে, আমরা উপর মনোনিবেশ করে যাচ্ছেন 167 00:12:15,000 --> 00:12:22,000 তত্ত্ব একটি সামান্য বিট আরো, তাই বাইনারি অনুসন্ধান সম্পর্কে কথা বলা এবং তারপর বাছাই. 168 00:12:22,000 --> 00:12:27,000 থেকে আপনাদের মধ্যে যারা বক্তৃতা সঙ্গে হয়েছে অনুসরণ বরাবর, 169 00:12:27,000 --> 00:12:30,000 কাউকে কি পার্থক্য হল একটি সংক্ষিপ্তবৃত্তি সম্পর্কে পারেন 170 00:12:30,000 --> 00:12:35,000 মধ্যে বাইনারি অনুসন্ধান এবং রৈখিক অনুসন্ধান? 171 00:12:35,000 --> 00:12:37,000 যাচ্ছে কি করছেন? নিশ্চিত. 172 00:12:37,000 --> 00:12:42,000 লিনিয়ার অনুসারে সাজানো তালিকা প্রতিটি উপাদান মাধ্যমে অনুসন্ধান অনুসন্ধান 173 00:12:42,000 --> 00:12:45,000 একের পর এক এক করে একের পর এক, 174 00:12:45,000 --> 00:12:50,000 এবং বাইনারি অনুসন্ধান 2 গ্রুপ মধ্যে তালিকা বিভাজিত হয়, 175 00:12:50,000 --> 00:12:57,000 চেক কি যে মান যদি আপনি অনুসন্ধান করছেন বড় মিডপয়েন্ট মান কম 176 00:12:57,000 --> 00:13:00,000 শুধু আপনি যে পাওয়া যায়, এবং যদি এটা কম, এটি নিম্ন তালিকা সঙ্গে যায় 177 00:13:00,000 --> 00:13:03,000 এবং তারপর আবার বিভক্ত যে, আছে একই ফাংশন 178 00:13:03,000 --> 00:13:07,000 সমস্ত উপায় নিচে পর্যন্ত এটি সমান মান স্থাপিত হতে মিডপয়েন্ট খুঁজে বের করে. 179 00:13:07,000 --> 00:13:10,000 রাইট. 180 00:13:10,000 --> 00:13:12,000 >> কেন আমরা যত্ন? 181 00:13:12,000 --> 00:13:20,000 কেন আমরা রৈখিক অনুসন্ধান বনাম বাইনারি অনুসন্ধান সম্পর্কে কথা বলে? 182 00:13:20,000 --> 00:13:22,000 হাঁ. 183 00:13:22,000 --> 00:13:24,000 বাইনারি অনেক দ্রুত, তাই যদি আপনি সমস্যা মাপ দুবার 184 00:13:24,000 --> 00:13:27,000 বরং এটি এক দুইবার হিসাবে অনেক বেশী পদক্ষেপ নেয়. 185 00:13:27,000 --> 00:13:29,000 ঠিক. 186 00:13:29,000 --> 00:13:31,000 এটা একটি বড় উত্তর. 187 00:13:31,000 --> 00:13:36,000 লিনিয়ার অনুসন্ধান খুব একটি সময়ে এক উপাদান পরীক্ষণ, 188 00:13:36,000 --> 00:13:39,000 এবং হিসাবে আমরা বক্তৃতা খুব প্রথম দিনে দেখেছি 189 00:13:39,000 --> 00:13:42,000 ডেভিড যখন তার ফোন বই উদাহরণ মাধ্যমে গিয়েছিলাম 190 00:13:42,000 --> 00:13:45,000 এবং ripped একটি সময়ে টেলিফোন বইয়ের একটি পৃষ্ঠা আউট 191 00:13:45,000 --> 00:13:47,000 এবং রাখা এবং বহুবার উপর যে আবার করছেন, 192 00:13:47,000 --> 00:13:51,000 তাকে একটি ফোন বই কেহ খুঁজে সত্যিই দীর্ঘ সময় নিতে হচ্ছে, 193 00:13:51,000 --> 00:13:55,000 যদি না, অবশ্যই, তিনি কারো জন্য বর্ণমালার খুব প্রারম্ভে খুঁজছিলাম. 194 00:13:55,000 --> 00:14:00,000 বাইনারি অনুসন্ধান সঙ্গে, আপনি অনেক দ্রুত যেতে পারেন, 195 00:14:00,000 --> 00:14:05,000 এবং এটি মাত্র দুইবার হিসাবে দ্রুত বা 3 বার হিসাবে দ্রুত বা 4 বার হিসাবে দ্রুত না. 196 00:14:05,000 --> 00:14:13,000 কিন্তু সমস্যা পায় এবং ছোট ছোট ছোট এবং অনেক তাড়াতাড়ি. 197 00:14:13,000 --> 00:14:17,000 এই ছবি আঁকা, আমরা কি ঘটছে সে সম্পর্কে কথা বলা শুরু করব 198 00:14:17,000 --> 00:14:21,000 যখন আমরা বাইনারি অনুসন্ধান লিখুন. 199 00:14:21,000 --> 00:14:27,000 হাতে সমস্যা হল যদি আমি সংখ্যার একটি অ্যারে আছে, 200 00:14:27,000 --> 00:14:40,000 1, 2, 3, 5, 7, 23, 45, 78, 12323 বলে, 201 00:14:40,000 --> 00:14:47,000 এবং তারপর 0 সেঃ একটি টন সঙ্গে এটি পরে 9, 202 00:14:47,000 --> 00:14:52,000 আমরা চিন্তা করা সত্যিই দ্রুত কি সক্ষম হতে চান 203 00:14:52,000 --> 00:14:57,000 সংখ্যার এই অ্যারে. 204 00:14:57,000 --> 00:15:00,000 আমি জানি এই মূর্খ এবং মনে হচ্ছে একটু একটু কল্পিত, 205 00:15:00,000 --> 00:15:02,000 কারণ ডান এখন এটা. 206 00:15:02,000 --> 00:15:05,000 আমরা একটি অ্যারের যে এটা খুব অনেক উপাদান আছে না আছে, 207 00:15:05,000 --> 00:15:08,000 এবং যদি আমি আপনাকে এক জিজ্ঞাসা আউট জিনিসটা কিনা বা না 208 00:15:08,000 --> 00:15:11,000 23 অ্যারের মধ্যে হল, আপনি যে চমত্কার দ্রুত করতে পারেন 209 00:15:11,000 --> 00:15:16,000 শুধু দ্বারা নেত্রপাত এই সময়ে এবং সম্পর্কে বলার yes অথবা no. 210 00:15:16,000 --> 00:15:20,000 এনালগ বিবেচনা যদি এই ছিল, কল্পনা, বলতে হয়, 211 00:15:20,000 --> 00:15:27,000 একটি সারি 10,000, 20,000 সারি সঙ্গে এক্সেল স্প্রেডশীট. 212 00:15:27,000 --> 00:15:31,000 অবশ্যই, আপনি কমান্ড ফল বা ফল নিয়ন্ত্রণ করবেন এবং কিছু খোঁজা যেতে পারে. 213 00:15:31,000 --> 00:15:33,000 এছাড়াও আপনি ফিল্টার এবং অনুসন্ধান উপাদান ব্যবহার করতে পারেন, 214 00:15:33,000 --> 00:15:37,000 কিন্তু যদি আপনি যে ফাইলটি লাইন মাধ্যমে পাতিপাতি দ্বারা যাও চেহারা ছিল, 215 00:15:37,000 --> 00:15:40,000 এটি একটি দীর্ঘ সময় আপনি সেটা খুঁজে নিতে হবে. 216 00:15:40,000 --> 00:15:42,000 এটা করার মত কোন ধরনের ফোন বই উদাহরণে খুব,, যেখানে 217 00:15:42,000 --> 00:15:44,000 একটি টেলিফোন বইয়ের এক পৃষ্ঠার মাধ্যমে একটি সময়ে কেউ দেখায়. 218 00:15:44,000 --> 00:15:47,000 সাধারণত, তারা মধ্যম যাও এটি খুলুন এব, 219 00:15:47,000 --> 00:15:50,000 অথবা ফোন বই ও অভিধান যেখানে অনেক ক্ষেত্রে 220 00:15:50,000 --> 00:15:54,000 আপনি আসলে এটা প্রথম চিঠি আছে অস্থির, 221 00:15:54,000 --> 00:16:01,000 যে প্রথম চিঠি আপনাকে এবং টুসকি খুলুন এবং সেখানে যাওয়ার মাধ্যমে শুরু. 222 00:16:01,000 --> 00:16:03,000 >> আপনার নামের আবার সম্পর্কে মনে করিয়ে দিন. >> স্যাম. 223 00:16:03,000 --> 00:16:05,000 Sam. 224 00:16:05,000 --> 00:16:11,000 ভালো লেগেছে স্যাম বলেন, যে রৈখিক অনুসন্ধান প্রক্রিয়া সত্যিই ধীর হবে, 225 00:16:11,000 --> 00:16:15,000 এবং পরিবর্তে বাইনারি অনুসন্ধান সঙ্গে, এই পদ্ধতি কাজ হল 226 00:16:15,000 --> 00:16:21,000 প্রতিটি সময় আমরা আমাদের অনুসন্ধান আলগোরিদিম একটি পুনরাবৃত্তির মধ্য দিয়ে যেতে হবে, 227 00:16:21,000 --> 00:16:27,000 আমরা অর্ধেক তালিকা, মূলত বিভক্ত করা যাচ্ছেন, 228 00:16:27,000 --> 00:16:33,000 দুটি ছোট তালিকা. 229 00:16:33,000 --> 00:16:39,000 লুপ এর পরবর্তী পুনরাবৃত্তিতে এবং তারপরে, আমরা এটি বাঁটা আবার করব 230 00:16:39,000 --> 00:16:44,000 অন্যান্য ছোট তালিকা. 231 00:16:44,000 --> 00:16:48,000 হিসাবে আপনি দেখতে পারেন, সমস্যা এবং ছোট ছোট পেয়ে রাখে 232 00:16:48,000 --> 00:16:55,000 কারণ আমরা তালিকা খারিজ অর্ধেক রাখা প্রতি একক সময়. 233 00:16:55,000 --> 00:16:59,000 কীভাবে এই বাতিল কাজ করে? 234 00:16:59,000 --> 00:17:05,000 শুধু হিসাবে একটি অনুস্মারক, আমরা কি করতে যাচ্ছি যদি আমরা একটি কম্পিউটার করছি 235 00:17:05,000 --> 00:17:11,000 এবং আমরা,, ছিল বলে এই তালিকার মধ্যে 5 নম্বর অনুসন্ধান 236 00:17:11,000 --> 00:17:15,000 আমরা মাঝখানে একটি নম্বর বাছাই করবে. 237 00:17:15,000 --> 00:17:26,000 এই তালিকার মধ্যম, কারণ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 নম্বর আছে, 238 00:17:26,000 --> 00:17:32,000 আমরা হয় 4 র্থ স্থান বা 5 নম্বর স্থান বাছাই চাই, 239 00:17:32,000 --> 00:17:38,000 এবং আমরা আমাদের যে তালিকা মধ্যম কল চাই. 240 00:17:38,000 --> 00:17:42,000 মাঝখানে নম্বর বাছাই করুন. 241 00:17:42,000 --> 00:17:51,000 তারপর, ঠিক স্যাম বলেন, আমরা যদি দেখতে যে নম্বর সমান পরীক্ষা হবে 242 00:17:51,000 --> 00:17:59,000 সংখ্যা যে আমরা পেতে চান অথবা আমাদের পছন্দসই নম্বর. 243 00:17:59,000 --> 00:18:06,000 এটি যদি সমান তারপর, আমরা এটা পেয়েছি. আমরা win. 244 00:18:06,000 --> 00:18:12,000 যদি সমান না, তারপরে ক্ষেত্রে একটি দম্পতি আছে. 245 00:18:12,000 --> 00:18:15,000 দুটি মামলা হয় সংখ্যা নম্বর আমরা এ খুঁজছেন তুলনায় আছে, 246 00:18:15,000 --> 00:18:19,000 অথবা এর চেয়ে কম. 247 00:18:19,000 --> 00:18:25,000 যদি এটি বৃহত্তর, আমরা অধিকার সরানো. 248 00:18:25,000 --> 00:18:33,000 এবং যদি কম, আমরা বাঁদিকে সরানো. 249 00:18:33,000 --> 00:18:41,000 এবং তখন আমরা আবার পুরো প্রক্রিয়ার পুনরাবৃত্তি 250 00:18:41,000 --> 00:18:48,000 উপর হয় ডান অর্ধেক বা তালিকার বাম অর্ধেক. 251 00:18:48,000 --> 00:18:51,000 >> আজ এর প্রথম বিভাগে সমস্যার চিন্তা করা হয় 252 00:18:51,000 --> 00:18:55,000 কিভাবে আমরা আসলে সি কোড এই প্রকাশ শুরু করতে পারেন. 253 00:18:55,000 --> 00:18:58,000 আমরা pseudocode করেছি এখানে পেয়েছিলাম. 254 00:18:58,000 --> 00:19:04,000 আমরা সেটিই হল শুরু করব আমি একটি নূতন স্থান থামা করব, 255 00:19:04,000 --> 00:19:09,000 এই সংস্করণ যাতে আমরা এই জন্য নোট সংরক্ষণ করে পরে আছে, 256 00:19:09,000 --> 00:19:20,000 আমরা এই সব মুছে দিন, এবং তারপর কপি সমস্যা সেট থেকে আটকান করব 257 00:19:20,000 --> 00:19:26,000 আমাদের স্থানে এই তথ্য, আশা এবং এই না বিরতি না. 258 00:19:26,000 --> 00:19:28,000 পারফেক্ট. 259 00:19:28,000 --> 00:19:33,000 যদি আপনি সব বলছি না যে, আপনার কপি করা এবং নতুন স্থান এই কোডটি পেস্ট করুন, 260 00:19:33,000 --> 00:19:43,000 মধ্যে একটি ফাঁকা এক. 261 00:19:43,000 --> 00:19:47,000 চলুন ড্যানিয়েল চেষ্টা করুন. আপনি যদি কম্পাইল এবং এই প্রোগ্রামটি চালানোর জন্য, এটি কাজ করছে না? 262 00:19:47,000 --> 00:19:49,000 এটা কি নং >> বলছে এর? 263 00:19:49,000 --> 00:19:53,000 এরা বলছে নিয়ন্ত্রণ অ অকার্যকর ফাংশন শেষে পৌঁছে. 264 00:19:53,000 --> 00:19:55,000 হ্যাঁ, তাই আমাকে এটি চালানোর চেষ্টা. 265 00:19:55,000 --> 00:19:59,000 আপনি কি এই না দেখা করার আগে? আপনি কি জানেন এর মানে কি? 266 00:19:59,000 --> 00:20:01,000 ঠিক আছে, আমি কি এই সামান্য বিট ব্যবচ্ছেদ. 267 00:20:01,000 --> 00:20:10,000 এটা file.c লাইনে 9 বলছে, আমরা 1 কলামের একটি ত্রুটি আছে এর, আপনি যেমন বলেছেন, 268 00:20:10,000 --> 00:20:16,000 এবং এটি বলছে যে এটি সতর্কতা এবং ত্রুটি রিটার্ন টাইপ সতর্কবার্তা থেকে এর গৌন. 269 00:20:16,000 --> 00:20:18,000 মনে রিটার্ন টাইপ, যা ইন্দ্রিয় তোলে সাথে কিছু ভালো হয়. 270 00:20:18,000 --> 00:20:21,000 আমরা একটি অ অকার্যকর ফাংশন আছে, যার মানে যে আমরা একটি ফাংশন পেয়েছেন 271 00:20:21,000 --> 00:20:24,000 যে অকার্যকর ফেরত দেয় না. 272 00:20:24,000 --> 00:20:27,000 একটি অকার্যকর ফাংশন হল এক ভালো যে দেখায়: 273 00:20:27,000 --> 00:20:35,000 অকার্যকর foo বিন্যাস (), এবং এটা অকার্যকর কারণ রিটার্ন টাইপ হয় অকার্যকর, 274 00:20:35,000 --> 00:20:38,000 যার মানে হল যে যদি আমরা এখানে কিছু ছিল 275 00:20:38,000 --> 00:20:45,000 ফিরতি 1 মত, আমরা এই জন্য কম্পাইলার ত্রুটি পেতে চাই. 276 00:20:45,000 --> 00:20:49,000 যাইহোক, আমরা একটি অ অকার্যকর ফাংশন আছে. 277 00:20:49,000 --> 00:20:51,000 আমাদের এই ক্ষেত্রে অ অকার্যকর ফাংশন আমাদের অনুসন্ধান ফাংশন 278 00:20:51,000 --> 00:20:56,000 কারণ এটি একটি bool ফেরত টাইপ আছে. 279 00:20:56,000 --> 00:20:59,000 যখন এটি যে একটি নিয়ন্ত্রণ অ অকার্যকর ফাংশন শেষে পৌঁছে এর বলছে, 280 00:20:59,000 --> 00:21:02,000 এর কারণ অনুসন্ধান একটি ফিরতি বিবৃতি আছে না. 281 00:21:02,000 --> 00:21:04,000 এই পার্টিশনটির ধরন bool কিছু ফেরত না. 282 00:21:04,000 --> 00:21:09,000 >> আমরা এটি ঠিক, এবং আপনি কি না কি মনে করতে পারেন 283 00:21:09,000 --> 00:21:13,000 ডিফল্ট অনুসন্ধান ফিরে উচিত? 284 00:21:13,000 --> 00:21:16,000 কি অনুসন্ধান ডিফল্ট ফিরতি মূল্য উচিত? 285 00:21:16,000 --> 00:21:19,000 কারণ কি আমরা শেষে লাগাতে পারেন. 286 00:21:19,000 --> 00:21:21,000 Charlotte, আপনার কাছে কোন-? 287 00:21:21,000 --> 00:21:23,000 সত্য বা মিথ্যা? >> সত্য বা মিথ্যা. 288 00:21:23,000 --> 00:21:26,000 কোনটি? 289 00:21:26,000 --> 00:21:28,000 মিথ্যা. আমি জানি না. 290 00:21:28,000 --> 00:21:30,000 মিথ্যা? চলুন এটি চেষ্টা করুন. 291 00:21:30,000 --> 00:21:32,000 আপনি কেন বলতে ফিরে মিথ্যা হবে? দারুণ অনুভূতি. 292 00:21:32,000 --> 00:21:35,000 [Charlotte] আমি জানি না. 293 00:21:35,000 --> 00:21:39,000 আমরা এই ক্ষেত্রে মিথ্যা ফিরে যাওয়ার কারণ আমাদের এই ডিফল্ট হবে করছি 294 00:21:39,000 --> 00:21:44,000 যদি কোনো কারণে তালিকা খালি বা সূচি 295 00:21:44,000 --> 00:21:46,000 যে আমরা না বিদ্যমান খুঁজছেন. 296 00:21:46,000 --> 00:21:50,000 তারপর খুব শেষে, যদি আমরা সত্য আগে প্রত্যাবর্তন করে এই কাজ না, 297 00:21:50,000 --> 00:21:55,000 সবসময় আমরা জানি যে এই ফাংশন নাঃ, এটা অ্যারের মধ্যে না বলতে হবে. 298 00:21:55,000 --> 00:21:58,000 আর খড়ের গাদা নাই. 299 00:21:58,000 --> 00:22:03,000 এখন যদি আমরা এবং কম্পাইল চালানোর জন্য এটি আমাকে এই যাতে আমরা এটি বৈঠাচালনা আপ সংরক্ষণ করতে পারেন. 300 00:22:03,000 --> 00:22:08,000 এখন যদি আমরা এবং কম্পাইল আমাদের প্রোগ্রাম চালানো, এটা তৈরী করে. 301 00:22:08,000 --> 00:22:12,000 আমরা আমাদের সামান্য প্রম্পট পেতে. 302 00:22:12,000 --> 00:22:20,000 যদি আমি আঘাত-4-uh উহু. 303 00:22:20,000 --> 00:22:25,000 এটা কিছু না মুদ্রণ. দেখে মনে হচ্ছে সবকিছু শেষ ঠিক আছে. 304 00:22:25,000 --> 00:22:35,000 আমরা এখনো সদস্য না হয়ে এই পূরণ পেয়েছেন 305 00:22:35,000 --> 00:22:39,000 আমরা এলগরিদম সম্পর্কে সায়ীদ pseudocode মধ্যে কিছুক্ষন আগে. 306 00:22:39,000 --> 00:22:44,000 সম্পর্কে চলুন দেখা যাক, এই সংরক্ষণ, 307 00:22:44,000 --> 00:22:49,000 এবং আমি যে অ্যালগরিদম পিছিয়ে আসা আবার করব. 308 00:22:49,000 --> 00:22:51,000 চলুন এই লোক আঘাত. না. 309 00:22:51,000 --> 00:22:58,000 এটা এখন পর্যন্ত. 310 00:22:58,000 --> 00:23:03,000 কিভাবে আমরা এই কাজ করে? 311 00:23:03,000 --> 00:23:11,000 কি শুরু এই কোড একটি বন্ধ জন্য ভাল কৌশল চান? 312 00:23:11,000 --> 00:23:16,000 আপনি মাঝখানে একটি নম্বর বাছাই আছে. 313 00:23:16,000 --> 00:23:23,000 কিভাবে আমরা একটি অ্যারের মাঝখানে একটি নম্বর বাছাই? 314 00:23:23,000 --> 00:23:25,000 কোন পরামর্শ? 315 00:23:25,000 --> 00:23:27,000 [ছাত্র] Strlen 2 দ্বারা বিভক্ত. 316 00:23:27,000 --> 00:23:32,000 Strlen 2 দ্বারা বিভক্ত. এটা একটি মহান এক. 317 00:23:32,000 --> 00:23:35,000 অ্যারে বিশেষ ধরণের সঙ্গে Strlen কাজ. 318 00:23:35,000 --> 00:23:38,000 কি ধরণের অ্যারে এর? 319 00:23:38,000 --> 00:23:44,000 স্ট্রিং অ্যারে, অক্ষর অ্যারে. 320 00:23:44,000 --> 00:23:48,000 এটা যে ধারণা একই সাজানোর যে আমরা প্রয়োগ করতে চান, 321 00:23:48,000 --> 00:23:52,000 কিন্তু আমরা strlen কারণ আমরা অক্ষরের একটি অ্যারের না ব্যবহার করা যাবে না. 322 00:23:52,000 --> 00:23:55,000 আমরা ints একটি অ্যারে আছে. 323 00:23:55,000 --> 00:23:58,000 Strlen কি তবে আমাদের জন্য পেতে পারি? 324 00:23:58,000 --> 00:24:01,000 আপনি কি জানেন যে এটা আমাদের জন্য পায়? 325 00:24:01,000 --> 00:24:03,000 [ছাত্র] Strlen পায় দ্বারা আমাদের. 326 00:24:03,000 --> 00:24:05,000 ঠিক, সেটা দ্বারা আমাদের. 327 00:24:05,000 --> 00:24:09,000 Strlen আমাদের জন্য অ্যারের দ্বারা পায়. 328 00:24:09,000 --> 00:24:14,000 >> কিভাবে আমরা আমাদের বাইনারি অনুসন্ধান প্রোগ্রামে যে পেতে পারি? 329 00:24:14,000 --> 00:24:18,000 কিভাবে একটি অ্যারের দ্বারা আপনি পেতে চান? 330 00:24:18,000 --> 00:24:20,000 [ছাত্র] Strlen? 331 00:24:20,000 --> 00:24:25,000 আপনি strlen সঙ্গে একটি সঠিকভাবে বিন্যস্ত C স্ট্রিং অ্যারের দ্বারা পেতে পারেন. 332 00:24:25,000 --> 00:24:31,000 সমস্যা যদিও, যে আমরা একটি স্ট্রিং অ্যারের না. 333 00:24:31,000 --> 00:24:36,000 যদি আমরা এই কোড ফিরে, আমরা এই পূর্ণসংখ্যা অ্যারে আছে. 334 00:24:36,000 --> 00:24:38,000 কিভাবে আমরা জানি না কতদিন এটা হয়? 335 00:24:38,000 --> 00:24:44,000 [ছাত্র] কি কোন শেষবিন্দু জন্য সমতুল্য int-l বা এরকম কিছু এক,? 336 00:24:44,000 --> 00:24:49,000 এটি সক্রিয় আউট আসলে না হয়, এবং তাই একটা উপায়, এই হল 337 00:24:49,000 --> 00:24:52,000 ঐ যে মাত্র সি সম্পর্কে জানতে ভাল এক, 338 00:24:52,000 --> 00:24:57,000 যে কোন উপায় একটি অ্যারের দ্বারা পেতে আছে 339 00:24:57,000 --> 00:24:59,000 সব যদি আমি আপনাকে দিতে হয় অ্যারে. 340 00:24:59,000 --> 00:25:02,000 কারণ এটি স্ট্রিং সাথে কাজ করে, কারণ strlen কাজ, 341 00:25:02,000 --> 00:25:06,000 এর কারণ যদি সঠিকভাবে একটি স্ট্রিং ফরম্যাট করা হয়, 342 00:25:06,000 --> 00:25:12,000 এটি খুব শেষে যে বিশেষ \ 0 চরিত্র থাকবে. 343 00:25:12,000 --> 00:25:16,000 >> আপনি কল্পনা আপনি যদি একটি অন্যায়ত ফরম্যাট স্ট্রিং থাকতে পারে 344 00:25:16,000 --> 00:25:20,000 এবং সেখানে এর কোন \ 0 অক্ষরের পরে, সমগ্র জিনিস কাজ করছে না. 345 00:25:20,000 --> 00:25:22,000 [ছাত্র] \ 0 আপনি যোগ করতে পারি? 346 00:25:22,000 --> 00:25:24,000 আমরা এই মামলা করতে পারে. 347 00:25:24,000 --> 00:25:29,000 আমরা \ 0 সাজানোর কিছু যোগ করতে পারে 348 00:25:29,000 --> 00:25:33,000 বা চরিত্র বোধক তারপর এবং কিছু সাজানোর যে ব্যবহার. 349 00:25:33,000 --> 00:25:36,000 কিন্তু যে কাজ পুরোপুরি যাচ্ছে না 350 00:25:36,000 --> 00:25:40,000 কারণ \ 0 একটি গৃহস্থালি টাইপ জন্য হয়, 351 00:25:40,000 --> 00:25:43,000 এবং এখানে আমরা ints পেয়েছেন. 352 00:25:43,000 --> 00:25:46,000 অন্যান্য বিষয় যদি আমরা একটি বিশেষ কোন মান ব্যবহার করতে হয় 353 00:25:46,000 --> 00:25:49,000 -1 মত একটি অ্যারের শেষে চিহ্নিত 354 00:25:49,000 --> 00:25:54,000 তারপর আমরা আমাদের মধ্যে একটি পূর্ণসংখ্যা অ্যারে -1 কখনই সঞ্চয় করতে পারে. 355 00:25:54,000 --> 00:25:56,000 আমরা চাই আটকে করা হবে. 356 00:25:56,000 --> 00:26:00,000 এটা পরিনত হয় যে একমাত্র উপায় দ্বারা পেতে 357 00:26:00,000 --> 00:26:03,000 সি একটি অ্যারের প্রকৃতপক্ষে এটি মনে রাখা হয় 358 00:26:03,000 --> 00:26:08,000 আপনি যখন এটি সেট আপ এবং তারপর এটি পাস অ্যারের সঙ্গে কাছাকাছি 359 00:26:08,000 --> 00:26:14,000 যাতে যখনই আমি একটি ফাংশন যা কিছু কাজ করে যাচ্ছে আছে 360 00:26:14,000 --> 00:26:18,000 উপর পূর্ণসংখ্যার বা floats একটি শ্রেণীবিন্যাস বা দ্বিগুণ বা কি আছে আপনি, 361 00:26:18,000 --> 00:26:22,000 আমি এটাও অ্যারে এর দ্বারা দিতে ফাংশন প্রয়োজন, 362 00:26:22,000 --> 00:26:26,000 এবং যে ঠিক কি আমরা অনুসন্ধান কাজ সম্পন্ন করেছি এখানে. 363 00:26:26,000 --> 00:26:30,000 যদি আপনি চেহারা, কি আমরা যখন আমরা আমাদের অ্যারের মধ্যে এখানে পাস করেছেন, 364 00:26:30,000 --> 00:26:36,000 আমরা দৈর্ঘ্য, আকার পাস. 365 00:26:36,000 --> 00:26:41,000 এটা ঠিক যে আমরা এই পরিবর্তনশীল এখানে বলা আছে, 366 00:26:41,000 --> 00:26:43,000 এই পরামিতিটি বা যুক্তি. 367 00:26:43,000 --> 00:26:46,000 এই একটি ফাংশন এর যুক্তি তালিকা অথবা পরামিতি তালিকা বলা হয়, 368 00:26:46,000 --> 00:26:51,000 এবং এই বলা হয় আর্গুমেন্ট অথবা পরামিতি. 369 00:26:51,000 --> 00:26:53,000 মানুষ বিভিন্ন সময়ে বিভিন্ন পদ ব্যবহার. 370 00:26:53,000 --> 00:26:55,000 আমি তাদের মাঝে মাঝে নিজেকে অদলবদল. 371 00:26:55,000 --> 00:27:00,000 এটা ঠিক যে এই একভাবে এখানে পরিবর্তনশীল নামে হয় 372 00:27:00,000 --> 00:27:03,000 যাও # এই পর্যন্ত সংজ্ঞায়িত এখানে. 373 00:27:03,000 --> 00:27:06,000 কিন্তু তারা একই জিনিস না. 374 00:27:06,000 --> 00:27:11,000 ক্যাপিটালাইজেশন ব্যাপার আছে. 375 00:27:11,000 --> 00:27:14,000 >> যদি আপনি কি এখানে চেহারা, আমরা ঘোষণা 376 00:27:14,000 --> 00:27:18,000 আমাদের int-এ অ্যারে, যা আমরা সংখ্যা বলা করেছি. 377 00:27:18,000 --> 00:27:23,000 আমরা এটিকে আমাদের আকার, যা আমাদের # শীর্ষে আপ সংজ্ঞায়িত অনুরূপ দিয়েছি. 378 00:27:23,000 --> 00:27:27,000 এটি 8 করা যাচ্ছে. 379 00:27:27,000 --> 00:27:35,000 এবং তারপর তারপর যখন আমরা আমাদের অনুসন্ধান ফাংশন কল নিচে নিচে, 380 00:27:35,000 --> 00:27:40,000 আমরা নম্বর পাস আমরা অনুসন্ধান করতে চান, যা আমরা অনুরোধ জানানো করেছি, 381 00:27:40,000 --> 00:27:43,000 ব্যবহারকারী থেকে অর্জিত. 382 00:27:43,000 --> 00:27:46,000 আমরা অ্যারের মধ্যে পাস এই সংখ্যা,, 383 00:27:46,000 --> 00:27:51,000 এবং তারপর আমরা অ্যারের আকার মধ্যে পাস করতে হবে, 384 00:27:51,000 --> 00:27:57,000 এবং তারপর আকার 8 মান সঞ্চিত সম্ভার 385 00:27:57,000 --> 00:28:01,000 এই পূর্ণসংখ্যা পরিবর্তনশীল নামক মাপ বা পাশ. 386 00:28:01,000 --> 00:28:08,000 আমরা অ্যারের আকার আছে. 387 00:28:08,000 --> 00:28:11,000 এখন যদি আমরা কি তার আগে আমরা যে বিষয়ে কথা বলছি ফেরত যান, 388 00:28:11,000 --> 00:28:14,000 আমি মনে করি দু আনা পয়েন্ট যে আমরা কি কি প্রয়োজন অ্যারের দ্বারা পেতে আপ 389 00:28:14,000 --> 00:28:20,000 এবং 2 দ্বারা এটি, বিভক্ত করা এবং যে মিডপয়েন্ট আমাদের দিতে হবে. 390 00:28:20,000 --> 00:28:22,000 চলুন দেখুন. 391 00:28:22,000 --> 00:28:25,000 দিবেন কারো এই লিখুন এবং তাদের স্থান তা সংরক্ষণ করব? 392 00:28:25,000 --> 00:28:27,000 Leila সম্পর্কে কিভাবে? 393 00:28:27,000 --> 00:28:31,000 আমি পারি আপনি এই লিখা? 394 00:28:31,000 --> 00:28:35,000 প্রথম লাইন যেখানে আপনি অ্যারের দৈর্ঘ্য এবং নিতে মিডপয়েন্ট পেতে লিখুন 395 00:28:35,000 --> 00:28:41,000 এবং একটি নতুন ভেরিয়েবলের মধ্যে এটি সঞ্চয়. 396 00:28:41,000 --> 00:28:44,000 আমি একটি দম্পতি যাও দেব. আপনি কি প্রস্তুত? 397 00:28:44,000 --> 00:28:46,000 [ছাত্র শ্রবণাতীত] 398 00:28:46,000 --> 00:28:50,000 নিশ্চিত, আপনি আমি নিরূপণ মিডপয়েন্ট থাকতে পারে 399 00:28:50,000 --> 00:28:55,000 অনুসন্ধান ফাংশন ভিতরে খড়ের গাদা অ্যারে 400 00:28:55,000 --> 00:29:03,000 খড়ের গাদা অ্যারের দ্বারা ব্যবহার করে, যা মাপ পরিবর্তনশীল? 401 00:29:03,000 --> 00:29:08,000 এখানে কিছু চতুর. 402 00:29:08,000 --> 00:29:12,000 [Leila] শুধু আকার / 2 এবং শুধুমাত্র 403 00:29:12,000 --> 00:29:17,000 এবং এটি সংরক্ষণ করুন এবং উপরে আঘাত সংরক্ষণ করা হবে বাটন আপ এখানে, 404 00:29:17,000 --> 00:29:19,000 এবং আমরা এটি বৈঠাচালনা নেব. 405 00:29:19,000 --> 00:29:22,000 পারফেক্ট. 406 00:29:22,000 --> 00:29:28,000 এখন পর্যন্ত আমরা যেতে. জট্টিল. 407 00:29:28,000 --> 00:29:30,000 >> যেমন, এই সঙ্কলন করা হবে? 408 00:29:30,000 --> 00:29:32,000 [Leila] না, এটা বেশী প্রয়োজন. 409 00:29:32,000 --> 00:29:34,000 [Nate] হ্যাঁ, তাই আমরা কি কি প্রয়োজন না? 410 00:29:34,000 --> 00:29:36,000 [Leila] লেগেছে int-মিডপয়েন্ট বা কিছু. 411 00:29:36,000 --> 00:29:41,000 জট্টিল. হ্যাঁ, এর কি যাক যে, int-মিডপয়েন্ট = আকার. 412 00:29:41,000 --> 00:29:44,000 এই সঙ্কলন করা হবে? 413 00:29:44,000 --> 00:29:47,000 চলুন এই মন্তব্যটি মুছে দিন এবং এটা সবচেয়ে ভাল উপায়. 414 00:29:47,000 --> 00:29:50,000 কম্পাইল কি এই সম্পর্কে হবে না? 415 00:29:50,000 --> 00:29:52,000 আমরা কিছু করছি পূর্ণসংখ্যা সঙ্গে হইনি, 416 00:29:52,000 --> 00:29:55,000 যাতে আমরা তা বা যে ভালো কিছু মুদ্রণ প্রয়োজন. 417 00:29:55,000 --> 00:29:58,000 হাঁ, ঠিক. 418 00:29:58,000 --> 00:30:00,000 আমরা একটি অব্যবহৃত ভেরিয়েবল পাবেন. 419 00:30:00,000 --> 00:30:02,000 কি এই বিষয়ে কাজ করতে হবে না? 420 00:30:02,000 --> 00:30:06,000 আমি মনে করি আপনি কিছু, স্যাম বলেন. Semicolons. 421 00:30:06,000 --> 00:30:08,000 হাঁ, আমি যারা semicolons অনুপস্থিত করছি. 422 00:30:08,000 --> 00:30:14,000 এটি একটি শব্দ অবশ্যই সারা ধ্রুব বিষয় হতে যাচ্ছে. 423 00:30:14,000 --> 00:30:17,000 চূড়ান্ত জিনিস আমি করব আমি উভয় পাশ কিছু সাদা স্পেস রেখে দেব 424 00:30:17,000 --> 00:30:23,000 এই এখানে অপারেটর, যেহেতু সাধারণত যে কিভাবে আমরা তা করতে 425 00:30:23,000 --> 00:30:26,000 অনুযায়ী আমাদের শৈলী গাইড. 426 00:30:26,000 --> 00:30:29,000 আমরা আমাদের অ্যারের মিডপয়েন্ট পেয়েছেন. 427 00:30:29,000 --> 00:30:32,000 এখন যদি আমরা আমাদের এলগরিদম ফিরে মনে রাখবেন, 428 00:30:32,000 --> 00:30:37,000 দ্বিতীয় ধাপে যে আমরা একবার আমরা মিডপয়েন্ট আছে কি ছিল কি ছিল? 429 00:30:37,000 --> 00:30:42,000 [ছাত্র] যদি এটি বৃহত্তর [শ্রবণাতীত]. 430 00:30:42,000 --> 00:30:48,000 হাঁ, আমরা তুলনা কিছু সাজানোর কি আছে, এবং আমরা কি হয় এখানে তুলনা? 431 00:30:48,000 --> 00:30:53,000 আপনি যদি বলেন এটি চেয়ে বড়. যে বাক্য উল্লেখ যাও মধ্যে এটা কি? 432 00:30:53,000 --> 00:30:57,000 নম্বর যে আসে আপ, যদি মিডপয়েন্ট অধিক তারপর, অ্যারের আপ যান? 433 00:30:57,000 --> 00:31:05,000 ঠিক তাই, সংখ্যা যে আসে যখন আমরা- 434 00:31:05,000 --> 00:31:10,000 সুই, তাই আমরা সুই যাও তুলনা করছি, 435 00:31:10,000 --> 00:31:12,000 আমরা কি এবং সুই বিরুদ্ধে তুলনা হয়? 436 00:31:12,000 --> 00:31:15,000 কারণ সুই কি আমরা খুঁজছি. 437 00:31:15,000 --> 00:31:18,000 আমরা এটাকে মিডপয়েন্ট পেতে তুলনা. 438 00:31:18,000 --> 00:31:21,000 >> কিন্তু এটা যাও যাও দেখুন জানার জন্য 439 00:31:21,000 --> 00:31:27,000 যদি সুই = মিডপয়েন্ট? 440 00:31:27,000 --> 00:31:32,000 কি যে জানার জন্য? 441 00:31:32,000 --> 00:31:35,000 কেহ কি অসম্মতি? 442 00:31:35,000 --> 00:31:40,000 এর এটি একটি চেষ্টা করা যাক, যদি (সুই == মিডপয়েন্ট). 443 00:31:40,000 --> 00:31:42,000 [ছাত্র] printf আপনি কি এটি পাওয়া গেছে. 444 00:31:42,000 --> 00:31:51,000 [Nate] Printf ("আমরা এটা পাওয়া যায় নি \ n"); 445 00:31:51,000 --> 00:31:56,000 অন্যথা-I'm কিছু এখানে কাজ শুরু করতে যাচ্ছে. 446 00:31:56,000 --> 00:32:00,000 আমি যদি বিবৃতি প্রায় সব সময় ধনুর্বন্ধনী নির্বাণ শুরু চলেছি 447 00:32:00,000 --> 00:32:05,000 কারণ শুধুমাত্র যদি আমরা আরো স্টাফ তারপর, যোগ 448 00:32:05,000 --> 00:32:07,000 আমরা কম্পাইলার পাবেন না. 449 00:32:07,000 --> 00:32:09,000 হাঁ, স্যাম. আপনি একটি পয়েন্ট পেয়েছেন. 450 00:32:09,000 --> 00:32:12,000 সমস্যা হল মিডপয়েন্ট অ্যারের মধ্যে একটি অবস্থানের প্রতিনিধিত্ব করে, 451 00:32:12,000 --> 00:32:15,000 কিন্তু আপনি কি এটা অ্যারের যে অবস্থানে মান উপস্থাপন করতে পারেন. 452 00:32:15,000 --> 00:32:17,000 এটা একটি বড় বিন্দু. 453 00:32:17,000 --> 00:32:19,000 সবাই কি শুনতে কি স্যাম বলেন? 454 00:32:19,000 --> 00:32:22,000 তিনি বলেন যে মিডপয়েন্ট হিসাবে হয় 455 00:32:22,000 --> 00:32:28,000 শুধু অ্যারের মধ্যে একটি অবস্থান উপস্থাপন করে, কিন্তু এটি অ্যারের মধ্যে প্রকৃত উপাদান না. 456 00:32:28,000 --> 00:32:30,000 আপনি যদি কোড হিসাবে মনে করা সম্পর্কে অধিকার এখন, 457 00:32:30,000 --> 00:32:35,000 যদি আমরা এই অ্যারে তাকান নিচে এখানে, যা তা 8 উপাদান আছে, 458 00:32:35,000 --> 00:32:39,000 মিডপয়েন্ট এই ফাংশন করা যাচ্ছে মূল্য কি? 459 00:32:39,000 --> 00:32:41,000 [ছাত্র] 4. 460 00:32:41,000 --> 00:32:45,000 [Nate] 4. 461 00:32:45,000 --> 00:32:51,000 যদি আমরা 4 নম্বর জন্য দেখুন - 462 00:32:51,000 --> 00:32:54,000 এবং আমরা শুধু এই কোড রান এবং এখানে একটু দুঃখী মুখ লাগাতে পারেন 463 00:32:54,000 --> 00:32:58,000 কারণ আমরা তা যদি আমরা এই কোড রান না খুঁজে পাইনি 464 00:32:58,000 --> 00:33:04,000 সঠিক হিসাবে এখন, এটি আপলোড, বিল্ডিং, আমাকে নিচে স্ক্রল, 465 00:33:04,000 --> 00:33:09,000 এবং যদি আমরা 4 নম্বর জন্য দেখুন, 466 00:33:09,000 --> 00:33:18,000 আমরা এটি পাওয়া যায় নি, কিন্তু আমরা এই কি printf হ্যাঁ না. 467 00:33:18,000 --> 00:33:23,000 এর একটি কারন হল যে আমরা সত্য না ফিরে, 468 00:33:23,000 --> 00:33:26,000 কিন্তু সত্যিই কি আমরা 4 নম্বর খুঁজতে? 469 00:33:26,000 --> 00:33:28,000 এবং কোন স্যাম বলছে না. 470 00:33:28,000 --> 00:33:31,000 কি আমরা খুঁজে পেতে? 471 00:33:31,000 --> 00:33:35,000 আমরা সত্যিই মিডপয়েন্ট, যা যদি আমরা অ্যারে তাকান নিচে এখানে পাওয়া গেছে, 472 00:33:35,000 --> 00:33:38,000 এটি সূচক 4 এর উপাদান যাও হবে যে আমরা এ খুঁজছেন, 473 00:33:38,000 --> 00:33:42,000 যা 23. 474 00:33:42,000 --> 00:33:46,000 >> কিভাবে আমরা আসলে কি মিডপয়েন্ট এ যে উপাদান পাওয়া 475 00:33:46,000 --> 00:33:48,000 এবং? মিডপয়েন্ট নিজেই ঠিক না 476 00:33:48,000 --> 00:33:52,000 [ছাত্র] আমরা গৃহস্থালির কাজ করা বা কিছু লিখতে পারেন? 477 00:33:52,000 --> 00:33:55,000 শুধু আউট কৌতুহল কি যে, কি? 478 00:33:55,000 --> 00:33:57,000 আপনি আরো একটু সম্প্রসারিত করতে পারি? 479 00:33:57,000 --> 00:34:02,000 আপনি নম্বর মধ্যে স্থান রুপান্তর আছে, 480 00:34:02,000 --> 00:34:05,000 তাই আপনার জন্য কিছু পেয়েছেন সংযোগ-আমি মনে করি গৃহস্থালির কাজ, কিন্তু এটা হতে পারে না. 481 00:34:05,000 --> 00:34:07,000 হাঁ, যে একটি ভালো পয়েন্ট. 482 00:34:07,000 --> 00:34:12,000 আমাদের অক্ষর, এই অক্ষরের মধ্যে করছি এই রূপান্তর অবস্থানের অনেক করছেন, 483 00:34:12,000 --> 00:34:14,000 প্রথম দুই সেট সমস্যা. 484 00:34:14,000 --> 00:34:18,000 এটা পরিনত হয় যে এখানে, এই হল প্রায় অনুরূপ 485 00:34:18,000 --> 00:34:24,000 একটি স্ট্রিং মধ্যে ith অক্ষর অ্যাক্সেস, যদি যে অর্থে তোলে. 486 00:34:24,000 --> 00:34:30,000 এখানে আমরা মিডপয়েন্ট উপাদান অ্যাক্সেস করতে চান. 487 00:34:30,000 --> 00:34:34,000 কিভাবে আমরা যে কি? 488 00:34:34,000 --> 00:34:39,000 কেভিন, আপনার কোন পরামর্শ কিভাবে আমরা তা করতে পারে না? 489 00:34:39,000 --> 00:34:44,000 আপনি খড়ের গাদা যেত না, খোলা বন্ধনী, মধ্য, বন্ধনী বন্ধ. 490 00:34:44,000 --> 00:34:46,000 আমাদের জন্য আপনি যে লিখতে পারি? 491 00:34:46,000 --> 00:34:51,000 এখানে এটি সংরক্ষণ করুন এবং আমরা যে থামা করব. 492 00:34:51,000 --> 00:34:56,000 আমরা এই লাইন এ 9 খুঁজছেন, 493 00:34:56,000 --> 00:34:59,000 এবং আমরা যে আমরা মিডপয়েন্ট যাও সুই তুলনা করতে না চান তাহলে বুঝতে করছি, 494 00:34:59,000 --> 00:35:03,000 কিন্তু পরিবর্তে, আমরা সুই তুলনা করতে চান 495 00:35:03,000 --> 00:35:07,000 আমাদের খড়ের গাদা অ্যারের মধ্যে স্থান মিডপয়েন্ট এ উপাদান. 496 00:35:07,000 --> 00:35:10,000 কুল. 497 00:35:10,000 --> 00:35:12,000 এখন পর্যন্ত আমরা যেতে. 498 00:35:12,000 --> 00:35:15,000 হাঁ, যে সুন্দর দেখায় ভালো, যদি (সুই == খড়ের গাদা [মিডপয়েন্ট]). 499 00:35:15,000 --> 00:35:18,000 আমরা এটি পাওয়া গেছে. 500 00:35:18,000 --> 00:35:22,000 এখন যদি আমরা একটু বিট আপ কোড-we'll পুনরালোচনা 501 00:35:22,000 --> 00:35:26,000 এটি প্রনয়ন, এটি সঞ্চালিত হয়, এবং এখন যদি আমরা 4 জন্য দেখুন, 502 00:35:26,000 --> 00:35:30,000 কারণ আমরা এখন আসলে আমরা 23 নম্বর পেয়ে করছি খুঁজে পাইনি তা না. 503 00:35:30,000 --> 00:35:33,000 আমরা 23 পেয়ে মান, করছি এবং তাই আমরা আমাদের সুই যাও তুলনা করছেন. 504 00:35:33,000 --> 00:35:35,000 কিন্তু ভালো. এটা সঠিক পথে একটি পদক্ষেপ. 505 00:35:35,000 --> 00:35:37,000 >> এটা কি আমরা করতে চেষ্টা করছেন. 506 00:35:37,000 --> 00:35:40,000 আমরা অ্যারের মধ্যে অবস্থানের বিরুদ্ধে সুই তুলনা করার চেষ্টা করছেন না 507 00:35:40,000 --> 00:35:44,000 অ্যারের মধ্যে প্রকৃত উপাদানের বিরুদ্ধে বরং. 508 00:35:44,000 --> 00:35:49,000 যদি আমরা ফিরে দেখুন আমাদের এলগরিদম পরবর্তী ধাপে আবার এখন, 509 00:35:49,000 --> 00:35:51,000 পরবর্তী পদক্ষেপ কি? 510 00:35:51,000 --> 00:35:57,000 Leila ইতিমধ্যে এটি সংক্ষেপে উল্লেখ করেছে. 511 00:35:57,000 --> 00:36:00,000 [ছাত্র] যদি এর চেয়ে বড় বা কম এবং তারপর যা উপায় সরানো সিদ্ধান্ত দেখুন. 512 00:36:00,000 --> 00:36:03,000 [Nate] হ্যাঁ, তাই কিভাবে যে আমরা কি চাই? 513 00:36:03,000 --> 00:36:07,000 আপনি কিছু-I'll এই সংস্করণ সংরক্ষণ করা যাবে না, 514 00:36:07,000 --> 00:36:13,000 এবং আপনি যদি কিছু লাইন যে করবেন রাখা. 515 00:36:13,000 --> 00:36:15,000 হাঁ, Charlotte. >> আমি একটা প্রশ্ন আছে. 516 00:36:15,000 --> 00:36:19,000 এটি মিডপয়েন্ট উচিত নয় - কারণ 1 প্রথম জিনিষ 517 00:36:19,000 --> 00:36:26,000 এটির বিষয়সূচি 0, তাই যদি আমরা 4 করা এর, যে আসলে আমরা চরিত্র খুঁজছেন না? 518 00:36:26,000 --> 00:36:30,000 হ্যাঁ, এবং অন্যান্য সমস্যার সঙ্গে যা- 519 00:36:30,000 --> 00:36:35,000 যে একটি মহান ধরা, কারণ কি এবং শেষ ঘটছে সম্ভবত যাচ্ছে 520 00:36:35,000 --> 00:36:42,000 যদি আমরা চলন্ত রাখা এবং প্রথমে আমরা সামঞ্জস্য না কখনও না? 521 00:36:42,000 --> 00:36:46,000 আমি তা মনে করছেন আমরা আপ শেষ হতে পারে অ্যাক্সেস করার চেষ্টা করা হয় 522 00:36:46,000 --> 00:36:49,000 অ্যারের 8 ম স্থান এ উপাদান, 523 00:36:49,000 --> 00:36:53,000 যা এই ক্ষেত্রে বিদ্যমান নেই. 524 00:36:53,000 --> 00:36:56,000 আমরা আসলে হিসাববিদ্যা কিছু সাজানোর করতে হবে 525 00:36:56,000 --> 00:36:59,000 যে আমরা কিছু শূন্য ইন্ডেক্স আছে. 526 00:36:59,000 --> 00:37:05,000 [Charlotte] দুঃখিত, আমি মিডপয়েন্ট অভিপ্রেত - বর্গাকার বন্ধনী মধ্যে 1. 527 00:37:05,000 --> 00:37:08,000 আমরা তা করতে পারে. 528 00:37:08,000 --> 00:37:10,000 আমরা এই সমস্যাটি আসা মাত্র কিছুক্ষনের মধ্যে ফিরে পাবেন. 529 00:37:10,000 --> 00:37:13,000 একবার আমরা প্রকৃত looping পেতে শুরু, 530 00:37:13,000 --> 00:37:16,000 যে যখন আমরা এই কাজ করে দেখতে আসবো. 531 00:37:16,000 --> 00:37:21,000 কিছু সময়ের জন্য, আমরা এই কাজের জন্য, কিন্তু আপনি সম্পূর্ণ অধিকার করতে পারেন. 532 00:37:21,000 --> 00:37:28,000 যে শূন্য ইন্ডেক্স প্রভাব যে আমরা অ্যাকাউন্ট জন্য প্রয়োজন হবে. 533 00:37:28,000 --> 00:37:30,000 চলুন দেখুন. 534 00:37:30,000 --> 00:37:34,000 >> কিভাবে চেয়ে বড় এবং কম-? 535 00:37:34,000 --> 00:37:36,000 [ছাত্র] আমি কিভাবে পেতে তার চেয়ে অনেক বেশী এবং কম অংশ না. 536 00:37:36,000 --> 00:37:41,000 আমি ঠিক নিশ্চিত কি যদি জানতে পারেন যে এটা কম মিডপয়েন্ট খড়ের গাদা থেকে কম বা বেশী বেশী প্রিন্ট ছিল না. 537 00:37:41,000 --> 00:37:43,000 এখানে আমি সঞ্চয় করতে পারেন কি I've- 538 00:37:43,000 --> 00:37:47,000 [Nate] হ্যাঁ, যদি আপনি কি আপনি পেয়েছেন সংরক্ষণ, এবং আমরা এটি বৈঠাচালনা নেব. 539 00:37:47,000 --> 00:37:49,000 এখন পর্যন্ত আমরা যেতে. 540 00:37:49,000 --> 00:37:51,000 [ছাত্র] আর আমি কি আমি জানি না কি জন্য প্রশ্ন চিহ্ন রাখা. 541 00:37:51,000 --> 00:37:54,000 [Nate] যে মহান দেখায়. 542 00:37:54,000 --> 00:37:58,000 এখানে আমরা প্রশ্ন চিহ্ন পেয়েছেন কারণ এখনও আমরা জানি না 543 00:37:58,000 --> 00:38:06,000 আমরা কি এখনো পুরোপুরি করতে যাচ্ছেন. 544 00:38:06,000 --> 00:38:12,000 চাই কি আমরা বিক্ষোভ ওহো, আমরা কিছু ধনুর্বন্ধনী আমাদের সমস্ত ভীতু পেয়েছেন হবে. 545 00:38:12,000 --> 00:38:15,000 আমরা এই ধনুর্বন্ধনী সংশোধন করব. 546 00:38:15,000 --> 00:38:19,000 এখন পর্যন্ত আমরা যেতে. 547 00:38:19,000 --> 00:38:22,000 এবং তাই আমরা চাই না আমাদের অ্যালগরিদম অনুযায়ী না,, 548 00:38:22,000 --> 00:38:27,000 আমরা যদি সুই খুঁজে না? 549 00:38:27,000 --> 00:38:32,000 কেস বলতে যে সুই কি আমরা এ খুঁজছেন তা তুলনায় কম. কেভিন. 550 00:38:32,000 --> 00:38:34,000 বাম অর্ধেক এ শুধু চেহারা. 551 00:38:34,000 --> 00:38:40,000 রাইট, তাই আমরা এখানে একটি মন্তব্য যে করা "বাম অর্ধেক তাকান." দেব 552 00:38:40,000 --> 00:38:46,000 এবং যদি সেলাই করা হয় মিডপয়েন্ট এ খড়ের গাদা অধিক কি, আমরা কি করতে চান? 553 00:38:46,000 --> 00:38:48,000 [ছাত্র] তারপর আপনি ডান অর্ধেক তাকান. 554 00:38:48,000 --> 00:38:53,000 ডান অর্ধেক তাকান, "ডান অর্ধেক এ. চেহারা" 555 00:38:53,000 --> 00:38:58,000 . খুব হীন নেই 556 00:38:58,000 --> 00:39:05,000 ঠিক এই সময়ে, তাই, সুন্দর জিনিস ভাল খুঁজছেন. 557 00:39:05,000 --> 00:39:13,000 কোড হিসাবে লিখিত সঙ্গে সমস্যা হয় কি? 558 00:39:13,000 --> 00:39:15,000 [ছাত্র] আপনি অর্ধেক জন্য শেষ নেই. 559 00:39:15,000 --> 00:39:18,000 রাইট, আমরা অর্ধেক জন্য শেষ হবে না. 560 00:39:18,000 --> 00:39:20,000 আমরা কেবল এই একবার মধ্য দিয়ে যেতে হয় যাব. 561 00:39:20,000 --> 00:39:23,000 আমরা কেবলমাত্র করছেন এক মিডপয়েন্ট তাকান যাচ্ছে. 562 00:39:23,000 --> 00:39:27,000 হয় উপাদান আছে, অথবা তা না. 563 00:39:27,000 --> 00:39:34,000 এই সম্পূর্ণ করার জন্য, আমরা পুনরাবৃত্তি কিছু সাজানোর কাজ করতে হবে. 564 00:39:34,000 --> 00:39:39,000 আমরা পুনরায় পর্যন্ত আমরা খুঁজে পেতে রাখা প্রয়োজন যে 565 00:39:39,000 --> 00:39:43,000 হয় উপাদান আছে কারণ হল, আমরা নিচে narrowed এবং পরিশেষে এটা পেয়েছি, 566 00:39:43,000 --> 00:39:46,000 অথবা এটা আছে, সেখানে আমরা করেছি এর কারণ সব জিনিস না মাধ্যমে লাগছিল 567 00:39:46,000 --> 00:39:52,000 অ্যারের যথাযথ এবং অর্ধেক পাওয়া গেছে যে সেখানে কিছুই. 568 00:39:52,000 --> 00:39:56,000 >> যখনই আমরা করেছি বেশী এই পুনরাবৃত্তি যাওয়া, কি আমরা ব্যবহার করতে যাচ্ছি? 569 00:39:56,000 --> 00:39:58,000 [ছাত্র] একটি লুপ. 570 00:39:58,000 --> 00:40:00,000 লুপ কিছু সাজান. হ্যাঁ. 571 00:40:00,000 --> 00:40:03,000 [ছাত্র] একটি Do-লুপ যখন আমরা এবং এটা যে করবেন এবং তারপর যখন দিবেন 572 00:40:03,000 --> 00:40:10,000 সুই যেখানে আমি নিশ্চিত যে সঙ্গে চালু ছিল সমান-I'm না আছে না. 573 00:40:10,000 --> 00:40:18,000 কিন্তু ধরনের মত না যে যতদিন এটি সমান মান যে ব্যবহারকারীর ইনপুট না. 574 00:40:18,000 --> 00:40:21,000 হ্যাঁ, তাই এর দেখতে দিন, কিভাবে নিজেকে এই লিখতে পারে? 575 00:40:21,000 --> 00:40:23,000 আপনি বলেন, এর একটি না সময় লুপ ব্যবহার করতে দিতে. 576 00:40:23,000 --> 00:40:26,000 কোথা থেকে শুরু করবেন না? 577 00:40:26,000 --> 00:40:33,000 রাইট আকার / 2 পরে [ছাত্র]. 578 00:40:33,000 --> 00:40:42,000 [Nate] ঠিক আছে, এবং কি আমরা চালু করতে হবে? 579 00:40:42,000 --> 00:40:44,000 আমরা পরে যখন পূরণ করব. 580 00:40:44,000 --> 00:40:46,000 আমরা কি করতে যাচ্ছি যাও না? 581 00:40:46,000 --> 00:40:49,000 [ছাত্র] আমরা সব উপাদান কাজ করতে চান আমরা যদি অংশে আছে কি না? 582 00:40:49,000 --> 00:40:52,000 [Nate] এই সমস্ত উপাদান কি, মহান. 583 00:40:52,000 --> 00:40:55,000 কপি এবং পেস্ট করুন. 584 00:40:55,000 --> 00:40:59,000 ওহ, আর মানুষ. 585 00:40:59,000 --> 00:41:03,000 চলুন শুরু করা যাক দেখুন যদি এই কাজ, যদি আমরা এই ট্যাবের উপর করতে পারেন. 586 00:41:03,000 --> 00:41:08,000 সুন্দর. 587 00:41:08,000 --> 00:41:16,000 ঠিক আছে, এবং আমরা তাই আপনার এই না আছে এটি সংরক্ষণ করুন. 588 00:41:16,000 --> 00:41:21,000 সমস্ত অধিকার, এবং আমরা এই কাজ করতে যাচ্ছি যখন- 589 00:41:21,000 --> 00:41:25,000 আপনি পরে যখন শর্ত ছিল কি ছিল? 590 00:41:25,000 --> 00:41:31,000 [ছাত্র] যদিও সুই সমান না, তাই ভালো বিস্ময়বোধক বিন্দু. 591 00:41:31,000 --> 00:41:37,000 কিন্তু আমি নিশ্চিত যে ঠিক কি এখনো হয় না. 592 00:41:37,000 --> 00:41:39,000 [Nate] হ্যাঁ, এই এক উপায় এটা. 593 00:41:39,000 --> 00:41:41,000 স্যাম, আপনি একটি মন্তব্য নেই? 594 00:41:41,000 --> 00:41:43,000 [স্যাম] আমি মনে ভিডিও দিকে তাকিয়ে, 595 00:41:43,000 --> 00:41:48,000 আমি মত এক একটি স্ক্রিনশট নেন যখন আমরা তার জন্য pseudocode কি, 596 00:41:48,000 --> 00:41:52,000 সবের্াচ্চ এবং কমপক্ষে মধ্যে কিছু সম্পর্ক ছিল. 597 00:41:52,000 --> 00:41:58,000 আমার মনে হয় এটা যদি সবের্াচ্চ হয় কমপক্ষে তুলনায় কম এর মত. 598 00:41:58,000 --> 00:42:00,000 বুঝেছি. 599 00:42:00,000 --> 00:42:04,000 [স্যাম] অথবা যদি সবের্াচ্চ যে ভালো কমপক্ষে বা কিছু কম হল না, 600 00:42:04,000 --> 00:42:06,000 কারণ যে আপনি সবকিছু সন্ধান করেছেন মানে হবে. 601 00:42:06,000 --> 00:42:13,000 >> হ্যাঁ, তাই এটি সর্বোচ্চ এবং কমপক্ষে উল্লেখ ছিল মতো নিস্বন? 602 00:42:13,000 --> 00:42:16,000 [স্যাম] মূল্যবোধ যে-পূর্ণসংখ্যার যে পরিবর্তন হতে চলেছে 603 00:42:16,000 --> 00:42:18,000 আপেক্ষিক যাও যেখানে আমরা মিডপয়েন্ট করা. 604 00:42:18,000 --> 00:42:20,000 ঠিক. 605 00:42:20,000 --> 00:42:24,000 এই মুহুর্তে [স্যাম], এটি [শ্রবণাতীত] সর্বোচ্চ এবং কমপক্ষে নিরূপণ. যাও যাচ্ছে 606 00:42:24,000 --> 00:42:29,000 মিডপয়েন্ট হয় এই সর্বোচ্চ এবং কমপক্ষে ধারণা. 607 00:42:29,000 --> 00:42:35,000 কি যে ভাবেন যাও জানার জন্য? 608 00:42:35,000 --> 00:42:39,000 যদি আমরা কিভাবে আমরা এই পুনরাবৃত্তি করতে যাচ্ছেন এ খুঁজছেন শুরু হয়, 609 00:42:39,000 --> 00:42:43,000 আপনি সম্পূর্ণ অধিকার যে আমরা কাজ যখন লুপ কিছু সাজানোর ব্যবহার করতে চান. 610 00:42:43,000 --> 00:42:49,000 কিন্তু আমি অনুমান যদি আমরা মনে রাখতে কি এই অ্যারের স্থানে এর ঘটনাসমূহ 611 00:42:49,000 --> 00:42:53,000 এবং আসলে কী ঘটছে-I'm এর মাধ্যমে লিখুন যাচ্ছে এখানে- 612 00:42:53,000 --> 00:42:58,000 বাইনারি অনুসন্ধান খুব প্রথম পুনরাবৃত্তির সময়, আমরা আছে- 613 00:42:58,000 --> 00:43:05,000 আমি বো এবং ই শুরুতে বোঝান ব্যবহার যাচ্ছি. 614 00:43:05,000 --> 00:43:10,000 এবং তারপর আমাদের অ্যারের শেষ. 615 00:43:10,000 --> 00:43:14,000 আমরা জানি যে 4 ডান আরম্ভে এখানে বেশী হয়, 616 00:43:14,000 --> 00:43:18,000 এবং আমরা জানি যে, শেষ হয় 108. 617 00:43:18,000 --> 00:43:23,000 বলুন, আমরা সংখ্যা 15 অনুসন্ধান করছেন. 618 00:43:23,000 --> 00:43:27,000 প্রথমবার আমরা এই কাজের জন্য, যেমন আমরা আগে দেখেছি, 619 00:43:27,000 --> 00:43:30,000 মিডপয়েন্ট হয় 16 বা 23 হবে 620 00:43:30,000 --> 00:43:34,000 কিভাবে আমরা সেটা নিরূপণ উপর নির্ভর করে. 621 00:43:34,000 --> 00:43:37,000 যেহেতু বরাবর মাঝখানে বিভাজক এই স্থান আমাদের দিতে হবে 622 00:43:37,000 --> 00:43:42,000 16 এবং 23 এর মধ্যে, আমরা এটি সমানভাবে বিভক্ত করা যাবে না 623 00:43:42,000 --> 00:43:47,000 অথবা এটি বিভক্ত করা এবং একটি সত্য মিডপয়েন্ট পৌঁছান. 624 00:43:47,000 --> 00:43:49,000 আমরা 16 এ সন্ধান করব. 625 00:43:49,000 --> 00:43:55,000 আমরা "আরে, 16> 15 যে আমরা খুঁজছি." বুঝতে পারবেন 626 00:43:55,000 --> 00:43:59,000 তারপর অ্যারের বাম অর্ধেক তাকান 627 00:43:59,000 --> 00:44:03,000 আমরা কি আপ কাজ শেষ করবেন তা খারিজ 628 00:44:03,000 --> 00:44:07,000 এই সমগ্র উপরের অংশ 629 00:44:07,000 --> 00:44:16,000 এবং বলছে, "ঠিক আছে এখন, আমাদের এন্ডপয়েন্টের এখানে হবে." 630 00:44:16,000 --> 00:44:22,000 আমাদের লুপ এর পরবর্তী পুনরাবৃত্তিতে, আমরা এখন এই অ্যারে এ করছি, 631 00:44:22,000 --> 00:44:25,000 কার্যকরভাবে এই অংশ থাকার কারণে এখন বাতিল 632 00:44:25,000 --> 00:44:30,000 যদি আমরা মিডপয়েন্ট যাও আদ্যন্ত মধ্যে পার্থক্য করা গ্রহণ করছেন, 633 00:44:30,000 --> 00:44:34,000 আমরা আমাদের মিডপয়েন্ট 8 যাও খুঁজে পেতে হবে, 634 00:44:34,000 --> 00:44:40,000 যা আমরা পরে 8 নম্বর যেখানে এটি আমরা খুঁজছেন সম্পর্কিত দেখুন পরীক্ষা করতে পারবেন, 635 00:44:40,000 --> 00:44:44,000 15, যে 15 এর থেকে বড়, 636 00:44:44,000 --> 00:44:49,000 তাই আমরা তালিকা ডান অংশ সরাতে আছে, 637 00:44:49,000 --> 00:44:51,000 যা আমরা জানি কারণ আমরা মানুষ, এবং আমরা তা দেখতে পারেন. 638 00:44:51,000 --> 00:44:54,000 আমরা জানি যে ডান অংশ হতে যাচ্ছে যেখানে আমরা সেটা খুঁজে পেতে হয়, 639 00:44:54,000 --> 00:45:01,000 কিন্তু কম্পিউটার যে, তাই আমরা কি করব তা করবেন তা আমরা আসলে পাবেন না জানি 640 00:45:01,000 --> 00:45:04,000 এই পর্যন্ত যান, এবং এখন আদ্যন্ত 641 00:45:04,000 --> 00:45:11,000 একই স্পট, তাই মিডপয়েন্ট হয়ে তালিকায় শুধুমাত্র এক পর্যায়ে নম্বর, 642 00:45:11,000 --> 00:45:16,000 যা 15, এবং আমরা তা খুঁজে পাওয়া যাচ্ছে. 643 00:45:16,000 --> 00:45:21,000 কি যে যেখানে এই পুরো সবের্াচ্চ এবং কমপক্ষে স্বরলিপি যাচ্ছে কিছু হালকা চালা, 644 00:45:21,000 --> 00:45:24,000 অ্যারের শেষ ট্র্যাক পালন করার চিন্তা 645 00:45:24,000 --> 00:45:35,000 কিভাবে জিনিষ নিচে সংকীর্ণ? 646 00:45:35,000 --> 00:45:42,000 >> কি এখন যদি এই ছিল সমান 15 যাও না কেন? 647 00:45:42,000 --> 00:45:52,000 যদি আমরা 15 এবং এর পরিবর্তে, করছিলেন, এই সংখ্যা 16 এ? 648 00:45:52,000 --> 00:45:54,000 আমরা, "বলতে চাই ওহ, এটি বৃহত্তর. 649 00:45:54,000 --> 00:45:57,000 আমরা বাম ফিরে যেতে চাই. " 650 00:45:57,000 --> 00:46:01,000 এবং আমরা আমাদের ই ডান দিকে সরাতে চাই, 651 00:46:01,000 --> 00:46:06,000 যা বিন্দু আমরা এন্ডপয়েন্টের যে বিবাদী হবে আছে. 652 00:46:06,000 --> 00:46:09,000 এটা কোনো উপাদানের জন্য আরো অনুসন্ধান করতে পারব না 653 00:46:09,000 --> 00:46:13,000 কারণ এখন আমরা আমাদের এন্ডপয়েন্ট এবং আমাদের প্রারম্ভ বিন্দু আছে, 654 00:46:13,000 --> 00:46:16,000 আমাদের সর্বোচ্চ এবং আমাদের কমপক্ষে এখন, ফ্লিপ করা হয়. 655 00:46:16,000 --> 00:46:23,000 আমরা সম্পূর্ণ অ্যারে মাধ্যমে অনুসন্ধান. আমরা কিছু খুঁজে পাচ্ছি না. 656 00:46:23,000 --> 00:46:27,000 যে বিন্দু যা আমরা বলে, "ঠিক আছে, আমরা এই অ্যালগরিদম থামাতে চলুন চাই চাই. 657 00:46:27,000 --> 00:46:34,000 আমরা কিছু খুঁজে পাওয়া যায় নি. আমরা জানি এটা এখানে নাই. " 658 00:46:34,000 --> 00:46:36,000 কিভাবে এই যাচ্ছে? 659 00:46:36,000 --> 00:46:40,000 [ছাত্র] কিভাবে ঠিক কম্পিউটার শেষ সুইচ আছে? 660 00:46:40,000 --> 00:46:45,000 কিভাবে শেষ না শুরুতে আগে শেষ? 661 00:46:45,000 --> 00:46:48,000 শেষ শুরুর আগে সমাপ্ত 662 00:46:48,000 --> 00:46:54,000 কারণ গণিতের যে আমরা প্রতিটি সময় আমরা এই কাজ করতে যাচ্ছেন. 663 00:46:54,000 --> 00:47:00,000 আমরা যেভাবে বিনিময় করা হয় যদি আপনি খুব প্রথমবার তাকান আমরা নতুন swap না 664 00:47:00,000 --> 00:47:03,000 যেখানে আমরা 4 আদ্যন্ত আছে 665 00:47:03,000 --> 00:47:13,000 এ সব 108 ডাউন উপায় এবং আমাদের মিডপয়েন্ট, 16 এ, বলে - 666 00:47:13,000 --> 00:47:20,000 আমি এই ফিরে রিসেট করতে যাচ্ছে 15-যদি আমরা 15 খুঁজছেন করছি, 667 00:47:20,000 --> 00:47:25,000 আমরা জানতাম যে আমরা কি কি যখন আমরা 16 চেক এবং দেখেছি যে এটি ছিল বৃহত্তর 668 00:47:25,000 --> 00:47:28,000 এবং সমগ্র তালিকা ডান অংশ বাতিল চেয়েছিলেন, 669 00:47:28,000 --> 00:47:36,000 আমরা দেখেছি যে আমরা কি করতে চেয়েছিলেন এই ই অধিকার এখানে সরানো হয়. 670 00:47:36,000 --> 00:47:44,000 কার্যকরীভাবে, ই মিডপয়েন্ট আগে এক সরানো হবে. 671 00:47:44,000 --> 00:47:48,000 একইভাবে, যখন আমরা আলগোরিদিম এই পুনরাবৃত্তির কি 672 00:47:48,000 --> 00:47:51,000 এবং মিডপয়েন্ট 8 টার সময় ছিল, 673 00:47:51,000 --> 00:47:55,000 আমরা দেখেছি যে 8 <15, তাই বো সরাতে চেয়েছিলেন 674 00:47:55,000 --> 00:48:00,000 মিডপয়েন্ট বাজে. 675 00:48:00,000 --> 00:48:07,000 এখন, আদ্যন্ত এই 15 বছর বয়সে একসঙ্গে উভয়. 676 00:48:07,000 --> 00:48:10,000 >> যদি আমরা চাই ঘটছে হয়েছে কিছু অন্যান্য মান 15, হইনি জন্য চেহারা, 677 00:48:10,000 --> 00:48:14,000 অথবা যদি এই পরিবর্তে 15 ছিল একটি 16, 678 00:48:14,000 --> 00:48:20,000 আমরা দেখেছি যে ই মিডপয়েন্ট আগে এক সরাতে আমরা চাই না. 679 00:48:20,000 --> 00:48:33,000 এখন ই ফ্লিপ বো কম হতে হবে. 680 00:48:33,000 --> 00:48:39,000 যাক কিভাবে আমরা আসলে শেষ পর্যন্ত এই অ্যালগরিদম কোডিং ভিতর দিয়ে হেটে যেতে. 681 00:48:39,000 --> 00:48:44,000 আমরা জানি যে আমরা এই মিডপয়েন্ট হিসাব চাই. 682 00:48:44,000 --> 00:48:48,000 আমরা আরও জানতে পারি যে আমরা শুরুতে এবং অ্যারের শেষ ট্র্যাক করতে চান 683 00:48:48,000 --> 00:48:51,000 আমাদের বর্তমান অ্যারের তাই আমরা চিন্তা করতে পারেন 684 00:48:51,000 --> 00:48:56,000 যেখানে এই তালিকার বাম অর্ধেক হয় এবং যেখানে তালিকা অধিকার অর্ধেক হয়. 685 00:48:56,000 --> 00:49:03,000 আমরা শুরু হয় এবং শেষ যে না, 686 00:49:03,000 --> 00:49:07,000 অথবা আমরা তাদের কমপক্ষে এবং সর্বোচ্চ কল করতে পারেন. 687 00:49:07,000 --> 00:49:10,000 আমি এবং শুরু এই সময় শেষ হয়ে ব্যবহার করব. 688 00:49:10,000 --> 00:49:15,000 যখন আমরা শুরু করব, যদি আমরা আমাদের উদাহরণ এখানে ফিরে তাকান ডাউন, 689 00:49:15,000 --> 00:49:20,000 আমাদের শুরুতে অ্যারের শুরুতে খুব স্বাভাবিক হিসাবে সেট, ছিল. 690 00:49:20,000 --> 00:49:25,000 এই সূচক ছিল কি? আরম্ভ করার জন্য আমাদের কি করা উচিত? 691 00:49:25,000 --> 00:49:27,000 ড্যানিয়েল. 692 00:49:27,000 --> 00:49:30,000 [ড্যানিয়েল] খড়ের গাদা [0]. 693 00:49:30,000 --> 00:49:37,000 [Nate] হ্যাঁ, তাই আমরা এটি সেট সমান খড়ের গাদা পারে [0]. 694 00:49:37,000 --> 00:49:40,000 সমস্যা যদিও, যে এই দেয় আমাদের প্রথম উপাদান অবস্থান না. 695 00:49:40,000 --> 00:49:45,000 এটি আপনাকে প্রথম যে প্রথম অবস্থান এ উপাদান বা প্রকৃত মান সূচী আমাদের. 696 00:49:45,000 --> 00:49:47,000 [ছাত্র] যে .20 রূপান্তর হবে? 697 00:49:47,000 --> 00:49:52,000 [Nate] এই কি করবেন, ভাল হয়, এটি কোনো রূপান্তরিত করে দেবে না. 698 00:49:52,000 --> 00:49:56,000 এটা কি করবেন এটা শুরু একটি 4 সংরক্ষণ করবে, 699 00:49:56,000 --> 00:49:59,000 এবং তারপর এটি যাও বিরুদ্ধে শুরু তুলনা করা কঠিন হবে 700 00:49:59,000 --> 00:50:03,000 কারণ শুরু অধিষ্ঠিত 4 মান করা হবে, 701 00:50:03,000 --> 00:50:06,000 যা আমাদের অ্যারের শুরুতে, 702 00:50:06,000 --> 00:50:08,000 কিন্তু আমরা অ্যারের মধ্যে সূচকগুলি ট্র্যাক করতে চান 703 00:50:08,000 --> 00:50:11,000 মান হিসাবে বিরোধিতা. 704 00:50:11,000 --> 00:50:17,000 আমরা আসলে একটি 0 ব্যবহার যে মত, করব. 705 00:50:17,000 --> 00:50:20,000 অ্যারে-Charlotte শেষে জন্য একটু আগে পর্যন্ত এই আনা. 706 00:50:20,000 --> 00:50:23,000 এই যেখানে আমরা অ্যাকাউন্টে শূন্য ইন্ডেক্স নেব. 707 00:50:23,000 --> 00:50:25,000 >> Charlotte, কি অ্যারের শেষ হবে? 708 00:50:25,000 --> 00:50:28,000 শেষ সূচী কি? 709 00:50:28,000 --> 00:50:30,000 [Charlotte] ফাইলের আকার - 1. 710 00:50:30,000 --> 00:50:32,000 হাঁ, এবং যার আকার আমরা ব্যবহার করব? 711 00:50:32,000 --> 00:50:35,000 মূলধন মাপ অথবা ছোট আকারের আমরা ব্যবহার করব? 712 00:50:35,000 --> 00:50:37,000 ক্যাপিটাল আকার. 713 00:50:37,000 --> 00:50:42,000 এই ক্ষেত্রে, আমরা মূলধন আকার ব্যবহার করতে পারেন. 714 00:50:42,000 --> 00:50:45,000 যদি আমরা এই ফাংশন পোর্টেবল হতে চেয়েছিল 715 00:50:45,000 --> 00:50:48,000 এবং অন্যান্য প্রোগ্রামের জন্য এই ফাংশান ব্যবহার, 716 00:50:48,000 --> 00:50:50,000 আমরা আসলে ছোট আকার ব্যবহার করতে পারেন. 717 00:50:50,000 --> 00:50:52,000 এটা খুবই সূক্ষ্ম. 718 00:50:52,000 --> 00:51:01,000 কিন্তু কোরআন হচ্ছে, তা সম্পূর্ণই অধিকার যে আমরা মাপ চাই - 1. 719 00:51:01,000 --> 00:51:03,000 এই সময়ে- 720 00:51:03,000 --> 00:51:05,000 [ছাত্র] কিভাবে এটি যে আপনি য়ের বড়হাতের অক্ষর ছোটহাতের আকার ব্যবহার করতে পারেন? 721 00:51:05,000 --> 00:51:07,000 কিভাবে এটি যে আমরা য়ের বড়হাতের অক্ষর ছোটহাতের আকার ব্যবহার করতে পারেন? 722 00:51:07,000 --> 00:51:13,000 এটা পরিনত হয় যে এইসব # সংজ্ঞায়িত সত্যিই হয়, 723 00:51:13,000 --> 00:51:19,000 ফণা অধীন, যেমন একটি পাঠ্য এবং অনুসন্ধান করে প্রতিস্থাপন, যদি যে অর্থে তোলে. 724 00:51:19,000 --> 00:51:24,000 আপনি যখন আপনার কোড কম্পাইল, preprocessing ফেজ 725 00:51:24,000 --> 00:51:27,000 ফাইলের মাধ্যমে কম্পাইলার যায়, 726 00:51:27,000 --> 00:51:31,000 এবং এটি অনুসন্ধান সর্বত্র যে আপনি মূলধন আকার লিখিত করেছি, 727 00:51:31,000 --> 00:51:39,000 এবং এটি একটি পরিবর্তে 8 সঙ্গে আক্ষরিক যে টেক্সট ঠিক সেই মতো,. 728 00:51:39,000 --> 00:51:42,000 যে অর্থে, এই একটি পরিবর্তনশীল থেকে খুব আলাদা. 729 00:51:42,000 --> 00:51:45,000 এটি মেমরি মধ্যে কোনো স্থান নেই আপ না নিতে. 730 00:51:45,000 --> 00:51:52,000 এটা একটা সহজ পাঠ প্রতিস্থাপন কৌতুক. 731 00:51:52,000 --> 00:51:57,000 এই ক্ষেত্রে, আমরা মাপ ব্যবহার চলুন. 732 00:51:57,000 --> 00:52:01,000 এখান থেকে আমরা কিছু বাছাই করা পুনরাবৃত্তি করতে চান না, 733 00:52:01,000 --> 00:52:03,000 এবং ঠিক দিকে আমরা আমাদের কি সময় লুপ দিয়ে থাকেন. 734 00:52:03,000 --> 00:52:08,000 আমরা কিছু করতে চান না হওয়া পর্যন্ত আর একটি শর্ত না রাখা, 735 00:52:08,000 --> 00:52:12,000 এবং হিসাবে আমরা আগে দেখেছি, আমরা দেখেছি যে যে শর্ত 736 00:52:12,000 --> 00:52:19,000 প্রকৃতপক্ষে ছিল যে আমরা শেষ করতে না চান 737 00:52:19,000 --> 00:52:24,000 যাও কম শুরু হবে. 738 00:52:24,000 --> 00:52:26,000 >> এটি আমাদের বাঁধন শর্ত. 739 00:52:26,000 --> 00:52:35,000 এই পরিস্থিতিতে, আমরা যাও, ভালো থামাতে এবং ডিক্লেয়ার করতে চান "আরে, আমরা কিছু খুঁজে পাওয়া যায় নি." 740 00:52:35,000 --> 00:52:43,000 এই প্রকাশ, আমরা লুপ কিছু সাজানোর ব্যবহার করতে চান না. 741 00:52:43,000 --> 00:52:49,000 এই ক্ষেত্রে, এটা করা না সময় লুপ, একটি লুপ জন্য, যখন একটি লুপ হবে? 742 00:52:49,000 --> 00:52:51,000 আমরা কি একটি সময় এখানে লুপ আছে. 743 00:52:51,000 --> 00:52:53,000 আপনি কি যে পদ্ধতির মত না? 744 00:52:53,000 --> 00:52:59,000 আপনার কি মনে হয় আমরা একটি ভিন্ন পদ্ধতির চেষ্টা করা উচিত? 745 00:52:59,000 --> 00:53:01,000 কেভিন, কোনো চিন্তা? 746 00:53:01,000 --> 00:53:06,000 আমরা যখন একটি লুপ আছে কারণ আমরা সর্বোচ্চ জানতে পারে 747 00:53:06,000 --> 00:53:11,000 শুরুর যে কোন সময়ে কমপক্ষে তার চেয়ে অনেক বেশী হবে. 748 00:53:11,000 --> 00:53:14,000 হ্যাঁ, তাই কোনও আরম্ভের যে ঘটতে প্রয়োজন আছে. 749 00:53:14,000 --> 00:53:17,000 যারা না সময় loops হয় মহান যখন আপনি কিছু আরম্ভ আছে 750 00:53:17,000 --> 00:53:21,000 আগে তারপর এখানে যেহেতু পরীক্ষা, 751 00:53:21,000 --> 00:53:26,000 আমরা জানি যে আমরা উভয় শুরু এবং শেষ reinitializing রাখা চলুন না 752 00:53:26,000 --> 00:53:28,000 লুপ প্রতি বৃত্তাকার. 753 00:53:28,000 --> 00:53:32,000 আমরা জানি যে আমরা তাদের আরম্ভ করতে চান, তাহলে আমাদের অবস্থা পরীক্ষা. 754 00:53:32,000 --> 00:53:38,000 এই ক্ষেত্রে, আসলে আমি একটি সহজ যখন লুপ দিয়ে যাবেন. 755 00:53:38,000 --> 00:53:44,000 এটা পরিনত হয় যে কাজ যখন loops মোটামুটি কদাচিৎ ব্যবহৃত হয়. 756 00:53:44,000 --> 00:53:49,000 জায়গা অনেক করবেন না এমনকি শেখান না যখন loops. 757 00:53:49,000 --> 00:53:53,000 ঐগুলি ব্যবহারকারীর ইনপুট ধরার জন্য ভাল, তাই আমরা তাদের অনেক দূর পর্যন্ত দেখা করেছি. 758 00:53:53,000 --> 00:53:59,000 কিন্তু স্বাভাবিক জন্য এবং যখন loops হয় অনেক বেশি প্রচলিত. 759 00:53:59,000 --> 00:54:03,000 এটি সক্রিয় যে হিসাবে এই শর্ত লিখিত 760 00:54:03,000 --> 00:54:09,000 সত্যিই অনেক ভাল না আমাদের, এবং কেন করা হল? 761 00:54:09,000 --> 00:54:11,000 আমি দুঃখিত, আমি আপনার নাম জানি না. 762 00:54:11,000 --> 00:54:13,000 আমি জেরি. >> দুঃখিত? 763 00:54:13,000 --> 00:54:15,000 এটা বি-O-r-U-আমি. 764 00:54:15,000 --> 00:54:18,000 ওহ, ঠিক আছে. 765 00:54:18,000 --> 00:54:23,000 আমি আমার তালিকা করবেন আপনি দেখতে পাচ্ছেন না. 766 00:54:23,000 --> 00:54:26,000 ওহ, এটা কারণ, উহু, যে অর্থে তোলে. 767 00:54:26,000 --> 00:54:31,000 আপনি কি কেন এই সময় লুপ হিসাবে উদ্দেশ্যে কাজ করতে পারে একটি ধারণা আছে, 768 00:54:31,000 --> 00:54:38,000 শর্ত হিসাবে হবে? 769 00:54:38,000 --> 00:54:43,000 [জেরি] আপনি ভালো মানে আপনি যে সমস্ত উপাদান পরে এটি করতে চান? 770 00:54:43,000 --> 00:54:46,000 হাঁ, যাতে এর এক. 771 00:54:46,000 --> 00:54:49,000 আমরা যখন লুপ, যা হচ্ছে, তা সম্পূর্ণই সত্য মধ্যে এই সমস্ত জিনিস করা থাকতে পারে. 772 00:54:49,000 --> 00:54:55,000 অন্য যে কাজটা কিছুটা আরো সমস্যাযুক্ত যদিও, যে এই অবস্থা কাজ করছে না. 773 00:54:55,000 --> 00:54:57,000 [ছাত্র] আপনি এটা টুসি প্রয়োজন. 774 00:54:57,000 --> 00:55:04,000 রাইট, তাই এই অবস্থা কখনো সত্য হতে পারে না প্রথমে উপায় আমরা এটা সম্পর্কে বলার হবে. 775 00:55:04,000 --> 00:55:08,000 আমরা কিছু করতে চাই শেষ পর্যন্ত <লাগা, 776 00:55:08,000 --> 00:55:13,000 কিন্তু আমরা যখন কিছু করতে চান 777 00:55:13,000 --> 00:55:21,000 ≤ শেষের শুরু. 778 00:55:21,000 --> 00:55:24,000 >> সেখানে আছে যুক্তি যে বিপরীতমুখী. 779 00:55:24,000 --> 00:55:27,000 আমি যার ফলে সব সময় যারা ভুল করে দোষী. 780 00:55:27,000 --> 00:55:31,000 [ছাত্র] কেন এটা কম বা সমান হবে? 781 00:55:31,000 --> 00:55:33,000 কারণ আপনি যে ক্ষেত্রে আমরা পেয়েছিলাম মনে রাখতে হবে 782 00:55:33,000 --> 00:55:36,000 যেখানে শুধুমাত্র একটি উপাদান ছিল, এবং আমরা নিচে, 783 00:55:36,000 --> 00:55:43,000 এবং আমরা শুধু আমাদের অ্যারের মধ্যে 15 এ করছিলেন? 784 00:55:43,000 --> 00:55:47,000 এবং আমাদের শুরু এবং শেষ ছিল আমাদের একই উপাদান. 785 00:55:47,000 --> 00:55:50,000 আমরা নিশ্চিত যে আমরা যে কেস হ্যান্ডেল করতে চাই. 786 00:55:50,000 --> 00:55:54,000 আমরা যদি সরাসরি কম হয়নি, 787 00:55:54,000 --> 00:55:58,000 আমরা শুধু একটি উপাদান 2-অ্যারের নিচে পেতে হবে. 788 00:55:58,000 --> 00:56:06,000 একবার আমরা যে শেষ উপাদান আছে নিচে, যদি যে ছিল আমাদের উপাদান, আমরা কখনও খুঁজে পেতে চাই. 789 00:56:06,000 --> 00:56:10,000 এখন এখানে, আমরা ঠিক মত বলছে আপনি কি ছিল তা করতে পারেন. 790 00:56:10,000 --> 00:56:15,000 আমরা আমাদের অধিকার যখন লুপ মাঝের মধ্যে স্টাফ plopping শুরু করতে পারেন. 791 00:56:15,000 --> 00:56:20,000 আমরা আমাদের মিডপয়েন্ট মধ্যে অকস্মাৎ করতে পারেন. 792 00:56:20,000 --> 00:56:24,000 আমরা এই সব যদি বিবৃতি নিতে পারেন, 793 00:56:24,000 --> 00:56:30,000 তাদের উঠিয়ে ফেলবেন না এই সময় লুপ, 794 00:56:30,000 --> 00:56:34,000 তাদের মধ্যে অকস্মাৎ, 795 00:56:34,000 --> 00:56:39,000 একটি সামান্য বিট আপ জিনিস পরিষ্কার, 796 00:56:39,000 --> 00:56:48,000 এবং এগিয়ে যান এবং আমি এই সংস্করণ সংরক্ষণ করব. 797 00:56:48,000 --> 00:56:53,000 এবং এই সময়ে, আমরা চমত্কার বন্ধ হচ্ছে করছি. 798 00:56:53,000 --> 00:56:55,000 Sam. 799 00:56:55,000 --> 00:56:58,000 আমি মনে করি তবে আপনাকে = আকার আছে int-মিডপয়েন্ট আছে - 1/2. 800 00:56:58,000 --> 00:57:01,000 বুঝেছেন, আকার - 1/2. 801 00:57:01,000 --> 00:57:05,000 কিছু আছে অন্যথায় আমরা যে লাইন সম্পর্কে পরিবর্তন প্রয়োজন? 802 00:57:05,000 --> 00:57:10,000 এটা ছিল একটি ভাল ধরা. 803 00:57:10,000 --> 00:57:14,000 >> মাপ করবেন কি? হয় আমরা কি মাপ পরিবর্তন? 804 00:57:14,000 --> 00:57:17,000 যাতে ভালো লাইন রেখে, আমরা মাপ পরিবর্তন করতে হবে. 805 00:57:17,000 --> 00:57:21,000 আমরা প্রত্যেক সময় আমরা লুপ জন্য যান আকার আছে. 806 00:57:21,000 --> 00:57:25,000 কিন্তু মনে রাখবেন, যখন আমরা আমাদের উদাহরণ মাধ্যমে অল্পমাত্র বিট আগে চালু ছিল, 807 00:57:25,000 --> 00:57:30,000 এবং আমরা 4 আরম্ভে ছিল 808 00:57:30,000 --> 00:57:33,000 এবং সব শেষে ২ 108 ওভার উপায়? 809 00:57:33,000 --> 00:57:35,000 আমরা কিভাবে কি মিডপয়েন্ট কষা? 810 00:57:35,000 --> 00:57:38,000 হয় আমরা আকার ব্যবহার করে? 811 00:57:38,000 --> 00:57:40,000 অথবা আমরা শুরু এবং শেষ পরিবর্তে ব্যবহার করা হয়? 812 00:57:40,000 --> 00:57:42,000 এটা শেষ এবং শুরুর মধ্যে পার্থক্য. 813 00:57:42,000 --> 00:57:50,000 ঠিক, এবং কিভাবে ঠিক যে আমি, লিখুন Charlotte উচিত? 814 00:57:50,000 --> 00:57:52,000 শুধু শেষ - লাগা. 815 00:57:52,000 --> 00:57:55,000 1 - আপনি যা করতে হবে না 816 00:57:55,000 --> 00:57:58,000 কারণ - 1 শেষ মধ্যে অন্তর্ভুক্ত করেনি এবং ইতিমধ্যে শুরু হয়েছে. 817 00:57:58,000 --> 00:58:00,000 [Nate] গ্রেট, আপনি সম্পূর্ণ অধিকার. 818 00:58:00,000 --> 00:58:03,000 কারণ যে 1 - - 1 টি হয়েছে অন্তর্ভুক্ত আমরা না না 819 00:58:03,000 --> 00:58:08,000 যখন আমরা শেষ পরিবর্তনশীল আরম্ভ করার জন্য এবং দায়ী. 820 00:58:08,000 --> 00:58:11,000 >> সেখানে অন্য কিছু আমি চিহ্নগুলি সিন্টেক্সের ক্ষেত্রে করার জন্য এই লাইন জানার জন্য আছে? 821 00:58:11,000 --> 00:58:13,000 [ছাত্র] প্লাস >> শুরু. প্লাস শুরু করব? 822 00:58:13,000 --> 00:58:15,000 শেষে [ছাত্র]. 823 00:58:15,000 --> 00:58:20,000 কারণ এটি শুধুমাত্র অর্ধেক এর দ্বারা নির্ণিত. 824 00:58:20,000 --> 00:58:26,000 আপনি শুরু যুক্ত করতে হবে. 825 00:58:26,000 --> 00:58:31,000 [Nate] এই কি আমাদের জন্য গণনা করা হবে? 826 00:58:31,000 --> 00:58:35,000 যদি শেষ সম্পর্কে আমরা এই লুপ খুব প্রথম পুনরাবৃত্তির উপর মনে হয়, 827 00:58:35,000 --> 00:58:40,000 শেষ অবস্থান সূচক 7 করা যাচ্ছে. 828 00:58:40,000 --> 00:58:43,000 অবস্থান 0 সালে শুরু হয়. 829 00:58:43,000 --> 00:58:47,000 মনে রাখবেন, আমরা হয় খুঁজছেন 830 00:58:47,000 --> 00:58:52,000 অবস্থান 3 বা 4 অবস্থান. 831 00:58:52,000 --> 00:58:56,000 যদি আমরা এই গণিত তাকান মাত্র, এটি একটি সামান্য আরো স্পষ্ট না, 832 00:58:56,000 --> 00:59:02,000 কিছু সংখ্যা এখানে রাখুন, আমরা 7, 0 আছে, 833 00:59:02,000 --> 00:59:10,000 তাই 7 - 0, এবং তারপর / 2 834 00:59:10,000 --> 00:59:19,000 পূর্ণসংখ্যা বিভাগের 3, যে হয়. 835 00:59:19,000 --> 00:59:26,000 তারপর আমরা ফিরে যাও যোগ আমাদের শুরু করতে হবে? 836 00:59:26,000 --> 00:59:28,000 আমরা এই ক্ষেত্রে না. 837 00:59:28,000 --> 00:59:31,000 প্রথম পুনরাবৃত্তির অন, এটি সূক্ষ্ম কারণ শুরু হয় 0 হতে হবে. 838 00:59:31,000 --> 00:59:36,000 কিন্তু আমরা অগ্রগতি হিসাবে, আমরা সত্যিই কি সব ঠিক প্রয়োজন 839 00:59:36,000 --> 00:59:42,000 শেষ - / শুরু 2. 840 00:59:42,000 --> 00:59:46,000 এখানে এখন পর্যন্ত অন্য একটি কৌতুক, এবং যে যেমন হয় পূর্ববর্তিতার এক. 841 00:59:46,000 --> 00:59:49,000 [ছাত্র] আমরা প্রথম বন্ধনী কি প্রয়োজন? 842 00:59:49,000 --> 00:59:53,000 [Nate] যথাযথভাবে, এবং যে কারণ আমরা যদি এই প্রথম বন্ধনী করা না, 843 00:59:53,000 --> 00:59:58,000 তারপর এই লাইন পরিবর্তে ব্যাখ্যা করা হবে 844 00:59:58,000 --> 01:00:09,000 হিসাবে (শেষ) - (/ শুরু 2), যা আমরা স্পষ্টভাবে চান না. 845 01:00:09,000 --> 01:00:11,000 যারা প্রাধান্য নিয়ম জন্য দেখুন. 846 01:00:11,000 --> 01:00:15,000 [ছাত্র] কেন 'শেষ হয় না লাগা? 847 01:00:15,000 --> 01:00:17,000 কেন, শেষ হয় না লাগা? 848 01:00:17,000 --> 01:00:19,000 [ছাত্র] কেন যে এটা না? 849 01:00:19,000 --> 01:00:24,000 কেন এটা করা হবে '? 850 01:00:24,000 --> 01:00:26,000 আমি মনে করি আপনি ঠিক. 851 01:00:26,000 --> 01:00:28,000 [ছাত্র] যেহেতু এটি গড়? 852 01:00:28,000 --> 01:00:31,000 [Nate] শেষ + +, আরম্ভ করার জন্য আপনি সম্পূর্ণ অধিকার. 853 01:00:31,000 --> 01:00:34,000 বাহ, আমি সম্পূর্ণই goofed. আপনি ঠিক. 854 01:00:34,000 --> 01:00:39,000 আমরা যদি সেটা না - সূচক হয়, আমরা ফিরে ইন শুরু করবে যোগ করতে চান 855 01:00:39,000 --> 01:00:43,000 এই ক্ষেত্রে, আপনি খুবই অধিকার যে আমরা দুটি গড় নিতে চান, 856 01:00:43,000 --> 01:00:45,000 তাই আমরা তাদের হিসাবে যোগ বিয়োগ তাদের বিরোধিতা করতে চায় না. 857 01:00:45,000 --> 01:00:49,000 [ছাত্র] এছাড়াও কাজ শেষ হলে কি হবে - / + 2 লাগা শুরু. 858 01:00:49,000 --> 01:00:55,000 এটা যদি আমরা না, তাই আমি বিশ্বাস করবে. 859 01:00:55,000 --> 01:01:00,000 >> উদাহরণস্বরূপ, যদি আমরা এ শুরু করছিলেন, 860 01:01:00,000 --> 01:01:04,000 এবং আমরা এখানে স্থানান্তরিত উপর 861 01:01:04,000 --> 01:01:08,000 15. 862 01:01:08,000 --> 01:01:12,000 এখন শুরু অবস্থান 2 এ. 863 01:01:12,000 --> 01:01:15,000 অবস্থান 7 সময়ে শেষ হয়. 864 01:01:15,000 --> 01:01:21,000 যদি আমরা তাদের বিয়োগ, আমরা 5 পেতে. 865 01:01:21,000 --> 01:01:24,000 2 দ্বারা ভাগ যে, আমরা 2 পেতে. 866 01:01:24,000 --> 01:01:27,000 এবং তারপর আমরা 2 যোগ ফিরে, 867 01:01:27,000 --> 01:01:30,000 এবং যে 4 র্থ স্থান আমাদের পায়, 868 01:01:30,000 --> 01:01:33,000 যা ডান এখানে, যা মিডপয়েন্ট. 869 01:01:33,000 --> 01:01:36,000 [ছাত্র] আমরা মোড়ানো যত্ন নেওয়া প্রয়োজন কি? 870 01:01:36,000 --> 01:01:39,000 কি অর্থে আমরা যাও মোড়কে যত্ন নেওয়া প্রয়োজন? 871 01:01:39,000 --> 01:01:43,000 যদি যোগফল বা মধ্যে পার্থক্য 872 01:01:43,000 --> 01:01:45,000 আমরা কিভাবে তা করবেন তার উপর নির্ভর করে একটি এমনকি সংখ্যা নয়. 873 01:01:45,000 --> 01:01:49,000 তারপর কম্পিউটার যখন এটা 2.5 কিনা বিভ্রান্ত পরার; 874 01:01:49,000 --> 01:01:52,000 আমি বাম বা ডান যা মিডপয়েন্ট নির্ধারণ সরানোর জন্য? 875 01:01:52,000 --> 01:01:54,000 বুঝেছি. 876 01:01:54,000 --> 01:01:56,000 এটা যে পূর্ণসংখ্যা বিভাগ সঙ্গে সক্রিয় আউট, 877 01:01:56,000 --> 01:01:59,000 আমরা এইসব ফ্লোটিং পয়েন্ট সংখ্যা কখনও পাবেন না. 878 01:01:59,000 --> 01:02:01,000 আমরা দশমিক পেতে না. 879 01:02:01,000 --> 01:02:04,000 এটি সম্পূর্ণই বাতিল করা. 880 01:02:04,000 --> 01:02:08,000 যদি আপনি একটি কম্পিউটার দুটি ভেরিয়েবল int-এ বিভক্ত করা, 881 01:02:08,000 --> 01:02:11,000 এবং এক 7, এবং অন্যান্য 2, 882 01:02:11,000 --> 01:02:13,000 আপনি একটি ফলাফল হিসাবে 3.5 পাবেন না. 883 01:02:13,000 --> 01:02:16,000 এটা 3 পেতে হবে. 884 01:02:16,000 --> 01:02:19,000 বাকি খারিজ করা হবে, তাই এটা কার্যকরভাবে rounding- 885 01:02:19,000 --> 01:02:24,000 বৃত্তাকার কিন্তু একটি নয়, বরং একটি তল, যদি আপনি না হয় গণিত যে সঙ্গে পরিচিত, 886 01:02:24,000 --> 01:02:27,000 যেখানে আপনি পুরোপুরি দশমিক বাতিল, 887 01:02:27,000 --> 01:02:31,000 এবং তাই মূলত আপনি ছিন্ন করছি এটি কাছের ডাউন 888 01:02:31,000 --> 01:02:33,000 সমগ্র নিকটতম পূর্ণ সংখ্যায় স্থান,. 889 01:02:33,000 --> 01:02:38,000 [ছাত্র] কিন্তু তারপর যে সমস্যাযুক্ত কারণ যদি আপনি 7 উপাদানের একটি অ্যারে আছে 890 01:02:38,000 --> 01:02:43,000 তারপর স্বয়ংক্রিয়ভাবে নেয় যে এর পরিবর্তে 4th মিডপয়েন্ট এর 3 য় উপাদান আউট. 891 01:02:43,000 --> 01:02:46,000 কিভাবে আমরা যে মোকাবেলা? 892 01:02:46,000 --> 01:02:49,000 এটা সমস্যাযুক্ত কারণ যদি আমরা 7 শ্রেণীবিন্যাস ছিল, 893 01:02:49,000 --> 01:02:54,000 এটি পরিবর্তে 4th এর 3 য় বাছাই করবে. 894 01:02:54,000 --> 01:02:56,000 আপনি আরো একটু ব্যাখ্যা করা যায়নি? 895 01:02:56,000 --> 01:02:59,000 [ছাত্র] কারণ যদি আপনি 7 উপাদান পরে আছে 4 র্থ উপাদান 896 01:02:59,000 --> 01:03:04,000 মিডপয়েন্ট, ডান হবে? 897 01:03:04,000 --> 01:03:07,000 শূন্য হচ্ছে ইন্ডেক্স সম্পর্কে আপনার মতামত, যদিও মনে রাখুন. 898 01:03:07,000 --> 01:03:10,000 [ছাত্র] হ্যাঁ, তাই অবস্থান 3. যে মিডপয়েন্ট হবে. 899 01:03:10,000 --> 01:03:12,000 হাঁ. 900 01:03:12,000 --> 01:03:16,000 ওহ, ঠিক আছে. আমি দেখতে কি আপনি কি বোঝাতে চেয়েছেন. 901 01:03:16,000 --> 01:03:19,000 এটা অদ্ভুত ধরনের, এই হিসাবে আমরা পুরো ধারণা ব্যবহার করতে পারেন 902 01:03:19,000 --> 01:03:22,000 পেয়ে decimals পরিত্রাণ. 903 01:03:22,000 --> 01:03:26,000 এটা একটি বড় বিন্দু. 904 01:03:26,000 --> 01:03:30,000 চলুন এই পর্যন্ত শেষ. 905 01:03:30,000 --> 01:03:32,000 আমরা আমাদের মিডপয়েন্ট হিসাব করেছি. 906 01:03:32,000 --> 01:03:37,000 >> আমরা যদি আমাদের সুই সমান মধ্যম মান দেখতে পরীক্ষা করছি. 907 01:03:37,000 --> 01:03:41,000 আমরা যে আমরা এটি পাওয়া মুদ্রণ, কিন্তু সত্যিই কি করছি, আমরা এই পরিস্থিতিতে কাজ করতে চান না? 908 01:03:41,000 --> 01:03:46,000 আমরা এটা করেছি পাওয়া গেছে, তাই আমরা অভ্যাগত জানেন যে আমরা এটা পাওয়া যাক চান. 909 01:03:46,000 --> 01:03:49,000 আমরা একটি ফাংশন এর একটি বুলিয়ান টাইপ ফাংশন পেয়েছেন. 910 01:03:49,000 --> 01:03:54,000 উপায় আমরা আমাদের ফাংশন কলার সংকেত যে আমরা যেতে প্রস্তুত 911 01:03:54,000 --> 01:03:58,000 হয় আমরা বলে, "আরে, এটা সত্য." 912 01:03:58,000 --> 01:04:00,000 কি যে আমরা, না কেভিন চান? 913 01:04:00,000 --> 01:04:02,000 আপনি আপনার মাথা করছি অল্প সময়ের. >> [কেভিন] রিটার্ন পাবে সত্য. 914 01:04:02,000 --> 01:04:06,000 [Nate] যথাযথভাবে, সত্য ফিরে. 915 01:04:06,000 --> 01:04:12,000 এখন, যদি এটা সমান না, কিভাবে আমরা বাম অর্ধেক তাকান চান? 916 01:04:12,000 --> 01:04:16,000 কোন ধারণা? 917 01:04:16,000 --> 01:04:18,000 স্টেলা, কোনো ধারনা? 918 01:04:18,000 --> 01:04:21,000 আপনি একটি শেষ জন্য নতুন স্থান সেট প্রয়োজন. 919 01:04:21,000 --> 01:04:23,000 হাঁ. 920 01:04:23,000 --> 01:04:29,000 শেষ - তাই আমরা মিডপয়েন্ট অবস্থান করতে হবে. 921 01:04:29,000 --> 01:04:33,000 গ্রেট. 922 01:04:33,000 --> 01:04:36,000 আমরা শেষ জন্য একটি নতুন অবস্থানে সেট প্রয়োজন 923 01:04:36,000 --> 01:04:38,000 বাম অর্ধেক তাকান. 924 01:04:38,000 --> 01:04:41,000 এই ছিল কি আমরা যেখানে আগে স্বপ্ন 925 01:04:41,000 --> 01:04:44,000 আমি রাখা এই উদাহরণে ফিরে যাচ্ছে. 926 01:04:44,000 --> 01:04:50,000 আমি এখানে শুরু করেছেন, এবং তারপর আমি এখানে আছে সব ওভার শেষ উপায়. 927 01:04:50,000 --> 01:04:53,000 >> আবার, যদি আমরা 15 খুঁজছেন, এবং আমাদের মিডপয়েন্ট 16 এ, 928 01:04:53,000 --> 01:04:56,000 এবং আমরা বুঝতে পারছি, "উফ, 16 থেকে বড়. 929 01:04:56,000 --> 01:04:59,000 আমরা বাম অর্ধেক বদল করতে চান. " 930 01:04:59,000 --> 01:05:02,000 আমরা তখন 15 শেষ সরাতে হবে, 931 01:05:02,000 --> 01:05:06,000 এবং আমরা গ্রহণ মিডপয়েন্ট এক থেকে দূরে চলে গেলে যা করবেন 932 01:05:06,000 --> 01:05:09,000 এবং আমাদের নতুন শেষ হিসাবে যে সেটিং. 933 01:05:09,000 --> 01:05:12,000 একই ভাবে, যদি আমরা ডান অর্ধেক তাকান চাই, কিভাবে যে আমরা কি চাই? 934 01:05:12,000 --> 01:05:14,000 আপনার কাছে কি কোন ধারণা আছে? 935 01:05:14,000 --> 01:05:22,000 [ছাত্র] আপনি ঠিক সেট যাও + 1 টি মিডপয়েন্ট শুরু. 936 01:05:22,000 --> 01:05:24,000 [Nate] গ্রেট. 937 01:05:24,000 --> 01:05:29,000 এবং এখন ক্ষেত্রে যে আমরা কিছু খুঁজে না, 938 01:05:29,000 --> 01:05:32,000 তা নিয়ে যাওয়া আমাদের জন্য যত্ন পেতে পারি? 939 01:05:32,000 --> 01:05:36,000 ড্যানিয়েল, যে জন্য আমাদের জন্য যত্ন নেওয়া হবে? 940 01:05:36,000 --> 01:05:38,000 [ড্যানিয়েল] নং 941 01:05:38,000 --> 01:05:40,000 [Nate] যদি আমরা সম্পূর্ণ অ্যারে মাধ্যমে এটি করা এবং আমরা কিছুই না পাওয়া যায়, 942 01:05:40,000 --> 01:05:42,000 যেখানে যে যত্ন হবে, অথবা তা আমরা যত্ন নিতে হবে? 943 01:05:42,000 --> 01:05:44,000 [ড্যানিয়েল] যখন অবস্থা. 944 01:05:44,000 --> 01:05:48,000 [Nate] হ্যাঁ, যখন অবস্থা, ঠিক. 945 01:05:48,000 --> 01:05:51,000 এটা সম্পূর্ণ অ্যারের মধ্যে দিয়ে যাচ্ছিলেন যত্ন যদি আমরা কিছু খুঁজে না নিতে হবে. 946 01:05:51,000 --> 01:05:53,000 এই সময় লুপ শেষ হয়ে যাবে. 947 01:05:53,000 --> 01:05:56,000 আমরা এই অবস্থার সম্মুখীন করবে না, 948 01:05:56,000 --> 01:06:03,000 এবং আমরা মিথ্যা ফিরে আসতে পারেন. 949 01:06:03,000 --> 01:06:10,000 আমরা এই ছুটি এখানে ভালো করতে পারেন যদি 950 01:06:10,000 --> 01:06:14,000 কারণ যদি এই স্টেটমেন্ট যদি সত্য হয়, 951 01:06:14,000 --> 01:06:16,000 এবং আমাদের ফাংশন ফিরে আসতে হবে, 952 01:06:16,000 --> 01:06:21,000 এবং তাই আমরা মূলত পরিত্যাগ এই সময়ে এই ফাংশন পাবেন 953 01:06:21,000 --> 01:06:24,000 যখন আমরা ফিরে সত্য. 954 01:06:24,000 --> 01:06:28,000 কিন্তু এই কাঠামোর সঙ্গে কি এখানে হয়? 955 01:06:28,000 --> 01:06:34,000 এই সম্পূর্ণভাবে কাজ, অথবা করা হয় না কিছু আছে লজিক্যাল ফাট? 956 01:06:34,000 --> 01:06:37,000 >> এটার সেট আপ এর সঙ্গে এখন পর্যন্ত কিছু আছে লজিক্যাল খুঁত,. 957 01:06:37,000 --> 01:06:40,000 এটা কি হতে পারে? 958 01:06:40,000 --> 01:06:43,000 [ছাত্র] আপনি কেন প্রয়োজন - এবং + 1s? 959 01:06:43,000 --> 01:06:47,000 যে আমাদের অ্যারের সেট আপ আমাদের নতুন বাম এবং ডান অর্ধেক অর্ধেক হতে হবে. 960 01:06:47,000 --> 01:06:51,000 [ছাত্র] কিন্তু কেন আপনি ছাড়া এটা করা যেত না - 1s এবং + 1s? 961 01:06:51,000 --> 01:06:53,000 [Nate] আমরা এটা সেট সমান মিডপয়েন্ট পারে? 962 01:06:53,000 --> 01:07:04,000 কি যে আমার সমস্যা হতে পারে? 963 01:07:04,000 --> 01:07:08,000 [ছাত্র] আমি অনুমান এটা অদক্ষ, কারণ আপনি একটি মান ইতোমধ্যেই চেক করা হয়েছে চেক করছি. 964 01:07:08,000 --> 01:07:11,000 [Nate] যথাযথভাবে তাই, স্যাম হচ্ছে, তা সম্পূর্ণই অধিকার. 965 01:07:11,000 --> 01:07:15,000 আপনি যদি সেট শেষ এবং শুরু সমান মিডপয়েন্ট যাও 966 01:07:15,000 --> 01:07:18,000 পরিবর্তে - 1 এবং + reflectively 1, 967 01:07:18,000 --> 01:07:22,000 ভবিষ্যতে কিছু সময়ে আমরা আবার চেক আপ মিডপয়েন্ট শেষ করব. 968 01:07:22,000 --> 01:07:26,000 [ছাত্র] আমি pset শুরু, তারপর এবং আমি যে মত কিছু ছিল 969 01:07:26,000 --> 01:07:30,000 যেখানে আমি + 1 ভুলে গেছি, এবং এটি একটি অসীম লুপ আটকে গিয়েছে. 970 01:07:30,000 --> 01:07:34,000 কিছু পয়েন্ট কারণ ডান, আপনি পেতে শুরু এবং শেষ চলুন না 971 01:07:34,000 --> 01:07:39,000 প্রকৃতপক্ষে ওভারল্যাপ করে. 972 01:07:39,000 --> 01:07:41,000 কুল. 973 01:07:41,000 --> 01:07:44,000 আরও একটি লজিক্যাল খুঁত আছে, এবং সেই স্পষ্টভাবে এই হওয়া উচিত 974 01:07:44,000 --> 01:07:48,000 একটি অন্যথায় যদি. 975 01:07:48,000 --> 01:07:55,000 কেন যে হতে পারে? 976 01:07:55,000 --> 01:07:59,000 >> কারণ যদি এটা যদি আপনি এটি-নি, কেভিন দেখতে একটি অন্যথায় না? 977 01:07:59,000 --> 01:08:02,000 [কেভিন] হ্যাঁ, কারণ আপনি শেষ বিন্দু পরিবর্তন করছি. 978 01:08:02,000 --> 01:08:05,000 [Nate] যথাযথভাবে. 979 01:08:05,000 --> 01:08:07,000 আমরা শেষবিন্দু পরিবর্তন করছি, 980 01:08:07,000 --> 01:08:12,000 এবং এটি যদি এই-we'll ভালো লেখা মধ্যবর্তী শূণ্যস্থান করা 981 01:08:12,000 --> 01:08:14,000 এটি এই কেস চেক করবে. 982 01:08:14,000 --> 01:08:18,000 এই ক্ষেত্রে, যদি এটা সফল, ফাংশন পরিত্যাগ আউট হবে. 983 01:08:18,000 --> 01:08:21,000 তারপর এটি এই পরবর্তী কেস চেক করবে, 984 01:08:21,000 --> 01:08:24,000 এবং যদি এই গেলে, এটি শেষবিন্দু সমন্বয় করা, 985 01:08:24,000 --> 01:08:28,000 এবং তারপর এটা এবং অবিরত এই কেস চেক করবে. 986 01:08:28,000 --> 01:08:31,000 কিন্তু এই সময়ে, আমরা তা চেক করে অবিরত করতে চান. 987 01:08:31,000 --> 01:08:35,000 সৌভাগ্যবসত, এখানে আমরা পুনরায় সেট আছে মিডপয়েন্ট না, 988 01:08:35,000 --> 01:08:39,000 এবং আমরা জানি যে এই ক্ষেত্রে সফল হবে না. 989 01:08:39,000 --> 01:08:44,000 কিন্তু আমরা নিশ্চিতভাবে অন্য লাগাতে চান যদি সেখানে 990 01:08:44,000 --> 01:08:48,000 যদিও যে, এই ক্ষেত্রে বল 991 01:08:48,000 --> 01:08:52,000 যেহেতু আমরা মিডপয়েন্ট সামঞ্জস্য না থাকেন, যে একটি পার্থক্য করতে হবে? 992 01:08:52,000 --> 01:08:54,000 না, কারণ এই ধরনের একচেটিয়া. 993 01:08:54,000 --> 01:08:58,000 আবার, আমার খারাপ. 994 01:08:58,000 --> 01:09:01,000 আমরা এই অন্যথায় না, আমি মনে করি, যদি প্রয়োজন হয় না. 995 01:09:01,000 --> 01:09:05,000 আমরা চেষ্টা করে দেখুন এবং এটি চালানো এবং দেখুন সেখানে কি ঘটছে তা দিতে পারে. 996 01:09:05,000 --> 01:09:08,000 বিল্ডিং, একটি ত্রুটি ঘটেছে. 997 01:09:08,000 --> 01:09:12,000 এটা সম্ভবত এর কারণ আমি এখানে এই বো এর এবং এর ই বাকি. 998 01:09:12,000 --> 01:09:14,000 কি আমি শীর্ষে যারা পর্যন্ত কোনো আরো আছে? 999 01:09:14,000 --> 01:09:16,000 এটা মনে হচ্ছে না. 1000 01:09:16,000 --> 01:09:20,000 আমরা জুম আউট, নির্মাণ, 1001 01:09:20,000 --> 01:09:24,000 যায় এটা আছে, তাই এখন যদি আমরা 15 অনুসন্ধান করার জন্য, 1002 01:09:24,000 --> 01:09:28,000 হ্যাঁ. 1003 01:09:28,000 --> 01:09:30,000 আমাকে জুম ইন 1004 01:09:30,000 --> 01:09:33,000 15, হ্যাঁ. আমরা এটিকে আবার চালাতে পারেন. 1005 01:09:33,000 --> 01:09:36,000 সোর্স কোড আপলোড, ভবন, চলমান. 1006 01:09:36,000 --> 01:09:41,000 আমরা কিছু জন্য 13 ভালো অনুসন্ধান করতে পারেন, 1007 01:09:41,000 --> 01:09:45,000 এবং আমরা কিছু প্রিন্ট আউট, তাই এটি ফাইন্ডিং না না পেতে পারি যে আমাদের জন্য. 1008 01:09:45,000 --> 01:09:51,000 দারুণ, কারণ এটি আমাদের তালিকায় না. 1009 01:09:51,000 --> 01:09:53,000 >> আমরা সময় এখন আউট হয়. 1010 01:09:53,000 --> 01:09:55,000 যে এই সপ্তাহের জন্য এর তা হতে যাচ্ছে. 1011 01:09:55,000 --> 01:10:00,000 যোগদান করে, এবং আপনি পরে দেখতে পারে তার জন্য ধন্যবাদ. 1012 01:10:00,000 --> 01:10:02,000 >> [CS50.TV]