[সঙ্গীত বাজানো] Zamyla Chan: বরং আপনি পেতে চান 10 মিলিয়ন ডলার এখন ডান বা গ্রহণ পেনিসমূহ মাসের প্রতি দিন, যেখানে প্রতিটি পরবর্তী দিন, আপনি পাবেন আপনি পেনিসমূহ পরিমাণ দ্বিগুণ আগের দিন পেয়েছি? পেনিসমূহ, আমরা চলুন প্রমাণ করা কেন উচিত স্পষ্টভাবে পেনিসমূহ নিতে. - Pennies.c-আপনার কাজের লিখতে হয় প্রথম কিভাবে ব্যবহারকারী জানতে চেয়ে একটি প্রোগ্রাম সেখানে অনেক দিন মাস হয় এবং তাহলে, ব্যবহারকারী কিভাবে অনেক পেনিসমূহ জিজ্ঞেস করল প্রথম দিনে পাবেন. প্রোগ্রামটি তারপর নিরূপণ করা উচিত ব্যবহারকারী হবে যে পরিমাণ শেষে জমা মাস এবং এটি প্রদর্শন করা হয়. আমরা এই প্রোগ্রাম বিরতি পর্যন্ত করতে পারেন কাজগুলো একটি দম্পতি মধ্যে. আমরা নির্দেশের জন্য অপেক্ষা করতে হবে একাধিক ব্যবহারকারী ইনপুট - দিন এবং মাস, এবং পেনিসমূহ প্রথম দিনে. আমরা ট্র্যাক রাখতে প্রয়োজন কতটা টাকা ব্যবহারকারী প্রতি আছে এবং এটি আপডেট দিন, পরিমাণ দ্বিত্ব তারা প্রাপ্ত পেনিসমূহ. এবং পরিশেষে, আমরা তাদের মুদ্রণ ডলার অন্তিম মোট. প্রথম সাজসরঁজাম ব্যবহারকারীর ইনপুট চলুন শুরু করা যাক. আমি apples.c খুলুন যাচ্ছি পুলিশ যে ছোট প্রোগ্রাম ইনপুট এবং আউটপুট সঙ্গে. এখানে উপরের, আমি কিছু অন্তর্ভুক্ত করেছেন - আমি যে প্রয়োজন লাইব্রেরি CS50 এর লাইব্রেরি এবং একটি প্রমিত ইনপুট / আউটপুট লাইব্রেরি. আমি ব্যবহার করে একটি প্রম্পট প্রিন্ট থেকে printf, ফাংশন স্ট্যান্ডার্ড ইনপুট / আউটপুট লাইব্রেরি. কিন্তু ব্যবহারকারীর অনুরোধ প্রকৃত এই সঙ্গে পরের লাইন এরকম CS50 লাইব্রেরি মধ্যে GetInt ফাংশন. GetInt ব্যবহারকারীর কাছ থেকে ইনপুট এবং গ্রহণ ইনপুট একটি পূর্ণসংখ্যা নিশ্চিত করে. তাই আমি পূর্ণসংখ্যা মধ্যে ব্যবহারকারীর ইনপুট সংরক্ষণ আমি থেকে 1 বিয়োগ করা, এবং তারপর আমি যদি নতুন মান আউট প্রিন্ট করা হবে. ব্যবহার করে apples.c কম্পাইল করার পর কমান্ড "আপেল করতে," আমি একটি আছে এক্সিকিউটেবল ফাইল আপেল. আমি ইনপুট 1, যে করব চলমান. প্রোগ্রাম আমাকে বলে যে আমি বামে 0 আপেল আছে. তাই প্রত্যাশা অনুযায়ী কাজ করেছে. সুতরাং এর আবার এই চালানো যাক নেতিবাচক এবং ইনপুট 1. এখন, আপেল একটি নেতিবাচক পরিমাণ জমিদারি সত্যিই জানার জন্য, কিন্তু না নেতিবাচক কারণ প্রোগ্রাম, এটি গ্রহণ করা হয় 1, ভাল, এটি একটি পূর্ণসংখ্যা. এবং এখন প্রোগ্রাম বা দৈত্য প্রোগ্রামের একটি নেতিবাচক eats ভিতরে আপেল, এবং এখন আমি আছে নেতিবাচক 2 আপেল. এইচএম, যাতে এক পাঠ - এর যদিও GetInt ফাংশন এবং সম্পর্কিত GetFlow মত ফাংশন, অথবা পেতে ডান ডাটা টাইপ GetString, আপনি ইনপুট তোলে নিশ্চিত করুন যে আপনি আছে আপনার প্রোগ্রামের জন্য অর্থে. পেনিসমূহ, এটা ঠিক একটি প্রম্পট করবে না একটি পূর্ণসংখ্যা জন্য, আপনি করতে প্রয়োজন হবে কি নিশ্চিত ব্যবহারকারী ইনপুট একটি পূর্ণসংখ্যা যে যে প্রসঙ্গ দেওয়া জানার জন্য. মাস শুধুমাত্র, 28 থাকতে পারে 29, 30, বা 31 দিন. আমরা ক্রমাগত দাবী করতে চান একটি বৈধ পূর্ণসংখ্যা. তারা ইনপুট আমাদের একটি পূর্ণসংখ্যা বাইরে যদি গ্রহণযোগ্য সীমার, আমরা তাদের অনুরোধ জানানো হবে আবার এবং আবার, যতক্ষণ না আপনি আমাদের একটি বৈধ পূর্ণসংখ্যা দিতে. "যতক্ষণ না পুনরাবৃত্তি" প্রত্যাহার ভূত ব্লক? আপনি যদি অনুরূপ কনস্ট্রাক্ট করতে পারেন সি একটি "সময়" লুপ ব্যবহার করে বা "কাজ করার সময়" লুপ. যখন লুপ গঠন একটি শর্ত আছে জন্য পূরণ করা আবশ্যক চালানো লুপ শরীরের. এটি একটি সামান্য অনুরূপ হওয়া উচিত শর্ত ঠিক মত কারণ কোণ সঙ্গে ভূত ব্লকে এবং বন্ধনী মধ্যে যায় "সময়" লুপ. সুতরাং যে শর্ত কিনা চেক করবে পূর্ণসংখ্যা মধ্যে উপযুক্ত সীমার. আপনি পূর্ণসংখ্যা ব্যবহার GetInt সূচিত করতে পারে এবং তারপর আপনার "যখন" চালানো লুপ, পুনরায় দ্রুত ও প্রিন্টিং নির্দেশাবলী, যখন ইনপুট বৈধ নয়. সঠিক ব্যবহারকারীর ইনপুট নিশ্চিত করার আরেকটি উপায় , একটি "কাজ করার সময়" লুপ ব্যবহার করে না যা যখন একটি লুপ অনুরূপ. "কাজ করার সময়" লুপ কোড executes শরীরের ওগুলো এবং তারপর চেক ভিতরে শর্ত পূরণ হোক বা না হোক. এই ব্যবহারকারীর ইনপুট পাওয়ার জন্য দরকারী আপনি প্রয়োজন জানেন যে কারণ অন্তত একবার তাদের অনুরোধ জানানো হয়েছে. শর্ত পূরণ না করা হয়, তাহলে প্রোগ্রাম পরে লাইন চালানো হবে আপনার "কাজ করার সময়" লুপ. শর্ত যদিও পূরণ করা হয়, লুপ পুনরাবৃত্তি হবে ব্যবহারকারীর বৈধতা যাচাই করার জন্য একটি "কাজ করার সময়" লুপ ইনপুট ভালো কিছু দেখবে. আমি একটি পরিবর্তনশীল N, GetInt ডিক্লেয়ার, এবং N বৈধ না হওয়া পর্যন্ত তারপর পুনরাবৃত্তি. এবং এই প্রক্রিয়া, আমি ব্যাখ্যা করা, ব্যবহার করা হয় পূর্ণসংখ্যা-ডাটা টাইপ, যা আপনি মাসের দিনের জন্য ব্যবহার করব. কিন্তু আমরা জানি যে পেনিসমূহ সংখ্যা যাতে, তাই দ্রুত পাইল আপ হবে বৃহত্তর সংখ্যার সংরক্ষণ, ডাটা টাইপ ব্যবহার LongLong, কিন্তু একই মনে রাখবেন বৈধতা নীতি প্রয়োগ করা হয়. সন্ত্রস্ত, তাই একবার আমরা দুটি বৈধ আছে ব্যবহারকারীর কাছ থেকে ইনপুট - মাসে দিন এবং পেনিসমূহ প্রথম দিন - আমরা পরের সম্মুখের দিকে অগ্রসর না হতে পারেন কর্মসূচির অংশ. প্রথম দিন, ব্যবহারকারীর সঙ্গে শুরু হয় তারা একটি নির্দিষ্ট যদিও বহু পেনিসমূহ এবং পেনিসমূহ পরিমাণ যে তারা পরের দিন পাবেন দ্বিগুণ করা হয়. তাই এটি রাখা ইন্দ্রিয় তোলে এই দুই পরিমাণে - ব্যবহারকারী আছে এবং কিভাবে কত টাকা অনেক পেনিসমূহ তারা দেওয়া হবে. এখন, 28 থেকে 31 দিনের জন্য কিছু করছেন পুনরাবৃত্তিমূলক, তাই এর একটি "জন্য" ব্যবহার করা যাক দিনের পুনরুক্তি উপর লুপ মাস, মোট এবং Penny আপডেট প্রত্যেক সময় পরিমাণ. লুপ সিনট্যাক্স রয়েছে "জন্য" নিম্নলিখিত - একটি আরম্ভের, একটি শর্ত, এবং একটি আপডেট. আপনার "জন্য" লুপ আরম্ভ হবে একটি পরিবর্তনশীল, যখন এটি প্রথম লুপ প্রবেশ করে. শর্ত পূরণ না করা হলে, শরীর লুপ চালানো হবে. এর পরে হালনাগাদ চালানো হবে. শর্ত এখনও পূরণ করা হয়, লুপ চালানো এবং আপডেট, এবং যতদিন আপনার শর্ত হিসাবে, পুনরাবৃত্তি সত্য মূল্যায়ণ করা হয়. এখানে একটি ভাগ যে একটি "জন্য" লুপ এর 2 10 বার মোট দ্বারা পূর্ণসংখ্যা পি. আমি পূর্ণসংখ্যা P ঘোষণা কিভাবে উল্লেখ্য আমার "জন্য" লুপ বাইরে, যাতে পূর্ণসংখ্যা অ্যাক্সেসযোগ্য হতে পারে "জন্য" লুপ বাইরে. মাস অতিক্রান্ত হওয়ার পরে, এটা সময় ব্যবহারকারী বলুন কত টাকা তারা অর্জিত করেছি. বৈশিষ্ট প্রতি, আপনি ব্যবহারকারীর বলা প্রয়োজন কত ডলার, না কতগুলি পেনিসমূহ, তারা আছে. কিন্তু এ পর্যন্ত, আপনি ট্র্যাক রাখা করেছি মোট এবং LongLongs ব্যবহার পেনিসমূহ, গোটা সংখ্যা যা হয়. $ 1 থেকে 100 পেনিসমূহ তাই আছে, যদি না পেনিসমূহ সংখ্যা একটি 100 একাধিক, আপনি করতে হবে দশমিক স্থান প্রতিনিধিত্বকারী. দ্বিগুন autotype পারবেন আপনি এই কাজ করতে. তাই কিভাবে আমরা প্রতিনিধিত্বমূলক থেকে রূপান্তর না ডলার পেনিসমূহ? এর কটাক্ষপাত করা যাক pi.c. এই প্রোগ্রামটি একটি LongLong big_pi এবং লাগে 100,000 দ্বারা এটি ভাগ, এবং ছাপে পাঁচ দশমিক জাগাতে ফলে. আমরা চার দশমিক প্রদর্শন করতে চেয়েছিলেন জায়গা, তাহলে আমরা শুধু এই প্রতিস্থাপন করতে পারেন এখানে সংখ্যা. সুতরাং, সংরক্ষণ Pi কম্পাইল, যাক তারপর, ফলে দেখতে যা আমরা 3,1415 আশা - Pi প্রথম পাঁচটি সংখ্যা. এটা যদিও না. এবং কেন? ওয়েল, big_pi, একটি LongLong কারণ একটি পূর্ণ সংখ্যা, যার যা না করবে না দশমিক সম্পর্কে অবগত থাকুন. আমি প্রয়োজন পরিবর্তন করতে বিভাজন হয়. আমি আগে এখানে একটি ডবল আপনি নিক্ষেপ করতে হবে টেনিস রাখতে না পারেন, কারণ বিভাজক দশমিক স্থান ট্র্যাক. এবং আমি একটি নতুন লাইন যুক্ত করতে যাচ্ছি এখানে ভালো বিন্যাসের জন্য. এবং এখানে আমরা এটি আছে - 3,1416. আপনি এটা 3.1416 ছাপে যে খেয়াল করতে পারেন পরিবর্তে 3,1415 হিসাবে প্রত্যাশিত. সময় কারণ চক্রের যে বিভাজন প্রক্রিয়া হিসাবে, শুধু বিরোধিতা মান ছাঁটা হচ্ছে. এখন আপনি প্রিন্ট করতে সক্ষম হওয়া উচিত শেষ যা সঠিকভাবে চূড়ান্ত মোট, প্রোগ্রাম. অভিনন্দন. আমার সম্পর্কে নাম Zamyla হয়. এবং এই পেনিসমূহ ছিল. [সঙ্গীত বাজানো]