C ++ do… while loop with example

ডু-ওয়াই লুপ কি?

Do-while লুপ C ++ প্রোগ্রামের একটি বিভাগকে কয়েকবার পুনরাবৃত্তি করে। Do-while লুপে, লুপের নীচে টেস্ট এক্সপ্রেশন যোগ করা হয়। পরীক্ষার অভিব্যক্তির আগে লুপ বডি আসে। এজন্যই লুপ বডি একবারের জন্য কার্যকর করতে হবে, এমনকি যখন পরীক্ষার এক্সপ্রেশন প্রথম পরীক্ষায় মিথ্যা মূল্যায়ন করে।

এই C ++ টিউটোরিয়ালে, আপনি শিখবেন:

ডু-লাই লুপ কখন ব্যবহার করবেন?

পুনরাবৃত্তির সংখ্যা স্থির না হলে do-while লুপ ব্যবহার করা উচিত এবং লুপটি অন্তত একবার কার্যকর করতে হবে। C ++ কম্পাইলার শর্ত মূল্যায়নের আগে প্রথমে লুপ বডি চালায়। তার মানে লুপটি অবশ্যই একটি ফলাফল প্রদান করবে। পরীক্ষার মূল্য যখন প্রথম মূল্যায়নে একটি মিথ্যা মূল্যায়ন করে তখনও এটি হয়। যেহেতু লুপ বডি ইতিমধ্যে কার্যকর করা হয়েছে, এটি অবশ্যই ফলাফলটি ফেরত দিতে হবে।

বাক্য গঠন

সি ++ এর মৌলিক সিনট্যাক্স যখন লুপটি নিম্নরূপ: | _+_ |

শর্ত হল পরীক্ষার অভিব্যক্তি। লুপ চালানোর জন্য এটি অবশ্যই সত্য। {এবং} লুপ করার সময় ডু এর শরীর চিহ্নিত করুন। এটি শর্তের আগে আসে। অতএব, এটি শর্তের আগে কার্যকর করা হয়।

লুপ কিভাবে কাজ করে?

ফ্লো চার্ট করার সময় C ++ করুন



ফ্লো চার্ট ব্যাখ্যা:

  1. লুপ করার সময় শুরু করুন।
  2. ডু বডি যখন লুপ।
  3. পরীক্ষার অভিব্যক্তি বা মূল্যায়ন করার শর্ত।
  4. যদি পরীক্ষার অভিব্যক্তি সত্য হয়, C ++ কম্পাইলার ডু বডি যখন লুপ চালায়।
  5. যদি টেস্ট এক্সপ্রেশন মিথ্যা হয়, C ++ কম্পাইলার লুপ বডির পরে স্টেটমেন্ট এক্সিকিউট করে।
  6. বিবৃতি যা লুপ বডির পরে আসে।

