পুনরাবৃত্তি
পরিচিতি
Wave ভাষায়, একই কোড একাধিক বার চালাতে হবে এমন পরিস্থিতি পরিচালনা করার জন্য পুনরাবৃত্তি প্রদান করে থাকে। পুনরাবৃত্তি তখনই ব্যবহৃত হয় যখন কোনো নির্দিষ্ট শর্ত পূরণ হয়, বা নির্দিষ্ট সংখ্যক বার কোডটি পুনরায় চালানোর প্রয়োজন হয়।
এর মাধ্যমে একই লজিক পুনরায় লিখার দরকার নেই, পরিষ্কার এবং সংক্ষিপ্ত কোড দিয়ে কাজকে পুনরাবৃত্তির মাধ্যমে প্রকাশ করা যেতে পারে। Wave শর্ত ভিত্তিক এবং বারে ভিত্তিক পুনরাবৃত্তি উভয়কেই সমর্থন করে, এবং পুনরাবৃত্তির মাঝামাঝি সময়ে ক্রিয়া প্রবাহ নিয়ন্ত্রণ করতে সক্ষম এমন কীওয়ার্ড সরবরাহ করে থাকে।
এই অংশে while এবং for লুপ, এবং পুনরাবৃত্তির প্রবাহ নিয়ন্ত্রণের জন্য break, continue কীওয়ার্ডের ব্যবহার পদ্ধতি ব্যাখ্যা করা হয়েছে।
while লুপ
while লুপ একটি নির্দিষ্ট শর্ত বিশ্বাসযোগ্য (true) হিসেবে মূল্যায়িত হলে বাক্সের কোড ব্লক পুনরায় চালায়।
যখন শর্ত মিথ্যায় (false) পরিণত হয় তখনই পুনরাবৃত্তি দ্রুত শেষ হয়।
প্রতিরূপগুলি এমন পরিস্থিতির জন্য উপযুক্ত হয় যখন একটি নির্দিষ্ট শর্ত সন্তুষ্ট না হওয়া পর্যন্ত পুনরাবৃত্তি করা প্রয়োজন হয় এবং পুনরাবৃত্তির সংখ্যা অস্পষ্ট।
মৌলিক কাঠামো
নিচে Wave এ while লুপের মৌলিক কাঠামো প্রদর্শিত হচ্ছে।
while (condition) {
// পুনরাবৃত্তি করার জন্য কোড
}
শর্তটা অবশ্যই bool ধরণের হওয়া উচিত এবং কোড ব্লক {} মধ্যে একাধিক নির্দেশাবলী থাকা উচিত।
উদাহরণ: ০ থেকে ৪ পর্যন্ত নির্গত।
var i :i32 = 0;
while (i < 5) {
println("আমি {}।", i);
i = i + 1;
}
এ উদাহরণে, ভ্যারিয়েবল i ৫ এর চেয়ে ছোট থাকা পর্যন্ত পুনরাবৃত্তি চলতে থাকে।
প্রতিটি পুনরাবৃত্তির মধ্যে বর্তমান মান আউটপ ুট করা হয় এবং i এর মান ১ করে বৃদ্ধি করা হয় যাতে শর্ত অবশেষে মিথ্যায় পরিণত হয়।
for লুপ
for লুপ এমন পরিস্থিতিতে ব্যবহারের জন্য উপযুক্ত যেখানে পুনরাবৃত্তির সংখ্যা তুলনামূলকভাবে পরিষ্কার হয়।
সূচনা মান, শর্ত এবং বৃদ্ধি একবারে নির্ধারণ করে পুনরাবৃত্তি প্রবাহ স্পষ্টভাবে প্রকাশ করা যায়।
কারণ পুনরাবৃত্তি নিয়ন্ত্রণে প্রয়োজনীয় উপাদানগুলি এক জায়গায় সমবেত হয়, এটি পুনরাবৃত্তি কাঠামোকে এক নজরে বোঝা সম্ভব করে দেয়।
মৌলিক কাঠামো
for (init; condition; step) {
// পুনরাবৃত্তি করার জন্য কোড
}
Wave-এ for initialization বিভিন্ন ফর্ম সমর্থন করে।
- অনির্দিষ্ট
varটাইপ initialization var/let mut/constডিক্লেয়ারেশন initialization- সাধারণ এক্সপ্রেশন initialization (বিদ্যমান ভ্যারিয়েবল পুনর্ব্যবহার)
