অধ্যাপক তাই বিষয়সূচি জন্য এই সপ্তাহে, না যে অনেক উপাদান. কিন্তু আশা খুব, খুবই সহায়ক এবং আপনাকে বলছি এই সপ্তাহের জন্য প্রাসঙ্গিক. কিন্তু আমরা হয়তো 15 কাটাতে চলুন শুধু দ্রুত কথা বলা 20 মিনিট লিঙ্ক তালিকা সম্পর্কে. লিংক তালিকা করতে যাচ্ছি ব্যঙ্গ উপর আচ্ছাদিত করা. তাই সম্ভবত এটা খুবই সহায়ক হবে যে কি সম্পর্কে একটু জানতে. আমরা সুবিশাল কাটাতে চলুন আজকের অধ্যায় সংখ্যাগরিষ্ঠ ব্যঙ্গ শূন্য অনুশীলন সমস্যা ওভার যাচ্ছে. এবং তারপর আমরা হয়তো 20, 30 মিনিট, সংরক্ষণ হবে কোনো দীর্ঘস্থায়ী প্রশ্নের জন্য শেষে কেউ আছে. আর গত তারপর পাঁচ মিনিট, আমি যাচ্ছি ব্যঙ্গ জন্য একটি পাম্প আপ বক্তৃতা দিতে. আপনাকে বলছি সব এখানে যে জন্য হতে চাই. এটি একটি ভাল সময় হতে যাচ্ছে কারণ. ঠিক আছে, তাই কিছু লিঙ্ক তালিকা উপাদান. কিভাবে তারা সাধারণত কাঠামোগত করছি ডান, একটি নোড বলা কি আছে? আপনি এইসব জিনিস বলা আছে নোড, structs যা. আমি তৈরি করার পদ্ধতি উপর যাবেন পরবর্তী স্লাইডে একটি নোড. কিন্তু মূলত সব লিঙ্ক তথ্য তালিকা যে পয়েন্টার মাধ্যমে একসঙ্গে গ্রথিত হয়েছে. আর তাই আমরা সুবিধা আছে একটি লিঙ্ক তালিকা উপর ব্যবহার করে, সম্ভবত, একটি অ্যারের মত, হয় আসলে যে একটি অ্যারের মধ্যে আপনি এক সংলগ্ন ব্লক প্রয়োজন সব একই জায়গায় মেমরি, এক একের পর, যে আছে পাবে. একটি লিঙ্ক তালিকা যেহেতু, আপনি করতে পারে মেমরি র্যান্ডম সামান্য বিট আছে সব আপনার কম্পিউটারের উপর পয়েন্টার দ্বারা একত্রে অভিমানী. আর এই ভাবে আপনি তথ্য অ্যাক্সেস করতে পারেন এর পর এক আসে অন্যান্য পর, অন্যান্য এর মাত্র কয়েক খণ্ড প্রয়োজন ছাড়া কোথাও আপনার কম্পিউটারে মেমরি. আর তাই এই প্রধান এক আমরা লিঙ্ক তালিকা ব্যবহার কেন. দ্বিতীয়ত, এটি পরিবর্তনশীল খুব সহজ কারণ অ্যারের মধ্যে লিঙ্ক তালিকা মাপ পরিবর্তন, আপনি একটি অ্যারে ডিক্লেয়ার যখন, আপনি একটি নির্দিষ্ট সেট মান আছে. আমি তৈরি করতে চেয়েছিলেন বলে 10 পূর্ণসংখ্যার একটি অ্যারে. আমি 10 এর একটি অ্যারের তৈরি ইন্টিজার, এবং যে এটি. এটা 10 এর. আমি যে পরে কি জানি না. আমি এটা 11 করতে চেয়েছিলেন, তাহলে এটি ব্যবহার করতে পারবেন না. আমি এটা 9 করতে চান, তা করতে পারবেন না. একটি লিঙ্ক তালিকা যেহেতু, আপনি যোগ করতে পারেন এবং মুছে দিন এবং যেখানে আপনি চান সন্নিবেশ. আপনি পরিবর্তনশীল মাপ পরিবর্তন করতে পারেন আপনার এখানে আপনার তথ্য কাঠামো গঠন. এবং যে আমাদের অনেক দেয় আরো নমনীয় আমরা সাধারণত যে না অ্যারে আছে. কেউ বেসিক বিভ্রান্ত একটি লিঙ্ক তালিকা কত গঠন বা কেন আমরা একটি অ্যারের উপর একটি ব্যবহার করতে হবে? হ্যা, আমরা বিস্তারিতভাবে উপর যাবেন আসলে কিভাবে এক নির্মাণ. কিন্তু শুধু এই ধরনের হয় এই মুহূর্তে সাধারণ অর্থে. কুল. আর তাই অ্যারে একসঙ্গে গ্রথিত হয় এই সুদৃশ্য সামান্য জিনিস বলা নোড. সমস্ত একটি নোড struct একটি টাইপ করা হয়. যদি আপনি যেমনটি একটি struct হয়, মনে রাখবেন পরিবর্তনশীল এর একটি নির্দিষ্ট ধরনের তৈরি করতে সি যে কি না আপনি একজন প্রোগ্রামার হিসাবে, অস্তিত্ব, আসলে নিজেকে যে তৈরি করতে পারেন. তথ্য ও তাই এই ধরনের কাঠামো একটি নোড বলা হয়, আসলে, যে আমাদের দ্বারা তৈরি করা হয়েছে তার নিজের উপর সি মধ্যে বিদ্যমান নয়. আর ভাবে যে আপনি আপনি হয় একটি তৈরি typedef struct এর হেডার, যা আমি কম্পাইলার বলে একটি struct তৈরি সম্পর্কে. আমরা এটা "নোড." নাম যাচ্ছেন আর ভিতরে আমরা চলুন একটি ভেরিয়েবল ডিক্লেয়ার করা, একটি মান ধারণ করার জন্য যাচ্ছে, যা. এবং তারপর আমরা চলুন নামক একটি পয়েন্টার আছে "পরবর্তী" যে পরের স্থানটিকে লিঙ্ক তালিকা নোড. এবং তারপর আপনি যে শেষ শুধু তাই আবার নোড পুনরায় কম্পাইলার ঠিক আছে, জানেন যে আমার struct সমাপ্তি. আর তাই এই ভাবে, আমরা আশা করি আপনি এটা একটি বুদ্ধিমান সামান্য অ্যারে তৈরি একটি সঙ্গে জিনিস ধরনের মূল্য এবং একটি পয়েন্টার দিয়ে. আর আপনি সব তাদের লিঙ্ক করতে পারেন একসঙ্গে যারা পয়েন্টার দিয়ে. তারা সব ধরনের হতে পারে, যাতে শৃঙ্খলিত একসঙ্গে গ্রথিত. কুল. আপনি একটু ভাল করে শুনতে পারি? শ্রোতা: হ্যাঁ. অধ্যাপক: ঠিক আছে. তাই আপনাকে বলছি দেখতে পারেন যে, পথ, একটি টিপিক্যাল লিঙ্ক তালিকা গঠিত হয় আপনি একটি মাথা আছে. নয় যা আপনি মাথা মূল্য আছে অন্য কোনো পয়েন্টার দ্বারা স্পষ্ট হচ্ছে. কিন্তু এটা, এ নির্দেশ করছে বা রেফারেন্স, অন্য একটি নোড. নোড পরে রেফারেন্স যাচ্ছে নোড, এবং তাই এবং তাই ঘোষণা করে পরে আপনি অবশেষে আঘাত না হওয়া পর্যন্ত আপনার লিঙ্ক তালিকার শেষে. এবং যদি আপনি কোন পয়েন্টার থাকবে না. আর তাই, এমনকি একটি চেইনের মত মনে, বা আপনি তৈরি বলছি কোন, আমি জানি না, যদি, ফলের loops সঙ্গে মত যখন আপনি একটু ছিল. আপনি তাদের ফাঁসি একত্রে would এবং আপনার ঘাড় কাছাকাছি তাদের পরিধান. এটা সঠিক একই জিনিস মনে করি. আপনি এই সামান্য জিনিস আছে আপনি পারেন একসঙ্গে স্ট্রিং এক যে পয়েন্ট এটা পরে, এক পর এটা, এবং তাই এবং তাই ঘোষণা আপনি একটা চেইন আছে, যতক্ষণ না একটি ডাটা স্ট্রাকচার তবে আপনার মত যে আপনি ব্যবহার করতে পারেন. তাই, এই পথে যে আমরা সাধারণত সন্নিবেশ বা মুছে একটি লিঙ্ক থেকে কোন নোড তালিকায় খুব আলাদা যে নোড যেখানে উপর নির্ভর করে. সুতরাং, উদাহরণস্বরূপ, কারণ পয়েন্টার সবসময় একটি নির্দিষ্ট মান নির্দেশ করে, আপনি মুছে ফেলতে অথবা একটি নোডের মধ্যে সন্নিবেশ যখন, আপনি পয়েন্টার যে নিশ্চিত করতে চাই সমস্ত অধিকার জিনিস টার দিকে নির্দেশ করা হয়. আপনি করতে চায়, তাহলে সম্ভাব্য সন্নিবেশ এক মান সহ একটি নতুন নোড একটি সাজানো লিঙ্কটি ভিতরে তালিকায়, আমরা সব এখানে জানতে যাচ্ছে যে ছবি থেকে ঠিক আছে, মাথা এবং দুই এর মধ্যে যেতে? এক অধিকার আছে ফিট কারণ. কিন্তু উপায় যার মাধ্যমে আমরা তা করতে হবে প্রথম পয়েন্টার dereferencing হয় মাথা থেকে ও এক যে পাঠানোর. কিন্তু আমরা এখানে একটি সমস্যা হয়ে উঠা. কেউ কি সমস্যা দেখতে পারেন আমরা প্রথম ডি-রেফারেন্স করতে হলে হয় এক মাথা থেকে পয়েন্টার? কি সমস্যা আমরা চেষ্টা যদি পাতিত পারে আমাদের অ্যারের সামনে এই যোগ করার? শ্রোতা: [শ্রবণাতীত] অধ্যাপক ঠিক. তাই আমরা এখানে ছিল একটি পয়েন্টার আছে একবার দুই মাথা থেকে ইশারা. কিন্তু আপনি যে পরিত্রাণ পেতে হলে পয়েন্টার, আপনি, এক থেকে এটি নির্দেশ আমরা এখন কোন ধারণা আছে যেখানে দুই খুঁজতে যান. হিসাবে আমি আগে বলেন, আপনি পেয়েছেন কারণ একটি আপনার কম্পিউটার মেমরি জায়ান্ট খণ্ড. এই সব নোড পারা এলোমেলোভাবে ইতস্ততভাবে ছড়িয়ে থাকতে আপনার কম্পিউটার যে কোন জায়গায়. এবং আপনি কিভাবে জানেন না যে ফাইন্ডিং সম্পর্কে যেতে. আর তাই আপনি পয়েন্টার আছে প্রয়োজন শেষে সব নোড প্রতি নির্দেশ. অন্যথায় আপনাকে যদি ঘটনাক্রমে এক ডি-রেফারেন্স প্রথম দর্শাইয়া একটি মান প্রথম, আপনি আছেন শুধু হারাতে যাচ্ছেন অবশেষে সবকিছু. তাই কি আমরা করতে যাচ্ছেন কি প্রথম would, হয় একটি পয়েন্টার তৈরি করতে চান নোড আপনি সন্নিবেশ করাতে চান. আপনি যেখানে এটি নির্দেশ এটি সন্নিবেশ করাতে চান, এবং তারপরে আপনি এক মাথা পিছনে নির্দেশ করতে পারে. যে এখানে সবাই জানার? গ্রেট. শুধু একটা চেইন মত মনে করে. আপনি একটি চেইন যোগ করুন, এটা স্বজ্ঞাত ধরনের কিভাবে আপনি যে ড্রাইভে ঢোকাতে সম্পর্কে যেতে চাই. ঠিক আছে, তাই যে অনেক আসলে আমি তা হতে চাই তুলনায় খাটো, লিঙ্ক তালিকায় একটি পাঁচ মিনিটের খেলা. ঠিক তাই আপনাকে বলছি আছে যে কি মৌলিক ধারণা. এখানে আমরা ব্যঙ্গ শূন্য জন্য এজেন্ডা আছে. এই কমান্ডের সাহায্যে আপনি ভয় দেখান দিন না. আমি এটা অনেক তথ্য জানেন. এটা খুবই ভীতিকর দেখায়. এটাও অনেক আমি পদ সিএসসি ধরনের, মনে হয়. হেক্সাডেসিমেল স্ট্রিং ভালো জিনিস, পয়েন্টার, ডাইনামিক মেমরি বরাদ্দ খুব ভীতিকর বাদন পদ আছে. কিন্তু আমরা তাদের বিরতি চলুন নিচে, কিছু অভ্যাস সমস্যার না যাতে আপনাকে বলছি সব এই পরীক্ষার জন্য প্রস্তুত হয়. কত আপনাকে বলছি আছে ইতিমধ্যে অধ্যয়নরত শুরু? ঠিক আছে, আপনাকে বলছি সম্ভবত চান শুরু শুরু করার যে উপর, ব্যঙ্গ আগামীকাল কারণ. অথবা আপনি কিছু বৃহস্পতিবার. হ্যাঁ, তাই আমরা যেতে চলুন কিছু অভ্যাস সমস্যার উপর. আপনাকে বলছি সব নিতে চান কাগজ একটি চাদর, একটি পেন্সিল আউট. আমরা শুধু কাটাতে চলুন আজকের অধ্যায় গরিষ্ঠাংশ যে কিছু ওভার যাচ্ছে আপনাকে বলছি আছে তাই ব্যঙ্গ কি আশা একটি ধারণা. ঠিক আছে. যৌক্তিক একটি দম্পতি কারো জন্য, হিসাবে ভাল বিবরণ যারা হলে, সেখানে পাতাগুলি থেকে হয়েছে না আপনি সামনে, cs50.yale.edu যান একটি লিঙ্ক রয়েছে এই পৃষ্ঠা যে "ব্যঙ্গ শূন্য নেই." বলছেন লিংক সেখানে প্রদর্শিত হয়. আপনি এটা পড়তে না জেনে থাকেন, তাহলে দয়া করে পড়ুন. এটা আপনি কি সত্যিই গুরুত্বপূর্ণ বলে কারণ ব্যঙ্গ সংক্রান্ত তথ্য. আমি থেকে এই বৈঠাচালনা আউট করা যাচ্ছে না যে মাত্র কারণ, শারীরিকভাবে, আপনাকে বলছি যেখানে জানেন না তাহলে যেতে, আমরা সমস্যার থাকবে. এবং একটি সাথে পদ তাই যদি আপনার সর্বশেষ এন, আইন স্কুল মিলনায়তনে যান. এবং p এর সাথে আপনার সর্বশেষ শুরু A টু Z, ডেভিস মিলনায়তনে যান. আর এই জন্য প্রযোজ্য বুধবার বিভাগে মানুষ. আপনি ব্যঙ্গ গ্রহণ করছেন বৃহস্পতিবার, আপনি এসএসএস 114 যেতে যেখানে আপনার লেকচার সাধারণত হয়. শ্রোতা: [শ্রবণাতীত] অধ্যাপক টু Z হে, আপনি যাচ্ছেন ডেভিস মিলনায়তনে যেতে. ঠিক আছে, আমি যে পরিবর্তন করা যাচ্ছে না? ওহ, হ্যাঁ, আপনি ঠিক স্বয়ংক্রিয়ভাবে ব্যর্থ. ওহ হ্যাঁ, যে আপনি ক্রিস্টা এর. হ্যা, আমার খারাপ. হাঁ, টু Z হে, আপনি যাচ্ছেন ডেভিস Auditorim যেতে. আমি শেষবারের মত আমি আপলোড ঠিক করতে যাচ্ছি. হ্যা. এবং তারপর কিছু মন থেকে গুরুত্বপূর্ণ আপনি সরকারিভাবে তাহলে যে বুধবার, হয় বুধবার বিভাগে ভর্তি হন, আপনি বুধবার আপনার ব্যঙ্গ নিতে হবে. আর আপনি বৃহস্পতিবার নথিভুক্ত থাকেন, আপনি আপনার ব্যঙ্গ বৃহস্পতিবার নিতে হবে. এটি বর্গ সময় আছে. কোথায়, আমি এটা করতে 1:00 মত মনে বুধবারে 2:15 এবং 2:30 3:45 বৃহস্পতিবারে. আপনি কি চান একজন শত্রুভাবাপন্ন দ্বন্দ্ব থাকে, ডিন এর অজুহাত শুধু হয়, দুর্ভাগ্যবশত, আমরা গ্রহণ করতে পারেন. আমরা ছিল, কারণ একটি অনুরোধ গরিষ্ঠাংশ বৃহস্পতিবার বুধবার থেকে সুইচ. যা আমরা যদি না সম্মান না করতে পারেন আমরা একটি ডিন অনুরোধ আছে. ঠিক আছে. আমরা একটি প্রথম ব্যবহার শুরু করার আগে তাই অনুশীলন সমস্যার স্বামী ও স্ত্রী, আমি শুধু ওভার যেতে চলেছি সাফল্যের জন্য অ্যান্ডির সহায়ক টিপস. আপনাকে বলছি, যখন আপনি যদি সত্যিই, অধ্যয়ন হাত দ্বারা কোড লেখার অভ্যাস করতে চান. প্রথমবারের আমি একটি সি এস ব্যঙ্গ গ্রহণ, আমি না ছিল হাত দ্বারা অনুশীলন লেখা কোড আগে এবং এটি অত্যন্ত ছিল এটা কতটা কঠিন এ জঘন্য. আপনাকে বলছি ঢোকা না হলে সবকিছু লেখার অভ্যাস, এটা খুব স্বাভাবিকভাবেই হচ্ছে আসে সক্ষম autocompleted আছে সেখানে বন্ধনী এবং সেমিকোলন. আপনি এটা লিখতে হলে হাত দ্বারা, কখনো কখনো এটা খুব, খুব সহজ একটি সেমিকোলন ভুলে থাকার জন্য বা বন্ধনী বন্ধ করতে ভুলবেন না, অথবা একটি কোলন বন্ধ করতে ভুলে যাওয়া, অথবা যে ভালো কিছু. তাই আপনি যদি হাত দ্বারা কোড লিখুন, এটি একটি ভিন্ন মনে করেন না. তাই আপনাকে বলছি, আপনি কাজ করছি যখন অনুশীলন সমস্যার কিছু মাধ্যমে, এটা ভাল সত্যিই আজ অনুশীলন করবে. যদি আপনি অথবা আগামীকাল, আমি অনুমান বৃহস্পতিবার ব্যঙ্গ গ্রহণ. দ্বিতীয়ত, আমরা চাই, সর্বশেষ আছে, অনুশীলন আট বছরের এর মূল্য অনলাইন ক্যুইজ. এই বছর এর প্রশ্নোত্তর সম্ভবত হতে হবে খুব, তাদের সব অনুরূপ. তারা সব অনুরূপ আছেন. আপনি ধরনের ঢোকা প্রশ্ন ধরনের শৈলী আমরা জিজ্ঞাসা, যে ধরনের আমরা এটা লিখতে হবে যে ফাংশন, ইত্যাদি ইত্যাদি, ইত্যাদি ইত্যাদি. সুতরাং, অনুশীলন ক্যুইজ গ্রহণ বিশেষত সময় সীমাবদ্ধতার অধীন. 75 মিনিট ব্যঙ্গ করতে সময় পরিমাণ অনেক না. এটা খুব, খুব দীর্ঘ. আর তাই আপনাকে বলছি সত্যিই চান আপনাকে বলছি যে নিশ্চিত করতে লেখার অভ্যাস দ্রুত হাত দ্বারা কোড. আপনাকে প্রথমে চাই না কারণ সময় যে দৈর্ঘ্যের একটি ব্যঙ্গ দেখতে আপনার ব্যঙ্গ করা. আপনি বলছি সত্যিই নিশ্চিত করতে চাই আপনি পূর্বেই অনুশীলন যে. চতুর্থ, আপনি পর্যালোচনা করতে চান বক্তৃতা ও বিভাগে স্লাইড. আপনি যদি কিছু মনে রাখার প্রয়োজন নেই. প্রকৃতপক্ষে, সবাই অনুমতি দেওয়া হয় একটি সাদা কাগজের নোট এক শীট, সামনে এবং পেছনে. আপনাকে বলছি টাইপ বা লিখতে পারেন. আপনি নিজেকে মনে রাখার প্রয়োজন খুঁজতে হলে কিছু, যে পত্রকে তা দমন করা. আমি আপনাকে গ্যারান্টি, আপনি করতে চান না যে ব্যঙ্গ মাঝখানে আটকে করা , মত হচ্ছে ওহ, কি যে সাজান বনাম এই ধরণের রানটাইম. এটা দমন করা এবং এটি কপি সরাসরি আপনার নোট শীট থেকে. তারপর আপনি আসলে শুধু ব্যবহার করতে পারেন আপনার মস্তিষ্কের সমস্যা সম্পর্কে চিন্তা বরং ঘটনা প্রত্যাহার থাকার চেয়ে. তাই সত্যিই সদ্ব্যবহার কোনো কুলুঙ্গি বিস্তারিত যদি আপনি মনে রাখার প্রয়োজন মনে করি যে, পর্যালোচনা পত্রকে নিচে অকস্মাৎ. ঠিক আছে, কোন প্রশ্ন logistically ব্যঙ্গ সংক্রান্ত আমরা শুরু করার আগে কিছু ব্যঙ্গ সমস্যার অনুশীলন? হ্যা? শ্রোতা: আমি একটি সুযোগ ছিল না ব্যঙ্গ তাকান [শ্রবণাতীত] কিন্তু এটা হতে যাচ্ছে আবেদন বেশিরভাগই, বা, হতে যাচ্ছে সেখানে হয় মত, জ্ঞান প্রশ্ন? অধ্যাপক এটা অনেক. সুতরাং, উপায় যে আমি would ব্যঙ্গ বর্ণনা হচ্ছে ÑÑ আমি একত্র করা কিছু অভ্যাস সমস্যার আমি সব ক্যুইজ থেকে টানা যে. কিন্তু আপনি দুটি প্রধান সেখানে দেখতে পাবেন প্রশ্ন ধরনের আমরা আপনাকে অনুরোধ করব. এক কাপড় একটি অত্যন্ত নিম্ন স্তরের বিস্তারিত হয়. আমরা আপনাকে একটি কোড ছোট খণ্ড দেব এবং একটি ত্রুটি এখানে নেই, বলতে? এখানে কী মুদ্রণ করা হবে? এই কোড উত্পাদন করা হবে কি, ইত্যাদি ইত্যাদি. তাই খুব কম স্তরের তথ্য বিবরণ. এবং উল্টানো পাশ দিয়ে, আমরা খুব থাকবে উচ্চ পর্যায়ের জ্ঞানভিত্তিক প্রশ্ন. আপনি কি ব্যাখ্যা করতে পারেন একটি বাইনারি অনুসন্ধান মধ্যে পার্থক্য এবং একটি রৈখিক অনুসন্ধান? কেন আমরা করতে চায় অন্য এক ব্যবহার? সম্ভবত,, GDB কি? কেন আমরা GDB ব্যবহার করতে চান না? উচ্চতর স্তর, আরো মৌলিক বোঝার প্রশ্ন. তাই আপনি যদি একটি মিশ্রণ দেখতে পাবেন আপনার ব্যঙ্গ তাদের মধ্যে দুই প্রকার. অন্য কিছু আমরা আগে সোজা সেটিকে মাথা? ঠিক আছে. শ্রোতা: আরও একটি. অধ্যাপক আরেকটা. দুঃখিত. শ্রোতা: হ্যাঁ, এটা ঠিক আছে. তাই আপনি যদি 75 মিনিট বলছে এটি অসম্ভাব্য মত, খুব ছোট যে আমরা শেষ হবে? অথবা, মত, 75 মিনিট ঠিক যতটা সময় আমরা হলে আমরা প্রয়োজন হবে উপযুক্তভাবে প্রস্তুত? অধ্যাপক: ঠিক আছে, তাই ব্যঙ্গ চ্যালেঞ্জিং. এটা স্পষ্টভাবে চ্যালেঞ্জিং. আপনি সময় নিজেকে ছোট পাবেন. আপনি সম্ভবত, 10 মত, এট্যাক 15 মিনিট যেতে, এবং বিষ্ঠা, মত হচ্ছে. আমি তাই অনেক কিছু করার বাকি আছে. যে সম্পূর্ণই সূক্ষ্ম. সবাই একই ভাবে অনুভব করতে যাচ্ছে. শুধু খুব সচেতন হতে কত সময় আপনি. আমি আপনাকে বলতে কেন এবং যাতে বলছি অনুশীলন ক্যুইজ না. এটা সত্যিই একটি মহান অনুভূতি দেয় কারণ কি ব্যঙ্গ মত হতে যাচ্ছে. তাই আপনি যদি নিজেকে হচ্ছে এটি যদি অনুশীলন সমাপ্ত করতে পারবেন একটি ভাল পরিমাণ ক্যুইজ সময়, আপনি, ভাল নিজের গতি করতে পারেন তারপর আপনি একটি সমস্যা হবে না বুধবার বা বৃহস্পতিবার. কুল. তাই আমি সবার মনে wants-- যদি অধিকাংশ মানুষ কাগজের তাল আছে ইতিমধ্যে আউট. আমি মূলত শুধু যাচ্ছি আপনি নমুনা প্রশ্ন দিতে, , মত আপনি একটি বলছি, দিতে কয়েক মিনিটের তাদের কাজ করতে. আর আমরা একটা শ্রেণী হিসেবে উপর যাবেন তাদের উত্তর কি. তাই এটি একটি খুব সাধারণ হয় আমরা করব প্রথম প্রশ্ন শুধু রূপান্তর, আপনি জিজ্ঞাসা বিভিন্ন ঘাঁটি মধ্যে নম্বর. বাইনারি, যেমন আপনাকে বলছি পারেন রিকল, বেস দুটি. দশমাংশ বেস 10, বা কি আমরা হয় মানুষের সাধারণত ব্যাখ্যা হিসেবে. হেক্সাডেসিমেল শূন্য যা বেস 16, হয় নয়টি পাশাপাশি একটি হিসাবে এফ মাধ্যমে মাধ্যমে তাই আমি চার নম্বর আছে আপনাকে বলছি জিজ্ঞাসা এখানে রূপান্তর. আমি আপনাকে তিনটি, মত দেব কিভাবে মাধ্যমে মনে চার মিনিট আমরা এই সমাধানে সম্পর্কে যেতে হবে. শ্রোতা: আমরা ক্যালকুলেটর অনুমতি দেওয়া হয়? অধ্যাপক আপনি না করবে না হ্যা, ক্যালকুলেটর প্রয়োজন. আমি মৌলিক উপরন্তু, আমি মনে করি, মনে হয় সমস্ত আপনাকে বলছি না করতে বলা হবে. আর ঠিক তাই আমি ধরনের একটা ধারনা আছে সবাই এটি করা সম্ভব হলে এর, সন্ধান তরঙ্গ, আমি হাসা, জানি না আপনি বা তুমি পেরেছ তাহলে খুশি লাগছে. হ্যা. হয়তো আরো কয়েক মিনিট. ঠিক আছে, এর মধ্যে এটি আনা যাক. আমি ইচ্ছাপূর্বক যাচ্ছি বলছি আপনি কম সময় দিতে আপনি সম্ভবত প্রয়োজন চেয়ে এই সমস্যার কিছু না, আমি যে নিশ্চিত করতে চাই সহজভাবে কারণ আমরা সমস্যার একটি গুচ্ছ মাধ্যমে পেতে. সুতরাং কোন উদ্বেগ আপনি না করে থাকেন তাহলে শেষ একটা সুযোগ আছে. আপনি যতদিন সম্পূর্ণই ঠিক এই সম্পর্কে যেতে কিভাবে একটি ধারণা. সুতরাং আসুন এগিয়ে যান এবং প্রথম এক কাজ করা যাক. সুতরাং প্রথম, কেউ আমাকে বলতে চান না বাইনারি, কি এই সংখ্যার প্রতিটি কাজ তাদের মান শর্তাবলী প্রতিনিধিত্ব? হ্যা? শ্রোতা: দুই ক্ষমতা শূন্য, এক দুই. অধ্যাপক ঠিক. কর্ম্ম করিলেন. ঠিক আছে, তাই সাধারণত আমরা বেস 10 সালে যখন এই সব, মত, প্রতিনিধিত্ব শূন্য বেস 10, ডান? যে আপনার নিজের জায়গা. আপনার 10 এর জায়গায় হয় সব এক ক্ষমতায় 10. আপনি 100 এর জায়গায় 10 দুই শক্তি. যাই হোক না কেন আপনি বেস যাচ্ছে মধ্যে আছেন সঠিক একই জিনিস সঙ্গে কাজ করতে, শুধু একটি ভিন্ন বেস সঙ্গে. সুতরাং বাইনারি, যে সমস্ত বেস দুটি. আপনি সমস্ত রূপান্তর করতে যাচ্ছেন দুই যাই হোক না কেন ক্ষমতায় মধ্যে সংখ্যা যে ডাক এর. আর তাই এই অর্থে, আমরা একটি সহজ উপায় থাকতে পারে এর পর্যন্ত যোগ করতে পারবে বা যাতে সব সংখ্যার যোগফল বেস 10 মধ্যে রূপান্তর করতে হবে. তাই যে কেউ বলতে চায় কি প্রথম এক উত্তর বেস দশ হয়? শ্রোতা: দুই, [শ্রবণাতীত] অধ্যাপক হ্যা. শ্রোতা: 42. অধ্যাপক: 42, সেখানে আপনি যান. সুতরাং আমরা এই উত্তর পেয়েছিলাম উপায় ছিল দুই, যা প্রথম দুটি করছেন. প্লাস দুই আট যা তৃতীয়. প্লাস দুই, পঞ্চম যা ওভার বাকি হয় যাই হোক না কেন. আপনি তাদের যোগফল এবং এটি 42 এর. কেউ আমরা যে পেয়েছিলাম কিভাবে বিভ্রান্ত হয়? , তেমনি মৌলিক উপরন্তু আমি আপনাকে ঠিক করা উচিত, বলেন. যদি না হয়, ভাল, আমরাও পথে দিকে তাকিয়ে যে অনুশীলন করতে পারেন. কিন্তু যে সব ঠিক হয়ে যাবে. কুল. কেউ আমাকে দিতে চান পাশাপাশি দ্বিতীয় এক উত্তর? 50? ভাল. কিভাবে বিভ্রান্ত কেউ আমরা যে হয় পেয়েছিলাম? আমি কুল থাকবে পরবর্তী স্লাইডে উত্তর. সুতরাং কোন উদ্বেগ আপনি যদি এটা কপি করতে হবে. ঠিক আছে, তাই হেক্সাডেসিমেল একটি বিট trickier হয়. কিন্তু আমি আপনাকে বলছি দেখাতে যাচ্ছি কিভাবে এটা করবেন একটি শর্টকাট. হেক্সাডেসিমেল সুতরাং, আপনি হিসাবে সব 16 হতে হয়, মনে রাখবেন. এবং আমরা কারণ মানুষের আসলে না হিসাবে যে প্রতিনিধিত্ব 16 নম্বর আছে, আমরা, যা আমাদের প্রথম শুন্য থেকে নয়টি যান 10 টি মান, এবং তারপর আমরা ফল মাধ্যমে একটি না যা আগামী ছয় মান. তাই সবচেয়ে সহজ পদ্ধিতি হল উপায় থেকে যেতে হেক্সাডেসিমেল কোনো বাইনারি সংখ্যা অর্ধেক সেগুলি আপ ভঙ্গ করা হয়. আর তাই কোন বাইনারি সংখ্যা আমরা দেব আপনি সম্ভবত আট ডিজিট থাকবে. আপনি শুধু ভাঙ্গতে পারে মাঝখানে তাদের আপ. সুতরাং প্রথম one-- একের পর এক, একের পর এক, এক, এক, এক এক. কোন ধরনের আপনি জানেন, আঁকা, এটি আপ মনে স্ল্যাশ বা তাদের মধ্যে একটি কমা. আর আপনি শুধু রূপান্তর করতে পারেন সরাসরি যাই হোক না কেন এই প্রথম হয় হেক্সাডেসিমেল সংখ্যা, এবং এখানে যাই হোক না কেন হয় হেক্সাডেসিমেল দ্বিতীয়. তাই সাধারণ স্বরলিপি থেকে মনে, কি হেক্সাডেসিমেল মান দিয়ে শুরু করবেন? শ্রোতা: জিরো. অধ্যাপক 0x. তাই আমরা যে কোন সময় আমরা আপনাকে জিজ্ঞাসা করে জানতে হেক্সাডেসিমেল কোনো সংখ্যা রূপান্তর, অথবা যে কোনো সময় আপনি কোনো দেখতে 0x দিয়ে শুরু হয় যে সংখ্যা, আপনি এটি একটি হেক্সাডেসিমেল মান যে জানেন. এবং তারপর থেকে আপনাকে জিজ্ঞাসা করা চলুন এই দুই ডিজিটের হয় তা নির্ধারণ. আর ভাবে আপনি আপ ভোট গণনা করে না যে অর্ধেক এবং যে অর্ধেক পর্যন্ত ভোট গণনা. , এই উদাহরনে কি এক, এক, এক, এক হতে হবে? যে কি মান হতে হবে? একেবারে ঠিক, এফ হতে চাই? যে 15 হতে চাই. সুতরাং এই এফ এক হতে হবে, এখানে এক, এক, এক হয় এফ তাই এক, এক, এক, এক, এক, এক, এক, হেক্সাডেসিমেল এক, এটা সব 0xff হয়. এই অর্ধেক প্রতিনিধিত্ব কারণ এফ, 15 এর মান, এবং এই অর্ধেক প্রতিনিধিত্ব এফ, মান 15. মনে রাখবেন, কারণ, আমরা করছি শূন্য থেকে নয় গণনা. একটি ফল 15, বি 11 ভালো হয়, 10 ভালো হয়. সবাই কিভাবে যে জানার আমরা হেক্সাডেসিমেল বাইনারি থেকে পেয়েছেন? শ্রোতা: তাই আমরা কিভাবে পেতে হয়নি এক, এক, এক, এক থেকে 15? অধ্যাপক: হ্যাঁ, এই অধিকার, বাইনারি? এই মাত্র একটি বাইনারি সংখ্যা ভাবুন. তাই আপনি যদি দুটি আছে এক যা zeroth,. শ্রোতা: ঠিক আছে, ওহ. তাই আপনি এটা আউট মোট. অধ্যাপক: হ্যাঁ, এবং তারপর আপনি শুধু যে আউট মোট. প্রশ্নোত্তর টেবিলে উপস্থাপিত হয় সব. শ্রোতা: ঠিক আছে. অধ্যাপক ওকে. শ্রোতা: সুতরাং আপনি বাইনারি থেকে যেতে হেক্সাডেসিমেল দশমিক? অধ্যাপক যে সবচেয়ে সহজ পদ্ধিতি হল উপায় হ্যা, তাই না. আপনি কারণ দশমিক যাচ্ছেন না দশমিক মাত্র নয় শূন্য আছে. আমরা ধরনের মাত্র আছেন দুই মধ্যে এই বিভাজন. শ্রোতা: [শ্রবণাতীত] দশমিক ব্যবহার এটি কি এটা হেক্সাডেসিমাল এটি মেলে না. অধ্যাপক: আমি বলতে চাচ্ছি, আপনি আছেন মৌলিক গণিত ব্যবহার করে ভোট গণনা. শ্রোতা: হ্যাঁ. অধ্যাপক: হ্যাঁ, প্রায় কাছাকাছি. এটি একটি বিট বিভ্রান্তিকর. কিন্তু শুধু জানি যে আপ বিভক্ত করা যেতে পারে যাই হোক না কেন এই মান ঠিক অর্ধেক মধ্যে হয়. দেখুন, এই বাইনারি মধ্যে কি? যে কি নম্বর? এটা যেতেপারে শূন্য থেকে এফ কিছু এখানে উদাহরণ হতে যাচ্ছে শূন্য থেকে এফ কিছু এবং তারপর আপনি ঠিক করা যেতে পারে ঠিক আছে ঐ দুটি. শ্রোতা: ঠিক আছে. অধ্যাপক হাঁ. ঠিক আছে. তাই আপনাকে বলছি চাই তারপর পরের এক চেষ্টা? শূন্য, এক, শূন্য এক, এক, শূন্য, এক শূন্য. আমি 30 সেকেন্ডের মত বলছি দেব, আপনি সম্ভবত জানেন না, যেহেতু এই আগে করতে কিভাবে কৌতুক. ঠিক আছে, যে কেউ এই এক একটি শট পেতে চান? 0X5A. অধ্যাপক 0X5A. 5A. ভাল. তাই এই এখানে আপনি চান be-- হবে আপনি যে পেয়েছিলাম কিভাবে আমাদের বলুন? প্রথমত, কিভাবে আপনি পাঁচটি পেতে হয়নি? শ্রোতা: শূন্য কারণ, এক, শূন্য, এক থেকে পাঁচ হয়. অধ্যাপক সবাই বোঝে পাঁচটি কেন শূন্য, এক, শূন্য, এক? আপনি এখানে এক পেয়েছেন. আপনাকে প্রথমে দুটি কিছুই আছে. দুটি দ্বিতীয় জন্য, আপনি চার যা এক, আছে. তাই আপনি যদি চার প্লাস যোগ এক, আপনি পাঁচটি আছে. সবাই ভাল? ঠিক আছে. এবং তারপর কি এই হতে হবে এবং কেন? একটি গণনায় মিলা না? শ্রোতা: 10. অধ্যাপক এবং তা এই বেস দুই? শ্রোতা: [শ্রবণাতীত] অধ্যাপক ঠিক. সুতরাং এখানে এই দ্বিতীয় মূল্য 0X5A হবে. প্রত্যেকেরই রূপান্তর কিভাবে ভাল? এটা কি মনে হয় এটা তুলনায় অনেক সহজ. আমি শুধু নিশ্চিত করতে চাই সহায়ক টিপস জানেন কিভাবে যে কি জন্য এবং ট্রিকস. শ্রোতা: কেন আপনি শুধু বিভক্ত করতে পারেন এটা যে মত মাঝখানে? ঠিক ঠিক, আমি কেবল যাচ্ছি, ভালো হতে এই প্রথম [শ্রবণাতীত] যত্নশীল? অধ্যাপক যে আসলে কারণ পথ হেক্সাডেসিমেল মান প্রতিনিধিত্ব করা হয়. আসলে এর মানে হল যে 0x, আপনি কহন ছাড়া অন্য কিছুই এটি একটি হেক্সাডেসিমেল সংখ্যা যে. এবং এই সবসময় প্রতিনিধিত্ব প্রথম চার ডিজিট. এবং এই সবসময় প্রতিনিধিত্ব গত চার ডিজিটের. আর তাই এই দুটি সংখ্যা শুধু বিভিন্ন বিট মিলা. শ্রোতা: সুতরাং আমরা always-- হবে অধ্যাপক আপনি সবসময় আছেন আট মান বিট পেতে যাচ্ছে. শ্রোতা: শুধু একটা জিনিস পছন্দ করে হয় এখানে অথবা সর্বাঙ্গে একটা জিনিস যে? অধ্যাপক ওটি একটি কী কম্পিউটার জিনিস, হাঁ. শ্রোতা: ঠিক আছে. অসাধারণ. অধ্যাপক এছাড়াও, এই উদাহরণে, তাই আমরা দশমিক বাইনারি থেকে রূপান্তরিত এবং বাইনারি থেকে হেক্সাডেসিমেল. আপনাকে বলছি আপনি নিশ্চিত করতে চাই কাছাকাছি অন্য কোন উপায়ে যাচ্ছে অভ্যাস. আমি আপনাকে 0xff দিলেন তাহলে, আপনি করতে পারে ঠিক আছে, বাইনারি যে আঁকা? আপনি বাইনারি মধ্যে রূপান্তর চ যা এক, এক, এক, এক, , বাইনারি রূপান্তর চ যা এক, এক, এক, এক. তাই আমরা যা করতে অনুরোধ জানানো হতে পারে কাছাকাছি অন্য কোন উপায়ে. সুতরাং বাইনারি দশমিক, বা বাইনারি হেক্সাডেসিমেল. সুতরাং আপনি করতে চান নিশ্চিত করুন যে আপনি উভয় উপায় জানি. আমরা সম্ভবত আপনি জিজ্ঞাসা করব একটি দুটি সমাহার. হ্যা, আপনি একটা প্রশ্ন আছে? আমি আপনি ভাল আছেন see-- পারেন? শ্রোতা: হ্যাঁ. অধ্যাপক ওকে. আমি এই মুছে দিতে ভালো আছি? গ্রেট. ঠিক আছে, তাই উত্তর কেউ যদি এখানে আছেন পরবর্তী অদ্ভুত এবং বিভ্রান্ত. ঠিক আছে. শ্রোতা: আমরা করা হলে এটা কোন ব্যাপার না ক্যাপিটল বা ছোট হাতের মধ্যে আমাদের চিঠি? অধ্যাপক এটা আছে, কারণ হেক্সাডেসিমেল, কনভেনশন দ্বারা সব অক্ষর বড়হাতের হয়. তাই একটি ফল মাধ্যমে হয় বড় হাতের হতে যাচ্ছে. আপনি একটি ছোট হাতের একটি করা হলে, আমি জানি না আমরা অগত্যা ব্যর্থ চিহ্নিত হবে তাহলে. কিন্তু তত্ত্বগতভাবে, যে টেকনিক্যালি না কিভাবে আপনি এটা আছে অনুমিত করছি. তাই তারা সব বড় হাতের হবে. হ্যা, ভাল প্রশ্ন. ঠিক আছে. দ্বিতীয় প্রশ্ন. এখানে এই সুদৃশ্য প্রোগ্রাম বিবেচনা. আমি প্রশ্ন জিজ্ঞাসা করব, আমি এই ফিরে আসবো. সুতরাং, প্রথমত, স্ট্যান্ডার্ড ভেতরে কি যে io.h প্রোগ্রাম সুদ? দ্বিতীয়ত, কি অকার্যকর করে লাইন তিন বোঝান? এবং তৃতীয়, তা থেকে শূন্য ফিরে না প্রধান, লাইন হিসাবে ছয়, সাধারণত বোঝান? আপনাকে বলছি যারা লিখতে চান আমি ফিরে যেতে হবে, যেহেতু, নিচে স্লাইডে ঠিক তাই আপনি কোড দেখতে পারেন. এই মত, হয়তো একটি একটি উদাহরণ আমরা আপনাকে জিজ্ঞাসা যেখানে উচ্চ স্তরের প্রশ্ন কি জিনিষ একটি প্রোগ্রাম মানে. আমার জন্য সবাই ভাল ফিরে স্লাইড যেতে? ঠিক আছে শান্ত হও. তাই আমি আপনাকে হয়তো তিন মত বলছি দেব মিনিট এই এক বাস্তব দ্রুত তাকান. , তাই এই এক এর মত ওকে মোটামুটি সহজ, ধারণার. কি কেউ আমাকে বলতে চান না সহ হ্যাশ দ্বারা ভিতরে প্রথম আমাদের মান io.h লাইব্রেরি ফাইল? কেন আমরা যে লাইব্রেরি প্রয়োজন না এই প্রোগ্রামের জন্য অন্তর্ভুক্ত? এখানে কি আমরা এটা প্রয়োজন? হ্যা? শ্রোতা: পাবো যে আপনি যে printf করা? অধ্যাপক ঠিক. তাই printf, যে কোনো সময় আপনি ব্যবহারকারী থেকে একটি ইনপুট নিতে এবং কিছু প্রিন্ট পর্দায়, যে স্ট্যান্ডার্ড ইনপুট, আউটপুট লাইব্রেরি. , আউটপুট ইনপুট উপায় আছে যে মনে করে. আমি একটি আউটপুট আছে না? হ্যা আমি করি. তাই আমি সবসময় করতে যাচ্ছি জানি যে STANDARDIZE i.o গ্রন্থাগারের প্রয়োজন. তাই printf ফাংশন যার দ্বারা আমরা অ্যাক্সেস প্রয়োজন এবং হ্যাশট্যাগ অন্তর্ভুক্ত স্ট্যান্ডার্ড i.o লাইব্রেরি. ঠিক আছে. দ্বিতীয়ত, এটি অকার্যকর কি বোঝান? আমরা, কি আছে int প্রধান (অকার্যকর) এখানে বাতিলযোগ্য লাইন তিনটি এখানে মানে? হাঁ, ফিরে. শ্রোতা: [শ্রবণাতীত] অধ্যাপক ঠিক. সুতরাং আমরা শিখেছি করেছি, মনে রাখবেন আমাদের pset দিয়ে শুরু আপনি আসলে করতে পারেন যে কমান্ড লাইন উল্লেখ আর্গুমেন্ট যে আপনার প্রোগ্রাম, আপনি যে প্রধান ফাংশন, আপনি যেমন লাগে, ব্যবহারকারী, ডাকা. আমরা অকার্যকর থাকে, যে আপনি যে মানে শুধু সরাসরি প্রোগ্রাম চালানো হবে কোন কমান্ড লাইন আর্গুমেন্ট ছাড়া. সবাই খুবই স্পষ্ট? ঠিক আছে. এবং সর্বশেষে কেন আমরা করছেন বিরক্তি না এখানে এই রিটার্ন শূন্য জিনিস? কেন আমরা এমনকি কোন int প্রধান আছে না? কেন আমরা শুধু অকার্যকর প্রধান অকার্যকর থাকতে পারে না? হ্যা? শ্রোতা: শুধু আমরা করতে পারেন যাতে প্রোগ্রাম যে নিশ্চিত করা যেমন, সফলভাবে প্রস্থান এটা গণিত হইলেন যদি উল্টোদিকে. আর আমরা যে যে জানতে চাই ত্রুটির একটি ভিন্ন ধরনের. অধ্যাপক হাঁ, ঠিক. এই মাত্র একটি খুব হয় আমরা যে প্রচলিত জিনিস, যে শুধু শেষে আপনার প্রোগ্রাম, ঠিক নিশ্চিত করার জন্য আপনার প্রধান ফাংশন যে সঠিকভাবে চলছে, আমরা সবসময় ফিরে শূন্য করতে চান. এমনকি আমরা অগত্যা যদিও যে কোন জায়গায় মুদ্রিত দেখতে না. কারণ প্রোগ্রামার হিসাবে, আপনি জানেন, তাহলে আপনি কোডের বিভিন্ন লাইন আছে এবং আপনি যেখানে আপনি জানেন না এই ভুল যাচ্ছি একটি ত্রুটি ঘটে এবং যদি আপনি চান আপনি যে ভুল পান তা নিশ্চিত করুন. আর তাই সাধারণত কিছু যায় তাহলে ভুল আমরা এক একটি ফিরতি থাকবে শুধু আমরা এটা জানি যে নিশ্চিত করতে. আপনি একটি ফিরতি দেখতে যদি তাই শূন্য, যে সাধারণত আপনার প্রোগ্রাম মানে সফলভাবে মৃত্যুদন্ড. ভাল? কুল. ঠিক আছে, এখানে দ্বিতীয় প্রোগ্রাম. যে বিবেচনা করুন. আর আপনাকে বলছি একটি দেখতে হলে ভাসা, আপনাকে বলছি সম্ভবত পারেন একটি ভাল ধারণা আছে কি আমি আপনাকে জিজ্ঞাসা করছি. তাই যখন এই প্রোগ্রাম হিসাবে আপনি দেখতে পারেন, executes, আমি একটি float ঘোষণা করছি আমার প্রধান ফাংশন ভিতরে. আমি ", উত্তর" নামকরণ এটা করছি এবং আমি সেটিং করছি যে 10 পর এক সমান বিভক্ত. আমি এক, প্রিন্ট আউট করছি দশমিক স্থান, যে ভাসা. এবং তারপর আমি শূন্য ফেরত দিচ্ছি. তাই প্রোগ্রাম নির্বাহ করার সময় এখন ফিরে অর্থগৃধ্নু মনে, এই প্রোগ্রাম 0.0 ছাপে. আমরা সব জানি, আশা করি আমরা সব 10 দ্বারা বিভক্ত এক একটি 0.00 নয়, জানি, এটা 0.1 এর. এই প্রোগ্রাম মনে করে কেন কিন্তু ব্যাখ্যা আরও 1 টি 0.1 10 প্রিন্ট দ্বারা বিভক্ত যে 0.1 তুলনায়? আমি 30 মত আপনাকে বলছি হয়তো দেব সেকেন্ড মাত্র দ্রুত যে আমার মনে হয় এবং আমি ফিরে প্রোগ্রাম থেকে যাবেন. ঠিক আছে. যে কেউ এটি একটি শট দিতে চান? তিন বা তার কম বাক্যে, সাধারণত আমরা করছি কারণ সব উত্তর সীমিত যাচ্ছে তিনটি বাক্য বা কম তাই আপনি শুধু ওয়াক না আপনার ব্যঙ্গ সম্মুখের র্যান্ডম জিনিষ. হ্যা, একটা শট নিতে. শ্রোতা: তাই আমি এই আছে মনে হয় মত, বলা জিনিস, [শ্রবণাতীত] তাই সেখানে হতে পারে, উদাহরণস্বরূপ, 0.09, মত, হতে পারে, আপনাকে প্রথমে প্রিন্ট যেখানে যে ডাক, এটা 0.0 করা হবে? অধ্যাপক বন্ধ, না বেশ. Christabell? শ্রোতা: আপনি এক বিভাজক করছি এবং 10, এবং তারা উভয় পূর্ণসংখ্যার করছি. আর তাই ভাবে এটা যাচ্ছে যে এটি একটি পূর্ণসংখ্যা হিসাবে সংরক্ষণ করতে. আর তাই নিকটস্থ পূর্ণসংখ্যা 0.0 হতে হবে. আর তাই যে 0.1 এর. অধ্যাপক: হাঁ, যে সত্যিই ভাল. একেবারে ঠিক উত্তর. সুতরাং এই একটি খুবই বিভ্রান্তিকর বাচ্চারা অনেক জন্য ধারণা. এবং আমি সত্যিই যে নিশ্চিত করতে চাই এই সকলের মাথা উদ্ধার করা হয়. আমরা ভাসমান কল তাই কি পয়েন্ট অনির্দিষ্টতা, যেখানে কারণে কেন অনেক লোভী আপনার প্রোগ্রামের প্রথমে কাজ করে নি, কারণ ছিল আপনি আপনার পরিবর্তনশীল নিক্ষেপ করতে ভুলে গেছি. সুতরাং Christabell বলেন কি সম্পূর্ণভাবে সঠিক ছিল. একটি float মজ্জাগতভাবে যথাযথ নয় এমন হয়. একটি কম্পিউটার এ, ঠিক আছে, আমরা আছে মেমরি বিট সসীম পরিমাণ আমরা সংখ্যা প্রতিনিধিত্ব করতে ব্যবহার করতে পারেন. সুতরাং, উদাহরণস্বরূপ, এই CS50 আইডি হচ্ছে ÑÑ আমি এটি একটি 64 বিট কম্পিউটার মনে করি. একটি float শুধুমাত্র প্রতিনিধিত্ব করা যাবে যারা বিট একটি নির্দিষ্ট পরিমাণ দ্বারা. আর তাই 0.1 অসীম শূন্য দিয়ে, যে এর 0.1 ডান, ছিল? কিন্তু আমরা আসলে সংরক্ষণ করতে পারে না আমাদের কম্পিউটার এ যে সংখ্যা. আমরা শুধু আছে না পর্যাপ্ত মেমরি তাই করতে. আর তাই কাছের পড়তা কি মেমরি সঞ্চিত আসলে 0.000 কিছু ভালো কিছু, কিছু কিছু, কিছু. যা, আপনি ছাঁটিয়া একবার এটি 0.0 নিচে চক্রের. আর তাই এই উদাহরণস্বরূপ শুধু এক সমস্যা প্রচুর প্রমান আমরা যখনই আমরা আছে ভুল গণিত করতে চেষ্টা একটি ভিন্ন পূর্ণসংখ্যা হিসাবে ঢালাই ছাড়া. তাই শুধু এই ঘটনাকেই সতর্ক হতে হবে. ক্যুইজ, আমরা আপনাকে একটি দিতে যদি কোডটি এবং এটি মত, কি শেষে কপি করে প্রিন্ট আউট? এবং এটা কিছু র্যান্ডম মান যদি আপনি যে ঘটছে কেন বলছি জানা উচিত. হ্যা? শ্রোতা: ছাঁটিয়া পরিত্রাণ পেতে হয় একটি নির্দিষ্ট বিন্দু পরে সবকিছু? [শ্রবণাতীত] অধ্যাপক হ্যা, আসলে তাই এই সত্যিই একটি খারাপ উদাহরণ, আসলে 0,100 যাই হোক না কেন, কারণ 0.1 নিচে ছাঁটিয়া হবে. কিন্তু আপনি যদি এটিকে চালাতে আমি না মনে রাখবেন, গত বছর, কারণ তারা একটি ভিন্ন প্রোগ্রাম এটি স্থাপিত হয়. তারা কিছু বলা হয় এটি দৌড়ে CS50 অ্যাপ্লায়েন্স, যা আইডি থেকে ভিন্ন. যে একটি 32 বিট সিস্টেম ছিল, আমি মনে করি. আর তাই বিভিন্ন সংখ্যার ছিল. কিন্তু মূলত, শুধু জানি যে যাও truncation পুরো ধারণা এবং এটা শুধু কিছু কেটে কিভাবে. আর তাই এটি যদি rounds-- শ্রোতা: rounding ছাড়া. অধ্যাপক ঠিক. হ্যা. কুল. হাই, পিঠ. আমরা শুধু কিছু ওভার চলুন ব্যঙ্গ পর্যালোচনা প্রশ্ন. ঠিক আছে. তাই এখানে একটি ভিন্ন প্রোগ্রাম বিবেচনা. আমি একটি আপনাকে বলছি দিতে যাচ্ছি কয়েক মিনিটের এই ওভার পড়তে. এটি একটি খুব জন্য ছিল এমন কিছু বিষয় যা সম্প্রতি আমি আপনাকে অনেক blew মনে যে বলছি মন. কিন্তু আমরা কথা বলতে যাচ্ছেন এই মাধ্যমে আবার শুধু আপনি নিশ্চিত করতে এটি সম্পূর্ণরূপে বুঝতে. ঠিক আছে. ঠিক আছে. যে কেউ করতে আরো সময় প্রয়োজন এই কোড মাধ্যমে পড়তে? ঠিক আছে. সুতরাং এটা যে আমার মনে হচ্ছে এই প্রোগ্রামে আমি আছি GetString ব্যবহার করে দুটি পংক্তি তৈরি. এক বলা হয় এবং এক টন বলা. আর যদি তারা সমান একে অপরের সাথে অন্যান্যকে সমতুল্য স্থির এটা "আপনি প্রিন্ট করা উচিত একই জিনিস টাইপ. " কিন্তু elsewise, এটা ", আপনি প্রিন্ট হবে ডান ", বিভিন্ন জিনিষ টাইপ? খুব, খুব সহজ মনে হয়. কিন্তু, তবে, আমি যদি আসলে এই প্রোগ্রাম লিখতে চেষ্টা, এটা মনে হয়, এমনকি যখন যে আমি ইনপুট সঠিক একই স্ট্রিং, এটা এখনও ", আপনি কপি করে প্রিন্ট আউট বিভিন্ন জিনিষ টাইপ! " কেউ একটি নিতে চান না কেন এই প্রোগ্রাম সবসময় এ শট সাড়া যে ইনপুট এমনকি, ভিন্ন শব্দ নিজেদের সমান পয়েন্ট হলে? সুতরাং যদি আমি ডেভিড প্রেম ইনপুট ছিল ঠিক আছে, মায়ের মত একটি উদাহরণ ব্যবহার করতে? ছোট হাতের এম হে-এম এস, টি ছোট হাতের এম হে-এম সমান. আমি মাধ্যমে এই দৌড়ে তাহলে যে কোড, কেন তা হবে "আপনি বিভিন্ন জিনিষ টাইপ?" প্রিন্ট আউট কেউ আরো প্রয়োজন আছে সময় এই সম্পর্কে চিন্তা? ঠিক আছে, আমি মনে করি আমরা ভাল মনে. হ্যা? শ্রোতা: ঠিক আছে, তাই এটা সম্পর্কে কিছু এটা ঠিক আছে, কণ্ঠস্থ করা যেখানে? অধ্যাপক হাঁ. শ্রোতা: এটা এই মত, যদি কোথায় স্ট্রিং গুলি মেমরি এ সংরক্ষিত হয় spot-- আমি আপাততঃ শূন্য উদ্ভাবক করছি. অধ্যাপক নিশ্চিত. শ্রোতা: এবং স্ট্রিং টি মেমরি স্থানে সংরক্ষণ করা হয়, 167, এবং তারপর, মত শূন্য 167 সমান না. অধ্যাপক ঠিক. ঠিক আছে, তাই এই অবিশ্বাস্য মনে প্রতিভাস আমরা আপনাকে বলছি ব্যাখ্যা এই গত সপ্তাহে, যে স্ট্রিং সত্যিই কোন অস্তিত্ব নেই? আমরা কিছু তৈরি করার সময় বলা স্ট্রিং আমরা করছি, বাস্তবে, গৃহস্থালি তারা কিছু বলা তৈরি. যা সব হয় যে আপনি একটি পয়েন্টার একটি স্ট্রিং বা অক্ষর একটি শ্রেণীবিন্যাস করতে. আর তাই এই উদাহরণে, আমি যদি ইনপুট এম হে-এম উপায় ছিল আমার কম্পিউটার এটা সংরক্ষণ করবে মেমরি ব্যাকস্ল্যাশ শূন্য মধ্যে, ডান? যারা চার অক্ষর, চিহ্ন, কোথাও সংরক্ষণ করা হবে. এবং তারপর এই চার অক্ষর, ব্যাকস্ল্যাশ শূন্য, ঠিক আছে, অন্য কোথাও সংরক্ষণ করা হয়? আমি কোন ধারণা যেখানে আছে অ্যাড্রেস তারা আমার কম্পিউটার কোথাও আছেন, আছে. যেখানে তারা কিন্তু আমি ঠিক জানি না. আমি একটি স্ট্রিং তৈরি যখন এর সব যে সত্যিই হয় একটি পয়েন্টার হয় এই স্ট্রিং এর শুরু. আর আমি এই T মান তৈরি হলে, সব যে এখানে একটি পয়েন্টার. এবং যাতে আপনি চেষ্টা করছেন সমার্থক এবং বার এর সমান হয় তাহলে দেখতে টন সমান, কম্পিউটার সত্যিই শুধু ফিরে আসছে আপনি এই মিটার অঙ্ক এবং যে M এর ঠিকানা. তাঁরা দুই কারণ তথ্য পৃথক টুকরা যে দুটি ভিন্ন মধ্যে সংরক্ষণ করা হয় আপনার কম্পিউটার এ ঠিকানা, আপনার কম্পিউটার না যাচ্ছে একই হচ্ছে তাদের চিনতে. কেউ করতে চান না একটি শট দিতে কি আমরা আমরা সংশোধন করতে চান তাহলে করতে হবে এই এবং একটি সঠিক চলমান প্রোগ্রাম আছে মাঝি, ডরাইলা? কয়েক সেকেন্ডের জন্য যে সম্পর্কে চিন্তা করুন. আমরা পরিবর্তন করার প্রয়োজন হয় না কি এই প্রোগ্রাম কার্যকরী পেতে আমরা এটা কাজ করতে চান ভাবে? হ্যা, এটা ছুরিকাঘাত নিতে চান? শ্রোতা: আমরা ডি-রেফারেন্স করার চেষ্টা করতে পারেন পয়েন্টার এবং অ্যারে মাধ্যমে পরীক্ষা? অধ্যাপক এটা যে কি এক উপায়. সুতরাং, আপনার নাম কি আবার? আমি দুঃখিত, আমার মনে পড়ে যায়. জী: জী. অধ্যাপক: হ্যাঁ, তাই কি জী একেবারে কাজ করবে প্রস্তাব. রাইট? আমরা পয়েন্টার ডি-রেফারেন্স পারা এবং আসলে যান এবং এক্সেস এখানে ভেতরে প্রকৃত তথ্য. আর আমরা শুধু তুলনা করতে পারেন পুরো পর্দা. আমরা পয়েন্টার, ঠিক আছে, বলতে পারেন, এখানে ভিতরে কি আমাকে দিতে. এটি একটি এম আসতে হবে. আর আমি যা বলতে চাই, পয়েন্টার, এখানে ভিতরে কি আমাকে দিতে. একটি এম আসতে. ঐ ম্যাচ? হ্যাঁ. তারপর আমরা এগিয়ে যেতে. আমরা সমগ্র দুটি চেক রাখা শেষ পর্যন্ত স্ট্রিং সব পথ আপ যারা সমান হয়, দেখতে সব মান সমান হয় তাহলে. আর সব মান সমান হয়, তারপর আমরা স্ট্রিং সত্য জানেন. জেনে রাখুন, যে আমরা এটা করতে হবে কিভাবে? যে কেউ এই কোনো বিভ্রান্ত না? কিভাবে স্ট্রিং পুরো ধারণা সত্যিই শুধু পয়েন্টার হয়, এবং কিভাবে তারা সত্যিই কোন অস্তিত্ব নেই? আর কেনই বা আমরা ত্রুটি পেতে আমরা এটা পেতে উপায় মত? আমি আপনাকে বলছি, পয়েন্টার গ্যারান্টি কারণ এবং স্ট্রিং বরাদ্দ এবং মেমরির আসা পর্যন্ত করতে যাচ্ছি. হ্যা? শ্রোতা: [শ্রবণাতীত] ডি-রেফারেন্স এটা, আপনি শুধু একটি তারকা করা [শ্রবণাতীত] অধ্যাপক রাইট. সুতরাং একটি পয়েন্টার মানে derererence করতে পয়েন্টার যে ঠিকানায় যান এবং সেখানে, ভ্যালু প্রাপ্ত. আর তা করতে উপায় তারকা পয়েন্টার. যে গুলান না. শ্রোতা: [শ্রবণাতীত]. অধ্যাপক হ্যা. শ্রোতা: তাই আপনি শুধু লিখে রাখতে পারেন তারকা এর সমান সমান তারকা টি করে. অধ্যাপক ওয়েল, কোন. না. শ্রোতা: একেবারে ঠিক, যথেষ্ট ভালো নয়? অধ্যাপক আপনি আছেন, কারণ এটা না শুধুমাত্র প্রথম অক্ষরটিই চেক. আপনি সম্ভবত যাচ্ছেন একটি লুপ কিছু সাজানোর প্রয়োজন প্রতি একক মাধ্যমে iterates উভয় স্ট্রিং মধ্যে চরিত্র. হ্যা. যদি তাই আপনি শুধু দেখতে পরীক্ষা করতে চেয়েছিলেন তারা একই জিনিস দিয়ে শুরু হলে, আপনি, তারকা যদি না পারেন এর তারকা টি সমান. তারপর আপনি জানেন যে অন্তত তারা একই অক্ষর দিয়ে শুরু. হ্যা? শ্রোতা: তাই উপায় আপনি যে হবে না একটি লুপ বা পয়েন্টার জন্য এমবেডেড মত? অধ্যাপক হ্যা. প্রায় কাছাকাছি শুধু একটি লুপ জন্য. ক্লাসে ডেভিড উল্লেখ, মনে রেখো ফ্রি অন্বিত চিনি? আর তিনি এই খুব ছিল তারকা টি বিভ্রান্তিকর জিনিস প্লাস এক, এটি সংহত হবে যেখানে মাধ্যমে এবং এটি পয়েন্টার সরাতে? এরকম সহজ উপায় এই মাত্র আমি কয়েক টন. তাই এটি শুধু একটি অ্যারে. আপনার জন্য একটি থাকতে হবে যে ভাবে আমি শূন্য থেকে দৌড়ে যে লুপ, যেখানে আমি দৈর্ঘ্য হল স্ট্রিং, আপনি শুধু পারা যে পরিবর্তে করছেন লিখুন পুরো পয়েন্টার, রেফারেন্স দেয়. তাই এই জিনিস ঠিক হয় আপনার কম্পিউটার এ সমতুল্য. আপনাকে বলছি সম্ভবত না করবে না যে জানা প্রয়োজন, কিন্তু এটা শুধু ধরনের ভাল লাগছে ফিরে আপনার মন আছে. শুধু কম্পিউটার জানি যে কোড বিভিন্ন ব্লক স্বীকার একই জিনিস হিসাবে. এই মাত্র অনেক বেশী ইউজার কারণ বন্ধুত্বপূর্ণ মত আমাদের তা উপস্থাপন করার জন্য একটি অ্যারের. এটা শুধু সহজ. শ্রোতা: তাই পছন্দ strlen ব্যবহার, get-- অধ্যাপক হ্যা. শ্রোতা: ঠিক আছে. অধ্যাপক আপনি করতে পারে আপনি যদি, যাও strlen ব্যবহার বা আপনি শুধু আপ করতে পারেন strlen আছে না আপনি উভয় জন্য ব্যাকস্ল্যাশ শূন্য আঘাত না হওয়া পর্যন্ত. উভয় ক্ষেত্রেই কাজ করবে. হ্যা. শ্রোতা: তাই এটি প্রতি ডি-রেফারেন্স এর একক চরিত্রের আমরা আসলে হলে এই কোড লেখা, আমরা শুধু টি বন্ধনী আমি কাজ করতে পারে এটি সামনে তারকা সঙ্গে চাই? অধ্যাপক: হ্যাঁ, সমান এর সমান আমি, এবং তারপর আমি চলন্ত রাখা বন্ধনী নিচে আপনি শেষ আঘাত না হওয়া পর্যন্ত আপ. হাঁ, যে আপনি কি করবেন তা না. এবং আমি আসলে পরের থাকবে যখন আমরা উদাহরণ আসলে strlen লিখুন তাই আপনাকে বলছি ধরনের হবে এটি সঙ্গে একটি বিট কাছাকাছি খেলতে পেতে. সুতরাং, শুধু মেমরি সবাই স্পষ্ট স্ট্রিং, পয়েন্টার, মানের অ্যাড্রেস? কিছু উচ্চ পর্যায়ের ধারণা যে আপনি ব্যঙ্গ জানি নিশ্চিত প্রয়োজন জন্য ইচ্ছা আগামীকাল. ঠিক আছে. ভাল. হাঁ. ঠিক আছে, তাই এক জিনিস আমরা উদাহরণ জিজ্ঞাসা করব যে আমরা একটি ব্যঙ্গ প্রতি বছর হিসাবে আপনি, হয় (আপনি ভুলে গিয়ে থাকেন যে অনুমান যা আমরা বছরে করতে ভুলবেন বলে মনে হচ্ছে) যা হেডার ফাইল strlen ঘোষিত হয়. আর তাই আমরা চাই এটা আমাদের নতুন করে লেখা আছে. এখানে নির্দেশাবলী একটি তালিকা আছে আমরা আপনাকে উপস্থাপন করতে পারে আপনি যে অনুমান পেতে যেখানে বলছি স্ট্রিং নাল হবে না এর. আপনি এর হতে হবে অনুমান করতে পারেন একটি ব্যাকস্ল্যাশ শূন্য দিয়ে শেষ করা. সুতরাং আপনি যে কি জানেন এটি দিয়ে শেষ করতে যাচ্ছে. এবং, উদাহরণস্বরূপ, যে হ্যালো দৈর্ঘ্য পাঁচ হবে. সুতরাং আপনি যে হ্যালো অনুমান করতে পারেন পাঁচটি, এইচ-ই-এল-এল-হে হতে হবে. আপনি যে অনুমান করতে হবে না দৈর্ঘ্য জন্য শূন্য অ্যাকাউন্ট পাছ. এখানে এই শেষ জিনিস, না পূর্ণসংখ্যা ওভারফ্লো সম্পর্কে চিন্তা. কেউ কি মনে রাখবেন কি পূর্ণসংখ্যা ওভারফ্লো হয়? শ্রোতা: বহির্ভূত Goes [শ্রবণাতীত] দৈর্ঘ্য. অধ্যাপক: হ্যাঁ, আপনি ব্যাখ্যা করতে পারেন একটি বিট, যে কি মানে? শ্রোতা: সুতরাং, আমি এটা ফিরে যায় অনুমান ছিন্ন উদাহরণস্বরূপ আগে থেকে. কিন্তু আপনি শুধু অনেক নম্বর আছে যে বিট সংখ্যা অতিক্রম আপনি আসলে এটা ধার্য করতে পারেন যে এটা শুধু ধরনের কাটা বন্ধ করবে. অধ্যাপক: হ্যাঁ, একটি টিপিক্যাল উপর তাই কম্পিউটার, আমরা কতগুলি বিট আছে না? শ্রোতা: 32? অধ্যাপক হ্যা, 32, ঠিক আছে. আর তাই যে কি, চার, এর বিলিয়ন, দুই বিলিয়ন? চার বিলিয়ন পর্যন্ত চার বিলিয়ন, ধনাত্মক পূর্ণসংখ্যা, ডান? দুই বিলিয়ন নেতিবাচক, দুই বিলিয়ন ইতিবাচক, আপনি এটি করতে চান কিভাবে উপর নির্ভর করে. তাই মূলত আমরা থাকতে পারে পর্যন্ত যেতে পারেন যে যথেষ্ট পূর্ণসংখ্যার 31 দুই বিয়োগ 1, ডান? আমরা দুই আঘাত একবার কারণ 32nd করতে, আমরা না আমাদের কম্পিউটার এ যে অনেক স্মৃতি আছে. আর তাই, তাত্ত্বিক, আমি একটি সংখ্যা সঙ্গে আসা পর্যন্ত হতে পারে যে, মত, 46th দুটি হয়. এটি একটি বিশাল-গাধা সংখ্যা কিন্তু তাত্ত্বিকভাবে, আপনি করতে পারে. আপনি চেষ্টা এবং যদি তাই পূর্ণসংখ্যা ওভারফ্লো বহির্ভূত যে একটি পূর্ণসংখ্যা তৈরি আপনার কম্পিউটার সংরক্ষণ করতে সক্ষম হয়. এবং তাই আপনাকে বলছি এই উদাহরণ আছে না আমাদের আপনি একটি দৈত্য দেওয়ার বিষয়ে চিন্তা করতে 32nd চরে দুই যে স্ট্রিং দীর্ঘ. যে সত্যিই মানে হবে. ঠিক আছে, তাই আমি শুধু দিতে যাচ্ছি আপনাকে বলছি এই বেস গঠন. আপনি একটি তৈরি করতে যাচ্ছেন ফাংশন কোন int strlen যেখানে বলা একটি পাস, একটি গৃহস্থালি তারকা, বা স্ট্রিং, পংক্তিতে পয়েন্টার নামক গুলি. ঠিক আছে, সবাই যে নিচে কপি. কুল. Oops-- অন্যান্য উপায়. সুতরাং এই একটি ভালো ধরনের হয় সমস্যা কঠিন টুকরা, তাই আমি আপনাকে হয়তো পাঁচটি বলছি দেব মানসিক বিপর্যয়জনিত আবেগাদির উচ্ছ্বাস ধরনের ছয় মিনিট এবং এই ফাংশন আউট লিখুন. শ্রোতা: আমরা না [শ্রবণাতীত] জন্য অ্যাকাউন্ট, আমরা পূর্ণসংখ্যা ব্যবহার করতে হবে না? অধ্যাপক থে, আপনি করবেন না. আমি বলছি আপনি ফ্লাইন. যখন একটি লুপ এখানে খুব উপযোগী হতে পারে. হ্যা. এখানে ক্যান্ডি. ক্যান্ডি উপলব্ধ করা হবে ব্যঙ্গ জন্য, আমি মনে করি. তাই আপনাকে বলছি সব হতে হবে আগামীকাল পর্যন্ত চিনিমিশ্রিত. আপনি এটা পেয়েছিলাম I-- পারেন. শ্রোতা: ঠিক আছে. অধ্যাপক হ্যা. হয়তো আরো 30 সেকেন্ড বা তাই. ঠিক আছে, যদি আপনি কাজ না করলে, কোন উদ্বেগ. আমরা একসঙ্গে এই মাধ্যমে সরাতে হবে. ঠিক আছে. তাই আমি ঠিক লেআউট যাচ্ছি এখানে এই ফাংশন জন্য মৌলিক কাঠামো. Strlen int. প্রথমত, কেউ বলতে চায় আমার যে কোন int উল্লেখ কি? আমরা এই ফাংশন থাকতে হবে. শ্রোতা: strlen [শ্রবণাতীত]. অধ্যাপক ঠিক. তাই এখানে যাই হোক না কেন, আমরা একটি পূর্ণসংখ্যা প্রত্যাবর্তন করতে হবে. আর উল্লিখিত বৈশিষ্ট, আমরা প্রত্যাবর্তন করতে চান শুধু বর্তা, এটা বলছি জন্য যান. এটা সব ভাল. এটি খাওয়া সব তাই আমি না আসলে, এটা ফেরত নিতে. কোন int আপনি আছেন উল্লেখ করে যাচ্ছে একটি পূর্ণসংখ্যা ফিরে হবে. এই গৃহস্থালি তারা গুলি কি? ওটার মানে কি? শ্রোতা: ইনপুট হচ্ছে কি ভালো লেগেছে,. অধ্যাপক ঠিক. আর প্রায় কি গৃহস্থালি তারকা হিসাবে একই জিনিস? শ্রোতা: স্ট্রিং? অধ্যাপক ঠিক. সুতরাং আমরা করছেন সমস্ত দান হয় একটি স্ট্রিং এই একটি পয়েন্টার. ঠিক আছে. কুল. যদি আমরা ভুলে যাই এছাড়াও, ভুলবেন না আপনি এই বন্ধনী দিতে, তাদের নিজের লিখতে ভুলবেন না. তাত্ত্বিক কারণ, আপনার কোড আপনি তাদের লিখতে ভুলে গেলে ভুল. শুধু সবসময় অবধান. ভালো লেগেছে, সামান্য জিনিস আপনি লক্ষ্য করে না আপনি আপনার ল্যাপটপে প্রোগ্রামিং করছি যখন, আপনার ল্যাপটপ এটা আপনার জন্য না, কারণ? যখন ভুলবেন না আপনি হাতে লেখা করছি. হ্যা? কিন্তু কিভাবে ভুল: শ্রোতা? ভালো লেগেছে, আমরা ভুল পুরো সমস্যা পেতে পারি? অধ্যাপক থে, কোন. চিন্তা করবেন না. এটা আসলে তাত্ত্বিকভাবে সম্ভব যদি আপনি একটি প্রশ্ন পূর্ণ পয়েন্ট পেতে জন্য এমনকি আপনার কোড হবে তাহলে বাস্তব জীবনে পা বাড়াই. আমি আপনি চেষ্টা করবেন না সুপারিশ যে ঘটতে. উদাহরণস্বরূপ, যদি মত সবকিছু এখানে যে সঠিক হয়, কিন্তু আপনি একটি কোলন বা বন্ধনী ভুলে যাওয়া, আপনার কোড আসলে চালানো হবে না. কিন্তু আমরা সব মেহেরবানদের চাইতে অধিক হতে পারে. হ্যা? শ্রোতা: আপনি আছে না আমাদের হস্তাক্ষর মন্তব্য? অধ্যাপক থে, কোন, কোন যে সম্পর্কে উদ্বেগ. কোন মন্তব্য. স্টাইল ভাল হওয়া উচিত. ভালো লেগেছে, smush না এক লাইন সবকিছু. আমরা খুশি হবেন না আপনার সাথে যদি আপনি তা করতে পারেন. কেউ করতে চান না আমার প্রথম লাইন দিতে? ইঙ্গিত, এটা খুব সহজ. হ্যা? শ্রোতা: আন্তর্জাতিক, এন শূন্য সমান. শুধু কাউন্টার স্থাপন. অধ্যাপক তাই আমরা কিছু চাই একটি পাল্টা সাজান, ডান? আমি শুধু এটির নাম "গণনা" যাচ্ছি পাঠযোগ্যতা খাতিরে. আমরা কি সমান এটি সেট করতে চান না? শ্রোতা: জিরো. অধ্যাপক হাঁ. সেমিকোলন. এটি খুব অদ্ভুত আঁকার সেমিকোলন এর. শুধু যে করছেন অনুশীলন. তাই আমরা প্রথম থাকতে চাই টাইপ int একটি কাউন্টার. আমরা কিভাবে আপ গণনা করতে চান, কারণ অনেক অক্ষর বা বর্ণ হয় এই স্ট্রিং এ, ডান? অত্যন্ত সহজ প্রথম পদক্ষেপ. ঠিক আছে, হতে পারে একটি বিট আরো জটিল এখন, কিভাবে আমরা তা করতে যাচ্ছি? কেউ করতে চান না আমার কোড লাইন দিতে যে লুপ সাহায্য করতে সক্ষম হতে পারে যাই হোক না কেন মাধ্যমে এই হল? পিছন হ্যা, সাহসী আত্মা? শ্রোতা: ঠিক আছে, তাই যখন বিন্দু আস্টেরিক্স, s এর হ্যা, তারকা, না সমান শূন্য, তারপর কিছু না? অধ্যাপক যে সত্যিই, সত্যিই বন্ধ. সত্যিই বন্ধ. তাই আমি ঠিকানা যাচ্ছি যে সাথে দুটি জিনিস. প্রথম সব, এটি ঠিক শূন্য নয়. এটা কি? এটা নাল টারমিনেটর এর যা ব্যাকস্ল্যাশ শূন্য হয়. তাই তারা বিভিন্ন আছেন তারা সংরক্ষিত করছি কিভাবে পরিপ্রেক্ষিতে. তাই আপনি যদি সত্যিই বন্ধ করছি. আর দ্বিতীয়ত, আমরা চাই না শুধু পয়েন্টার সরানো. আমরা আসলে চান ঠিক আছে, মান অ্যাক্সেস? তাই কিভাবে আমরা তা করতে না? খুব সহজ. পয়েন্টার সম্পর্কে চিন্তা করবেন না, স্মৃতি আমার মনে হয় না. এই কোর্সের সপ্তাহে দুই ফিরে যান. শ্রোতা: [শ্রবণাতীত]. অধ্যাপক হিসাবে, মনে আছে? স্ট্রিং কি? কিভাবে তারা কণ্ঠস্থ করা হয়? শ্রোতা: তারা উত্থাপিত করছি. অধ্যাপক পুনরুত্থান. তাই কিভাবে আমরা অ্যাক্সেস না ভিতরে প্রতিটি চরিত্র? শ্রোতা: [শ্রবণাতীত]. অধ্যাপক ঠিক. তাই এখানে ভিতরে কি যায় while--? এস - শ্রোতা: আই অধ্যাপক: ওহ, আমি কোন অস্তিত্ব নেই, এটা কি? শ্রোতা: ওহ, গণনা? অধ্যাপক আমরা ঠিক করতে পারেন আমরা না করতে পারেন, গণনা ব্যবহার? শ্রোতা: দুঃখিত, আমি এটা আমি বলা. অধ্যাপক: হ্যাঁ, এটা সব ভাল. আমরা যে এখানে একটি ভেরিয়েবল আছে ইতিমধ্যে আমাদের পাল্টা হিসেবে ঘোষণা করা. তাই কেন আমরা শুধু যে ব্যবহার করবেন না যখন লুপ মাধ্যমে সরাতে? এটা কি অর্থপূর্ণ? Count-- এর কেউ চায় যখন তাই এখানে পরে কি আমাকে দিতে? শ্রোতা: এটা সমান না. অধ্যাপক সমান নয়, অধিকার আছে? এটি মুহূর্তেই, সমান হচ্ছে বিস্ময়বোধক বিন্দু, সমান আপনাকে বলছি চান যাই হোক না কেন equal-- না এটা কল শ্রোতা: [শ্রবণাতীত]. অধ্যাপক হ্যা. একটি গৃহস্থালি জন্য একক উদ্ধৃতি মনে রাখবেন উদ্ধৃতি চিহ্ন একটি স্ট্রিং আছে. তাদের ব্যবহার করার সময় সতর্কতা অবলম্বন করা আবশ্যক. সুতরাং যখন আমরা মাধ্যমে খুঁজছেন অ্যারে, শেষ অক্ষর, আমরা চাই না জানি এটা ব্যাকস্ল্যাশ শূন্য হতে. যখন তাই. আমরা পংক্তির শেষে না হয়. আমরা কি ভিতরে কাজ করতে চান না? শ্রোতা: আমরা যোগ করতে চান কাউন্টার এটি গণ্য প্লাস প্লাস তাই? অধ্যাপক ঠিক. তাই আমরা এখানে কাজ করতে যাচ্ছেন কিছু প্লাস প্লাস, গণনা. আরও একটি লাইনটি অনুপস্থিত. আমরা প্রায় নেই. আমরা কি করতে বিস্মরণ হয়? শ্রোতা: শূন্য রিটার্নিং? অধ্যাপক আপনি শূন্য ফিরে আসতে চান? দর্শকদের: না, strlen ফিরে. অপেক্ষা করুন. অধ্যাপক মধ্যে সংরক্ষিত হয় যা? শ্রোতা: গণনা. গণনা. অধ্যাপক ঠিক. তাই আমরা এখানে গননা ফিরে চলুন. আমরা করছি কি কারণ এখানে করছেন ultimately-- আমরা যে একটি পাল্টা পরিবর্তনশীল আছে আমাদের স্ট্রিং মাধ্যমে বাড়ায় যাচ্ছে. আমরা বর্তা চলুন, রাখতে এই লুপ কাছাকাছি এবং চারপাশের, যাচ্ছে. আর আমরা এই প্রান্তে পারব না নাল টারমিনেটর যা স্ট্রিং. আর আমরা মধ্য দিয়ে যেতে প্রত্যেক সময় এটা আমরা আমাদের পাল্টা যোগ করছি. এবং আমরা আরও যাচ্ছেন এই অ্যারের মধ্যে বরাবর. এবং শেষে, আমরা একবার নাল টারমিনেটর আঘাত, আমরা ওহ, আমরা করতে পারেন, জানি বিরতি, গননা আসতে. আমরা আমাদের strlen আছে. সবাই কিভাবে পেতে পারি এই প্রয়োগ করা হয়? আমি জানি loops-- যদিও আমরা না আছে তাদের সাথে খুব বেশী কাজ কিন্তু তারা সাধারণত করছি খুব, খুব দরকারী আপনি যদি আপনি বাঁধন করছি কি না জানি না শর্ত অগত্যা হতে হয়েছে. প্রশ্ন? শ্রোতা: আমরা নাল লিখতে পারি যখন শর্তে? অধ্যাপক যদিও? হ্যাঁ, তাই এই সমস্যা আমি তোমাকে ছিল বলছি এর নাল হতে হবে না অনুমান. মনে রাখবেন, কারণ তাত্ত্বিকভাবে, তাহলে আমি আপনার দেওয়া মেমরি খুব বড় ছিল যে একটি পয়েন্টার, এটা ঠিক আছে, আপনি নাল দিতে হবে? এটা কি অপারেটিং সিস্টেম করতে হবে. আমি অনুমান করার জন্য আপনাকে বলতে না যদি তাই এর নাল হবে, আপনি না পরীক্ষা করতে হবে. তাই এখানে, আপনি কি হবে, এর যদি নাল সমান সমান, এক আসতে. এরকম কিছু. শ্রোতা: [শ্রবণাতীত] শূন্য. অধ্যাপক: ঠিক আছে, আমি বলতে পারবেন আমরা তা করতে পারে না কেন. ঠিক আছে, এখানে, মেমরি মনে রাখবেন, কারণ. আমরা এখানে যাবেন. আপনি দৈত্য ব্লক পেয়েছেন সমস্ত গ্রিডের সঙ্গে মেমরি যে দোকান আলাদা মান, ডান? আর তাই সব একটি স্ট্রিং জন্য হচ্ছে ÑÑ উদাহরণস্বরূপ, আমরা হ্যালো ইনপুট হয় তাহলে, এটা এইচ-ই-এল-এল-হে হবে ব্যাকস্ল্যাশ শূন্য, ডান? এবং তারপর যারা র্যান্ডম মত, জানে এটা পরে এখানে আছে যে. আমরা আসলে আছে কি না জানি না. এবং যাতে আপনি করতে হলে পরিবর্তে ব্যাকস্ল্যাশ শূন্য, নাল, এটি ফাঁকা নাও হতে পারে. এটা শুধু এর অর্থ হতে পারে, কারণ কিছু র্যান্ডম অন্যান্য বিষয় যে আপনার স্ট্রিং থাকেনা. তাই এভাবে আমরা সবসময় জানি যে শেষ একটি স্ট্রিং একটি ব্যাকস্ল্যাশ শূন্য দিয়ে হয়. আর তাই যে সবসময় আমরা কীভাবে এর একটি স্ট্রিং এর শেষে দেখুন. আপনি যদি নাল, সব যে মানে হল সর্বপ্রথমে একটি অবর্তমান পয়েন্টার, অথবা আপনার মেমরি যে শুধু তাই বড় হলে আপনি এটা ফেরত দিতে পারি, তাহলে এটি নাল হতে চাই. পার্থক্যকারী সুতরাং যখন খুব সতর্কতা অবলম্বন করা আবশ্যক নাল মধ্যে পার্থক্য এবং ব্যাকস্ল্যাশ শূন্য. হ্যা. এই জমি দখলের সঙ্গে সবাই? ঠিক আছে. তাই আমি আপনাকে বলছি strlen লেখে ছিল. Feasibly আমরা আপনার কাছে লিখতে জানতে চাইতে পারেন আমি একটি আউট, মনে রাখবেন যে "Atwoa" বা যাই হোক না কেন আপনাকে বলছি এটি কল করতে চান? যে কাজ Vigenere এবং সিজার, যে একটি পূর্ণসংখ্যা একটি ASCII মান পরিবর্তন করে? যে অতীতে ক্যুইজ উপর আসা পর্যন্ত করেনি ফাংশন আমরা লিখতে আপনাকে জিজ্ঞাসা করেছি. কাছাকাছি কোন ফাংশন আপনি ব্যবহার করা হয় যে নিজেকে লিখতে খুব সহজ, সেন্সর কম পছন্দ, ঊর্ধ্ব, অর্ধবৃত্ত, ঊর্ধ্ব হয়. একটি রূপান্তর করবে কার্যাবলী ছোট হাতের থেকে স্ট্রিং বড়হাতের. আমরা সব ঠিক আছে, যে কিভাবে করবেন জানেন? এটা বেশ সহজ. শুধু নিশ্চিত করুন যে আপনি চান আপনি can-- এটা একই চিন্তার প্রক্রিয়া. আপনি শুধু মাধ্যমে বারবার এবং আপনি যদি জিনিষ চালু. আপনি পারেন বা গণনা যখন আপনি সম্পূর্ণ ভিন্ন জিনিস চালু. আমি suggest-- হবে আমরা চলুন তাহলে জানি না কি মূলধন মুখস্থ করার অনুরোধ জানানো বা রাজধানী টু Z, বা ছোট হাতের বা ছোট হাতের একটি z- র ASCII আছে, কিন্তু আমি সুপারিশ করবে সম্ভবত ক্ষেত্রে যে নিচে লেখা আমরা করি. ঠিক তাই আপনাকে বলছি একটি রেফারেন্স আছে. বড় হাতের একটি, তা, 197 ভালো লেগেছে? এবং তারপর ছোট হাতের 50 কিছু ভালো হয়. 65, হাঁ, সেখানে আপনি যান. তাই শুধু জানেন প্রায় কাছাকাছি তাদের মধ্যে পার্থক্য 32. যে বেশ গুরুত্বপূর্ণ. হ্যা. আমি এই ভালো আছি? ঠিক আছে. শ্রোতা: আমরা পারা তাত্ত্বিক কিছু লিখুন পাশাপাশি এই নিচে আমাদের little-- উপর অধ্যাপক আপনি তাত্ত্বিক শুধু ফাংশন নিচে কপি পারে. এটা সত্য. শ্রোতা: না [শ্রবণাতীত]. অধ্যাপক আপনাকে বলছি একটি চাদর আছে. আপনাকে বলছি একটি নোট শীট আছে. আপনি এটি টাইপ করতে পারেন. আপনি লিখতে পারেন. আপনি যদি এটা দিয়ে যা চায় তাই করতে পারেন. হ্যা. তাই তাত্ত্বিকভাবে, তাহলে আপনি, জন্য যেতে চান. শ্রোতা: [শ্রবণাতীত] কিন্তু আমরা সত্যিই না অগত্যা মনে রাখা প্রয়োজন মান, আমরা ঠিক করতে পারেন ঊর্ধ্ব বা ব্যবহার কম ফাংশন, ডান? অধ্যাপক হ্যা. কিন্তু আমরা আপনাকে একটি প্রশ্ন দিয়েছেন তাহলে যে, উপরের লিখুন বলেছেন তারপর আপনি এটা লিখতে হবে. তাই আপনাকে বলছি আপনি অনুমান করতে পারেন বলছি, সব ফাংশন অ্যাক্সেস আছে কিন্তু আপনি ঊর্ধ্ব বা ব্যবহার করতে চান তাহলে কম, তা আপনার কাছে কি আছে? শ্রোতা: [শ্রবণাতীত] ব্যবহার এবং CS50 [শ্রবণাতীত] অধ্যাপক এটা CS50.h, কি? সেখানে সতর্ক থাকুন. ঊর্ধ্ব সুতরাং, অর্ধবৃত্ত, , ঊর্ধ্ব হয় কম জড়িত যে ফাংশন স্ট্রিং ম্যানিপুলেশন হয় সব পারেন ASCII মধ্যে বা গণিত গ্রন্থাগারের মধ্যে বা স্ট্রিং গ্রন্থাগারের মধ্যে. আপনাকে বলছি যারা ব্যবহার তাই যদি ফাংশন, মনে করার ব্যাপারে সতর্ক হোন যে হেডার অন্তর্ভুক্ত করা. তাই সম্ভবত এছাড়াও কিছু আপনি আপনার শীটে প্রদর্শিত করতে চান, হেডার কি হয়? লাইব্রেরি কি হয় আপনি ব্যবহার করে থাকেন? কী ফাংশন যারা লাইব্রেরি ভিতরে? এটা গুরুত্বপূর্ণ. হ্যা? শ্রোতা: আমরা থাকছি তাই পুলিস আউট এবং হ্যাশট্যাগ না একেবারে মাধ্যমে আমরা কি করেছি প্রতি চিঠি সব প্রশ্নের মত দেখা? অধ্যাপক আপনি করতে পারে. আমি কিভাবে খুশি জানি না আমরা গ্রেড হতে যাচ্ছেন যে ব্যঙ্গ যখন কোড প্রতিটি স্থানের দুইবার যতদিন এটি করা প্রয়োজন হিসাবে হয়. আমি মনে করি আমরা হতে পারে, জানি না শৈলী জন্য একটি বিন্দু বন্ধ করা. কিন্তু তত্ত্বগতভাবে আপনার কোড সঠিক হতে হবে. আপনাকে বলছি পুলিস আউট করতে পারে এবং শুধু সবকিছু অন্তর্ভুক্ত. মধু, খুব সূক্ষ্ম. শ্রোতা: [শ্রবণাতীত]. অধ্যাপক হ্যা. আমি যদিও যে করছেন না বোঝা যায় না. হ্যা. শ্রোতা: কুল. অধ্যাপক ভাল প্রশ্ন. শ্রোতা: সুতরাং, লক দৃশ্যকল্প. অধ্যাপক খারাপ ক্ষেত্রে. আপনি সম্পূর্ণই ভুলে গিয়ে থাকেন, আপনি যে কাজ করতে পারে. হ্যা. হাঁ, কোড অধিকার আছে. আমি এন পরিবর্তে, আপনি গণনা কিন্তু ব্যবহৃত আপনার নৌকা floats যাই হোক না কেন, জানি. শ্রোতা: অপেক্ষা করুন, যাতে আমরা হ্যাশট্যাগ করতে হবে না আমরা কারণ হল কোন int এ শুরু করছেন? অধ্যাপক: হ্যাঁ, আমি শুধু যে অধিকৃত আমরা ফাংশন লিখতে বলা হয়েছিল. আপনি নিরাপদ হতে চান, তাহলে আপনি সম্ভবত সেখানে লাগাতে পারে. কিন্তু আমি শুধু হাঁ, মাথা ঘামান না. আমি জানি না আপনি যদি এই জন্য কোনো লাইব্রেরি প্রয়োজন. আপনি কি সত্যিই মুদ্রণ করছি না, কারণ কিছু বা কিছু খুঁজে, সঠিক? হ্যা, আমি জানি না আপনি একটি লাইব্রেরি প্রয়োজন. ঠিক আছে. এই বরাবর এছাড়াও একটু বেশী মেমরি ম্যানিপুলেশন লাইন. চতুর বিট এই ধরনের. এই ব্যাপারে চিন্তা করো. আপনি func নামক একটি ফাংশন আছে. আমি এর নাম হতে পারে যাই হোক না কেন, কিন্তু আমি এটা func নাম নির্বাচন করুন. আমি আমার মূল উপরে আছে. আপনি করতে চান, মনে রেখো আপনার প্রধান পর একটি ফাংশন, যদি আপনি নিশ্চিত করতে চাই শীর্ষ প্রোটোটাইপ অন্তর্ভুক্ত. কিন্তু এই ক্ষেত্রে এটা এত ছোট ছিল আমি অনুভব করলাম যে আমি শুধু পারা প্রধান উপরে এটি অন্তর্ভুক্ত. আমি প্রোটোটাইপ আছে করার প্রয়োজন ছিল না, এটা ইতিমধ্যে উপরে লেখা কারণ. তাই আমি এটাই আমার প্রধান ফাংশন করছি পূর্ণসংখ্যা x তৈরি হয় 10 সমান. আমি আমার func ফাংশন আহ্বান করছি এবং তারপর কিছু আপ মুদ্রণ. এবং তারপর যে আসলে কি func করছে. আপনাকে বলছি এই মাধ্যমে ভাবতে চাই. এটি একটি চতুর বিট কারণ. এটা আসলে, খুব, খুব চতুর. কি মনে করি এই মাধ্যমে প্রোগ্রাম outputting হবে. আমি বলছি আপনি দুই মিনিট সময় দেব. গুড আলোচনা? শ্রোতা: হ্যাঁ. অধ্যাপক হ্যা. ঠিক আছে, তাই এই হল একটি কারণে চতুর. আমি আনতে চেয়েছিল কেন এবং এই হল সকলের মনোযোগ এই. কেউ আমাকে দিতে চান একটি প্রস্তাব, একটি প্রয়াস? এই কি প্রিন্ট আউট হবে? আপনি ভুল প্রমাণিত হন সম্পূর্ণই সূক্ষ্ম. হ্যা? শ্রোতা: আমি এটা 100 মনে করি এবং তারপর 10 দুটি পৃথক লাইন. অধ্যাপক এবং 10? কেউ অন্য কোন অনুমান আছে? হ্যা? শ্রোতা: হয়তো মাত্র 10 কারণ func কিছু আসছে না? অধ্যাপক: ঠিক আছে, আমরা তাই আন্দাজে এক নম্বর আছে অনুমান দুই নম্বর হল যে মাত্র 10 প্রিন্ট আউট করা যাচ্ছে. কেউ অন্য কোন অনুমান আছে? ঠিক আছে. তাই এর ডান, এই ভিতর দিয়ে হেটে যেতে যাক? আপনি কোড একটি টুকরা পেলেই, শুধু এটা তাকান এবং মত হয়ো না, আহ, এত যে জিনিস! আমি খুবই দ্বিধাগ্রস্ত! ভালো লেগেছে, নিজেকে শান্ত. শুধু জানি যে আপনি শুধু পারা রেখা দ্বারা কোড লাইন মাধ্যমে চেহারা. প্রশ্নোত্তর টেবিলে উপস্থাপিত হয় সব. এটি একটি বই পড়া মত. কোনো ফাংশন সঙ্গে তাই, আমরা সবসময় প্রধান এ শুরু. সুতরাং আমরা চলুন int প্রধান অকার্যকর এ শুরু, এমনকি প্রোগ্রাম এর ইতিমধ্যে অধিকার, থকা? প্রধান অকার্যকর এ শুরু. Int x 10 সমান. তাই আমি এই মুছে দিতে যাচ্ছি. আমি মেমরি আঁকা যাচ্ছি তাই শুধু আপনার বলছি ধরনের ঘটছে তা দেখতে পারেন. আমরা আমাদের স্ট্যাকের আছে নিচে এখানে মনে রাখবেন? এখানে আপ আমরা আমাদের আছে কোথাও এখানে আপ গাদা. স্ট্যাক অধিকার, বৃদ্ধি আপ? এবং স্ট্যাকের মধ্যে, আপনি mains হিসেবে কাজ mains স্থানীয় ভেরিয়েবল সব. তাই এখানে, int x এর 10 সমান. আমাদের প্রধান ফাংশন মধ্যে আমরা আছেন এক্স নামক একটি পরিবর্তনশীল তৈরি. আমরা 10 থেকে যে সমান সেটিং করছি. এখানে আপনি কিছু এক্স পেয়েছেন, এবং আপনি আছেন ঠিক আছে, 10 যে সমান সেটিং, প্রধান মধ্যে. সবাই ভাল? ফাংশন. তাই এখন আমাদের প্রধান মধ্যে ফাংশন, আমরা আহ্বান করছি আমরা উপরে লিখিত করেছি ফাংশন. সুতরাং আমরা এখন দ্বিতীয় ফাংশন লিখতে করছি. আমরা অন্য তৈরি করতে যাচ্ছেন পরিবর্তনশীল int-x 100 সমান. কি স্ট্যাকের এখানে ঘটছে? আপনি একটি কল করে তখন কি হবে নতুন ভেরিয়েবল তৈরি করে যে ফাংশন? কি স্ট্যাকের এখানে ঘটবে? শ্রোতা: উপরে [শ্রবণাতীত] গাদা? অধ্যাপক হ্যা. সুতরাং এটা আসলে একটি কপি তৈরি করে. উপরে গাদা এবং এটি ধরনের. একটি স্ট্যাক স্ট্যাক চিন্তা বই, কিছু একটি স্ট্যাকের. সর্বশেষ এ উপরের প্রথম piles, আউট, প্রথম, শেষ বার. সুতরাং তা এখানে একটি এক্স তৈরি করতে যাচ্ছে. যে আছে যাচ্ছে সব funcs ভেরিয়েবল. গ্রেট. তাই এখন আমরা দুটি ভিন্ন এক্স এর যে আছে দুটি ভিন্ন জিনিষ প্রতিনিধিত্ব. তারপর আমরা মুদ্রণ চলুন X পূর্ণসংখ্যা আউট. তাই এর ডান, 100 প্রিন্ট করা যাক? কারণ এখানে এটা 100 এর. সুতরাং যে প্রথম জিনিস এটি প্রিন্ট আউট যাচ্ছে যে. এই ফাংশন আয় কিছুই হিসাবে, এখন যে ফাংশন, প্রধান যে লাইন সমাপ্ত. এখন পর্যন্ত আমার সাথে সবাই ভাল? সুতরাং আমরা বাইরে দুটি মাধ্যমে এখন আছেন আমাদের প্রধান ফাংশন তিনটি লাইন. এখন আমরা তৃতীয় লাইনে যাচ্ছেন. আমরা printf চলুন. প্রধান মধ্যে এই এক্স কি? যে কি প্রতিনিধিত্ব করে? কি মূল্য এখন এক্স হয়? শ্রোতা: 100. অধ্যাপক এটা 100? শ্রোতা: এখনও 10. অধ্যাপক এখনও 10. হ্যা. মধ্যে মনে রাখবেন, কারণ আমাদের func, এক্স 100 সমান. কিন্তু আমরা ফিরে আসতে হলে আমাদের প্রধান ফাংশন, যে ভেরিয়েবলের মধ্যে সংরক্ষণ করা হয় আমাদের স্ট্যাকের উপর বিভিন্ন জায়গায়. তাই এখন আমরা ফিরে যেতে হবে প্রধান স্ট্যাকের, স্থানীয় ভেরিয়েবল mains. এবং এখানে এক্স 10 এর সমান. আর তাই আমরা 10 প্রিন্ট আউট চলুন. তাই সে একেবারে সঠিক ছিল. আমরা আছে চলুন 100 ও 10 এর আউটপুট. হ্যা? শ্রোতা:, এটা যখন আপনি malloc হয় গাদা বা [শ্রবণাতীত] যে স্ট্যাক? অধ্যাপক যখন আপনি malloc, আপনি গাদা থেকে মেমরি গ্রহণ করছেন এবং এটা বণ্টন. আপনি করবেন না, যাতে এই কোন সঙ্গে জগাখিচুড়ি. তাই আমি বড় Takeaway অনুমান এখানে সুযোগ কিছু বলা হয়. এ ছিল আপনাদের মধ্যে যারা জন্য পর্যালোচনার সময় শেষ রাত, আমরা এই সম্পর্কে সংক্ষেপে বললাম. সুযোগ সংজ্ঞায়িত কিভাবে এবং আপনার ভেরিয়েবল অস্তিত্ব যখন. বা ফ্রেম কি মধ্যে আপনার ভেরিয়েবল অস্তিত্ব না. সাধারণত থাম্ব কাছাকাছি নিয়ম আপনি তাদের তৈরি হলে, আপনার variables-- হয় কোঁকড়া ধনুর্বন্ধনী ভিতরে তারা অস্তিত্ব শুধুমাত্র যারা কোঁকড়া ধনুর্বন্ধনী ভিতরে. তাই আমাদের ফাংশন উদাহরণস্বরূপ func, আপনি ঐ দুটি ধনুর্বন্ধনী দেখতে. আপনি তৈরি করছি এটা কিছু ভিতর, সম্ভাবনা আছে যে আপনি কি করছেন সব হয় একটি স্ট্যাক তৈরি এবং সেখানে যে সংরক্ষণকারী. প্রধান একই জিনিস. যে শুধু প্রধান ভেতরে সঞ্চিত. এছাড়াও আপনি হতে চান এখানে খুব, খুব সতর্ক. সুযোগ এছাড়াও ধার কারণ বিভিন্ন উদাহরণ নিজেই. যেমন একটি জন্য তাই লুপ, int জন্য আমি 0 সমান. আমি 10 আমি জানি না, এর চেয়ে কম হয়. আমি প্লাস প্লাস. এবং আপনি ঠিক এটি ভেতরে কোড পেয়েছেন? কোথায় এই পরিবর্তনশীল আছে, আমি আসলে শুধুমাত্র অস্তিত্ব? শুধু আপনার জন্য লুপ এর ভিতরে. তাই আমি আপনাকে বলছি অনেক আছে বাজি সম্ভবত এই ত্রুটি যখন সম্মুখীন আপনি আপনার psets প্রোগ্রাম করছেন. কিভাবে আপনাকে বলছি অনেক আমি ব্যবহার করার চেষ্টা করেছেন লুপ জন্য একটি বাইরে এবং একটি ত্রুটি ছিল? একটি unreferenced পূর্ণসংখ্যার মত অথবা যে ভালো কিছু? যে ঘটবে কারণ এখানে আপনি কারণ হল কিছু তৈরি করে শুধুমাত্র আপনার লুপ জন্য উপস্থিত থাকে. আপনি এটি ব্যবহার করতে চেষ্টা করুন, তাহলে আমি না আসলে এটা বাইরে বিদ্যমান. তাই মূলত একটি কম্পিউটার আমি বলার অপেক্ষা রাখে না আপনি যে বিষয়ে কথা বলছি তা জানি না. আমি জানি তা হল একটি আমি যে হয় এখানে, কিন্তু এখন আর. সুতরাং যদি আমি একটি তৈরি ছিল ভিতরে লুপ জন্য, ডান? আর আমি অন্য তৈরি করা যাচ্ছে না, int- এ জে মত, এটা যাই হোক না কেন আছে এবং. এবং যদি আপনি এর ভিতরে একটি কোড আছে যে লুপ, J শুধুমাত্র এখানে বিদ্যমান. কিন্তু যে আমি মধ্যে বিদ্যমান. আর তাই J শুধুমাত্র বিদ্যমান লুপ জন্য এই মধ্যে, আমি গোটা ব্যাপারটাই মধ্যে বিদ্যমান, যেহেতু. সবাই স্পষ্ট? শর্তাধীন বিবৃতি সঙ্গে একই জিনিস আপনি কিছু তৈরি করতে চান তাহলে. যখন loops তাহলে সঙ্গে একই জিনিস আপনি কিছু তৈরি করতে চান. যে হতে এমন কিছু খুব, সম্পর্কে খুব সতর্কতা অবলম্বন. তাই এই সত্যিই একটি ভাল সমস্যা ছিল এটা দুটি জিনিস প্রদর্শিত যে অনুভূতি. এটা প্রথম সুযোগ প্রদর্শিত. এবং এটা প্রদর্শিত এছাড়াও মেমরি বরাদ্দ. আপনাকে বলছি যে জানা উচিত, কারণ ফাংশন স্ট্যাকের মধ্যে ঊর্ধ্বমুখী বাড়া. এবং যে আপনি যখন কল ফাংশন, আপনি তৈরি করছি মেমরি মূলত একটি নতুন স্ট্যাকের. যা থেকে খুব ভিন্ন আপনার mains মেমরি কি. হ্যা. রক্ষে! যে ওকে সবাই? যে বিভ্রান্তিকর ছিল. খুব ভালো বিষয়, পুনরালোচনা আপনি সম্ভবত করছি কারণ কিছু চতুর পেতে যাচ্ছে ব্যঙ্গ যে ভালো জিনিস. হ্যা. কুল. আমি কি তোমাদেরকে বলে 100 পেতে রেখে দেব লাইন এবং অন্য নেভিগেশন তারপর 10. হ্যা, খুব ভাল. ঠিক আছে, এখন আপনাকে বলছি পাবেন সুযোগ Tas পর্যালোচনা করা. আপনি সব সুদৃশ্য উত্তর পেতে আমি মাঝে মাঝে যেতে পারে ইমেল. তাই শ্রদ্ধেয় Andi, আমি কিছু মনে করি দেখুন আমার কম্পাইলার সঙ্গে ভুল. আমি আমার কোড সঠিক নিশ্চিত নই কিন্তু আমি একটি সেগমেন্টেশন ফল্ট পাচ্ছিলেন আমি চালানোর প্রতি সময়. কি হচ্ছে? সাহায্য ভালোবাসার প্রচুর অনুগ্রহ করে লিখুন. আপনাকে বলছি ভালো কিছু আছে, তাহলে আপনার প্রতিক্রিয়া কি কিভাবে যে? এই আসলে খুবই সাধারণ প্রশ্ন আমরা আপনাকে অনুরোধ করব. আমরা আপনাকে একটি দেব, তা হল, যদি দৃশ্যকল্প, আমরা আমাদের দেব কি ঘটছে এ আপনার সেরা অনুমান. কেউ কি ঘটছে একটি ছুরিকাঘাত আছে? হ্যা? শ্রোতা: হয়তো dereferenced পয়েন্টার ভালো নাল, কিছু নাল ইশারা করা হয়. অধ্যাপক: হাঁ, যে একটি হতে চাই যে ঘটতে পারে যখন দৃষ্টান্ত. কিন্তু বড় ছবি কি কি এখানে যাচ্ছে? শ্রোতা: আপনার চেষ্টা করছেন আপনি না হন যে মেমরি অ্যাক্সেস এক্সেস আছে অনুমিত? অধ্যাপক ঠিক. সুতরাং, একটি seg দোষ একজন বন্ধ মনে মেমরি সীমা, সীমিত এলাকায় যে আপনি স্পর্শ করা উচিত নয়. তাই প্রায় কাছাকাছি আপনি চেষ্টা করছেন উদাহরণস্বরূপ মত index-- করতে, আপনি ঘোষণা করেছি একটি শূন্য থেকে নয় অ্যারে. কিন্তু আপনি যে 10 স্পর্শ করার চেষ্টা মান, আপনি যে এক্সেস আছে না. আপনি এটা ঘোষণা করা হয়েছে কারণ. আর তাই আপনার কম্পিউটার যাচ্ছে যে মত হতে তাকান, ওহ আহ, আপনি যেতে চেষ্টা করছেন একটি সূচক সীমার বাইরে. আমি আপনাকে দিতে যাচ্ছি একটি সেগমেন্টেশন ফল্ট. ঠিক আছে, সেগমেন্ট হিসেবে মনে? একটি অতিরিক্ত সেগমেন্ট, দোষ হয় আপনি কিছু লঙ্ঘন করার চেষ্টা করার সময় এবং আপনি সেখানে থাকার কথা নয়. সেগমেন্টেশন ফল্ট যে কোন সময় হয় আপনি যদি কিছু স্পর্শ করার চেষ্টা যে আপনি স্পর্শ করা উচিত নয়. তাই সাধারণ উদাহরণ একটি সূচক হয়. অবশ্যই, আপনি চেষ্টা করছি যে নাল ছিল স্পর্শ করতে, যে হিসাবে ভাল কাজ করবে. আপনার পয়েন্টার আকর্ষণের চেষ্টা করে , স্পর্শ করা উচিত নয় যে স্পর্শ যে হিসাবে ভাল কাজ করতে পারে. সবচেয়ে সাধারণত আপনি পাবেন একটি অ্যারের মধ্যে এই দেখুন. সবাই ভাল? শ্রোতা: আপনি চান তাহলে 10 পয়েন্ট অ্যাক্সেস করতে এবং শুধুমাত্র একটি সীমা আছে নয়টি বা কিছু. অধ্যাপক হাঁ, ঠিক. বেশ অনেকখানি. কুল. প্রিয় Andi. সুতরাং আমরা এই বিস্ময়কর পেয়েছেন কিছু প্রকারের বলা. তাহলে আমরা যেমন sort-- মার্জ উদাহরণস্বরূপ যখন দেখেছি ডেভিড পুরো করেনি বর্গ মধ্যে জিনিস কেন, এটা আর তাই অনেক দ্রুত যদি অন্যান্য প্রকারের কোন, কেন আমরা এমনকি বুদ্ধিমান বিরক্ত না অন্যান্য প্রকারের কোনো? সত্যিই আপনি জিজ্ঞাসা এই প্রশ্ন কি? তিন word-- কী শ্রোতা: ট্রেড বন্ধ কি? অধ্যাপক ঠিক. যে প্রশ্ন জিজ্ঞাসা কি না. মধ্যে বাণিজ্য বন্ধ করার কী অন্য কোন প্রকারের আয়াত সাজানোর মার্জ? শ্রোতা: ঠিক আছে, মেমরি লাগে? অধ্যাপক আপনি কি একটি বিট আরো যে ব্যাখ্যা? প্রথমত এর মার্জ দোকান ব্যাখ্যা করা যাক. কিভাবে কাজ সাজানোর মার্জ করে? শ্রোতা: এটা দ্বারা কাজ করে, তাই অর্ধেক মধ্যে সবকিছু বিভাজক এবং তারপর একসঙ্গে নির্বাণ এবং যাতে এটা বরাদ্দ, প্রত্যেক সময় মত আপনি সেট একত্রীকরণ. অধ্যাপক অনেক সুন্দর. তাই আমি এই তুলে আনতে পারে, কিন্তু এটা would এটি আঁকা আমার পাঁচ মিনিট সময় নিতে. অধ্যায় স্লাইড উপর পিছনে তাকান যেখানে আমরা একত্রীকরণ সাজানোর আচ্ছাদিত. ঠিক. তাই পথ সাজান কাজ মার্জ , এটা অর্ধেক কিছু ভাগ হয় এবং তারপর এটি শুধু দেখে তাদের সব প্রথম মান এবং শুধুমাত্র যে অসুস্থ. অবিরত নতুন অ্যারে তৈরি করে এবং যাতে জিনিষ আরো রাখে. আর তাই যে সত্যিই, সত্যিই যখন দ্রুত আপনি জানেন প্রচলিত আইনও কারণ, একটি বাইনারি অনুসন্ধান এন এন লগ. আপনি অনেক তৈরি করছি আপনি আছেন যে বিভিন্ন অ্যারে মেমরি বিপুল পরিমাণ ব্যবহার. আর তাই এটি দ্রুত, বাণিজ্য বন্ধ করার সময় আপনি আরো মেমরি ব্যবহার করছেন এখানে. আর তাই, ইঙ্গিতটি, বিশৃঙ্খলভাবে এবং অনুসন্ধান আরো এই বছর অনেক আবৃত ছিল তারা আগের বছর হয়েছে আর. আপনাকে বলছি যে দেখতে হবে সেই অনুযায়ী প্রশ্নোত্তর প্রতিফলিত. আমি স্পষ্টভাবে যাচ্ছে সময় ব্যয় হবে ওভার কি বিভিন্ন প্রকারের সব হয়, কিভাবে বাইনারি অনুসন্ধান, কিভাবে রৈখিক অনুসন্ধান কাজ. কিভাবে সম্ভবত pseudocode করতে যারা আউট কোড. চলমান বার কি? চলমান সময়ের মত কিছু খুব হয় একটি নোট শীট সম্মুখের নিচে কপি করার সহজ, ঠিক আছে? আপনি যখন এটা সত্যিই কঠিন মাঝখানে পরীক্ষায় এবং আপনি যে জিনিসটা আছে. এটা কপি করে. আমি আপনাকে করছি আপনি গ্যারান্টি যে জানা প্রয়োজন যাচ্ছে. বিনিময় প্রথা কী? সবচেয়ে কেস সেরা ক্ষেত্রে পরিস্থিতিতে তাদের সব জন্য, খুব জানতে পারেন. হ্যা? শ্রোতা: আমরা প্রয়োজন না একত্রীকরণ সাজানোর কোড কিভাবে জানেন? ভালো লেগেছে, আমরা প্রয়োজন না রিকার্সিভ মনে? অধ্যাপক আমি অত্যন্ত শুধু, এটা সন্দেহ এটা মোটামুটি জটিল মত কারণ. কিন্তু এটা infeasible নাও হতে পারে যদি আমরা pseudocode হয় এটি ব্যবহার করতে পারি. হ্যা. হাঁ, ঠিক আছে, আরও একটি. এই পর্যন্ত আসতে পারে কিছুক্ষনের মধ্যে আপনি শেষ টুকরা. হ্যা? সবাই যে তুমি শুনতে পাচ্ছ? প্রথম ঠিক আছে, তাই অনেক সুন্দর প্রোগ্রাম সব, কি ধরনের আপনি কি এই মত একটি আউটপুট দেবার? আমরা সম্পর্কে জানতে আপনি জিজ্ঞাসা মনে রাখবেন টুল ডিবাগ এই নতুন ধরনের? এটা নাম কি ছিল? Valgrind, ডান এটা একটি প্রোগ্রাম যেখানে ছিল আপনি পারা যে পেরেছিলাম আপনি আছেন সব স্মৃতি সম্পর্কে অবগত রাখা আপনার প্রোগ্রামে ব্যবহার এবং কি ঘটছে ছিল. তাই আপনি যদি চান, তাহলে কিছু পেয়েছেন স্পষ্টভাবে এক ব্লক, 40 বাইট হারিয়েছে. সম্ভবত আপনি না হন এটি মুক্ত মনে. আপনি মেমরি বাইট ব্যবহার করছেন, যে, আপনি যে মেমরি ব্যবহার করেছি মানে কিন্তু আপনি মুক্ত করতে সক্ষম হয়েছে না. সুতরাং আপনি করতে চান এছাড়াও আপনি কি নিশ্চিত যে যে ক এর free-- ব্যবহার সব মুক্ত করতে একটি ফাংশান malloc দ্বারা reallocated মেমরি. কুল. এই স্লাইড সুতরাং, আমি এটা করতে হবে. এটা অনেকটা এ সবখানে অধ্যায় স্লাইড অনেক বক্তৃতা. আপনি সত্যিই নিশ্চিত করতে চাই আপনি শুধু এই সব জানি. উভয় ক্ষেত্রেই আপনার নোট শীট বা আপনি যদি এটা মুখস্থ করতে চান, বিনা দ্বিধায়. যে সত্যিই সত্যিই, সত্যিই গুরুত্বপূর্ণ. এছাড়াও একটি খুব ভাল আমরা জিজ্ঞাসা করতে পারেন যে প্রশ্ন. কেন নির্বাচন sort-- চেহারা হয় নির্বাচন রানটাইম সব sort-- n ছক হয়. তথাপি তালিকায় আসে কিভাবে আপনি তাই কেন নির্বাচন sort-- হয়, যেমন আমি বলছি আপনি 30 দেব দ্বিতীয় এই সম্পর্কে চিন্তা. এটা বিভ্রান্তিকর ধরনের কারণ. এটা কিছু ধারণাগত চিন্তার জড়িত. কেন চালান বার একই হতে হবে উভয় খারাপ এবং ভাল ক্ষেত্রে শর্ত? হ্যা? শ্রোতা: কারণ নির্বাচন সাজানোর প্রতিটি এই সামান্য অ্যারের মধ্যে অবস্থান বা স্থান জিনিস বা যাই হোক না কেন. তাই এমনকি সেরা দৃশ্যকল্প, এটা পুরোপুরি সাজানো হলেও, এটি এখনও এক, ঠিক আছে, ভালো হতে হবে. আমার প্রথমেই আমি এক আছে. আর তাদের সব দিয়ে যেতে. ঠিক আছে, এক ছোট. এবং তারপর আবার যায় এবং, দুটি ঠিক আছে, ভালো হয় কিছু সব ক্ষুদ্রতম হয়. কিন্তু এটি এখনও আছে প্রতিটি এবং প্রতি এক পরীক্ষা. অধ্যাপক হ্যা. সুতরাং উদাহরণস্বরূপ, শুধু বলে দিন আমরা একটি তালিকা, ইতিমধ্যেই সাজানো আছে, একটি অ্যারের পাঁচটি এক. নির্বাচন প্রকারের যে ভাবে এটা এই দুই পরীক্ষা, সময় আসে. তারপর ঐ দুটি পরীক্ষা করা হবে. এবং তারপর এটি পরীক্ষা করা, এবং এটি পরীক্ষা করা হবে. এটা তাদের সব চেক রাখে নির্বিশেষে কিনা বা না এটা আসলে সাজানো. যে সহজভাবে কারণ সাজান কাজের ধরনে. আর তাই এই প্রশ্ন ধরনের ভালো হয় আমরা জিজ্ঞাসা করব একটি ধারণাগত প্রশ্ন. যেখানে প্রথম, আপনাকে কি নির্বাচন সাজানোর জানি ঠিক আছে, পাবে, হয় প্রশ্নের উত্তর দিতে. আপনি বুঝতে সক্ষম হতে হবে ধারণার কি ঘটছে. এবং তারপর আপনি ঠিক আছে, তা প্রয়োগ এবং মনে করতে পারেন এর মাত্র লক দৃশ্যকল্প কল্পনা করা যাক. তারা সব ক্রম সাজানো মধ্যে আছেন. কিভাবে যে এটা প্রভাবিত করবে? কি এটা আরোহী যদি? এটা আগে থেকেই সাজানো হলে? কিভাবে যে রানটাইম প্রভাবিত করবে? এবং তারপর নির্বাচন সাজানোর, আপনি বিজ্ঞপ্তি পাবেন এটা আসলে কোন ব্যাপার না যে. আপনি চেক করছি কারণ সব মান নির্বিশেষে কি ঘটছে. এবং এত ভালো জিনিষ মনে রাখা. কিছু প্রকারের অন্যদের থেকে পৃথক কেন এবং কিভাবে ভাল এবং খারাপ ক্ষেত্রে শর্ত তাদের সব প্রভাব পড়বে. আমি সত্যিই প্রকারের আঘাত যাচ্ছি যে ব্যঙ্গ করা হবে কারণ. হ্যা. ঠিক আছে. বাম ছয় মিনিট আছে. আমি প্রশ্ন তিন মিনিট সময় নিতে পারে. আমি এর জন্য ঘোরাঘুরি করতে পারেন অধ্যায় পরে 20 মিনিটের মত আপনি পাশাপাশি প্রশ্ন জিজ্ঞাসা করতে চান তাহলে. কেউ শুধু সত্যিই সংক্ষিপ্ত আছে প্রশ্ন বা ধারণাগত বিষয় তারা এই মুহূর্তে স্পষ্ট করছি? হ্যা? শ্রোতা: আপনি একটু কথা বলবো bitwise অপারেটরদের ওপর বিট? অধ্যাপক হ্যা. সুতরাং bitwise অপারেটরদের হয় কিছু যে আপনি সম্ভবত শুধু আপনার পত্রকে লাগাতে চাইবেন. তাই আমি চাই না quickly-- গভীরতা অত্যধিক যেতে তাদের পর্যালোচনা হার্ভার্ড, কারণ সেশন, চমত্কার ঢেকে দিলেন. Bitwise অপারেটর, আছে তাদের মধ্যে পাঁচজন, ডান? , এক্স বা ফাংশন যা, এই নেই এবং যা, এম্পারসেন্ড আছে. অথবা যা পাইপ,. এবং তারপর আপনি দুটি আছে বদল আনতে বিভিন্ন ধরনের. আমি আপনাকে দুটি মান, তাহলে দিতে হলে আমি এক এবং এক, মত, আপনি দিতে. যে কি করতে মূল্যায়ন করবেন? তাহলে আমি আপনাকে সত্য, সত্য এবং সত্য দিতে? কি সত্য বা মিথ্যা সম্পর্কে? এখনও সত্য, ঠিক আছে? একটি অথবা আছে কারণ. আমরা সম্ভবত আপনি নম্বর দেব. সুতরাং এক সমান, মনে সত্য, শূন্য মিথ্যা সমান. আর আমরা আপনাকে এই জিনিস দিতে পারে এবং কি আমাদের জানাতে অনুরোধ জানানো. হার্ভার্ড প্রথম মধ্যে এটি জুড়ে তাদের গবেষণায় সময় 10 মিনিট সত্যিই, সত্যিই ভাল. তাই আপনাকে বলছি না করতে চান নিশ্চিত করুন যে আপনি ফিরে যে চেহারা. শ্রোতা: pisa5 হয় ব্যঙ্গ করা যাচ্ছে? অধ্যাপক নং এমনকি এই মুহূর্তে pisa5 তাকান না. এটা কঠিন. শুধু এমনকি pisa5 এ খুঁজছেন মাথা ঘামান না. যাইহোক, কিছু ইঙ্গিত হিসাবে এবং পরামর্শ, আমি আপনি pisa5 শুরু সুপারিশ করবে যত তাড়াতাড়ি ব্যঙ্গ হয় হিসাবে. এই hardest হতে হবে সপ্তাহে, কিন্তু তারপর আপনাকে বলছি পাহাড় থেকে তা পাস করা হবে সবুজ এবং একপাল ঘূর্ণায়মান, এবং এটা সূক্ষ্ম. এই শ্রেণীর উল্লেখযোগ্য পায় পঞ্চম pset পর সহজ. শ্রোতা: অফিস ঘন্টা রবিবার, সোমবার? অধ্যাপক হ্যা, অফিসে ঘন্টা .এত Pset জন্য সোমবার রবিবার. অফিস ঘন্টার রাতের মূলত শুধু ব্যঙ্গ জন্য পর্যালোচনা করা হবে. কেউ আসা এবং জিজ্ঞাসা করতে চায় তাহলে একটি প্রশ্ন Tas, আমরা সেখানে থাকব. আমি হয়তো আরও একটি প্রশ্ন নেব কেউ একটি প্রশ্ন আছে তাহলে? হ্যা? শ্রোতা: যখন আপনি আছেন সংজ্ঞা নোড, [শ্রবণাতীত] আপনি পরের তারপর নোড তারকা এবং যদি বলি, কম্পিউটার স্বয়ংক্রিয়ভাবে আছে আপনি আছেন যে বুঝতে অন্য পয়েন্টার নির্দেশকারী? অধ্যাপক নং শ্রোতা: আপনি আছে এটা [শ্রবণাতীত] পুনরায় লিঙ্ক? অধ্যাপক তাই মূলত একটি নোড struct, মনে হয়, আপনি নোড তৈরি মত এটি এবং তাহলে আপনি পরবর্তী নামক একটি পয়েন্টার আছে. আপনি কি করছেন সব হচ্ছে সেখানে গঠন. আপনি দায়িত্ব অর্পণ করা আছে যে কোথাও পয়েন্টার. তাই কম্পিউটার না এটা এখনো কি করছে জানেন. আপনি আসলে যখন এটি দায়িত্ব অর্পণ করা আছে আপনি আপনার লিঙ্ক তালিকা তৈরি করছি. আর যে তা প্রধানত 5 pset হবে. সম্পর্কে তাই কোন উদ্বেগ এখন যে অধিকার কোনো. শ্রোতা: তাই আমরা প্রয়োজন হবে না শুধু, লিঙ্ক তালিকা উপর খুব বেশী ফোকাস সাধারণ ধারণা? অধ্যাপক শুধু অনেক সুন্দর নির্গত, সারির, লিঙ্ক তালিকা, গাছ, হ্যাশ টেবিল. শুধু কি তারা জানেন পাবে. আমরা জিজ্ঞাসা করতে যাচ্ছেন না আপনি নির্দিষ্ট কিছু চাই আমরা সত্যিই কাজ না করে, কারণ একটি এখনো যে কোন জুড়ে যে pset. আগে গত দুই মিনিটের মধ্যে তাই আমি আপনি বিনামূল্যে এই ব্যঙ্গ বধ সেট. বেশ অনেক, মত, সে বিষয়ে চিন্তা পর্যন্ত আপনাকে বলছি এই ক্লাসে এসেছি. আমি যখন সপ্তাহে দুটি মনে এই বর্গ, আপনি কিছু পানি লেখা তিন ঘন্টা ব্যয়. আপনার কত সময় লাগবে বলছি এখন পানি লিখতে? 30 সেকেন্ড, হয়তো? কত চিন্তা আপনাকে বলছি শিখেছি. সি এস সত্যিই, সত্যিই কঠিন বিষয়. যে কোন সন্দেহ নেই. এটা কেউ এটা চর্চা, যে কেন কঠিন. শুধু হার্ড. এবং এটা সম্পূর্ণই সূক্ষ্ম. আর আমি যে সত্যিই গর্বিত সবাই পর্যন্ত এটা এই করেছেন. Psets সহজ হয় না. তারা অনেক সময় নিতে. আপনাকে বলছি, আমি লিখতে অনুরোধ জানানো হবে না pset উপর 15 বা Vigenere খেলা. কোন প্রয়োজন নেই, শুধু যে বিষয়ে খেয়াল আউট করা. আমরা এখানে পরীক্ষা করছি সকল নির্ণয় করা হয় আপনার ধারণাগত জ্ঞান, সেইসাথে কোডিং আপনার মৌলিক দক্ষতা কিছু হিসাবে. পরীক্ষা করার জন্য ডিজাইন করা হয় সত্যিই চ্যালেঞ্জিং হবে. ভালো লেগেছে, এটা পরিকল্পিত হয় জন্য আপনি 100 পেয়ে যাও. এটি সম্ভবত আপনার জন্য ডিজাইন করা হয় 75 মিনিটের মধ্যে শেষ করা সম্ভব হবে না. যে সম্পূর্ণই সূক্ষ্ম. আমি একজন ছাত্র নিজেকে আছি. আমি হেঁটে যাওয়ার সময় আমি জানি, আমি এটা ঘৃণা একটি ব্যঙ্গ আউট বিষ্ঠা, মত হতে. যে সত্যিই কঠিন ছিল. সম্ভবত তা যাচ্ছে ঘটতে এবং যে সম্পূর্ণই সূক্ষ্ম, আমি ডান এখন আপনাকে বলছি বলছি. এই জিনিস মানে এ সব উচ্চ হয় না. আর আপনি তাদের জন্য যারা মত, পেয়ে হয়েছে, আপনার সমস্যা সেট তিনে, যে আপনি করছি মানে এই নয় এই শ্রেণীর একটি 60 শতাংশ পেতে যাচ্ছে. আপনার উপর 60% ছাড় পান তাহলে না যে ব্যঙ্গ, আপনি চলুন মানে এই শ্রেণীর একটি ডি পেতে. আমরা বিশেষ করে আমি, জন্য, দেখুন আমার বিভাগে আপনাদের মধ্যে যারা, আপনাকে বলছি সব কাজ হয় কিভাবে হার্ড আমি দেখতে. আর আমি যে ট্র্যাক রাখতে. আপনাকে বলছি জরিমানা হবে. কোন প্রাতিষ্ঠানিক মেমরি নেই সেমিস্টারে শেষে সুখ. সব হার্ভার্ড বাচ্চাদের কহন হয় কারণ তাদের বন্ধু, ওহ, আপনাকে জরিমানা করা হবে. কোন এক যে এখানে আপনাকে বলছি কহন হয়. তাই আমি যে এখানে আপনি না বলতে আছে. আপনাকে বলছি জরিমানা হবে. আমি আপনাকে বলছি সব নিয়ে খুব গর্বিত. পরীক্ষা কঠিন হবে. এটা জন্য অধ্যয়ন, এবং পরে শুধু এটা বর্জন করা. নতুন কিছু শিখতে তৈরী থাকুন. এবং মিছরি খেতে. আমরা ক্যান্ডি প্রচুর আছে করেছি. একটি ভাল রাত্রে নিশ্চিন্তে ঘুমোতে পেতে. ঘুম না না, কারণ যে সত্যিই খারাপ হতে চাই. সি এস যুক্তিবিজ্ঞান অনেক. আপনার ঘুম না হলে, আপনি কাজ করতে পারেন না, এবং আপনার মস্তিষ্ক কাজ করতে পারেনা. আর আমি পরের 20 জন্য অপেক্ষা করে থাকব মিনিট কেউ ঘোরাঘুরি করতে চায় তাহলে. আপনাকে বলছি এটা হত্যা করতে যাচ্ছি. সৌভাগ্য.