[সঙ্গীত বাজাচ্ছি] এই CS50-- হার্ভার্ড নয় বিশ্ববিদ্যালয়ের ভূমিকা বুদ্ধিজীবী থেকে কম্পিউটার বিজ্ঞানের উদ্যোগের এবং প্রোগ্রামিং এর শিল্প. আর আমার নাম ডেভিড Malan, এবং আমি শুধু এই সকালে ভাবছিলাম, এটা হয় amazingly 20 বছর আজ হয়েছে আমি গত শনি আপনাকে বলছি এখন না যেখানে. এটা 1996 ছিল. আমি একটি বার্ষিক ছিল, এবং আমি গ্রহণ ছিল খুব প্রথমবার জন্য CS50. এবং আমি এমনকি নার্ভ পর্যন্ত অর্জিত না ছিল এটা নিজেকে নবীন বছর নিতে, আংশিকভাবে সময় কারণ. আমার কম্পিউটার বিজ্ঞান ছিল ধরনের ভালো, সাধরণ. আমি একটি গুরু একটি বিট ক্রমবর্ধমান ছিল আপ, কিন্তু আমি সত্যিই না কোনো মেধা আছে কি হাজির আগ্রহ মাত্র আভা হতে মানুষ সব সময় প্রোগ্রামিং. আমি সৎ হতে ভয় হয়. কোর্স ও কম্পিউটার বিজ্ঞান আরো সাধারণভাবে ছিল এবং কতক, এখনও একটি ক্ষেত্র এই খ্যাতি হয়েছে হুঁশিয়ার, যদি শুধুমাত্র কারণ তাই আমাদের অনেক এটা সঙ্গে অপরিচিত এবং এটা নিশ্চিত না হলে. এবং এটা সত্যিই পর্যন্ত আমি shopped ছিল না এই শ্রেণীর যে বার্ষিক fall-- এবং এমনকি তারপর, আমি শুধুমাত্র ভর্তি কারণ professor-- আমার প্রথম প্রশিক্ষককে এক, ব্রায়ান এখন Princeton-- এ Kernighan আমাকে ক্লাসে পাস ব্যর্থ নিতে অনুমতি. এবং প্রকৃতপক্ষে, যে কেন আজ আমরা অনুমতি এবং উত্সাহিত এই ক্লাস নিতে ছাত্র / SAT-UNSAT. এবং শুধুমাত্র তারপর, দ্বারা সেমিস্টারে শেষ আমি চাই, ঘেউ, এই উপলব্ধি হয়নি যেমন একটি অপরিচিত ক্ষেত্র ছিল না. একটি প্রকৃতপক্ষে, এই ছিল খুব, ক্ষেত্র ক্ষমতায়ন এবং আরো excitingly, বিশেষত পরে, আমি কোর্স গ্রহণ ড্রামাটিক আর্টস 101 এবং ল্যাটিন একটি এবং তারপর অবশেষে Grad স্কুল পুরাতত্ত্ব, আমি সত্যিই দেখতে শুরু হয়নি এই ক্ষেত্র, কম্পিউটার এর ছেদ বিজ্ঞান, মানবিক সঙ্গে, প্রাকৃতিক বিজ্ঞান, শিল্পকলা, ঔষধ, এবং পছন্দ. তাই যে কি ঠিক তাই হলো কম্পিউটার বিজ্ঞান বিষয়ে ঝরঝরে পরিণামে, যেমন আমরা আশা করি আপনি পাবেন see-- তার প্রযোজ্যতা হয় এই অন্যান্য ক্ষেত্র, এবং কিভাবে আপনি করতে পারেন আজকের এবং সেমেস্ত্র এর কিছু নিতে ধারণা ও ব্যবহারিক দক্ষতা ফিরে আপনার নিজস্ব ডোমেইনে, এবং আসলে এই ছেদ অন্বেষণ লিবারেল আর্টস অ্যান্ড সায়েন্সেস. আপনি তাই 73%, গত যদি বছর কোনো ইঙ্গিত নেই, সামনে একটি সি এস কোর্স কখনো নিয়েছি. তাই আপনি যদি, আমার মত, আপনি হয় একটি সামান্য বিট অনুভূতি ভয়, বা উন্মুক্তভাবে তুমি নও সত্যিই কি নিশ্চিতরূপে এখানে এমনকি কেন করছি. কিছু সম্ভবত আপনি শুধু অনুসৃত স্যান্ডার্স ওভার বন্ধুরা ঠিক এখন. যে সম্পূর্ণই সূক্ষ্ম. এখানে লক্ষ্য হুক হয় আপনি এবং আপনি কি আশ্বস্ত যে যদি আপনি তাকান না বাম এবং ডান দিকে, আপনার সাথে সহপাঠীদের দেখতে যাচ্ছেন সামান্য বা যতটা অভিজ্ঞতা হিসাবে যে আপনি নিজেকে থাকতে পারে. এবং প্রকৃতপক্ষে, আমরা শেয়ার করব কিছু পরিসংখ্যান পরে আজ কি এর জনমিতি হিসেবে শ্রেণী সাধারণত মত চেহারা. এবং হিসাবে যোগ reassurance-- এবং এই আমরা এর অর্থ কী, যেহেতু আমি অবশ্যই ধরে নেন কিছু বছর ago-- মধ্যে অবশ্যই এর সিলেবাস যে আপাততঃ কি শেষ পর্যন্ত এই কোর্সে বিষয় এত আপনি যেখানে শেষ নয় আপ আপনার সহপাঠীদের আপেক্ষিক, কিন্তু যেখানে আপনি 11 সপ্তাহের মধ্যে, এর শেষ সেমিস্টারে, নিজেকে আপেক্ষিক শেষ সপ্তাহে 0, যা যেখানে আমরা আজ এখানে আছেন. এবং এই আমি কি উপলব্ধি হয় সমস্ত বছর আগে. আর আমি অনেক জানি ক্লাস এই বলে, কিন্তু এটা বিশেষত কম্পিউটার বিজ্ঞানে সত্য. দিনের শেষে, এই ফিল্ড হিসাবে এটা আমার ছিল অচেনা এবং আপনি হতে পারে, সত্যিই শুধু সমস্যা সমাধানকারী সম্পর্কে. এবং যেমন, এটা এই আছে প্রযোজ্যতা অন্যান্য ক্ষেত্র পেতে. এবং সত্য, যদি আমরা চেষ্টা পাতন এই কথার মানে কি, এই সমস্যা সমাধান হয় তার সারাংশ, আমি অনুমান. তাই যাই হোক না কেন ইনপুট এটা যে আপনি সমাধানের চেষ্টা করছি. আউটপুট আছে, যা আশা করা হয় যে সমস্যার সমাধান. এবং তারপর, যেমন আমরা কম্পিউটার বিজ্ঞান মধ্যে বলে, সেখানে এই কালো বক্স মাঝখানে আপনি অগত্যা না যে এটা কিভাবে কাজ করে সে সম্পর্কে যত্ন আছে. আপনি নিজেকে অবশেষে প্রতাপ বাস্তবায়ন কি যে বক্স ভিতরে. কিন্তু আজ এর উদ্দেশ্যে এবং আরো জন্য জীবনে সাধারণত, সব আপনি যত্নশীল যে এই সমস্যার সমাধান করা হয়. এবং কি এই কোর্স পরিণামে সম্পর্কে অন্বেষণ করা হয় ছেদ এই ইনপুট এবং আউটপুট, এবং এই তথাকথিত আলগোরিদিম, যেমন আমরা শীঘ্রই দেখতে পাবেন, যে বাস্তবায়ন কি নীচে আছে, হুড. কিন্তু এই ইনপুট এবং এই আউটপুট কি যে আসলে মানে? আচ্ছা, দিনের শেষে, আমরা প্রয়োজন তথ্য প্রতিনিধিত্বমূলক কিছু উপায়. এই কম্পিউটারে বিশেষভাবে সত্য, যা অভিনব ও এটা হিসাবে হিসাবে জটিল মনে হতে পারে, একটি চমত্কার মূক ডিভাইস. এটা থেকে কিনা electricity-- লাগে একটি তারের বা ইনপুট হিসাবে একটি ব্যাটারি এবং তারপর এটা কিছু উত্পাদন পর্দায় preprogramed প্রতিক্রিয়া. কিন্তু আমরা থেকে কিভাবে পেতে পারি সেখানে শেষ শুরু? ওয়েল, একটি সমস্যা কি সমাধান করা হচ্ছে? ওয়েল, হয়তো আমরা এ বালকটিকে কোন সেমিস্টারে সূচনা, উপস্থিতি নিতে চেষ্টা এই মত একটি রুমে. তাই আমি এক, দুই, তিন মত করতে পারে. হয়তো বা, যদি আমি তা সাজানোর ট্র্যাক রাখতে myself-- এর জিনিস ট্র্যাক রাখতে আমি দ্রুত হাতে রান আউট পারে. তাই আমি শুধু হ্যাশ marks-- এক করতে পারে ব্যক্তি, দুই, তিন, চার, পাঁচ, ছয়, সাত আট. আর আমাদের সব সম্ভবত এই কাজ, কিনা আপনার হাতে অথবা কাগজ এক টুকরা উপর. এবং এই আসলে ঠিক হয় কিছু ইউনারী স্বরলিপি বলা যেখানে আপনি যদি শুধুমাত্র একটি অক্ষর আছে আপনার বর্ণমালা, এক বা হ্যাশ মধ্যে এই ক্ষেত্রে চিহ্ন, যে জন্য ইনপুট আপনি গণনা করতে চান, আপনি নিচে এই এক লাগাতে হবে এই চিহ্ন এক letters--. ঠিক আছে. যে সব জরিমানা এবং ভালো এবং সব যে জটিল নয়. কিন্তু কম্পিউটারের সব না হয় যে আরো অনেক জটিল. প্রকৃতপক্ষে, আপনি অধিকাংশ সম্ভবত এমনকি যদি আপনি সত্যিই না করেছি বিবেচিত এই কথার অর্থ কি, যে কম্পিউটার শুধুমাত্র শূন্য বুঝতে এবং তথাকথিত বাইনারি সিস্টেম ones--. আমরা মানুষেরা, এর বিপরীতে, তাই হয় অনেক বেশি পরিশীলিত যতটা আমরা নবম সংখ্যা মাধ্যমে শূন্য বুঝতে হিসাবে. কিন্তু এমনকি যদি বাইনারি প্রথমে, হয় এক নজরে, না সব যে পরিচিত, এটি সক্রিয় আউট এটি শুধু সিস্টেম মত এবং ধারণা যে আমরা ইতিমধ্যে জানি. সুতরাং উদাহরণস্বরূপ, এই বিবেচনা. এই চিহ্ন ঠিক একটা ক্রম. এবং আপনার সব যখন, এটা এ নেত্রপাত, সম্ভবত মনে 123 কিছুই সত্যিই সেখানে আকর্ষণীয়. কিন্তু কেন এই সংখ্যা 123? এই মাত্র গ্লিফ হয় পর্দা শুধু নিদর্শন কেউ টানা বা টাইপ করা আছে হতে পারে. কিন্তু আপনি যদি আমার মত হন তাহলে, আপনি সম্ভবত গ্রেড স্কুল থেকে মনে রাখবেন যে সাজানোর হয় কলাম বা স্থান এখানে. সেখানে এক জায়গায় এবং এর দশ এর জায়গা এবং একশত এর জায়গা. এবং কারণ এই যে 123 এবং না শুধু তিনটি চিহ্ন একটি প্যাটার্ন কারণ, অবশ্যই, যদি আমরা শত শত জায়গায় একটি এক আছে আপনি 100 বার এক গণিত, এবং তারপর দুই দশ জায়গায়. সুতরাং যে 10 বার 2, এবং তারপর তিন এর এক জায়গায় এবং যে 1 বার 3 এর. এবং আপনি আপ ঐ সব যোগ যখন, অবশ্যই, আপনি 100 প্লাস 20 প্লাস 3 পেতে. তাই আমরা ঠিক একটি প্যাটার্ন দিয়ে শুরু একজন alphabet-- symbols-- কিন্তু তারপর আমরা সম্মুখের অর্থ ম্যাপ করা এটা এই কলামের মাধ্যমে. ওয়েল, দেখা যাচ্ছে যে কম্পিউটার সত্যিই হয় না যে সব আপনি এবং আমার থেকে আলাদা. কিন্তু এর পরিবর্তে 10 ক্ষমতা ব্যবহার করে, তাই speak-- 1, 10, 100, 1000, 10,000 জায়গা এবং তাই তারা আসলে forth-- শুধু ক্ষমতা ব্যবহার 2 শনাক্ত তাই এক, 2, 4, এবং তারপর আমরা তার বেশি সংখ্যার করা হলে, 8, 16, 32, 64, 128, এবং তাই ঘোষণা. আর তাই এই একটা কম্পিউটার সংখ্যা 0 উপস্থাপনের, আমরা মানুষের মত. 0, 0, 0-- এবং সম্ভবত আপনি অনুমান করতে পারেন zeros এবং বেশী কি প্যাটার্ন, যদি শুধুমাত্র একটি কম্পিউটার পারেন 0 বলতে বা 1 কি প্যাটার্ন প্রতিনিধিত্ব যাচ্ছে সংখ্যা আমরা মানুষের 1 জানি? Yeah-- 0, 0, 1. ঠিক আছে. তাই 0, 0, 1 আমরা কিভাবে প্রতিনিধিত্ব করি 1, যাতে আপনি তারপর আনত করা যেতে পারে সংখ্যা 2 প্রতিনিধিত্ব করেন, আপনি চার এর জায়গা এবং দুই এর জায়গা এক জায়গা হিসাবে, আপনি, ভাল বলতে পারে, আমরা এক জায়গায় একটি 1 ছিল যদি, এবং এখন আমরা করতে চাই 2 আপ গণনা, আপনি প্রতাপ এই না এবং এই ছেড়ে একটি শূন্য হতে. তবে অবশ্যই এই না কিভাবে হয় দশমিক পদ্ধতি পারেন কাজ করে. আপনি একটি অঙ্ক করা হলে যারা কলাম উভয়ে আপনি গাণিতিক কি পেয়েছেন. তাই কি সংখ্যা আমি ঘটনাক্রমে মাত্র চিত্রিত করে? সুতরাং এটি 3, কারণ 2 বার 1 প্লাস 1 বার 1, অবশ্যই, আমাদের তিন দেয়. তাই এই দুই হবে. বিট সাজানোর ফ্লিপ, তাই কথা বলতে, 0 , একটি এক হয়ে অনেক বেশি একটি 9 ভূমিকা মত এবং হয়ে 0 যখন আপনি 1 বহন. এই তারপর অবশ্যই তিন হবে. আরেকটি মজার জিনিস Four-- যেখানে ওগুলো উপর গুটানো, ঘটে এবং আপনি রূপকভাবে 1 বহন. তাই এই, অবশ্যই, 4. কিন্তু যদি আপনি দ্রুত এগিয়ে এখন, সবচেয়ে বড় সংখ্যা যাচ্ছে কি হতে যে একটি কম্পিউটার উপস্থাপন করতে পারেন? তাই এটি শুধু এই ক্ষেত্রে সাত, ডান? কারণ আপনি চার একটি এক আছে, দুই একটি এক, এক একটি এক. সুতরাং যে 4 প্লাস 2 প্লাস 1 এর. সুতরাং যে আপনি সাত দেয়. নিশ্চয় এটা would প্রথম নজরে মনে কম্পিউটারের গণনা করতে পারে কোন এই বেশী. তবে অবশ্যই এই সত্য নয়. আমরা মানুষেরা কি করবেন যখন আমরা চাই 999 মত চেয়ে উচ্চতর গণনা করতে? শুধু এক বহন এবং মাত্র বাঁদিকে একটি চতুর্থ অঙ্ক যোগ করুন. তাই প্রকৃতপক্ষে আমরা পারা. আমরা আট এর থাকতে পারে এবং একটি 16 এর জায়গায় স্থান, এবং একটি 32 এর জায়গা, 64, 128-- এবং আপনি শুধু অনন্ত পর্যন্ত যাওয়া রাখতে পারেন. সুতরাং এই zeros এবং ones-- তথাকথিত বাইনারি সিস্টেম হয় কি একটি কম্পিউটার বিজ্ঞানী would সাধারণত একটি বিট, বা বাইনারি অঙ্ক কল. কিন্তু এখন, কিভাবে আমরা থেকে পেতে পারি ধারণা বা এই জিনিস গ্রাফিক্স একটি প্রকৃত কম্পিউটারে? আমরা একটি পদক্ষেপ এখানে কুঁদন হবে বলে মনে হচ্ছে. আচ্ছা, শেষে মাত্র ইনপুট দিনের, এখানে আমার ল্যাপটপ থেকে বিদ্যুতের এই প্রবাহ. এমনকি যদি এটি একটি দীর্ঘ হয়েছে সময় যেহেতু আপনি সম্পর্কে চিন্তা অথবা সম্পর্কে কখনোই ভাবিনি কিভাবে বিদ্যুৎ কাজ, সেখানে প্রবাহিত ইলেকট্রন বা আউট, এবং যে ইনপুট আমার ধরনের. তাই যে সব আমরা করছি যে এখানে ইনপুট হিসাবে পেয়ে, আমরা যে তথ্য দিয়ে কি করতে পারি? আচ্ছা, আমরা যেমন একটি শূন্য মনে হতে পারে শুধু বিদ্যুতের অনুপস্থিতি. কিছুই flowinw হয়, কিছুই নয় চলন্ত, কিছুই ঘটছে. যে শুধু ডিফল্ট শূন্য state--. কিন্তু বিদ্যুৎ, কেন প্রবাহিত করে নেই আমরা শুধু ইচ্ছামত না, কিন্তু বিশ্বব্যাপী ধারাবাহিকভাবে, একটি এক যে কল. তাই সহজভাবে কোন ক্ষমতা না থাকার, আমরা একটি শূন্য, হ্যাঁ ক্ষমতা আছে, আমরা কোন ক্ষমতা one--, হ্যাঁ ক্ষমতা আছে. এবং যে উপায়ে, কিছু ব্যবহার আরো শারীরিক বা ইলেকট্রনিক আমরা এই ধারণা বাস্তবায়ন শুরু কিছু হয় এক বা একটি শূন্য হচ্ছে. প্রকৃতপক্ষে, আমরা শুধু এটা ধরে এখানে কাজ করতে পারে. তাই এখানে, আমি নেই তিন কিন্তু আট লাইট বাল্ব, প্রতিটি যা নিজস্ব সুইচ আছে. আর তাই যদি আমি প্রতিনিধিত্ব চেয়েছিলেন সংখ্যা সাত এখানে, আমি এই তিনটি লাইট বাল্ব চালু পারে. এবং প্রকৃতপক্ষে, এর ভিতরে আমার কম্পিউটার, লক্ষ লক্ষ জিনিষ বিলিয়ান যে শুধু হয় যে চেয়ে ছোট, ট্রানজিস্টর ডেকে সুইচ, যে আপনি শুধু উপর এবং বন্ধ. সুতরাং এই অপেক্ষাকৃত big-- হয় আমার laptop-- ভিতরে big-- সুইচ অনেক, অনেক অনেক আছে, আরো অনেক সুইচ. কিন্তু তারা কি ঠিক হল that-- কিছু বন্ধ চালু কিছু চালু. এবং যেমন, একটি কম্পিউটার, উপস্থাপন করতে পারেন সেই লক্ষ লক্ষ বা কোটি কোটি ট্রানজিস্টর, প্রচুর এবং zeros এবং বেশী প্রচুর. সেখানে অন্যান্য হার্ডওয়্যার এখনও যে দেয় আপনি তথ্য দীর্ঘমেয়াদী সংরক্ষণ, যাতে আপনি যখন টান প্লাগ, আপনি এটা হারাবেন না. কিন্তু যে অন্য দিনের জন্য একটি গল্প. সুতরাং আমরা এই বিট দিয়ে কি করতে পারি? আমরা শুধু নিতে পারে me-- বন্ধ চাপ কেউ আসতে চান পারে এখানে আপ এবং একটি ডেমো আপ অফার? আমি প্রথম এই হাত দেখেছি. তোমার নাম কি? MADAY: Maday. DAVID Malan: Maday, উপর আসা. দেখা হওয়ায় খুশী হলাম. MADAY: নাইস টু মিট ইউ. DAVID Malan: এই পথ আসা. আমি তোমাকে ছেড়ে ঠোঁটের করতে হবে না. ঠিক আছে. তাই এখানে, আমরা আছে, এক বিজ্ঞপ্তি, two-- আমরা যে সম্পাদন করব out-- এক, দুই, চার, আট, 16, 32, 64, 128. এই ইচ্ছাকৃত. আটটি বিট এখানে বাইনারি digits-- zeros এবং বেশী. এবং একটি বিট measure-- একটি দরকারী ইউনিট না পরিমাপের একটি একক হিসাবে দরকারী নিজেই সম্মুখের. সাধারণত আপনি অন্তত চান এইসব জিনিস আট, ওরফে একটি বাইট. তাই আমরা একটি বিট বাইট এখানে আছে. তাই আপনি যদি আমরা আপনার সাথে চ্যালেঞ্জ করতে চেয়েছিলেন, উদাহরণস্বরূপ, আউট বানান বাইনারি, এই মান 42 এখানে. যে একটি ছুরিকাঘাত নিতে চান? MADAY: [শ্রবণাতীত]. ডেভিড MALAN: হ্যাঁ, ঠিক ধাক্কা সামনে সামান্য সাদা সুইচ. এবং আপনি বানান করতে চান আউট 42, এবং আপ grabs জন্য এই CS50 স্ট্রেস হয় বল আপনি এই পেতে পারেন. ঠিক আছে. তাই আপনি 32 আছে. আমরা 42 প্রয়োজন চলুন. সুতরাং যে আট, তাই যে 40 এর. আর excellent-- খুব সুন্দরভাবে সম্পন্ন. ধন্যবাদ. [সাধুবাদ] ঠিক আছে. তাই আমরা আরো এক চাপ বল আছে. এর যদি আমরা may এই আরো একবার করা যাক. অন্য একটি স্বেচ্ছাসেবক? ফ্রি চাপ বল, মুক্ত চাপ বল. ঠিক আছে. মাঝখানে এখানে ওভার, আপনি নিচে আসতে চাও? ঠিক আছে. আমি জানি. আমরা শুরু করছি. সুতরাং সংখ্যা এখানে নিচে আসো. আপনার নাম কি? Davey: ডেভি. DAVID Malan: ডেভি. ঠিক আছে. উপর আসা, ডেভি. দেখা হওয়ায় খুশী হলাম. এবং কি আমরা চলুন আপনি আছে spell-- আপনি সেখানে গড়িমসি পারে শুধু এক মুহূর্ত জন্য সংখ্যা 50. কিন্তু, কিন্তু, কিন্তু কিন্তু কিন্তু, এই হল একটি কারণ জন্য গ্রেড স্কুল চুম্বক. শুধু একটু কঠিন, সব ঠিক? এখনও আট নয়. ঠিক আছে. তাই আমরা সেখানে আছে? আমরা 32 আছে. খুশী হলাম. 32 প্লাস 16 আমাদের দেয় 48-- এত কাছাকাছি. এবং বিস্ময়কর. ডেভি অভিনন্দন পাশাপাশি. [সাধুবাদ] ঠিক আছে. সুতরাং আমরা এই সব দিন লম্বা করতে পারেন, এবং এটা সব যে আরো অনেক পাবেন না আকর্ষণীয় এবং আরো চ্যালেঞ্জিং. কিন্তু যে সত্যিই পয়েন্ট এর কিভাবে অপেক্ষাকৃত সহজ এটা দিনের শেষে, কি একটি হল, কম্পিউটার তথ্য সংরক্ষণ করে, ইনপুট সংরক্ষণ এবং পরিণামে থেকে সঞ্চয় বা ঐ আউটপুট প্রতিনিধিত্ব. কিন্তু একা সংখ্যা নয় সব যে আকর্ষণীয়. মানুষের তো, কিছু বছর আগে, সিদ্ধান্ত নিয়েছে, আপনি জানেন কি? এটা যদি চমৎকার হবে কম্পিউটার ঠিক ছিল না গাণিতিক জন্য ক্যালকুলেটর অপারেশন, কিন্তু আসলে পারা ওয়ার্ড প্রসেসিং ভালো জিনিস না, বা ই-মেইল, বা আরো আধুনিক অবতার প্রযুক্তির এই ধরণের. আর তাই বিশ্বের সিদ্ধান্ত নিয়েছে ইচ্ছামত, কিন্তু সর্বজনীন, যে আপনি মূলধন সংরক্ষণ করতে ইচ্ছুক হলে একটি কম্পিউটারে একটি অক্ষর, আপনি জানেন কি? এর মাত্র সব সঞ্চয় করতে সম্মত যাক zeros এবং ones-- কিছু প্যাটার্ন bits-- যে পরিণামে দশমিক সংখ্যা 65 প্রতিনিধিত্ব করে. আমরা শুধু সব যে সম্মত হবেন. 66 বি প্রতিনিধিত্ব করবে, 67 সি উপস্থাপনের, এবং সেখানে অন্যান্য নিদর্শন এর bunches এর zeros এবং বেশী, বা অন্তর্নিহিত সংখ্যা, যে উপস্থাপনের এখনও অন্য অক্ষর. তাই আপনি যদি এই ধরনের মানসিকভাবে একটি মুহূর্ত জন্য এই শোষণ, আমি ইচ্ছাকৃতভাবে মাধ্যমে একটি আপ করা আমি, যেখানে এইচ একটি 72 এবং আমি 73. যদি একটি কম্পিউটার তারপর, প্রেক্ষাপটে একটি ওয়ার্ড প্রসেসিং প্রোগ্রাম বা ই-মেইল, ফণা নীচে প্রকাশ আছে bits-- প্যাটার্ন এইসব নিদর্শন প্রতিনিধিত্বমূলক বিট 72, তারপর 73, তারপর 33-- কি এই যে প্রোগ্রামে বানান পারে? তাই হাই, এবং তারপর কিছু. আমরা অগত্যা জানি না, কিন্তু প্রকৃতপক্ষে 33-- না চার্ট earlier-- কেবল একটি বিস্ময়বোধক বিন্দু ছিল. সুতরাং 72 এইচ ছিল, 73 আমি, 33 ঘটবে একটি বিস্ময়বোধক বিন্দু এখনও হতে. কিন্তু যে, সব জরিমানা এবং ভাল এবং আসলে আজকাল, বরং শুধু ব্যবহার সাত বা আট বিট, কিছু ধন্যবাদ ইউনিকোড নামে বিরোধিতা ফিরে দিন হওয়া ASCII, আমরা আসলে আরও বেশি উপস্থাপন করতে পারেন শুধু চেয়ে আকর্ষণীয় অক্ষর এই মূল ইংরেজি পক্ষপাতদুষ্ট চিঠি. কিন্তু আমরা এমনকি উপস্থাপন করতে পারেন রং মত neater কিছু. আপনি কি কখনও আদ্যক্ষরা শোনা করে থাকেন তাহলে আরজিবি, লাল, সবুজ, নীল, যে মানে একটি কম্পিউটার যে সাধারণত bits-- তিনটি সেট ব্যবহার যে প্রতিনিধিত্ব বিট কিছু সংখ্যা আপনি কত লাল চান তাদের জন্য একটি সংখ্যা, জন্য বিট অন্য সেট সবুজ আপনি কত চান, এবং আরেকটি সেট সংখ্যা কতটা নীল যদি আপনি চান. তাই একটি বড় সংখ্যা মানে প্রচুর লাল, ছোট সংখ্যা কোন লাল মানে. তাই এই ধরনের মাঝখানে এখানে মান. তাই আমাকে কিছু লাল দিতে, আমাকে কিছু দিতে সবুজ, এবং আমাকে একটি নীল সামান্য বিট দিতে. এবং আপনি ঐ তিনটি মাত্রার মিশ্রিত করে একসাথে রঙ, এই ক্ষেত্রে, আপনি এই অস্পষ্ট ছায়া পেতে হলুদ বা বাদামী. কিন্তু আট যে প্যাটার্ন প্লাস আট প্লাস তাই 24 bits-- eight-- বাম থেকে ডানে, কিভাবে একটি কম্পিউটার যে বিশেষ রঙ উপস্থাপনের. এখন এই মাত্র একটি পর্দায় একটি বিন্দু. আপনি আপনার টিভি সময়ে সত্যিই ঘনিষ্ঠ চেহারা যদি আপনার কম্পিউটার, আপনি বিন্দু বা পিক্সেল দেখতে পাবেন. এবং আপনি একটি পুরো গ্রিড আছে যদি পিক্সেল, অনুভূমিকভাবে এবং উল্লম্বভাবে, আপনি ইমেজ উপস্থিত আছে. এবং তারপর যদি আপনি নিতে একটি ইমেজ এবং তারপর ধোয়ার নিজেকে অন্য ছবিটি দেখানো হবে, অন্য ইমেজ, অন্য একটি চিত্র, অন্য একটি চিত্র, সত্যিই দ্রুত, অবশ্যই আপনি সিনেমা আছে. তাই লক্ষ্য যেখানে আমরা শুরু. আমরা এই zeros এবং বেশী দিয়ে শুরু. আমরা সেখান থেকে কাজ দশমিক সংখ্যা, আমরা তাদের কিভাবে চিত্রিত. এখন আমরা বর্ণমালার অক্ষর আছে. তবে এক্ষেত্রে অন্য প্রেক্ষিতে অপেক্ষা করুন, আমরা ব্যবহার করতে পারেন আরো কয়েকটি বিট এবং রং উপস্থাপন. যত তাড়াতাড়ি আপনি আছে রং প্রতিনিধিত্ব করার ক্ষমতা, আপনি প্রতিনিধিত্ব করার ক্ষমতা আছে ফটোগ্রাফ এবং অ্যানিমেটেড GIF এবং পর্দায় অন্যান্য যেমন অক্ষর. আর আপনি আভা আছে ইমেজ একবারে মানুষের দ্বারা উড়ন্ত, এটা, গতি ছবি দেখে মনে হচ্ছে এবং তাই আপনি ভাল হিসাবে ভিডিও পেতে. তাই ব্যবহার করে এই খুব সহজ প্রিমিটিভের আমরা কি প্রতিনিধিত্বমূলক উপায় আছে পরিণামে মিডিয়া এই ধরনের সব. এবং আমরা আবার আনমনা করেছি এবং আবার এবং আবার, আমরা যতক্ষণ না সর্বনিম্ন স্তর থেকে পেতে এই সর্বোচ্চ স্তর. সুতরাং যে আমাদের এই দান বিমূর্ততা সাধারণ ধারণা. কিন্তু আমরা এখানে শুরু. এখানে এখন, আমরা যেতে পারি একটি কম্পিউটার প্রতিনিধিত্ব zeros এবং বেশী সঙ্গে আমাদের ইনপুট, zeros এবং বেশী আমাদের আউটপুট, কিন্তু কি বক্সের ভিতরে যায়? যে যেখানে কম্পিউটার এর বিজ্ঞান আকর্ষণীয়. যে যেখানে আপনি আসলে আনতে আপনার নিজের মনকে সমস্যার সমাধান করতে বহন করতে. এখন আমরা উপপত্রিক পারেন, এর জন্য সেমিস্টার বাকি, হ্যাঁ. আমি কিভাবে বাইনারি কাজ জানি. আমার মনে আছে কিভাবে ASCII বা Unicode-- ম্যাপিং কাজ letters-- করতে. এবং নিশ্চিতই এটা ঘোরা আমরা যুক্তি করতে লাল এবং সবুজ প্রতিনিধিত্ব করতে পারে এবং নীল, এবং মাল্টিমিডিয়া ভাল প্রতিনিধিত্বকারী. কিন্তু এই মজার জিনিস. এই কি কেউ করে তোলে সমস্যার সমাধানে সক্ষম. আর এক ধরনের সমস্যা আমরা যা করতে চাই, প্রকৃতপক্ষে, হাজিরা গ্রহণ করা হয়, অথবা এই অ্যালগরিদম করছেন. এবং আবার, আমি এই কাজ করতে পারে. আমি এক, দুই, তিন, চার কি হতে পারে পাঁচ, ছয়, সাত, আট থেকে নয়. এবং আমি এটা লিখতে পারে নিচে এটা ট্র্যাক রাখতে. কিন্তু যে শুধু কিভাবে আমি চাই তথ্য উপস্থাপন. অথবা আমি এই faster-- করতে পারে দুই, চার, ছয়, আট, দশ, 12, 14, 16, 18, 20, 22-- এটি দুইবার মত মতানুযায়ী যত দ্রুত কিন্তু এটি এখনও একটা সময় পুরো অনেক নিতে যাচ্ছে. কিন্তু এটি সক্রিয় আউট, আমরা যদি এখনো লিভারেজ অন্য resource-- এবং প্রকৃতপক্ষে কম্পিউটার আজকাল বহু সিপিইউ অথবা ঘিলু আছে. এটি সক্রিয় আউট কম্পিউটারের পারেন একবারে জিনিষ প্রচুর না, এবং নিশ্চয় আমরা, এই রুমে, ঠিক এই প্রতিনিধিত্ব করতে পারে. সুতরাং এটি একটি সামান্য সামাজিকভাবে এর বিশ্রী, কিন্তু যদি আপনি আমাকে হাস্যরস would মাত্র তিন ধাপ প্রক্রিয়ার জন্য, দিন আমাকে সেখানে মাত্র জায়গায় সবাই জিজ্ঞাসা একটি মুহূর্ত জন্য দাঁড়ানো. দাড়াও. তাই নিজেকে মনে, সংখ্যা one-- তাই এই রুমে সবাই, মানুষ করেননি ছাড়া দায়িত্ব আছে, এক নম্বর চিন্তা করা হয়. সুতরাং যে আপনার সংখ্যা এখনই. যে প্রথম পদক্ষেপ, অথবা একটি যেমন কম্পিউটার বিজ্ঞানী নাকি একজন প্রোগ্রামার সাধারণত করবেন, আমরা যাচ্ছি শূন্য এ গণনা শুরু করার. যদি ক্ষুদ্রতম সংখ্যা আমরা করতে পারেন সেই লাইট বাল্ব সঙ্গে চিত্রিত শূন্য হয়, শুধু তাদের পরিত্যাগ করে সব বন্ধ, আমি পাশাপাশি প্রতাপ মাত্র থেকে গণনা শুরু পরিবর্তে এক শূন্য হয়. তাই যে কি কম্পিউটার বিজ্ঞানীরা না. তাই শূন্য ধাপে উঠে দাড়াও, এক নম্বর মনে. পরবর্তী ধাপে আপাততঃ জুড়ি কেউ স্থায়ী সঙ্গে বন্ধ এবং একসাথে আপনার নম্বর যোগ করুন. ওয়ান্ডারফুল. সুতরাং সময় এই মুহূর্তে, আক্ষরিক সবাই অংশগ্রহণ সংখ্যা 2 চিন্তা করা হয়, ছাড়া এক অদ্ভুত ব্যক্তির জন্য আমরা আছে যদি রুমে মানুষ একটি বিজোড় সংখ্যা. আর এখন এখানে তৃতীয় ধাপ যাচ্ছে করা তোমাদের আপাততঃ এক বসিয়ে দিতে বললেন. আপনি নিচে বসতে হবে এক, এবং আপনি এখনও দাঁড়িয়ে করছি, এক ধাপে ফিরে যান. ঠিক আছে. ঠিক আছে. তাই আরো অনেক বেশী লোক উচিত বসছো. লক্ষ করুন যে, এই অস্বীকার করেছে একটি চক্র কিছু লুপ. তোমাদের মধ্যে কেউ কেউ awkwardly আটকে রাখা উচিত নয়, ধাপ এক মধ্যে আগে পিছে যাচ্ছে এবং দুই, এক এবং দুই, এক এবং দুই. ঠিক আছে. আমাদের প্রথম বাগ. আমরা যে সঙ্গে মোকাবেলা করব. ঠিক আছে. আমাকে কিছু বরাবর উদ্দীপনা করার চেষ্টা করা যাক. তত্ত্ব, শুধুমাত্র এক ব্যক্তি দাঁড়িয়ে আছে সবাই বন্ধ পেয়ার চলতে হিসাবে. কিন্তু আমাকে গতিমান দিন মানুষের সাথে এখনও দাঁড়িয়ে. তোমার ফ্ল্যাটের নাম্বার কি চিন্তা করা হয়? 46. ঠিক আছে. এগিয়ে যান এবং বসতে. তোরা কি এখনো দাঁড়িয়ে আছেন. যারা এখনও দাড়িয়ে আছে? তোমার ফ্ল্যাটের নাম্বার কি চিন্তা করা হয়? ঠিক আছে. তাই আমরা আপনাকে ফিরে আসবো. পিছনে? এটা কি? 22. ওকে অন্য কেউ পর্যন্ত হাঁ top--? 34. ঠিক আছে. এখানে এখানে আমার ডানে আপ ওভার? 132, খুব সুন্দর. 22? ঠিক আছে. আর যারা এখনও দাড়িয়ে আছে? এখানে? 46, খুব সুন্দর. 72. আমি অনেক লম্বা ফাঁকি দেওয়া যেতে পারে. হ্যা? 30, চমৎকার. এখানে? 23? 23. এবং আমি মনে করি যে প্রত্যেকের ব্যতীত তোমাদের বলছি, কোন চাপ. অপেক্ষা কর. 28? মাত্র আট. ঠিক আছে. মাত্র আট. এখানে নিচে? 30. 23. 24. 18. এই খারাপ বাস্তবায়ন এই অ্যালগরিদম কখনও. ঠিক আছে. তাই অন্য কেউ? অন্য কেউ? ঠিক আছে. আরো একটা. 16? ঠিক আছে. 16. ঠিক আছে. সুতরাং যদি আমি যে কাউকে মিস করেন নি এখানে একদৃষ্টি, যখন আমি আঘাত লিখুন আমরা আলগোরিদিমিক্যালি, দেখতে হবে স্যান্ডার্স মানুষের মোট সংখ্যা. আবার কারণ, এটা যেন প্রত্যেকের যেমন আপনি বসলেন, আপনার নম্বর বন্ধ পাশ অন্য কারো কাছে, অন্য কারো কাছে, অন্য কারো কাছে, যাতে তত্ত্ব, শেষ পর্যন্ত, শুধুমাত্র এক বিশ্রী ব্যক্তি স্থায়ী ছেড়ে দেওয়া উচিত. কিন্তু যে সূক্ষ্ম. আমরা কিছু ম্যানুয়ালি আপ sped. এটি দেখতে বিশেষত কঠিন এই বিশেষ স্থান মধ্যে. আর মানুষের মোট সংখ্যা আমরা মনে করি এখানে আছেন 546 হয়. মোট সংখ্যা আমি হাতি ছিল শিক্ষণ ফেলোগণ দ্বারা, যারা এটা পুরানো করেনি স্কুল ধীর উপায়, 820 ছিল. [হাস্যময়] [সাধুবাদ] ঠিক আছে. অতএব তারপর, সেখানে এই বাগ আছে. আর যে সূক্ষ্ম. আর তাই এই উপর পিছনে মনে প্রথমবার কিছু আপনি লিখতে অগত্যা কাজ করে না. এটা আমার এখানে পাশাপাশি ঘটেছে. কিন্তু এর এখন আমরা বিবেচনা করে দেখি কিভাবে প্রতাপ দিন কিছু এই একই ধারণা প্রয়োগ আপনি আগে দেখা হতে পারে, যা এই পুরানো স্কুল প্রযুক্তি এখানে হয় সত্যিই একটি বড় ফোন বই. এবং অনুমান যে এই ফোন বই 1,000 পৃষ্ঠাগুলি এবং 1,000 নাম আছে এবং বর্ণানুক্রমে এটি ভেতরে সংখ্যা. আচ্ছা, আমরা ধরনের একটি অনুরূপ এপ্লায় এই খুব শারীরিক সমস্যা থেকে ধারণা, শুধু আমাকে ব্যবহার. আমি শুধু ধরনের প্রতারণা আপনি সব উপজীব্য করে প্রচুর এবং বিভিন্ন সিপিইউ এর প্রচুর সঙ্গে বা ঘিলু কিছু অ্যালগরিদম নির্বাহ. কিন্তু যদি এটা শুধু একটু পুরাতন আমাকে, আমি এখনও করতে পারেন লিভারেজ একটি ধারণা যে একই সারমর্ম বিভাজক এবং যে সমস্যা জয় আবার এবং আবার, যদ্দ্বারা তোমার অর্ধেক, আপনি অর্ধেক, আপনি অর্ধেক, আপনি অর্ধেক, তত্ত্বগতভাবে বসে রাখা, যতক্ষণ না আমরা বাকি ছিল, তাত্ত্বিক, মাত্র এক ব্যক্তির সাথে. এই পুরানো স্কুল তাই technology-- আমরা না এই map-- প্রয়োজন পুরানো স্কুল প্রযুক্তি আমরা কেউ খুঁজছেন শুরু হতে পারে মাইক স্মিথ, একটি সময়ে এক পৃষ্ঠা চাই. আর আমি দেখতে পাচ্ছি না, মাইক এখানে নেই. আমি এখনও আছি অধ্যায়. অবশেষে, আমি খুঁজে পেতে নিজেকে বি সেকশনে. আর এই একটি অ্যালগরিদম হয় ধাপে ধাপে নির্দেশনা. শুরুতে এবং এক পৃষ্ঠার এ শুরু একটি সময়ে, মাইক স্মিথ জন্য চেহারা. এই correct-- হয় অ্যালগরিদম বা পদ্ধতির? হ্যা, এটা ঠিক. মাইক এখানে যদি, অবশেষে আমি তার সাথে কথা বলতে হবে. কিন্তু এটা দক্ষ না. এটা অবশ্যই খুব ধীর. তাই আমি লিভারেজ পারেন একই, twosies কাছে. আমি দুই ধরনের নির্বাচন করতে পারবেন, চার, ছয়, আট, 10, 12. এটি দ্রুত ধরাশায়ী করেছে. আমি মাইক পেতে যাচ্ছি দ্রুত যদি সে আছে. ইহা কি সঠিক? হ্যাঁ, কিন্তু আমি সামান্য কোন শুনেছেন. এখন আমি কোন কথা শুনতে ভালবাসতেন. হ্যা. সেখানে একটি বাগ সম্ভাব্য আছে. হয়তো মাইক শুধু ঘটনাক্রমে পায় দুই পৃষ্ঠাগুলির মধ্যে sandwiched, কারণ আমি মাধ্যমে উড়ছি একটি সময়ে এই দুই. তাই অন্তত আমরা কিছু প্রয়োজন শর্তাধীন ফিক্স ধরনের. আমি হেই বলার প্রয়োজন, যদি আমি কেউ যার আঘাত নাম, একটি টি পরিবর্তে একটি S দিয়ে শুরু আমি ভাল ফিরে অন্তত এক পাতা দ্বিগুণ. সুতরাং প্রথম, কিন্তু নির্ধার্য বগী. কিন্তু আমাদের মধ্যে কেউই জন্য দেখতে যাচ্ছি 1,000 পাতা ফোনের মাধ্যমে মাইক স্মিথ একটি সময়ে এক পৃষ্ঠার বই. একটি স্বাভাবিক ব্যক্তি কাজ করতে যাচ্ছেন কি? আপনি এস চল চলুন, যদি তোমরা জানতে যেখানে এস এর. আপনি মাঝখানে প্রায় যেতে পারে অথবা সামান্য শেষ দিকে skewed. আর আমি এখানে নিচে তাকালে আর আমি এম আছি অধ্যায়. কিন্তু আপনি কি জানেন এখন এই সমস্যা সম্পর্কে, আমরা অগত্যা আগে জানেন না যে আমাদের সকলের সঙ্গে কেবল নিজেদের গণনা equivalently? আচ্ছা, মাইক পরিষ্কারভাবে যাচ্ছে বইয়ের এই অর্ধেক হবে যদি সে এখানে এ সব কারণ এটি সাজানো. এবং যাতে আপনি খুব dramatically-- পারেন [মুমুর্ষু] আমি জানি. [সাধুবাদ] এটা আসলে সত্যিই সহজ কিনা আপনি ওটাকে মেরুদণ্ড আছে না. কিন্তু তারপর আপনি নিক্ষেপ করতে পারেন সমস্যা অর্ধেক দূরে. এখন, আমি একই একটি সমস্যার সঙ্গে বাম করছি একটি ফোন মাইক স্মিথ খুঁজে book-- কিন্তু এখন ফোন বই এম এ শুরু এবং Z যায়, কিন্তু এটা বড় হিসাবে অর্ধেক. কিন্তু এই কি চিত্তাকর্ষক হয়. শুধু তত্ত্ব, আপনাকে বলছি, যখন মত আপনি সব একবারে কেবলমাত্র অর্ধেক বসলেন, সমস্যা, বড় অর্ধেক পেয়েছিলাম অর্ধেক হিসাবে বড়, আবার এবং আবার. তাই এই সমস্যা হয়ে দাঁড়িয়েছে একই সমস্যা কিন্তু বড় অর্ধেক. এখন এটি একটি 250 পৃষ্ঠার সমস্যা. যত তাড়াতাড়ি আমি বুঝতে পারি, ওহ, আমি আছি টি অধ্যায় ঘটনাক্রমে মধ্যে. আমি খুব বেশী দূরে চলে গেছেন. আমি যে অর্ধেক নিক্ষেপ করতে পারেন দূরে টেলিফোন বইয়ের. এখন, আমি একটি থেকে নিচে আছি সমস্যা কোয়ার্টার. এবং আপনি যা করতে পারেন পুনরাবৃত্তি, পুনরাবৃত্তি পুনরাবৃত্তি, যতক্ষণ না তত্ত্ব, তুমি মাত্র এক পৃষ্ঠার সাথে বাম. আর যদি মাইক যে পাতা হয়, আমি এখন এই সমস্যা সমাধান করতে পারে. কিন্তু আমি এটা কিভাবে দ্রুত সমাধান হয়নি? প্রথম ক্ষেত্রে, এটা আমার মত গ্রহণ হয়তো 1,000 পদক্ষেপ মাইক স্মিথ খুঁজে পেতে. এটা me-- গৃহীত হতে পারে আমি ফোন বই কুড়ান এবং আমি তাকিয়ে একটি সময়ে এক পৃষ্ঠা, এবং মাইক 1,000 পৃষ্ঠাগুলি পরে হতে পারে. দ্বিতীয় পদ্ধতিটি হয়তো আমাকে 500 পদক্ষেপ নেয়, কারণ আমি উড়ছি একটি সময়ে দুটি মাধ্যমে. আর তৃতীয় পদ্ধতির যদিও, এটা বিশেষ করে শক্তিশালী. কিন্তু এখানে কি আমরা আসলে বিবেচনা করা যাক এই তৃতীয় পদ্ধতির সঙ্গে করেনি. আমি শুধু এই কি ডাকবো করব বিবৃতি এখানে, এক একটি সময়ে. একটা ফোনবুক কুড়ান. টেলিফোন বইয়ের মাঝখানে খুলুন. নাম তাকান. তারপর কেমন একটু পেতে আরো বুদ্ধিমত্তা আকর্ষণীয়, যদি এখনও সহজ. স্মিথ মধ্যে হয় তাহলে যে বর্তমান পৃষ্ঠায় নাম, তারপর শর্তসাপেক্ষে কিছু. এটা রাস্তা একটি কাঁটাচামচ মত. মাইক কল. মাইক নামের মধ্যে হয় তাহলে যে পাতা, মাইক নামে. কিন্তু শুধুমাত্র লাইন চার না যদি লাইন গাছ, যদি আপনি হবে, সত্য. যে প্রশ্নের উত্তর হ্যাঁ হয়. অন্যথায় যদি স্মিথ book-- আগে নয় অন্য কথায়, যদি আমি এম আছি অধ্যায় এবং আমি কারো জন্য অপেক্ষায় থাকবো বাম, তারপর আমি কি করা উচিত খুব অনুরূপ কিছু নয়. তারপর আমি মাঝখানে খোলা উচিত বইয়ের বাম অর্ধেক. তাই বাম যান, এবং তারপর দুই ধাপে ফিরে যান. সেখানে নাম তাকান. তাই অন্য কথায়, একই জিনিস কিন্তু একটি সমস্যা উপর আধলা হয়েছে যে. আপনি কি আর জানি? যদি স্মিথ বইয়ে পরে পৃষ্ঠা আমি দেখছি উপর ভিত্তি করে, মাঝখানে খোলা বই ডান অর্ধেক এবং তারপর আবার ফিরে যেতে দুই পইঠা, else-- এখানে একটি চতুর্থ সম্ভাবনা. মাইক এর পারেন এখানে বা বাঁদিকে বা ডান বা সেখানে না থেকে. আর এখানে আমরা ভালো এই বিবেচনা. এবং সত্য, আপনি যদি কখনও ছিল করেছি আপনার কম্পিউটারে শুধু আপনার উপর ক্রাশ, যে কখনও কখনও, তবে সব সময় নয়, শুধু একটি মানুষের প্রোগ্রামার ফল নয় নিরূপক, ওহ অঙ্কুর, আছে আসলে এই চতুর্থ দৃশ্যকল্প. আর যদি আপনি কোড লিখুন না যে দৃশ্যকল্প হ্যান্ডেল, কখনও কখনও আপনি জানেন না কি কম্পিউটার কি হতে পারে. এবং প্রকৃতপক্ষে একটি প্রোগ্রাম ক্র্যাশ করলে পারে. কিন্তু এই ক্ষেত্রে, আমি ভেবেছিলাম এটা সম্পর্কে, এবং আমি বললাম, আর প্রস্থান, কারণ যে চতুর্থ হচ্ছে লজিক্যাল সম্ভব দৃশ্যকল্প. এখন, শুধু যোগ দিন তাই আমরা কিছু শব্দভান্ডার পদ প্রায় শিরসঁচালন শুরু করা যেতে পারে অন্যথায় বেশ স্বজ্ঞাত. শুধু সমস্ত জিনিস আমি করেছি এখানে হলুদ হাইলাইট, আমি শুধু যাচ্ছি ফাংশন বা পদ্ধতি. তারা কর্মের শুধু অপেক্ষা করছেন. সুতরাং আপ, খোলা রাখতে চান, যাতে বাছাই এ, কল খোলা, খোলা, quit-- এই মাত্র কর্ম আছে, অথবা আমরা করব তাদের আরো আনুষ্ঠানিকভাবে কল, ফাংশন. এদিকে, এখন হলুদ, আমি কিছু হাইলাইট করেছি that-- এর মাত্র কলিং শুরু করা যাক তাদের শর্ত বা শাখা. এই সিদ্ধান্ত পয়েন্ট যেখানে হয় আপনি এই ভাবে যেতে পারে, এই ভাবে, বা অন্য কিছু দিক এখনো. তাই ঐ অবস্থায় থাকবে. আর এখন এই এক একটি সামান্য কল্পনাকারী. আসুন এই প্রশ্ন ডাকুক বুলিয়ান এক্সপ্রেশন, একটি নামের শেষাংশ bool সঙ্গে কেউ পরে. এবং একটি বুলিয়ান অভিব্যক্তি মাত্র কিছু হয় যে সত্য বা মিথ্যা, yes অথবা no. সুতরাং প্রশ্ন কার আপনি উত্তর তাই একটি অবস্থায় হিসেবে যত্নশীল, একটি সিদ্ধান্ত নেন একটি উত্তর ফিরে পেতে করতে, এবং তারপর বাম বা ডান, বা কিছু যেতে পুরাপুরি অন্য. এবং তারপর সর্বশেষে, এই লাইন এখানে ফিরে যেতে দুই পইঠা, ফিরে যেতে two-- পইঠা আমরা পারে বিভিন্ন উপায়ে এই ধারণা বাস্তবায়ন. এবং তারপর আপনার সাথে যারা প্রোগ্রামিং অভিজ্ঞতা সম্পন্ন হতে পারে আছে অথবা ভিন্নভাবে এই করছেন কল্পনা করতে পারেন. কিন্তু আজ এর উদ্দেশ্যে, এটা শুধু ধারণা যে গুরুত্বপূর্ণ. এই inducing হয় কি আমরা সাধারণত ডাকবো একটি চক্র কিছু লুপ, কারণ এটা আমাকে কিছু আবার কি বানাচ্ছেন. তাই এখন, আমি শুধু বিবেচনা করা যাক কিভাবে ভাল এই অ্যালগরিদম হয়. এটা সঠিক. মাইক পুস্তকে যদি, এটা এক সেই চার আবার এবং আবার scenarios-- এবং আবার, আমরা তাকে খুঁজে পাব. কিন্তু এটা কিভাবে ভাল হয়? আচ্ছা, আমরা না এখানে খুব আনুষ্ঠানিক হতে. কিন্তু এর মাত্র কার্যের চক্রান্তে লেগে থাকে দিন কিছু, x এবং y, পেতে এই সমস্যা আকৃতির একটা ধারনা. x- অক্ষের উপর এখানে আমার সমস্যা মাপ. তখন তাঁরা y- অক্ষের এখানে সময় সমাধান করতে হবে. তাই হয়তো এই পেজের সংখ্যা. হয়তো এই সেকেন্ড বা turns-- যাই হোক না কেন পাতা. তবে আপনি গণনা করতে চান কি এই ছবি প্রতিনিধিত্ব করবে. আর যে প্রথম অ্যালগরিদম, আমি যাচ্ছি শুধু একটি সরল রেখা হিসাবে বর্ণনা করতে. তাহলে সেখানে N পৃষ্ঠাগুলি এর ফোন বই, তারপর এটা আমাকে অনেক হিসাবে নিতে পারে এন পদক্ষেপ হিসাবে মাইক এটি. যদি ভেরাইজন বা ফোন কোম্পানি , আরও একটি পাতা পরের বছর যোগ করা এটা আমাকে নিতে পারে এক আরো step-- সময় এক আরো ইউনিট মাইক এটি. তাই সেখানে এক অনুপাত মাত্র এই এক. এটা একটি সরল রেখা ঢাল নেই. এদিকে, যে দ্বিতীয় অ্যালগরিদম যদি আমি একটি time-- দুই দিকে দুই যাচ্ছে, চার, ছয়, আট, বা double-- পৃষ্ঠাগুলি মাধ্যমে দ্বিগুণ যাচ্ছে একটি সময়ে, একটি সময়ে দুই, এটি এখনও সোজা লাইন. সেখানে এখন থেকে দুই একটা একটা করে অনুপাত, কিন্তু শুধু একটু কম. তাই আপনি যদি এই পাতায় হলুদ চার্ট এখানে উপর, যে আমাকে এই সময় নিতে পারে অনেক ধাপ বা সেকেন্ড অন্যথায় এটা আমাকে নিতে যাচ্ছে দুইবার হিসাবে লাল লাইনে অনেক. কিন্তু সবুজ লাইন বাস্তব takeaway হয়. এই কি আমরা সাধারণত হয় একটি logorithm-- লগ কল এন, যেখানে n পাতার সংখ্যা হয়. কিন্তু এটা আকৃতি যে বিষয়ে আজ, আমরা আছে না, কারণ এমনকি পয়েন্ট ষড়যন্ত্র সম্পর্কে চিন্তা করা. একটি চরম পরিস্থিতি সম্পর্কে চিন্তা করুন. ধরুন ভেরাইজন আগামীকাল দ্বিগুণ যে টেলিফোন বইয়ের পাতার সংখ্যা, 1,000 থেকে 2,000. প্রথম অ্যালগরিদম, আমি একটি অতিরিক্ত 1,000 অপচয় পারে ধাপ মাইক খুঁজছেন, শুধু কারণ ভেরাইজন বইয়ের আকার দ্বিগুণ. এটা এলগরিদম দ্বিতীয় প্রতাপ আমাকে একটি অতিরিক্ত 500 পদক্ষেপ নিতে পারি. 1,000 আরো পৃষ্ঠাগুলি, আমি একটি দুটি যান মাইক এটি 500 আরো পদক্ষেপ time--. কিন্তু যে তৃতীয় অ্যালগরিদম ধরনের ঐন্দ্রজালিক হয়. ভেরাইজন সংখ্যা দ্বিগুণ 1,000 থেকে 2,000 পৃষ্ঠাগুলির, কিন্তু কিভাবে আরো অনেক পদক্ষেপ নেই এটা আমাকে নিতে মাইক চেহারা? কারণ আমি শুধু ঠিক করতে পারেন এক, ফোন বই ছিঁড়ে এক আরো সময় একটি একটি 2,000 পাতা সমস্যা থেকে 1,000 পাতা সমস্যা, এবং voila. আমি তা থেকে বেরিয়ে একটি বৃহদায়তন কামড় গ্রহণ করেছি. এবং আপনি সত্যিই চরম যান, অনুমান করা হয় যে ফোন বই কোম্পানির মত পাগল কিছু ছিল একটি 4 বিলিয়ন পাতা ফোন বই. আচ্ছা এটা কতগুলি পদক্ষেপ নিতে পারে একটি 4 বিলিয়ন মধ্যে মাইক স্মিথ খুঁজে পেতে পাতা ফোন বই? এটা একটা বড় সংখ্যা, কিন্তু মাত্র 4 কোটি 2 বিলিয়ন 1 বিলিয়ন 500 মিলিয়ন, 250 million-- এখনও বড় সংখ্যার মত শোনাচ্ছে, কিন্তু আমি খুব দ্রুত আছি ছোট মান পেয়ে. এবং বাস্তবিকই, গণিত যদি আমি না ঠিক আছে, আমি শুধুমাত্র বিভক্ত করা যেতে পারে 4 বিলিয়ন দ্বারা প্রায় 32 বার আগে আমি শুধু এক নামা. তাই যদি হয় যে ফোন বই 4 জন বিলিয়ন পৃষ্ঠা দীর্ঘ, কোন বড় চুক্তি. কয়েক সেকেন্ডের মধ্যে, হয়তো 32 দেখো, আমি এটা অর্ধেক বিভক্ত করা যায়নি এবং শেষ পর্যন্ত মাইক বা এটি এই উপসংহারে আসে যে সে ওখানে নেই. এবং যে একটি মূল একটি ভাল অ্যালগোরিদম এলগরিদম. আর যে এক এই মত একটি বর্গ গোল আমি কিভাবে কি চিন্তা করার চেষ্টা করা হয় সমস্যা শুধু সঠিকভাবে না সমাধান, মত আমি সবসময় জানতাম এটা এক না কিভাবে একটি time-- পাতা কিন্তু সঠিকভাবে এবং ভাল. কিভাবে আমি ভাল ডিজাইন করবেন সমস্যার সমাধান? তাই এর একটি মুহূর্ত দাও এবং আপনি এখন একটি ধারনা দিতে এবং CS50 অবশ্যই নিজেই পরিচয় করিয়ে কয়েক অবশ্যই এর কর্মীদের. শুধু 2:00 আগে, আমরা করব একটি ছোট বিরতি নিতে আপনি যাদের যাতে যারা কেনাকাটা করা হয় করতে পারবেন হাঁস আউট এবং একটি নিতে কিছু অন্যান্য বর্গ তাকান এবং এই অনলাইন বাকি ঘড়ি. কিন্তু এখন জন্য, আমাকে পরিচয় করিয়ে দেওয়া এবং CS50, শ্রেণী নিজেই, এবং বিশেষ করে কি নতুন. তাই গত বসন্ত, আমরা অতিবাহিত বেশ time-- একটি বিট অবশ্যই এর কর্মী এবং I-- চিন্তা এটা কি সম্পর্কে আমরা CS50 হতে চাই, এবং প্রথম থেকে ফিরে যাচ্ছে নীতি, তাই কথা বলতে, এই বিষয়টা বিবেচনা করে কি আমরা চাই এই কোর্সের মত চেহারা এবং করা তার ছাত্রদের জন্য মত. এবং যাতে আপনি সমস্যা দেখতে পাবেন শূন্য সেট পাশাপাশি, একটি আমন্ত্রণ যে কটাক্ষপাত করা যে URL সংক্ষিপ্ত বিবরণ পিছনে প্রেরণার কিছু পতনের 2016 বৈশিষ্ট্য নিম্নলিখিত. সুতরাং হিসাবে আপনি উত্পন্ন হতে পারে TL থেকে: ডিআর বিলিপত্র, পাঠ্যক্রম আজ পাশাপাশি থেকে যেমন অবশ্যই ক্যাটালগ, CS50 মধ্যে এই বছর, আপনি শুধুমাত্র পরিচর্যা করা করছি ভাল তাই কাজ today-- done-- এবং 21 নভেম্বর শেষ বক্তৃতা. এবং আপনি স্বাগত কিন্তু প্রত্যাশিত নও মাঝখানে যারা বক্তৃতা পরিচর্যা আমরা কি করছি কারণ এই বছর, শুটিং হয় রিয়েল-টাইম অবশ্যই এর উপাদান. সুতরাং সবকিছু থাকবে বর্তমান এবং অন্তর্ভূক্ত সেরা হিসেবে আমরা বর্তমান ঘটনা can-- এবং কথোপকথন যে ভাবেন প্রতাপ এ শিল্পে হচ্ছে বিশ্বের, কিন্তু যে উপাদান তৈরীর পাওয়া যায়, ফলে, এমনকি earlier-- পূর্ণ টেক্সট প্রতিলিখন সঙ্গে সম্পূর্ণ এবং অনুসন্ধান যোগ্যতা ও অন্যান্য রিসোর্স লিঙ্ক. এবং প্রকৃতপক্ষে, আমরা চলেছি কিছু সময়ের জন্য দাবি এবং আমরা এখন এই বিশ্বাস করি, যে আমরা তৈরি করতে পারেন, ডিজিটালরূপে, একটি আরো immersive, একটি আরো আকর্ষক শিক্ষাগত অভিজ্ঞতা, যেমন বিরোধিতা এখানে কিছু 23 বার সংগ্রহ ব্যক্তি, শ্রবণ কেউ আমাকে পছন্দ কেবল কম্পিউটার বিজ্ঞান বিষয়ে আলোচনা, যেমন আরো সক্রিয়ভাবে অংশগ্রহণকারী উল্টোদিকে. তাই আপনি যদি কোর্স এর পাঠ্যক্রম দেখতে পাবেন সেমিস্টারে একটি স্কেচ এখানে, সঙ্গে যখন বক্তৃতা হবে বরাবর শুট করা, যা তুমি করতে স্বাগত কিন্তু প্রত্যাশিত না, এবং যখন তারা মৃত্যু কামনা করবে অবশ্যই এর ওয়েবসাইটে প্রকাশ করা. আর আমরা এখানে কি করব কি আগামী সপ্তাহে শুরু বুধবারে, অনেক শুধুমাত্র সঙ্গে আরো গলাগলি হয়, যারা ভাবেন যারা অংশগ্রহণ করতে চান, একটি তথাকথিত হাঁটার মাধ্যমে হয়, যেখানে আমি এবং অবশ্যই এর মাথা আসলে কিছু করতে হবে একটু বেশি অন্তরঙ্গ এখানে নিচে অর্কেস্ট্রা অধ্যায়, এখনও কিছু প্রযুক্তি আছে এবং দিয়ে হেটে বর্তমান সপ্তাহে এর সমস্যা সেট, এবং তোমাদের মধ্যে যদি particularly-- প্রস্তাব যারা কম comfortable-- আরও নির্দেশিকা যে আপনি চাইতে পারেন অথবা সপ্তাহে প্রতিদ্বন্দ্বিতার জন্য প্রয়োজন. আর একইভাবে, তাদের জন্য যারা না পারেন ব্যক্তি সেই, কোন বড় চুক্তি পরিচর্যা. সেখানে একভাবে নেতৃত্বে করা হবে অবশ্যই এর সিনিয়র কর্মীদের এক, Zamalya, একই সুযোগ এমবেডেড সমস্যা নিজেরাই নির্ধারণ করা হবে. সমস্যা এই বছর নির্ধারণ শুক্রবারসহ প্রকাশ করা হবে আর সাত দিন পরে না, কিন্তু 10 দিন later-- ইচ্ছাকৃতভাবে প্রতিটি সমস্যা সঙ্গে ওভারল্যাপিং সেট তাই ভাল মিটমাট, আমরা আশা করি, ভাটি এবং প্রবাহ ছাত্র সময়সূচী মধ্যে, বিশেষত যখন midterms বা শরীরচর্চা বা শিক্ষাবিদ বা extracurriculars এসে যেতে ঝোঁক বিশেষত মধ্য সেমেস্ত্র. যে আপনি একটু বেশি দিতে হবে আপনি কিনা সামনে হিসেবে বিবেচনার CS50 বা ফিরে লোড সঙ্গে আপনার সপ্তাহে লোড এটা নিম্নলিখিত সপ্তাহান্তে পরিবর্তে উপর. তাই অবশ্যই এর পাঠ্যক্রম থেকে দেখুন এখানে উহার সময়সূচী জন্য. আর তোমাদের মধ্যে খুব বিজ্ঞপ্তি পাবেন পরিবর্তন এই বছর, সঙ্গে আরো পরিচিত জন্যে অতীতে প্রোগ্রামিং, আমরা যেমন সেমিস্টারে শুরু করব আমরা ভূত আজ হবে, ভাষার ওপর বিশেষভাবে নজর বলা হয় সি, এবং তারপর না রূপান্তর পিএইচপি, কিন্তু নামক একটি ভাষা সেমিস্টারের শেষের দিকে পাইথন ওয়েব প্রোগ্রামিং প্রেক্ষাপটে, এসকিউএল এবং জাভাস্ক্রিপ্ট সঙ্গে বরাবর, এইচটিএমএল, সিএসএস, এবং এখনো আরো. আর একটি প্রশ্ন উত্তর মধ্যে, এটা প্রকৃতপক্ষে কেস সি এস একবার আমি যত ভীতিকর নয় যে ভেবেছিলাম এটা ছিল, কিন্তু এটা যতটা কাজ হল যেমন আমি শুনেছিলাম এটা হতে পারে. কিন্তু এই বলে যে এখানে কিছু হয় পতনের 2015 ছাত্র শরীর থেকে পরিসংখ্যান, যদ্দ্বারা অনুভূমিক নীল রেখা ঘন্টার গড় সংখ্যা প্রতিনিধিত্ব রিপোর্ট. আর যখন তোমাদের মধ্যে গড়ে দেখতে পাবেন 10 ছয় হয়তো 16 12-- থেকে তাই এবং তাই ঘোষণা, কিন্তু সঙ্গে উচ্চ ভ্যারিয়েন্স পরিষ্কার হবে. তাই সেখানে শুধু তাই নয় যে উপলব্ধি শিক্ষার্থীদের আরো আরামদায়ক এবং কম কোর্সে আরামদায়ক, কিন্তু একটি অনুরূপ সমর্থন কাঠামো ঐ ছাত্র পেতে সেমিস্টারে সফলভাবে মাধ্যমে. বস্তুতপক্ষে, অনবরত জিজ্ঞাসিত প্রশ্ন উত্তর, should আপনি প্রথম বর্ষের হিসাবে CS50 নিতে? একেবারে. এবং সত্য, আমি দু: খ প্রকাশ না আমার পথ না খুঁজে পেয়ে অথবা একটি নতুন ক্ষেত্র খুঁজে পাওয়া পাশাপাশি যে প্রথম বছরে. আর আপনার সাথে এবং CS50 গ্রহণ করা উচিত অবশ্যই well-- হিসাবে অন্যান্য কোর্স, এবং সাধারণ পরামর্শ আমরা প্রতাপ ছাত্র দিতে, যে CS50 সম্ভবত শ্রেণী বা ইন্ট্রো বর্গ ধরনের না যে আপনি তিন সঙ্গে গ্রহণ করা উচিত অন্যান্য বা চার অন্যান্য পি সেট ক্লাস. কিন্তু আপনি অন্য দুটি পি সেট গ্রহণ করছি ক্লাস, অন্য কিছু, এবং CS50, একেবারে সামলানো. আমি অনেক ছাত্র ছিল করেছি গত বেশ সাফল্যের সাথে তাই করা. আর যে দিকে আপনি পেতে লাইন সফলভাবে শেষ, sections-- অবশ্যই আছে শিক্ষার্থীদের জন্য বিভিন্ন গানগুলি কম, আরামদায়ক আরো আরামদায়ক, এবং তাদের মধ্যে কোথাও, যদ্দ্বারা অবশ্যই এর মধ্যে প্রথম সমস্যা সেট, আপনি নিজেকে বর্ণনা করতে বলা হবে. এবং আপনি ঐ কম মধ্যে হয় তাহলে আরামদায়ক, এটা ধরনের জিনিস আপনি বরং জানি যে. এবং প্রকৃতপক্ষে, যে হয়েছে CS50 মধ্যে ডেমোগ্রাফিক ক্রমবর্ধমান বেশ কয়েক বছর ধরে. জন্য গত পতনের হিসাবে উদাহরণস্বরূপ, ক্লাসের 58% নিজেদের হিসাবে বর্ণনা কম আরামদায়ক যাদের মধ্যে, যারা আরো মধ্যে 9% সঙ্গে আরামদায়ক, এবং তারপর সেখানে অন্য শিক্ষার্থীদের লাল নিজেদের বর্ণনা যেমন কোথাও মধ্যে. আর তুমি এখানে বিষয় সামগ্রিক দেখতে পাবেন ও বিভাগে সময়সূচী, সব যা ব্যক্তির দেওয়া হয় অবশ্যই এর সঙ্গে বাস্তব সময়, শিক্ষণ ফেলোগণ আশ্চর্যজনক কর্মী এবং অবশ্যই সহায়ক, যাদের কেউ কেউ আপনি মাত্র কয়েক মিনিটের মধ্যে দেখা করব. নিজেদের সেকশনস, আপনি দেখতে পাবেন, হবে সোমবার এবং মঙ্গলবার এবং বুধবারে হতে, তাই আপনি ডুব করার অনুমতি রত, যদি আপনি তাই পরে চয়ন, অবশ্যই এর মধ্যে আগে যে সপ্তাহে বক্তৃতা. এবং তারপর অফিসে ঘন্টা, যা অবশ্যই, প্রতিটি ক্ষণস্থায়ী বছরের সঙ্গে, একটি কোন কম হয়েছে কোর্সের জন্য চ্যালেঞ্জ. এবং এই বছর, আমরা না পরিকল্পনা করছি শুধুমাত্র অফিস এক hours-- রাখা জন্য সাহায্যের জন্য এক সুযোগ বুধবারে বৃহস্পতিবার ছাত্র এবং রবিবার, ঐ শেষ নকশা দ্বারা বিকালে হচ্ছে স্ট্রেস কিছু কমাতে যে অপরিবর্তনীয়ভাবে নিশুতি সঙ্গে দেখা দেয় দুটো কারণে একটি নির্দিষ্ট সময়সীমা দিয়ে পি settting looming-- কিন্তু অফিসে ঘন্টা দেওয়া হবে সোমবারে ও মঙ্গলবার এবং বুধবারে, শুক্রবার এবং শনিবার, HSA আমাদের বন্ধুদের ধন্যবাদ. এবং CS50 এখন নিজস্ব স্থান হয়েছে ছাত্র এবং CS50 কর্মীদের জন্য, 67 মাউন্ট পিঙ্গল রাস্তার উপরে, ওখানেই হার্ভার্ড স্কোয়ারে. দৃষ্টি, যার জন্য যে CS50 এর হয় টিএফএস এবং সি এ এস সপ্তাহ জুড়ে, সবচেয়ে সর্বত্র প্রায় কাছাকাছি দিন, সমর্থন থাকবে. তাই আপনি যদি পেয়েছেন কিছু একটি P- সেটে প্রশ্ন অথবা আপনি একটি সামান্য বোধ করছি ব্লক বা একটু বিভ্রান্ত, এবং নরক, আপনি একটি ঘন্টা পেয়েছেন বা ক্লাস মধ্যে আধা ঘন্টা, বিশেষত square-- মধ্যে করতে পারেন পপ এবং যে প্রশ্নের উত্তর আছে যে বিভ্রান্তি আছে clarified-- আত্মা খুব বেশী, আপনি গণিত, পরিচিত হন বিভাগের নিজস্ব গণিত প্রশ্নের কেন্দ্র, কিন্তু প্রতি দিবারাত্রি প্রায় কাছাকাছি [? Gcal?] যে আমরা অনলাইনে পোস্ট করতে হবে. টিউটরিং ঐ জন্য উপলব্ধ ছাত্র, অবশ্যই এর থেকে অবাধে নিজস্ব কর্মীদের যদি আপনি চাই আরো ঘনিষ্ঠ এক উপর এক, অথবা শুধুমাত্র দুই বা তিন সহপাঠী, কাজ অবশ্যই এর কর্মীদের এক সঙ্গে. এবং প্রকৃতপক্ষে, এই এখানে ন্যায়পূর্ণ অবশ্যই এর কর্মীদের কিছু, যাদের কয়েক আপনি পাবেন মাত্র কয়েক মিনিটের মধ্যে দেখা. বস্তুত, CS50 এর নিজস্ব মাথা শিক্ষণ সহকর্মী, এবং মাথা অবশ্যই সহকারী এবং গুরু আপ আসতে পারে, অনুমতি তাদের হ্যালো বলে. [সাধুবাদ] বক্তা 1: [শ্রবণাতীত]. [সাধুবাদ] স্পিকার 2: [শ্রবণাতীত]. [সাধুবাদ] স্পিকার 3: [শ্রবণাতীত]. [সাধুবাদ] DAVID Malan: এবং আমাদের অনুমতি CS50 এর দুই বোর্ডে আনা সবচেয়ে সিনিয়র স্টাফ, রব এবং Zamayla পাশাপাশি. [সাধুবাদ] প্রকৃতপক্ষে, উভয় রব এবং Zamayla আমাদের সঙ্গে হয়েছে এত দীর্ঘ সময় ধরে, আমি সক্ষম ছিল যে CS50 এর আর্কাইভ ঢোকা এবং এটি এই খুব এসডি তাদের ফুটেজ অংশগ্রহণ কিছু বছর আগে মঞ্চে নিজেদের উপর. ছিনিয়ে: [শ্রবণাতীত]. [সাধুবাদ] ZAMAYLA: [শ্রবণাতীত] [সাধুবাদ] DAVID Malan: আপনাকে ধন্যবাদ. সুতরাং এই ছাড়াও এখানে দলের সদস্যদের এবং CS50 প্রায় 100 এর একটি দল আছে কর্মীদের, যাদের সব বিভাগে জন্য উপলব্ধ করা হবে এবং অফিসে ঘন্টা এবং আরও অনেক কিছু. ও রব খুব বলেন, এই হল সবচেয়ে গুরুত্বপূর্ণ 'পৃষ্ঠা পরিবর্তনের 10 বছরে CS50 এর যে আমি [শ্রবণাতীত] চলেছি. [শ্রবণাতীত] বিশেষত নিবদ্ধ একটি সমর্থন কাঠামো প্রদানে, দূরে অনেক ছাঁটাই বাল্ক যে হয়েছে 10 বছরের মধ্যে সঞ্চিত পৌন উন্নয়ন অবশ্যই এর সমস্যা সেট. তাই এই বছর, না শুধুমাত্র ক্লাসে কিন্তু অবশ্য এর সমস্যা আকারে সেট, আপনি জিনিষ হবে আরো মসৃণ করা, তিরস্কারকারী, অনেক চেয়ে আরো পরিচালনীয় বছর অতীতে, আমরা যেমন লাগেজ যে কিছু চালা নব্য বছরের প্রকৃতি দ্বারা বিকশিত বছর এবং iterating পর. তাই নতুন এবং উন্নত শুরু আজ. আপনি আরো কিছু পূরণ করব মধ্যে [শ্রবণাতীত] অবশ্যই এর কর্মীদের আউট 2:30, যেখানে আমরা পরিবেশন করা এ, একটি ঐতিহ্য, পিষ্টক হিসাবে. সেখানে একটি বিট আরো কেক যে চেয়ে, কিন্তু আপনি পাবেন দেখা এরিন এবং Tobias এবং অন্যদের এখনও. আর আমাকে কি ঢুকতে দেবে একটি সফরের আগে আমরা শুনতে অন্যান্য কর্মীদের কিছু থেকে শ্রেণী, কি পাশাপাশি অ্যাওয়েট্সওয়াচমেন মধ্যে. আসলে, আমরা সবসময় CS50 এর শুরু সেমিস্টারে এই আসছে শনিবার, সঙ্গে কি CS50 ধাঁধা দিন বলা হয়. এটা সঙ্গে এর কোন সম্পর্ক নেই কম্পিউটার বিজ্ঞান কোনটাই, কিন্তু প্রায় সমস্যা আরো সাধারণভাবে সমাধানে. আর তুমি গ্রহণ করতে পছন্দ করেন তাহলে, আমন্ত্রণের কিছু প্রতি, আপনি দরজা দেখা হতে পারে বাদ বা এখানে মঞ্চে, এটা দলের মধ্যে একটি সুযোগ দুই বা তিন বা চার, পাজল এবং পিজা জন্য অংশগ্রহণের এবং পুরস্কার ও more-- এই শনিবার, আরো জন্য tuned থাকার. আপনি খুব যে প্রত্যেক পাবেন শুক্রবার, ফায়ার এবং আইস এ, এবং CS50 একটি চিত্র ভেসে ওঠে শিক্ষার্থীদের আভা দুপুরের খাবার খেতে, একটি বৃহৎ করতে বর্গ আরো ঘনিষ্ঠ বোধ, এবং সাধারণত একত্রিত প্রাক্তন ছাত্র এবং শিল্প থেকে বন্ধুদের তারা কি করেছি সম্পর্কে কথা বলার জন্য স্নাতক যেহেতু পর্যন্ত হয়েছে. একইভাবে, এই বছর, আমরা জিতবোই উদ্বোধন প্রথম CS50 50 contest-- কোডিং একটি মধ্য সেমেস্ত্র সবাই করার সুযোগ ভিত্তি একটি অপ্ট উপর, একটি আছে সহপাঠীদের বিরুদ্ধে কৌশলে বুদ্ধি খাটিয়ে রোজগার চ্যালেঞ্জ, আবার দুই বা তিন বা এর দল চার, শুধুমাত্র যে প্রোগ্রামিং ব্যবহার কাণ্ডজ্ঞান আপনি তারপর অধীনে আছে মাত্র ছয় বা সাত পর আপনার বেল্ট ক্লাসের সপ্তাহ, এবং অংশগ্রহণ প্রতিযোগিতার এই ধরনের online-- আপনি আপনার নিজের শান চাই দক্ষতা সব যে চ্যালেঞ্জ আরও. সেমিস্টার শেষে তথাকথিত এবং CS50 Hackathon-- একটি সুযোগ যে 7:00 টায় শুরু হয় প্রধানমন্ত্রীর এ 7:00 পূর্বাহ্ণ যথাযথভাবেই এবং পথ বরাবর যা ঝাঁপিয়ে 12 সন্ধ্যা ঘন্টা অবশ্যই এর চূড়ান্ত project-- মধ্যে একটি সুযোগ ডিজাইন করতে এবং বেশিরভাগ কিছু বাস্তবায়ন আপনি আপনার শিক্ষার সঙ্গে সহকর্মী নির্দেশনা. আনুমানিক 9.00 টায় আমরা সাধারণত কি পিজা, 1:00 পূর্বাহ্ণ পরিবেশন, ফিলিপ, আর আমাদের কিছু যারা এখনও 5:00 এ জাগ্রত হয়, শাটল নিচে bussed ব্রেকফাস্ট জন্য IHOP নেন রাস্তা. তারপর কিছুদিন পরে তথাকথিত CS50 হয় fare-- সেমিস্টারে প্রদর্শনীর শেষ ঠিক কতদূর এত উদযাপন CS50 এর শিক্ষার্থীদের কাছ থেকে এসেছি সপ্তাহে সপ্তাহে শূন্য সব পথ, এবং মনে রেখে যে ঐ 73% সহপাঠীদের এবং পুলিশের এই বছর আছে সামনে একটি সি এস বর্গ কখনোই. বস্তুত, যতটা reemphasize করতে, এখানে CS50 এর কর্মীদের থেকে আরো কয়েকটি মুখ হয়. স্পিকার 4: [শ্রবণাতীত]. স্পিকার 5: [শ্রবণাতীত]. স্পিকার 6: [শ্রবণাতীত]. স্পিকার 7: [শ্রবণাতীত]. স্পিকার 8: [শ্রবণাতীত] স্পিকার 9: [শ্রবণাতীত]. স্পিকার 4: [শ্রবণাতীত]. স্পিকার 10: [শ্রবণাতীত]. স্পিকার 11: [শ্রবণাতীত]. স্পিকার 12: [শ্রবণাতীত]. স্পিকার 13: [শ্রবণাতীত] স্পিকার 14: [শ্রবণাতীত]. স্পিকার 13: [শ্রবণাতীত]. স্পিকার 15: [শ্রবণাতীত] স্পিকার 16: [শ্রবণাতীত]. স্পিকার 11: [শ্রবণাতীত] স্পিকার 5: [শ্রবণাতীত]. DAVID Malan: দলের কিছু নিজেদের ক্লাস কেনাকাটা করা হয়. কিন্তু সেইসব যদি CS50 কর্মীদের এখানে আছেন, আপ আসতে পারে শুধু একটা মুহূর্ত জন্য. CS50 এর টিএফএস এবং সি এ এস এবং [? কর্মী ?] সদস্য এই মাত্র কয়েক এখানে যাকে নিয়ে faces-- এক আপনি শুধু দেখলাম, এবং কয়েক other-- এবং অন্য কয়েকজন এখনও. কেন আমরা এগিয়ে যান এবং অনুমতি দেয় না আপনাকে বলছি একটি পাঁচ মিনিটের বিরতি. তোমার কাছে হাঁস করার প্রয়োজন হলে দোকান ক্লাস, যে সূক্ষ্ম. আর পাঁচ মিনিটের মধ্যে, আমরা, সারসংকলন করব গোড়া প্রথম কটাক্ষপাত গ্রহণ আমাদের প্রোগ্রামিং ভাষা, দেখা অবশ্যই এর কর্মীদের এখানে আরো কিছু, এবং পরিণামে ফোকাস সমস্যা শূন্য সেট. তাই আমরা পাঁচ মিনিটের মধ্যে ফিরে আসছি. [সাধুবাদ] ঠিক আছে. তাই আমরা ফিরে এসেছি. আর আমাদের অবশিষ্ট সময় আজ, লক্ষ্য প্লেয়িং ফিল্ড সমান হয় কিছু পরিভাষা পরিপ্রেক্ষিতে, কিছু ধারনা পরিপ্রেক্ষিতে. প্রকৃতপক্ষে কারণ, প্রতি যেমন আগের চার্টের কিছু, সেখানে একটি পরিসীমা হতে যাচ্ছে শ্রেণী অভিজ্ঞতার মাত্রা, কিছু যার ছাত্র আছে সামনে কিছু প্রোগ্রামিং গ্রহণ, যাদের কিছু নেই. তাই এই প্রথম সমস্যা সেট এবং এই প্রথম ভাষা সঙ্গে আমরা শুরু করার একটি সুযোগ আছে আজকের পর হালকাভাবে নিতে কিছু সাধারণ শব্দভান্ডার এবং ধারণা. এবং আমরা এর মাধ্যমে এই কাজ করব অবশ্যই এর প্রথম languages-- সি এবং পাইথন এবং ছাড়াও জাভাস্ক্রিপ্ট এবং এসকিউএল এবং HTML এবং CSS, আমরা প্রাথমিকভাবে মনোযোগ নিবদ্ধ করা হবে এবং সমস্যা শূন্য সেট শুধু জন্য এই গ্রাফিক্যাল ভাষায় বলা হয় ভূত, এমআইটি মিডিয়া ল্যাব দ্বারা বিকশিত রাস্তা নিচে, সাহায্য করার জন্য ছাত্র এবং বাচ্চাদের বিশেষ করে নিজেদের algorithmically-- প্রকাশ একটি উপায় কি সঙ্গে আরো সামঞ্জস্যপূর্ণ আমরা গণনীয় চিন্তা ডাকতে পারে. এবং এটা কারণ একটি দরকারী ভাষা আছে খুব দ্রুত এক সপ্তাহের মধ্যে আগামী সপ্তাহে, আমরা আরো একটি রূপান্তর না বলা ঐতিহ্যগত এবং রহস্যময় ভাষা সি, যা বিশুদ্ধরূপে পাঠগত হয়. আপনি শুধুমাত্র আপনার কীবোর্ড ব্যবহার অর্ডার নির্দেশাবলী লিখতে পর্দায় এই মত. কিন্তু যদি কখনও দেখা করেছি সামনে একটি প্রোগ্রামিং ভাষা, শুধু এ নেত্রপাত মধ্যে এই, সব রহস্যপূর্ণ হতে, সম্ভবত আপনি অনুমান করতে পারেন যে সম্ভবত হ্যালো ওয়ার্ল্ড ছাপে. কিন্তু সেখানে অনেক সেখানে অন্বিত উপরি. অদ্ভুত হ্যাশ হয় টপ আপ প্রতীক বা হ্যাশ ট্যাগ. সেখানে কোণ বন্ধনী, কিছু প্রথম বন্ধনী, কোঁকড়া ধনুর্বন্ধনী, আধা colon-- সেখানে শুধু এত চাক্ষুষ সিনট্যাক্স যে পথ পায়. আমরা সঙ্গে অবশ্যই শুরু তাই পেতে ভূত ঐ সকল অতীত বুদ্ধিমত্তা নীরস বিক্ষেপ, এবং ধারনা উপর পরিবর্তে ফোকাস. বস্তুত, এই সামনে হতে পারে. এই, এই জন্য, সপ্তাহের পর হইবে. এই, এই গ্রাফিক্যাল মধ্যে ভাষা ভূত, কিভাবে আপনি যে একই বাস্তবায়ন হবে যে যখন চালানো একটি প্রোগ্রাম প্রোগ্রামটিতে, কেবল হ্যালো দুনিয়া বলেছেন. আর কি সুন্দর সম্পর্কে স্ক্র্যাচ হয় এটা এই গ্রাফিক্যাল প্রোগ্রামিং যে পরিবেশ পাজল টুকরা বা ব্যবহার করে ব্লক, যে শুধুমাত্র একসঙ্গে interlock যদি এটা লজিক্যাল জ্ঞান করে তোলে তাই করতে. আর ভূত সঙ্গে আপনি বিকশিত করতে পারেন অ্যানিমেশন এবং ইন্টারেক্টিভ গেম এবং শিল্প, এবং যে কোনো একটি সংখ্যা যে আপনি আপনার নিজের মনের মধ্যে কল্পনা করা হতে পারে, আর যত সহজভাবে দ্বারা বাস্তবায়ন টেনে এবং পাজল টুকরা ড্রপ. এবং প্রকৃতপক্ষে, আমরা ক্ষমতা হবে একই ধারণা কিছু প্রকাশ করার আমি শুধু একটা মুহূর্ত উল্লেখ করে আগে মাইক স্মিথ প্রেক্ষাপটে এবং অনুসন্ধানের একটি ফোন বই কিছু ফাংশন মত, শুধু কর্ম loops, কি যে ভালো জিনিস আবার এবং আবার কিছু, ভেরিয়েবল, যা কিছু আমরা পরিচয় করিয়ে দেব, কিন্তু এটা থেকে সম্ভবত পরিচিত algebra-- শুধু স্থানধারক কিছু আপনি হয়তো কিছু মান সংরক্ষণ later-- বুলিয়ান এক্সপ্রেশন প্রয়োজন, যেখানে ঐ হ্যাঁ কোন বা সত্য সামনে থেকে মিথ্যা প্রশ্ন. শর্তাবলী সেই কাটাচামচ হয় road-- সেই শাখা, তাই কথা বলতে. এবং তারপর কিছু কল্পনাকারী হয় বৈশিষ্ট্য আমরা আজও দেখতে পাবেন, বলা অ্যারে এবং থ্রেড এবং ঘটনা, তারপর আমরা ওভার পরিদর্শন করবেন যে বিভিন্ন ভাষায় সময়. কিন্তু ভূত পারবেন এই সব অন্বেষণ করতে. তাই ভূত এখানে, এই রক্তবর্ণ ব্লক কি একটি ফাংশন সাধারণত হয় অনুরূপ যাচ্ছে. এই রক্তবর্ণ ধাঁধা টুকরা কিছু আছে যে শব্দ মত বলে, যা কর্ম হয়, এবং তারপর এটি একটি থাকতে পারে যুক্তি বা একটি পরামিতি কিছু উপায় কাস্টমাইজ ধরনের কি যে ব্লক করে যাতে এটি দ্বারা প্রাক নির্ধারিত নয় এমআইটি কি এই রক্তবর্ণ ব্লক বলছেন. আসলে, আপনি একটি দেখতে পাবেন মুহূর্ত যে আমি টাইপ করতে সক্ষম নই হ্যালো ওয়ার্ল্ড মত শব্দ, বা ডেভিড হ্যালো, বা হ্যালো Zamayla, বা যাই হোক না কেন আমি চাই, যুক্তি যে ধাঁধা সাদা বক্স piece-- সেখানে. এদিকে, যদি আমি একটি লুপ চান, আমরা করব দেখতে যে আছে পাজল টুকরা যে এই মত একটি সামান্য কমলা দেখুন. এবং তাদের আকৃতি ধরনের প্রস্তাব দেওয়া হয় যে কিছু আবার এবং আবার ঘটবে একটি চক্র. সুতরাং যদি আমি একটি বলে বিশ্বের ব্লক হ্যালো মোড়ানো ভূত একটি চিরকালের ব্লক সঙ্গে, এটা শুধু হ্যালো বলছে রাখা যাচ্ছে বিশ্বের সব সময় প্রবেশ করুন, আক্ষরিক অর্থেই. এদিকে, সেখানে আরেকটি ভূত লুপ টাইপ যে আমরা একটি পুনরাবৃত্ত see-- করব ব্লক যেখানে, আপনি যদি অগ্রিম জানা কত বার আপনি লুপ চালাতে চান আপনি fact-- বার একটি সসীম সংখ্যা একটি সংখ্যা টাইপ করে যে নির্দিষ্ট করতে পারেন অথবা এমনকি, একটি পরিবর্তনশীল প্লাগিং এক্স বা ওয়াই হিসাবে আমরা দেখতে পাবেন মত. বস্তুত, ভেরিয়েবল মত এই ক্ষেত্রে, আমি যা একটি জন্য একটি সাধারণ নাম পূর্ণসংখ্যা পরিবর্তনশীল যে শুধু একটি নম্বর সঞ্চয় একটি পূর্ণসংখ্যা হতে পারে, এখানে এই কমলা ব্লক ব্যবহার করতে আমি শূন্য মত একটি পরিবর্তনশীল সেট. এখানে একটি সবুজ মধ্যে একটি উদাহরণ ভূত বুলিয়ান অভিব্যক্তি. এই একটি গণিত মত দেখায় যদিও সূত্র, এই মত গণিত অসাম্য সত্যিই বুলিয়ান এক্সপ্রেশন হয়. এই সত্য বা মিথ্যা. আমি 50 এর চেয়েও কম. এটা হয় একটি yes অথবা no উত্তর বা সত্য বা মিথ্যা উত্তর. এবং আমরা সাধারণত ডাকবো ঐ বুলিয়ান এক্সপ্রেশন. এবং এটা 50 হতে হবে তা নয়. এটা y কম X হতে পারে, y তুলনায় বেশী, y-- সমান অন্যান্য কোন সংখ্যা প্রশ্ন জিজ্ঞাসা করা যেতে পারে. এখন, প্রথম নজরে, এই চেহারা হতে পারে হঠাৎ বেশ সাহসী এখানে, এবং তা হয়ে যায়. কিন্তু ধারণা জ্ঞানী, এটা বেশ আগে থেকে পরিচিত. যদি xy হয় তার চেয়ে কম, তুলনায় যতটা বলে. অন্যথায় যদি এক্স বেশী জঘন্য y তুলনায়, তারপর যতটা বলে. অন্যথায় বলতে x, y এর সমান. তাই আমরা একটি উদাহরণ আছে একটি তৃতীয় scenario-- সেখানে শুধুমাত্র তৃতীয় possibility-- এক্স হয় হয় তার চেয়ে অনেক বেশী, কম, বা সমান. তাই আমরা রাস্তা তিন উপায় কাঁটাচামচ আছে. এবং লক্ষ্য করা শীতল এখানে ভূত কি, এটা, মনে হবে মাত্র এক ধাঁধা হয়েছে টুকরা, এই ক্ষেত্রে, যদি অন্য ব্লক মধ্যে. এবং এখনো যে আপনি পরোক্ষভাবে মনে হবে পারেন শুধু রাস্তায়ই একটি দুটি উপায় কাঁটাচামচ আছে. আপনি বাম যেতে পারেন বা ডান, কিন্তু কি যে তৃতীয় দৃশ্যকল্প সম্পর্কে? কি যদি xy সমান? কোনো বড় ব্যাপার নয়. এক ধাঁধা টুকরা নিন, করা এটি অন্য কোন এক ভিতরে শব্দার্থিক সমতুল্য তৈরি করতে যদি, অন্যথায় যদি else-- এবং এখন আপনি রাস্তা আপনার তিন উপায় কাঁটাচামচ আছে. এবং হিসাবে আমরা দেখতে পাবেন, স্ক্র্যাচ পাজল টুকরা প্রসারিত এবং হত্তয়া করা যাবে, তাই তাদের মধ্যে আরো স্টাফ ঠুসা. আপনি মাপসই হবে না তার ডিফল্ট মাপ মধ্যে সবকিছু. এইটি এমন কিছু বিষয় আমরা করব শীঘ্রই দেখতে একটি অ্যারে বলা হয়. এটা একটি তালিকার কিছু উপায় মত তথ্য একাধিক টুকরা সংরক্ষণকারী একটি পরিবর্তনশীল, না শুধু একটি সংখ্যা. এই আমরা একটি প্রতিনিধি দেখতে পাবেন কিছু মাল্টি থ্রেডিং বলা. আসলে, সব আপনার Macs- এবং পিসি এই দিন মাল্টি থ্রেডিং সমর্থন, যার মানে হল আপনি আক্ষরিক পারেন একটি সময়ে একাধিক জিনিষ না. আপনি মাইক্রোসফট ওয়ার্ড থাকতে পারে পুরোভূমি, কিছু রচনার কাজ. আপনি একটি ব্রাউজার থাকতে পারে পটভূমি খোলার মধ্যে জি-মেইল বা ফেসবুক বা মত. আপনার কম্পিউটারে একাধিক জিনিস করতে পারেন আজ কারণ এটি মাল্টি থ্রেডেড, এবং প্রোগ্রাম তারা আছেন বিশেষ এছাড়াও মাল্টি থ্রেডেড হয়. সেখানে কিছু বলা ঘটনা হিসাবে ভাল ভূত বিশ্বের, এবং তারপর একটি উপায় আছে খুব, করতে আমাদের নিজস্ব পাজল টুকরা কিছু যদি আসলে আগাম কোন অস্তিত্ব নেই. তাই আসুন এই প্রেরণা নিম্নরূপ দিন. কয়েক বছর আগে, যখন আমি প্রথম, স্ক্র্যাচ আবিষ্কৃত যখন আমি আসলে ছিল একটি এমআইটিতে grad ছাত্র, আমরা নিজেদেরকে হোমওয়ার্ক করতে tasked হয়. আমি implemented-- যা, অতীতের দিকে দৃষ্টিপাত, একটি খুব দরিদ্র সিদ্ধান্ত ছিল, কারণ এটা বিশ্বের সবচেয়ে infuriating গান আট ঘন্টার জন্য শোনার জন্য যখন আপনার homework-- কাজ কিন্তু কিছু আমি অস্কার সময় ডেকে যা সম্ভবত একটি পরিচিত গান. CS50s মালিক জর্ডান Hayashi, এক আমাদের জ্যেষ্ঠ কর্মীরা 2015 জন্য এটি আপগ্রেড করা হয়েছে এবং এখন 2016, ফিরে দিন থেকে, আমি সবকিছু ছিল শুধু যাচ্ছে অস্কার ট্র্যাশ করতে পারেন মধ্যে. এখন আমরা পুনর্ব্যবহার এবং কম্পোস্টিং সমর্থন. কিন্তু ছবি অঙ্কন করা আমরা কি করতে পারি এখানে এবং এর কিছু উদ্বুদ্ধকরণ নিম্ন স্তরের উদাহরণ, আমরা অন্য এক পেতে পারে স্বেচ্ছাসেবক মাত্র পর্যন্ত আসা এবং আমার প্রথম খেলা হোমওয়ার্ক কি? চলো. তোমার নাম কি? HENRY: হেনরি. DAVID Malan: হেনরি, উপর আসা. চলো. উভয় ক্ষেত্রেই মাথা, এবং আপনি কয়েক মিনিটের মধ্যে দেখতে পাবেন, আমি এগিয়ে যান যাচ্ছি এবং আঘাত উপরের ডান হাতে সবুজ পতাকা কোণ, যেতে যার মানে. সামান্য স্টপ সাইন আইকন স্টপ বলে যাচ্ছে, এবং যে যখন আপনি শুরু কারার এবং প্রোগ্রাম বন্ধ. দেখা হওয়ায় খুশী হলাম. ঠিক আছে. সুতরাং আমরা নির্দেশাবলী দেখতে যাচ্ছেন মাত্র কয়েক মিনিটের মধ্যে পর্দায়. আর শুধু এই খেলা খেলে জন্য একটি আমাকে বিশ্বাস seconds-- কয়েক, আমরা খেলতে চাই যাচ্ছেন না end-- আপনি হবে সব পথ কি প্রোগ্রাম আছে একটা ধারনা পেতে. আর বেশি শুধু হেনরি ফোকাস ভাল বা এই খেলা, ফোকাস এ খারাপ হচ্ছে এবং কিভাবে এটা আমার দ্বারা বাস্তবায়িত হয়েছে মূলত এবং তারপর জর্ডান দ্বারা. অন্য কথায়, যেখানে ভেরিয়েবল? যেখানে যখন loops হয়? যেখানে ফাংশন? এবং আমরা দেখতে পাবেন যদি আমরা দেখতে পাচ্ছি না ফণা নীচে সেই. শুধু ক্লিক করুন এবং ট্র্যাশ টেনে আনুন উপযুক্ত ইবনে. [সঙ্গীত বাজাচ্ছি] ঠিক আছে. সেটা খুব ভালো. কেন আমরা এটা থামবে না. ধন্যবাদ. হেনরি অভিনন্দন. ধন্যবাদ. [সাধুবাদ] শুধু যে প্রোগ্রাম ডিবাগ কল্পনা. যদি কোন সমস্যা দুটি song-- কিন্তু তাই পরম মিনিট কি এখানে সত্যিই হচ্ছেটা কি? এটা হতে পারে হিসাবে জটিল হিসাবে সময় তরা মনে শুরু, প্রকৃতপক্ষে আরো এবং আরো কাপড় পতনশীল শুরু, কি সম্পর্কে আকর্ষণীয় example-- এই ধরনের এবং আমরা কয়েক দেখতে পাবেন others-- হল যে যদি আপনি জটিলতা অতীত পর্যবেক্ষণ বা খেলা এর কুতর্ক, সেখানে একটি খুব সহজ বিল্ডিং ব্লক, যা সব play--, যদি আপনি তাদেরকে করতে পাতন বিল্ডিং ব্লক, খুব প্রবেশযোগ্য এবং নিজেদের জন্যে ওরা বাস্তবায়নযোগ্য. উদাহরণস্বরূপ, এটা কিছু সময় হয়েছে, কিন্তু আমি নই চমত্কার নিশ্চিত কি আমি প্রথমে কখন প্রথমবার জন্য এই গেমটি তৈরি আমি সম্পূর্ণভাবে মত গড়িমসি ছিল. আমি এ সব ফোকাস করা হয়নি যুক্তিবিজ্ঞান বা পাজল টুকরা, আমি গ্রাফিক্স এবং গবেষনার উপর দৃষ্টি নিবদ্ধ করা রাস্তায় পোস্ট এবং ট্র্যাশ করতে পারেন এবং যে সব. কিন্তু ঐ প্রয়োজনীয় ছিল প্রথমে উপাদানগুলো. আর একবার আমি procrastinating সমাপ্ত এবং প্রতিষ্ঠানের কাঠামো সাজাবে আমি সিদ্ধান্ত নিলাম, আমাকে শুধু এক করা যাক আকাশ থেকে ট্র্যাশ পতনের টুকরা. আর আমরা ভূত দেখতে পাবেন কিছু বলা সমর্থন sprites-- অক্ষর পারেন তাই তারা বিভিন্ন পরিধানসমূহ আছে দেখতে ভিন্ন. এবং তাই আমি একটি ট্র্যাশ করা এক ধরনের পরী পরিচ্ছদ. আর আমি শুধু এটা প্রয়োজন আকাশ থেকে বৃষ্টিবর্ষণ করেন. আর তাই এটি সক্রিয় আউট, ভূত, বেশীর ভাগ প্রোগ্রামিং ভাষায় মত, সমর্থন র্যান্ডম সংখ্যা বা টেকনিক্যালি pseudocode হয় র্যান্ডম সংখ্যা, যাতে dragging দ্বারা এবং নির্দিষ্ট পাজল টুকরা ড্রপ, আমি ট্র্যাশ আছে সক্ষম ছিল প্রথমে বাম থেকে আসা. এবং তারপর পরবর্তী সময় এটা খোলস থেকে ডান এবং তারপর মাঝখানে থেকে. আর সব খেলা মাত্র ছিল না ট্র্যাশ আকাশ থেকে পতনশীল আছে. আপনি এটিতে নির্দেশ বা এটা উপর ক্লিক না করতে পারে. আপনি ট্র্যাশ করতে পারবেন খুলতে পারে. আপনি কিছু করতে না পারে. কিন্তু এটা একটি শিশুর পদক্ষেপ ছিল আমার চূড়ান্ত দৃষ্টি দিকে. এবং পরে যে, আমি আসলে কিছু বাস্তবায়িত সেন্সিং করছি, যাতে আপনি ক্লিক হয়নি এবং ট্র্যাশ টুকরাতে টেনে আনুন ট্র্যাশ করতে পারেন, অস্কার এর উপর ঢাকনা খুলুন এবং বন্ধ হবে. কিছুই ট্র্যাশে ঘটবে, কিন্তু অন্তত ঢাকনা খুলুন এবং বন্ধ হবে. তাহলে দেখা যায়, পরীক্ষা দুই দুই ধাপে. এবং এই কি হতে যাচ্ছে উভয় সমস্যা কী শূন্য সেট এবং প্রোগ্রামিং আরো সাধারণভাবে এ, হয় এই খুব ইচ্ছাকৃত শিশুর পদক্ষেপ গ্রহণ. কারণ না শুধুমাত্র এটা আপনাকে অনুমতি দেয় মনে সত্যই অনেক বেশি সম্পন্ন quickly-- এটা বিশ্বের সবচেয়ে খারাপ জিনিস অস্কার সব সময় বাস্তবায়নের চেষ্টা করতে, তারপর ঘন্টা পরে আঘাত সবুজ পতাকা, আর লোকে বলে আশা works কারণ যেখানে আপনি এমনকি না ডিবাগ করার জন্য বা শুরু যে প্রোগ্রাম ট্রাবলশুট? এটা শুধু অপ্রতিরোধ্য নয়. তাই সত্যিই এই ধারণা গ্রহণ এর আবার ধাপের শিশুর পদক্ষেপ গ্রহণ এবং আবার গড়ে তোলার কিছু যে, শেষ পর্যন্ত, সত্যিই চিত্তাকর্ষক এবং জটিল, কিন্তু প্রথমে, যতটা এখন প্রায় নয়. বস্তুত, এই কাজ করতে দিন. আমাকে এগিয়ে যান এবং নিজেই ভূত যাক Scratch.MIT.edu এ ওয়েবে রয়েছে, এবং আপনি হিসাবে বলা হবে সমস্যা আবার অনেক শূন্য, জন্য স্পেসিফিকেশন সেট যা CS50 এর ওয়েবসাইটে ইতিমধ্যে. কিন্তু এই কি ভূত নিজেই. সেখানে সত্যিই শুধু তিনটি প্রাথমিক এলাকায়. শীর্ষ সেখানে রেখে এ তথাকথিত পর্যায়. এই ভূত হয়. ডিফল্ট পরিচ্ছদ একটি বিড়াল. আর এই আয়তক্ষেত্রাকার জগতের মধ্যে আপনি আপ move-- করতে পারে, নিচে, বাম অধিকার এবং অন্য কিছু উপাদান. মাঝখানে এখানে আমাদের আরও আছে বা পাজল টুকরা আমাদের কেস ও প্যালেট, এবং বিভিন্ন রং বিভিন্ন জিনিষ মানে. আর যদি আপনার কাছাকাছি অকর্মা, আপনি দেখতে পাবেন loops এবং শর্ত ভালো জিনিস এবং ভেরিয়েবল এবং অন্যান্য উপাদান. এবং তারপর এখানে উপর স্ক্রিপ্ট এলাকা. আমি এখানেই ড্র্যাগ এবং ড্রপ করতে পারেন যারা পাজল টুকরা কিছু করার. সুতরাং আসুন এক ধরনের জিনিস না দেওয়া. আমাকে এগিয়ে যান and-- এবং আমি জানি এটা কোথায়. তাই আমি অবিলম্বে উপর ক্লিক করুন যাচ্ছি আমি জানি কিছু, হতে প্রস্তুত কিন্তু নির্দেশ এবং ক্লিক করে এবং প্রায় খোঁচা অবশ্যম্ভাবী. সুতরাং যখন সবুজ পতাকা ক্লিক করেন, আমি কি করতে চাও? আমি এই কাজ করতে যাচ্ছি. আমি এই রক্তবর্ণ ধাঁধা টানা যাচ্ছি টুকরা, দুই সেকেন্ডের জন্য হ্যালো বলে, এবং আমাকে জুম যাক. আর আমি এই পরিবর্তন করা যাচ্ছে না কি আমি এটা be-- করতে চান তাহলে হ্যালো দুই সেকেন্ডের জন্য বিশ্বের জরিমানা. এখন, আমি ক্লিক করুন যাচ্ছি সবুজ পতাকা, অথবা যদি আমি সত্যিই চাই, আমি পূর্ণ এটা পর্দা করতে পারেন এবং তারপর ফিরে আসা. এটা ঠিক রাখতে হবে এক উইন্ডোতে সবকিছু. সবুজ flag-- হ্যালো দুনিয়া. ঠিক আছে. সব যে আকর্ষণীয় নয়. তাই আমাকে এগিয়ে যান এবং এই কাজের জন্য. আমাকে অন্য একটি চেষ্টা করা যাক. সবুজ পতাকা আসুন clicked-- একটি শব্দ ভালো কিছু করতে. এবং লক্ষ্য করা যে এর বাইরে বিনামূল্যে আপনি পেতে জন্য বক্স একটি বিড়াল শব্দ, যেমন ডিফল্ট পরী হয়. সুতরাং এখন আমাকে এগিয়ে যান এবং এখন সবুজ পতাকা আঘাত. [Meowing] হুম. খুব ভাল. আমি প্রোগ্রামিং করছি. সুতরাং আমি কি করেছি? এই প্রোগ্রামের সমতূল্য. এটা অবশ্যই অতি সহজ. এটা সত্যিই যে অনেক সব গ্রহণ করা হয়নি প্রচেষ্টা ও এমআইটি, কাজ সবচেয়ে করেনি কিন্তু আমি একটি ফাংশন বলা আছে. আমি একটি ফাংশন ব্যবহার করেছি. আমি কিছু কর্ম করেছি, শুধু ব্যবহার যে এক রক্তবর্ণ ধাঁধা টুকরা. আচ্ছা আমি কি করতে চান তাহলে একটি সারিতে তিনটি meows পাবেন? আমাকে এগিয়ে যান এবং দুই এবং তিন করুক না. এবং লক্ষ্য করা যে যখন আপনি কাছাকাছি একটি ধাঁধা টুকরা উপর কার্সার রেখে দেখুন, একটু সাদা রেখা প্রদর্শিত সাজানোর magnetically, এবং এটা স্ন্যাপ করা হবে একসাথে যখন আপনি যাই. চলুন দেখা যাক কি এখানে. [Meowing] সেখানে একটি বাগ. আমি শুধুমাত্র এক মীআও শুনতে. কেন যে হতে পারে? হ্যা? হ্যা. আমরা সত্যিই এটা শোনে না, কিন্তু যে ভালো অনুভূতি. তারা সব একই সময়ে বাজানো করছি. কেন? আচ্ছা, কম্পিউটার ঠিক যাচ্ছে এটা আপনি কি বলুন না. তাই আপনি যদি বলে, খেলা শব্দ, , শব্দ খেলা শব্দ খেলা, কিন্তু আপনি পর্যন্ত খেলতে এটা বলবেন না আপনার কাজ সম্পন্ন হয়, যতক্ষণ না আপনার কাজ সম্পন্ন হয় খেলা, এটি দিয়ে উড়িয়ে দিতে যাচ্ছেন প্রোগ্রাম সত্যিই দ্রুত এবং শুধুমাত্র আপনি কি করতে এটা বলতে পারি. তাই আমি আসলে ঠিক করা প্রয়োজন উপায়ে একটি দম্পতি মধ্যে এই. আমি শুধু এই না, এই পরিত্রাণ পেতে পারে. আমাকে এই অন্যান্য ধাঁধা চেষ্টা করা যাক piece-- শব্দ মীআও পর্যন্ত সম্পন্ন, এবং তারপর তিনটি টেনে আনুন এই এবং প্লে ক্লিক করুন. [Meowing] এটা সত্যিই very-- নয় তোমাদেরকে খুব প্রাকৃতিক ধন্যবাদ. সুতরাং কেন যাক I-- না আমাকে এখানে নিয়ন্ত্রণ করা যেতে পারে. খুশী হলাম. এক সেকেন্ড অপেক্ষা করুন, এবং এখন আমাকে ফিরে যাই শব্দসমূহ, এবং খেলা শব্দ পর্যন্ত সম্পন্ন, এবং তারপর আমার এক সেকেন্ড অপেক্ষা করা যাক. এবং তারপর আমার যান এবং এক পেতে দিন আরো শব্দ, এবং এখানে আমরা যেতে. [Meowing] একটু বেশি প্রাকৃতিক, কিন্তু এই খুব দক্ষ হয় না. ভালো লেগেছে আমি উদাস পেয়ে ছিল, সব হবে সংক্ষেপে, আগে পিছে ক্লিক এবং সত্যিই আমার work-- অনুরূপ প্রায় কাছাকাছি কপি এবং পেস্ট. বস্তুত, যদি আমি নিয়ন্ত্রণ ক্লিক করা বা ডান ক্লিক করেন, আমি শুধু কপি এবং আটকানো পারতেন. একটি ভাল ব্যবহার করতে নির্মাণে কি হবে? আগে থেকে কি ধারণা? হ্যাঁ, তাই একটি লুপ. এবং সত্য, যদি আমরা কাছাকাছি poked, আমরা ঠিক যে খুঁজে পেতে পারে. আমাকে ইভেন্টস অথবা বরং কন্ট্রোল যাই. সুতরাং repeat-- আমি না এটা 10 বার হতে চাই. যে দ্রুত বিরক্তিকর পেতে যাচ্ছে. কিন্তু আমি তিনবার পুনরাবৃত্তি হবে. আমার শব্দ ফিরে যাই এবং শব্দ খেলা সম্পন্ন না হওয়া পর্যন্ত. আমাকে কন্ট্রোল ফিরে যাই এবং মাত্র এক সেকেন্ড অপেক্ষা করুন. এবং খেয়াল করুন, আপনি প্রতাপ মনে হয় এটা মাপসই করা হবে না, কিন্তু আবার যদি magnetically আপনি এটি দিন স্ন্যাপ জায়গায়, তা পূরণ করতে জন্মাবে. কি এটা এখন খেলবে? [Meowing] ঠিক আছে. খুশী হলাম. এবং এই কি বলা হবে হয় একটি প্রোগ্রাম সঠিক যে. এটা তিনবার মোটামুটি meowed স্বাভাবিকভাবেই, কিন্তু এটা ভাল ডিজাইন. আমি কম অতিরেক ব্যবহার করছি. আমি কপি এবং কিছু পেস্ট করা হয়নি. আমি শুধু একটি ভাল ধারণা ব্যবহৃত. এখন, এই এখনও সব নয় যে ভূত না করছেন সঙ্গে আকর্ষণীয় কিছু. সুতরাং আসুন অন্য কিছু পরিবর্তে কাজ করতে দিন. এর কিছু চিরকাল করুক না. এবং আপনি কি জানেন? মোশন আকর্ষণীয় বলে মনে হয়. তাকে 10 সরাতে এর দেওয়া আছে পদক্ষেপ এবং এখন খেলা আঘাত. ঠিক আছে. আচ্ছা আমরা যা করতে পারেন ড্র্যাগ ধরনের তাকে ফিরে, এবং তিনি এখনও চলমান কারণ সে চিরকাল করছে. সুতরাং লুপ করছে কি এটা করতে বলছে, কিন্তু এই সব যে আকর্ষণীয় নয়. চল এটা করি. আমাকে একটি কন্ট্রোল ব্লক যোগ করা যাক, এবং একটি ব্যবহার প্রথমবারের সেই অবস্থার. সুতরাং 10 ধাপের অগ্রসর হচ্ছে 10 বিন্দু, পর্দায় 10 পিক্সেল তারপর এটা এই প্রশ্ন জিজ্ঞাসা করতে যাচ্ছে. যদি কিছু সত্য হয় তাহলে কি ব্লকের ভিতরে কিছু. সুতরাং দেখা যাচ্ছে সেন্সিং একটি পুরো হয়েছে বুলিয়ান expressions-- গুচ্ছ হ্যাঁ এর প্রশ্নের কোন বা সত্য মিথ্যা আমাকে এই কাজের জন্য form--. touching-- যদি এবং তারপর আছে ডাউন মেনু এই একটু ড্রপ. আমি এটা parameterize পারেন. যদি স্পর্শ দিন edge-- এর যে ভালো কিছু করতে. তাই আপনি যদি edge-- স্পর্শ আমাকে গতি ফিরে যাই. আর কেনই বা না আমরা শুধু 180 ডিগ্রী ঘুরে? ঠিক আছে. তাই সব সময় প্রবেশ করুন, 10 ধাপ অগ্রসর. আপনি স্পর্শ করছি প্রান্ত, 180 ডিগ্রী কোনে ঘুরে. এবং যে প্রোগ্রাম শেষ নয় কারণ আপনি একটি আছেন চিরতরে ব্লক, তাই এটা আবার যেতে যাচ্ছে এবং আবার এবং আবার এবং আবার. সুতরাং আসুন দেখুন সেখানে কি ঘটছে. ঠিক আছে. একটু বগী, কিন্তু শীতল ধরনের. এবং আমরা এই জন্য কিছু নিরীহ জিনিস যোগ করতে পারেন যে সব না যে বুদ্ধিমত্তা মজাদার. কিন্তু আমরা যদি এই সামান্য আঘাত মাইক্রোফোন button-- সেকি. আমাকে এই পর্যন্ত পরিষ্কার করা যাক. আমাকে যেমন এই উন্নত করা যাক তারা টিভিতে বলবে. পরিষ্কার যে, সংরক্ষণ, এবং এখন স্ক্রিপ্ট পর্যন্ত যান. এবং এখন, আমাকে নিস্বন যাই. আমাকে এটা একটি নাম দিই. আমি এই সেকি ডাকবো. এখন শব্দ সেকি খেলা এবং খেলার. লক্ষ্য করুন এটা প্রদর্শিত হবে ডাউন মেনু একটু ড্রপ. দেখা যাক. [সেকি] [হাস্যময়] কিন্তু আমরা উড়ে টি তার পরিবর্তন করতে পারেন. আমরা দুইবার হিসাবে বিরক্তিকর হতে পারে. [সেকি] অথবা আমরা এটা মত করতে হলে একটি time-- এ 1,000 পদক্ষেপ ঠিক আছে. সুতরাং আমরা একা ছেড়ে যে এক চলুন. তাই আবার, blocks-- আমি বিল্ডিং সুপার সহজ কিছু দিয়ে শুরু, এবং তারপর আমি একটি বৈশিষ্ট্য যোগ করা, একটি বৈশিষ্ট্য যোগ করা, একটি বৈশিষ্ট্য যোগ করা. এবং আমি আর চিন্তা করতে হবে কিভাবে সেই বৈশিষ্ট্যগুলির প্রথম যেমন আমি অবিরত বাস্তবায়িত হয়েছে উপরে কিছু লেয়ারে. তাই আসলে, আমাকে এখানে অন্য এক কাজ করা যাক. আমাকে এগিয়ে যান এবং একটি ফাইল খুলি যে আমি অগ্রিম আনা, ভেড়া বলা. সুতরাং এটি একটি কিছুটা ভিন্ন হয়েছে অক্ষর যে ভালো দেখায়. আর আমাকে দেখতে দিন যদি আমি পারি না একটি পাল্টা ব্যবহার করে কিছু না এই একটি তথাকথিত পরিবর্তনশীল case--. আমি এগিয়ে এবং Events-- অধীনে যেতে যাচ্ছি আমাকে একটি সবুজ পতাকা ক্লিক করা যাক. অতঃপর আমার সম্পর্কে যা তথ্য, যা আমি জানি যাই ঠিক আগে প্রায় বাজানো থেকে, যেখানে ভেরিয়েবল. এবং আমি এগিয়ে যান এবং এই টেনে নিয়ে যাচ্ছে. সুতরাং একটি পরিবর্তনশীল নামক পাল্টা, এবং আমি শূন্য থেকে এটি আরম্ভ করতে যাচ্ছি. আমি এটা anything-- এক্স কল করতে পারেন অথবা y অথবা z-- কিন্তু প্রোগ্রামিং, একটি শব্দার্থগতভাবে মধ্যে কিছু কলিং দরকারী উপায়, পাল্টা মত, যে বর্ণনা কি এটা, এটা একটি ব্যাপার অনেক সহজ আপনার কোড পরে পড়তে. আমাকে এগিয়ে যান এবং পেতে চলুন শুরু করা যাক একটি চিরকালের এখানে ব্লক. আর আমাকে কেমন লাগে যাই পাতা এবং একটি বলুন ব্লক না. কিন্তু কি ভেরিয়েবল সম্পর্কে শীতল আমি শুধু কিছু টাইপ করতে হবে না মত হ্যালো দুনিয়া, যা আমরা ইতিমধ্যে করেছি কাজ, আমি বদলে ডাটা যেতে পারেন এবং আমার পরিবর্তনশীল টেনে নিয়ে যাবে, এমনকি যদিও আকৃতি নেই বেশ মত এটি মাপসই করা উচিত চেহারা, তা পূরণ করতে জন্মাবে. আর আমি শুধু এক জন্য পাল্টা বলবো দ্বিতীয় spoiler-- তিনি গণনা যাচ্ছে. আমরা এক দ্বিতীয় জন্য এটা বলবো. তারপর আমি যেতে চলেছি এবং তাকে এক দ্বিতীয় জন্য অপেক্ষা করুন, তাই এটি খুব দ্রুত আপ গণনা করা হয় না. এবং তারপর সর্বশেষে, পাল্টা পরিবর্তন অন্য কথায় one-- দ্বারা, এক পাল্টা বাড়ায় অতিরিক্ত মূল্য এবং এই চিরতরে না. তাই মেষ খুব, মত একটি প্রোগ্রামার, 0 থেকে বড়, মোট ছাত্র. আর আমরা যদি দীর্ঘ যথেষ্ট অপেক্ষা করুন, তিনি এই চিরতরে না হবে. কিন্তু যে ঠিক সত্য না, কারণ আসলে, যেমন আমরা এক সপ্তাহের মধ্যে আবিষ্কার করব, ইন্টিজার এবং কম্পিউটারের আরো সাধারণভাবে, টেকনিক্যালি শুধুমাত্র একটি finite-- ভাল আছে, বরং কম্পিউটার, যখন তারা পূর্ণসংখ্যার প্রতিনিধিত্ব, শুধুমাত্র একটি বিট সসীম সংখ্যা আছে. সেখানে যেসব লাইট বাল্ব শুধুমাত্র তাই উচ্চ গণনা করতে পারেন আগে আপনি লাইট বাল্ব ফুরিয়েছে. এবং একটি কম্পিউটার খুব, শুধুমাত্র তাই অনেক স্মৃতি রয়েছে, শুধুমাত্র তাই অনেক ট্রানজিস্টর হয়েছে, তাই এটি শুধুমাত্র তাই উচ্চ গণনা করতে পারেন. সুতরাং এটা যে ভেড়া সক্রিয় আউট, আমি মনে করি, 2 বিলিয়ন গণনা করতে পারেন অথবা কিছু প্রশংসনীয় বড়. সুতরাং আমরা যাচ্ছেন না এই ঘটতে জন্য অপেক্ষা করুন. কিন্তু শেষ পর্যন্ত কিছু বাগ ঘটবে যে কিছু খুব বাস্তব জগতে থাকতে পারে গার্গল. কিন্তু মেষরা তার পরেও, যে শুধু একটি পরিবর্তনশীল প্রবর্তন. এর এগিয়ে যান এবং খুলুন কিছু আমি আগাম তৈরি এখানে বেসরকারি Cat-- বলা এখানে ওভার বিড়াল পোষা. এবং এখানে লক্ষ্য এটা কয়েক এর ব্লক, কিন্তু যখন সবুজ পতাকা ক্লিক করেন, সব সময় নিম্নলিখিত করছেন. আপনি মাউস স্পর্শ করছি পয়েন্টার তাই পর্দায় কার্সার arrow-- খেলার শব্দ মীআও এবং তারপর দুই সেকেন্ড অপেক্ষা করুন. আর শুধু এই চিরতরে না. শুধু ক্রমাগত অপেক্ষা পয়েন্টার যদি দেখতে বিড়াল পয়েন্টার স্পর্শ করা হয়. তাই আমি খেলা আঘাত. কিছুই ঘটছে. কিন্তু আমি বিড়াল উপর কার্সার সরানোর জন্য, [Meowing] আর আমি যদি এটা সরে না বিড়াল আর petting. তাই কিছু শর্তসাপেক্ষ যুক্তিবিজ্ঞান একটি লুপ এর ভিতরে নেস্টেড. কিভাবে এই উদাহরণটা, ইচ্ছাকৃতভাবে বলা বিড়াল পোষা না? কি এই কাজ করতে যাচ্ছে? [Meowing] আপনি কেন পোষা বিড়াল করা উচিত নয়? [Meowing] ঠিক আছে. সুতরাং এই একটি অন্যথায় যদি একটি উদাহরণ. সিদ্ধান্তটি বিন্দু এবং কারণ এটি লুপ বসা, তারা উভয় চেক পেয়ে থাকেন. এটা কি সত্য? এটা কি সত্য? এটা কি সত্য? এটা কি সত্য? এবং অবশেষে, এক প্রয়োগ করতে সক্ষম হবেন যাচ্ছে এবং যাতে আপনি পারেন মীআও বা শুনতে যে ক্ষেত্রে সিংহের গর্জন. আচ্ছা, এর একটি সামান্য আরো অভিনব এক না দেওয়া আমি অগ্রিম থ্রেড too-- তৈরি করে. সুতরাং একটি থ্রেড শুধু এক জিনিস যে একটি কম্পিউটার নির্বাচন করতে পারবেন. সুতরাং একটি মাল্টি থ্রেডেড প্রোগ্রাম একটি প্রোগ্রাম যে একবারে একাধিক জিনিস করতে পারেন. আমি এসব দৃষ্টান্ত সব দূর পর্যন্ত ছিল মাত্র এক স্ক্রিপ্ট, তাই speak-- থেকে এক প্রোগ্রাম এখানে এই পর্যন্ত মত. কিন্তু লক্ষ্য করা এই প্রোগ্রাম আছে দুই sprites, দুটি অক্ষর. এক একটি পাখি. এক একটি বিড়াল. এবং লক্ষ্য করা যখন আমি এই নিচে ক্লিক বাম, তারা প্রতিটি তাদের নিজস্ব বর্ণমালা আছে বা প্রোগ্রাম তাদের সঙ্গে যুক্ত. আর যারা উভয় প্রোগ্রাম, নোটিশ, সূচনা যখন সবুজ পতাকা clicked-- সঙ্গে এর cat-- তাকান যখন সবুজ পতাকা ক্লিক. তাই প্রকৃতপক্ষে, যখন আমি এখন প্লে আঘাত, দুটি জিনিস একবারে ঘটতে যাচ্ছে. বিড়াল এবং পাখি উভয় একযোগে কাজ করতে যাচ্ছি এই প্রভাব তৈরি করতে. এবং আপনি কল্পনা করা হতে পারে কি ঘটছে. আছে একটি লুপ এবং পাখি এবং বিড়াল একটি লুপ আছে. পাখি ঠিক মত প্রাণচঞ্চল হয় আমি আগে যখন আমি সেকি বলেছিলেন. কিন্তু বিড়াল পরিষ্কারভাবে একটি সুবিধা রয়েছে. আরেকটা সেন্সিং ব্লক যে ইচ্ছাকৃতভাবে বিড়াল স্থানটিকে এখানে এই ক্ষেত্রে পাখি. সুতরাং আমরা সরাইয়া জ্বালাতন পারে, খুঁজছেন দ্বারা ঐ ব্লক মাধ্যমে, কি ঘটছে. কিন্তু এখানে মূল উপাদান এক. পাখি, যাতে এই গেমটি নয় সম্পূর্ণরূপে boring-- বা এই animation-- একটি র্যান্ডম দিক আরম্ভ করা হয়. আর কম্পিউটার অবচয় হয় 90 এবং 180 এর মধ্যে একটি সংখ্যা মূলত, যাতে এটি একটি সামান্য বিভিন্ন অ্যানিমেশন প্রতিটি সময়. এবং তারপর এখানে, যদি লক্ষ্য বিড়াল পাখি স্পর্শ করা হয়, তারপর গর্জন sound-- সিংহ চার খেলা. কিন্তু এদিকে পাখির মধ্যে প্যালেট, আমরা এই আছে. সব সময় প্রবেশ করুন, বিড়াল স্পর্শ না করে, মাত্র তিনটি পদক্ষেপ চলন্ত রাখা. এবং তারপর এখানে আরেকটি ধাঁধা টুকরা. আপনি উত্তেজিত হন, তাহলে বড়াই. তাই পাখি শুধু ধরনের হয় তার নিজস্ব ব্যবসা দেখাশোনা করতেন, শুধু উড়ছি এবং প্রাণচঞ্চল, এবং এটি সত্যিই আছে বিড়াল যে শর্তাধীন লজিক ছিল তা নির্ধারণ করার জন্য পাখি ধরা ছিল. ঠিক আছে. সুতরাং আসুন এখানে অন্য এক কাজ করা যাক, এই এক হাই হাই হাই বলা হচ্ছে. এবং এখানে এই এক মাত্র সঙ্গী একটি চিরকালের লুপ এই. কিন্তু বিজ্ঞপ্তি কিভাবে আমরা আটকাব এই খুব বিরক্তিকর প্রোগ্রাম? স্পেস বার চাপুন. কারণ যদি আমি যে কি, বাঁ হাত প্রোগ্রাম লক্ষ্য এটি ক্রমাগত এর listening-- মূল স্থান প্রেস. যদি স্পেস বার টেপা, এবং তাই যদি, কী করে? এটি একটি খুব সাধারণ কৌশল আছে. এটি একটি পরিবর্তনশীল কিছু মান সমান নির্ধারণ করা হবে. কিন্তু এটা যে মান toggles. [? তাই চেহারা?] shape-- আমি উপর ভিত্তি করে একটি পরিবর্তনশীল আছে আমি অগ্রিম লিখেছে নামক নিঃশব্দ, যা শুধু yes অথবা no বলছেন. শব্দ নীরব বা নয়? সত্য অথবা মিথ্যা? এবং খেয়াল করুন, আমি যদি আপাততঃ বলছি নিঃশব্দ শূন্য হয়, তবে এক পরিবর্তন, আর শূন্য থেকে এটা অনুচ্চারিত সেট. তাই শুধু শূন্য থেকে এক মান টুসকি. আমি done-- এটি পরিবর্তন হতে পারে তিন দুই এবং তিন থেকে দুই থেকে অথবা চার থেকে পাঁচ বা ছয় চার. কিন্তু এটা কোন ব্যাপার না কি সংখ্যায় আমি ব্যবহার, যতদিন রাখা এটা বিপরীত পরিবর্তন. আর সবচেয়ে কোন প্রোগ্রামার মাত্র would শূন্য এবং one-- মিথ্যা এবং সত্য চয়ন, বন্ধ এবং on-- এই প্রতিনিধিত্ব করতে. আর এই এখনও চলছে. তাহলে আমি স্পেস বার আবার আঘাত [সিল শব্দসমূহ] প্রোগ্রাম এখনও চলছে. কারণ এই অন্যান্য স্ক্রিপ্টের যে বলেন, সব সময় প্রবেশ করুন নিম্নলিখিত কাজগুলো. তাহলে নিঃশব্দ পরিবর্তনশীল সমান শূন্য তাই আপনাকে নিঃশব্দ করছি না যুক্তি হল যদি এটা মিথ্যা অথবা কোন, তারপর শব্দ খেলা, কারণ আপনাকে নিঃশব্দ করছি না. আপনি একটি শব্দ খেলা উচিত এবং তারপর মনে হাই হাই হাই দুই সেকেন্ডের জন্য এবং তারপর অপেক্ষা করুন, সেই অনুসারে কাজ করে আবার এবং আবার এবং আবার. আর তাই এই ভাবে আমরা জন্য একটি উপায় আছে প্রোগ্রাম যোগাযোগ করার জন্য মানুষ চাচ্ছি. এবং তারা সফল হবে না অন্যদের মতো তারিখের করা. বস্তুত, around-- খোঁচা কোন শ্লেষ intended-- কেউ এর মধ্যে বিপুল পরিমাণ ব্যয় ইন্টারনেট বাস্তবায়নে সময় ভূত PokemonGo. এটা এমনকি আপনি geolocates কেমব্রিজ বা Allston এখানে. তাই আপনি যদি খুব কি মানুষ দেখতে চাই নির্বাচন করতে পারবেন আপাততঃ খুব অভিনব মেনু. এখানে ক্লিক করুন. এই এখন আমার তীরচিহ্নগুলি সঙ্গে আমার হয়. আমি এই পরে যেতে যাচ্ছি. ক্লিক. আর এখন আপনি PokeBall ক্লিক করুন. আমি বলতে চাচ্ছি, আমি মনে করি তুমি PokeBall ক্লিক অনুমিত. ঠিক আছে. তাই আমি যে করেনি. আমি এখানে যেতে পারেন. আর এই ব্যক্তি আরো কিছু বাস্তবায়িত এখানে তিনটি PokeBalls উপর PokeBalls. আমরা এই একটি লিঙ্ক পোস্ট করব অনলাইনে আপনি খেলতে পারেন. কিন্তু লক্ষ্য সেখানে শুধু কিছু মৌলিক বিল্ডিং ব্লক. এটি একটি অনেক কল্পনাকারী দেখায়, এবং তা হয়ে যায়. এই চিত্তাকর্ষক এবং আরো আমরা সাধারণত তুলনায় আশা, সমস্যার জন্য অবশ্যই শূন্য সেট. আমি কোন ধারণা কতদিন আছে এই ব্যক্তি অতিবাহিত অনলাইন. কিন্তু এটা সব শুধু একটি লুপ. সেখানে একটি শব্দ বাজানো হবে. সেখানে লুপ কিছু ধরনের কিনা আমি শোনা আপ তীর বা নিচে আঘাত তীর বা বাম এবং ডান, এবং তারপর, তাই যদি, এটি সরানোর এটা পিক্সেল কিছু সংখ্যা. এবং তারপর যদি আমি উপর ক্লিক অন্য পরী, আছে যদি শর্ত আছে কিছু. হ্যা, এই খুব তীব্র হচ্ছে. আমরা থামাতে চলুন. এটা সব মৌলিক বিল্ডিং ব্লক. অন্য কোন অন্যান্য উপাদানগুলো বেশী আমরা ইতিমধ্যে দিকে তাকিয়ে থাকেন. এবং এখনো এখানে, আমাকে করতে দাও উদাহরণ কয়েক এক চূড়ান্ত সেট খুব যে একটি ছবি রঙে আপনি এখানে কি করতে পারি. এখানে একটি খুব সহজ প্রোগ্রাম যে শুধু আপাততঃ কাশি, কাশি, কাশির করে. এবং শুধুমাত্র উপর ভিত্তি করে কি আমরা এ পর্যন্ত লাগছিল করেছি, যেখানে সুস্পষ্ট উন্নতির জন্য সুযোগ. এই প্রোগ্রামটি সঠিক. এটা তিনবার কাশি, যা আমি কি উদ্দেশ্যে. কিন্তু এটা দুর্বল বাস্তবায়িত হচ্ছে. এটা খারাপভাবে ডিজাইন. কেন? হ্যা. এটা একটি লুপ না. এবং এটা এত না এটি একটি লুপ না, এটা সেখানে অতিরেক অনেক যে. সেখানে কপি করা হয় এবং আটকানো কোড, তাই কথা বলতে. এবং সমাধান সম্ভবত প্রকৃতপক্ষে একটি লুপ. তাই আমাকে এগিয়ে যান এবং যে উপর উন্নত. আর আমি এখানে এই টেনে নিয়ে যাচ্ছি. আমাকে এগিয়ে যান এবং একটি পুনরাবৃত্ত করা যাক ব্লক, তিন এই পরিবর্তন. আমি দূরে নিক্ষেপ করতে যাচ্ছি ঐ ব্লক কিছু. এবং আপনি এটি বেশ স্বজ্ঞাত বিজ্ঞপ্তি পাবেন. আপনি ড্র্যাগ এবং ড্রপ এবং কিছু প্রদর্শিত হবে এবং অবশেষে অদৃশ্য. আর আমি এখানে এই টেনে আনতে পারেন, এবং এখন আমি একটি ক্লিনার সংস্করণ এখনো আছে. কিন্তু আপনি কি জানেন? এই সুযোগ abstraction-- জন্য এখন নতুন শব্দভান্ডার সংজ্ঞায়িত করতে শুরু করার জন্য যে এমআইটি কহা নি. সেখানে অপেক্ষা করুন এবং পুনরাবৃত্তি হচ্ছে এবং সব সময় প্রবেশ করুন এবং যদি, কিন্তু কি যদি আমি চাই পরিচয় করিয়ে একটি ব্লক হিসাবে শব্দ কাশি? আমি যদি একটি ধাঁধা টুকরা করতে চান জীবনে যার উদ্দেশ্য কাশি হয়? ভাল, এর এই সংস্করণ তাকান এখানে, যা আমি অনুসরণ করে দিলাম. Magically, আমি সৃষ্টি করেছি এই ধাঁধা এখানে টুকরা, যা স্ক্র্যাচ আপনাকে যা করতে পারবেন. এবং প্রকৃতপক্ষে সি এবং পাইথন এবং জাভাস্ক্রিপ্ট হয় আপনি এই হিসাবে ভাল করতে অনুমতি দিতে যাচ্ছে. আপনি আপনার নিজস্ব তৈরি করতে পারেন টুকরা যে কল আপনি কি আপনি চান. এই ক্ষেত্রে, কাশি মতানুযায়ী একটি যুক্তিসঙ্গত সংজ্ঞা মত. এবং তারপর এই টুকরা নিচে সঙ্গে এখানে আপনি নির্ধারণ করতে পারেন এটা কি মানে. আমি টেনে থেকে বাদ এই প্যালেট এখানে আরো এই বিশাল রক্তবর্ণ blocks-- ব্লক, যেখানে আমি কাশি টাইপ আমার নতুন ধাঁধা টুকরা নামের. এবং তারপর আমি কোন সময় বলছে করছি একটি ব্যবহারকারী এই নতুন কাশি পাজল টুকরা কল, একটি বলে এবং একটি অপেক্ষার না. এবং তাই আপ এখানে আমার পুনরাবৃত্ত ব্লক এ, আমি শুধু তিনবার কাশি পারেন. আমি তর্ক করবে, বিশেষ করে এখন যদি আপনি এই বিস্তারিত আড়াল. যারা বজায় রাখে কিভাবে কাশি বাস্তবায়িত হয়? আমি একটি যেমন যত্নশীল প্রোগ্রামার যে আমি কাশি পারেন. আমি পরোয়া করি না কিভাবে বলব বাস্তবায়িত হয়. আমি শুধু যে যত্ন বিড়াল কিছু বলতে পারব না. আমি বিমূর্ত দূরে যে বিস্তারিত এবং শুধুমাত্র কি এখানে পর্দায় ফোকাস. কিন্তু আমি এই এক ধাপ এগিয়ে নিতে পারে. যে এখানে লক্ষ্য করুন, আমি আছে লুপ তিনবার বাস্তবায়িত. কিন্তু কি এর পরিবর্তে আমি এই সংস্করণ দখল? আর যদি পরিবর্তে এখানে এই সংস্করণে, আমি শুধু আমার ধাঁধা টুকরা পরিবর্তন নিতে একটি যুক্তি এবং ইনপুট নিজেই বললেন? এবং যে ইনপুট হতে পারে তিনটি মত একটি সংখ্যা. সুতরাং এখন, যদি আমি একটি প্রোগ্রাম লিখছি এবং আমি বিড়াল কাশি করতে চাই, আমি আসলে ধাঁধা বলতে পারেন টুকরা কতবার কাশি, কারণ এখানে নীচে, একটি কল্পনাকারী এই কাস্টম পাজল টুকরা সংস্করণ আমাকে যে উল্লেখ দেয় কাশি আসলে লাগে একটি ইনপুট এই মত একটি আর্গুমেন্ট গ্রহণ করা. এবং আপনি কি জানেন? হয়তো আমি বুঝতে পারি, এক মিনিট অপেক্ষা করুন. কাশি same-- হয় এটি মৌলিকভাবে এর হাঁচি হিসাবে একই ধারণা. এটা শুধু একটি ভিন্ন পর্দায় শব্দ. আমি বিমূর্ত দূরে পারেন আরও এবং বাস্তবায়ন একটি এই চূড়ান্ত সংস্করণ কাশি, যা প্রথম নজরে পথ আরও জটিল খুঁজছেন. কিন্তু লক্ষ্য করা আমি কি কাজ করেছি. আমি এখন আছে genericized generalized-- এই ধাঁধা টুকরা সত্যিই শব্দ এন বার বলে বলা হবে. এবং এখন আমি দুটি নতুন পাজল টুকরা আছে নিচে এখানে কাশি এন বার সংজ্ঞায়িত. আর কাশি ফাংশন কি কাজ করে? আমার কাস্টম পাজল টুকরা কী কাজ করে? এটা শুধু বলতে ব্লক কল, শব্দ আমি বলতে চাই যে ক্ষণস্থায়ী, সংখ্যা প্রসঙ্গে সময়ের আমি বলতে চাই. কারন এখন আমি বাস্তবায়ন করতে পারে কেবল achoo বলছে দ্বারা হাঁচি, এই ক্ষেত্রে, সময়ের কিছু সংখ্যা. এবং তাই আমি layering করছি এবং layering. এবং আবার, কী এখানে নেই কিভাবে আমি এটা বাস্তবায়ন, কিন্তু সত্য যে যদি আমি শুধু আক্ষরিক পর্দা বন্ধ এই স্থানান্তর, দেখুন কিভাবে সহজ না হলে প্রশংসনীয় আমার প্রোগ্রামটি এখন দেখায়. এটা কি কারণ বলেছেন, আমি আনমনা করেছি দূরে কি যে কালো বক্সের ভিতরে হয়. এটা এখানে একটি রক্তবর্ণ বক্স হতে হবে, কিন্তু আমি দূরে বাধা থাকেন ভেতরে কী কারণ আমি পরোয়া করি না এটা কিভাবে কাজ করে. আমি এইমাত্র যে এটি কাজ করে যত্ন. এবং প্রকৃতপক্ষে, সমস্যা সেট শূন্য, এই ঠিক হল ধারণা প্রলেপের ধরনের আপনি পাবেন এক্সপ্লোর করার সুযোগ আছে. এটা ঠিক করার সুযোগ সমস্যা সমাধানে কৌশল প্রয়োগ, কি সম্ভবত একটি যাও অপরিচিত পরিবেশে. এবং কিনা আপনি প্রোগ্রাম না করে থাকেন সামনে বা আগে থেকে প্রোগ্রাম করা, আপনি সেখানে আছে খুঁজে পাবেন সামান্য কিছু সবার জন্য এই পরিবেশে. আর সমস্যা সঙ্গে সেট এক সপ্তাহের সময় এক, আমরা মনোযোগ নিবদ্ধ করে রূপান্তর করা হবে একটি উচ্চ স্তরের ভাষা বলা সি বা বরং কম স্তরের ভাষা বলা সি এমনকি আরো শক্তিশালী, এটা যদিও একটু প্রথম নজরে আরো রহস্যপূর্ণ. আর তুমি আজকের TL প্রতি উপলব্ধি করব: ডিআর, এই সমস্যা সেট একটি খাটো আছে ভবিষ্যতে বেশী সময় জানালা, কেবল কারণ আপনি এটা মোটামুটি হবে প্রবেশযোগ্য. আর যদি চিন্তা করবেন না আপনি বর্গ দেরী যোগ করুন. আমরা আগে দীর্ঘ যে সুরাহা করব. আর সামনে আমরা পিষ্টক জন্য স্থগিত রাখা, আসুন ঠিক দুই মিনিট বর্ণন সঙ্গে শেষ কি আপনি CS50 এখানে awaits এ. [সঙ্গীত বাজাচ্ছি] ঠিক আছে. এটি CS50 জন্য. আমাদের আবার দেখা হবে. পিষ্টক এখন পরিবেশিত হয়. [সঙ্গীত বাজাচ্ছি] স্পিকার 17: আপনি শুনেছেন একটি সময় বিশ্রাম নেওয়ার প্রধান? স্পিকার 18: সম্ভবত আছে ফণা অধীন আরো.