উদাহরণ 1

 do{ //code }while(condition); 

আউটপুট:

এখানে কোডটির একটি স্ক্রিনশট দেওয়া হল:

কোড ব্যাখ্যা:

  1. আমাদের কোডে iostream হেডার ফাইল সহ। এটি আমাদের কনসোল থেকে পড়তে এবং লিখতে অনুমতি দেবে।
  2. এসটিডি নামস্থান সহ যাতে এটির ক্লাস এবং ফাংশনগুলি কল না করে ব্যবহার করা যায়।
  3. মূল () ফাংশনকে কল করা যার ভিতরে প্রোগ্রামের যুক্তি যুক্ত করতে হবে। প্রধান () ফাংশনের মূল অংশের {চিহ্ন শুরু।
  4. একটি মন্তব্য. C ++ কম্পাইলার এটি এড়িয়ে যাবে।
  5. একটি পূর্ণসংখ্যা পরিবর্তনশীল x ঘোষণা করা এবং এটিকে 1 এর মান নির্ধারণ করা।
  6. একটি করার সময় লুপ তৈরি করা হচ্ছে। {লুপ বডির শুরু চিহ্ন।
  7. কনসোলে অন্যান্য পাঠ্যের পাশাপাশি ভেরিয়েবল x এর মান প্রিন্ট করতে। এন্ডএল হল একটি সি ++ কীওয়ার্ড যার অর্থ শেষ লাইন।
  8. প্রতিটি পুনরাবৃত্তির পরে x এর মান 1 বৃদ্ধি করা।
  9. লুপ শরীরের শেষ। লুপ বডির শেষে টেস্ট এক্সপ্রেশন যোগ করা হয়েছে। এটি পরীক্ষা করে যে x এর মান 5 এর কম কিনা।
  10. প্রধান () ফাংশন একটি মান প্রদান করা উচিত যদি প্রোগ্রাম জরিমানা চালায়।
  11. প্রধান () ফাংশনের শরীরের শেষ।

উদাহরণ 2

 #include using namespace std; int main() { // Local variable int x = 1; do { cout << 'X is: ' << x << endl; x = x + 1; } while (x < 5); return 0; } 

আউটপুট:

এখানে কোডটির একটি স্ক্রিনশট দেওয়া হল:

কোড ব্যাখ্যা:

  1. আমাদের কোডে iostream হেডার ফাইল সহ। এটি আমাদের কনসোল থেকে পড়তে এবং লিখতে অনুমতি দেবে।
  2. এসটিডি নামস্থান সহ যাতে এটির ক্লাস এবং ফাংশনগুলি কল না করে ব্যবহার করা যায়।
  3. মূল () ফাংশনকে কল করা যার ভিতরে প্রোগ্রামের যুক্তি যুক্ত করতে হবে।
  4. প্রধান () ফাংশনের মূল অংশের {চিহ্ন শুরু।
  5. দুটি পূর্ণসংখ্যা ভেরিয়েবল, সংখ্যা এবং যোগফল ঘোষণা করা। পরিবর্তনশীল যোগফল 0 থেকে শুরু করা হয়েছে।
  6. একটি করার সময় লুপ তৈরি করা হচ্ছে। {লুপ বডির শুরু চিহ্ন।
  7. কনসোলে 'একটি সংখ্যা লিখুন:' পাঠ্যটি মুদ্রণ করা।
  8. কনসোল থেকে ব্যবহারকারীর ইনপুট পড়া এবং ভেরিয়েবল নুমের মান সংরক্ষণ করা। সিন (কনসোল ইনপুট) একটি ফাংশন যা ব্যবহারকারীর ইনপুট পড়ে।
  9. সংখ্যার মান যোগ করে সংখ্যার মান যোগ করা এবং পরিবর্তনশীল যোগফল সংরক্ষণ করা।
  10. }} লুপ বডির শেষ চিহ্ন। লুপ বডির শেষে টেস্ট এক্সপ্রেশন যোগ করা হয়েছে। এটি পরীক্ষা করে যে ব্যবহারকারী দ্বারা প্রবেশ করা মানটি নিশ্চিত নয় যে এটি 0 নয়। The = = অপারেটরের সমান নয়। যদি ব্যবহারকারী 0 এ প্রবেশ করে, লুপটি বন্ধ করা উচিত।
  11. অন্যান্য পাঠ্যের পাশাপাশি কনসোলে ভেরিয়েবল যোগফল মুদ্রণ মান।
  12. প্রধান () ফাংশন একটি মান প্রদান করা উচিত যদি প্রোগ্রাম জরিমানা চালায়।
  13. প্রধান () ফাংশনের শরীরের শেষ।

নেস্টেড ডু দ্য লুপ

C ++ এ, আমাদের পক্ষে একটি ডু-লুফ তৈরি করা অন্য ডু-হোল লুপের মধ্যে তৈরি করা সম্ভব। এটি একটি নেস্টেড do-while লুপে পরিণত হয়।

বাক্য গঠন

 #include using namespace std; int main() { int num, sum = 0; do { cout <> num; sum += num; } while (num != 0); cout << 'Sum is ' << sum; return 0; } 

প্রথম ডো স্টেটমেন্ট বাইরের ডু-লু লুপের ডো অংশকে নির্দেশ করে।

দ্বিতীয় ডো স্টেটমেন্ট ভিতরের do-while লুপের do অংশ নির্দেশ করে।

প্রথম সময় বিবৃতিটি অভ্যন্তরীণ লুপের পরীক্ষার অবস্থা নির্দেশ করে।

দ্বিতীয় সময় বিবৃতি বাইরের লুপের জন্য পরীক্ষার অবস্থা নির্দেশ করে।

লুপ কাজ করার সময় নেস্টেড কিভাবে কাজ করে

নেস্টেড যখন লুপ কাজ করে নিম্নরূপ:

ধাপ 1: আরম্ভ প্রথম এবং একবার কার্যকর করা হয়।

ধাপ ২: বিবৃতি (do) একবার কার্যকর করা হয়।

ধাপ 3: পরীক্ষার অভিব্যক্তি হল প্রবাহ নিয়ন্ত্রণ দ্বারা মূল্যায়ন।

ধাপ 4: যদি সত্য হয়, অভ্যন্তরীণ লুপ কার্যকর করা হয়।

ধাপ 5: আপডেট করা বিবৃতি (গুলি) আপডেট করা হয়।

ধাপ 6: পরীক্ষার অভিব্যক্তি মিথ্যা না হওয়া পর্যন্ত প্রক্রিয়াটি বারবার চলে।

ধাপ 7: যখন পরীক্ষার অভিব্যক্তি মিথ্যা হয়ে যায়, তখন অভ্যন্তরীণ লুপটি বের হয়ে যায় এবং নিয়ন্ত্রণটি বাইরের লুপে চলে যায়।

ধাপ 8: পরীক্ষার অবস্থা আবার মূল্যায়ন করা হয়।

ধাপ 9: সত্য হলে, মিথ্যা ফেরত দেওয়ার জন্য বিবৃতি (গুলি) কার্যকর করা হয়।

ধাপ 10: লুপ থামানো এবং নিয়ন্ত্রণ লুপের পরে বিবৃতিতে ঝাঁপ দেয়।

উদাহরণ

 do{ statement(s) do{ statement(s) }while(condition); statement(s) }while(condition); 

আউটপুট:

এখানে কোডটির একটি স্ক্রিনশট দেওয়া হল:

কোড ব্যাখ্যা:

  1. আমাদের কোডে iostream হেডার ফাইল সহ। এটি আমাদের কনসোল থেকে পড়তে এবং লিখতে অনুমতি দেবে।
  2. এসটিডি নামস্থান সহ যাতে এটির ক্লাস এবং ফাংশনগুলি কল না করে ব্যবহার করা যায়।
  3. মূল () ফাংশনকে কল করা যার ভিতরে প্রোগ্রামের যুক্তি যুক্ত করতে হবে। প্রধান () ফাংশনের মূল অংশের {চিহ্ন শুরু।
  4. একটি পূর্ণসংখ্যা পরিবর্তনশীল a ঘোষণা করা এবং এটিকে 1 এর মান নির্ধারণ করা।
  5. বাইরের ডু-দ্য লুপ তৈরি করা। {চিহ্নগুলি বাইরের লুপ বডির শুরু।
  6. একটি পূর্ণসংখ্যা ভেরিয়েবল b ঘোষণা করা এবং এটিকে 1 এর মান নির্ধারণ করা।
  7. ভিতরের ডু-দ্য লুপ তৈরি করা। {চিহ্ন ভিতরের লুপ শরীরের শুরু।
  8. কনসোলে চলক a এর মান প্রিন্ট করতে। ' N' একটি নতুন লাইন অক্ষর যা মাউস কার্সারকে পরবর্তী লাইনে নিয়ে যায়।
  9. প্রতিটি পুনরাবৃত্তির পরে b এর মান 1 বৃদ্ধি।
  10. ভিতরের লুপ শরীরের শেষ। লুপ বডির শেষে টেস্ট এক্সপ্রেশন যোগ করা হয়েছে। এটি পরীক্ষা করে যে b এর মান 5 এর চেয়ে কম বা সমান।
  11. প্রতিটি পুনরাবৃত্তির পরে a দ্বারা 1 এর মান বৃদ্ধি।
  12. বাইরের লুপ শরীরের শেষ। লুপ বডির শেষে টেস্ট এক্সপ্রেশন যোগ করা হয়েছে। এটি পরীক্ষা করে যে a এর মান 3 এর চেয়ে কম বা সমান।
  13. প্রধান () ফাংশনের শরীরের শেষ।

সারসংক্ষেপ

  • Do-while লুপটি কোডের একটি সেকশন বেশ কয়েকবার চালায়।
  • পুনরাবৃত্তির সংখ্যা ঠিক না হলে এটি ব্যবহার করা উচিত।
  • Do-while লুপে, লুপ বডি আসে পরীক্ষার এক্সপ্রেশন এর আগে।
  • লুপ বডি অন্তত একবার এক্সিকিউট করে, এমনকি যদি টেস্ট এক্সপ্রেশন মিথ্যা হয়ে যায়।
  • পুনরাবৃত্তির সংখ্যা ঠিক না হলে এই লুপটি ব্যবহার করা উচিত।
  • যখন লুপ যে কোন সময় চালাতে পারে, তবে শর্তটি সত্য।
  • প্রতিটি পুনরাবৃত্তির পরে শর্তটি একবার মূল্যায়ন করা হয়।
  • শর্তের মূল্যায়নের ফলাফল কী করা হবে তা নির্ধারণ করে।
  • যদি শর্তটি সত্য হয়, লুপটি শরীরকে কার্যকর করে।
  • লুপ কার্যকর করা অবিলম্বে অবস্থার মূল্যায়ন করে একটি মিথ্যা।
  • যেহেতু do while লুপ বডি ইতিমধ্যে কার্যকর করা হয়েছে, এটি অবশ্যই ফলাফলটি ফেরত দিতে হবে।