Solidity তে loops ব্যবহার করা হয় কিছু নির্দিষ্ট সংখ্যক বার কোডের ব্লক কার্যকর করার জন্য। এটি সাধারণত যখন আমরা চাই একই কোড বারবার চালাতে, তখন ব্যবহার হয়। Solidity তে তিনটি প্রধান ধরনের লুপ ব্যবহৃত হয়: for, while, এবং do-while। প্রতিটি লুপের গঠন এবং ব্যবহারের ক্ষেত্রে কিছু পার্থক্য রয়েছে, যা এখানে আলোচনা করা হচ্ছে।
1. for লুপ
for লুপ হল সবচেয়ে সাধারণ লুপ, যা নির্দিষ্ট সংখ্যক বার কোড ব্লকটি কার্যকর করার জন্য ব্যবহৃত হয়। এটি তিনটি অংশে বিভক্ত:
- শুরুতে ভেরিয়েবল ইনিশিয়ালাইজেশন
- শর্ত যাচাই করা
- প্রতিটি চক্রের পর ভেরিয়েবল আপডেট করা
গঠন:
for (initialization; condition; increment/decrement) {
// কোড ব্লক যা বারবার কার্যকর হবে
}উদাহরণ:
pragma solidity ^0.8.0;
contract MyContract {
uint256[] public numbers;
function addNumbers() public {
for (uint i = 0; i < 5; i++) {
numbers.push(i);
}
}
}এখানে, for লুপটি ৫ বার চলবে এবং প্রতিবার i এর মান ০ থেকে ৪ পর্যন্ত বৃদ্ধি পাবে এবং numbers অ্যারেতে মানগুলো সংযুক্ত হবে।
2. while লুপ
while লুপটি একটি শর্তের উপর ভিত্তি করে কোডের ব্লকটি চালায় যতক্ষণ না শর্ত মিথ্যা হয়। এখানে শর্ত প্রথমে যাচাই করা হয় এবং যদি শর্ত সত্য হয়, তাহলে কোডটি চলতে থাকে। এটি কোনো ভেরিয়েবল পরিবর্তন না করলে অদূর ভবিষ্যতে চিরকাল চলতে থাকে।
গঠন:
while (condition) {
// কোড ব্লক যা শর্ত সত্য থাকলে চলবে
}উদাহরণ:
pragma solidity ^0.8.0;
contract MyContract {
uint256 public counter = 0;
function incrementCounter() public {
while (counter < 5) {
counter++;
}
}
}এখানে, while লুপটি counter এর মান ৫ এর চেয়ে কম হওয়া পর্যন্ত চলবে এবং প্রতিবারে counter এর মান বৃদ্ধি পাবে।
3. do-while লুপ
do-while লুপটি while লুপের মতোই কাজ করে, কিন্তু একেবারে প্রথমে কোডের ব্লকটি কমপক্ষে একবার চালানো হয়, তারপর শর্ত যাচাই করা হয়। এর মানে, কোডটি একবার চলবে এবং তারপর শর্ত সত্য হলে আবার চলতে থাকবে।
গঠন:
do {
// কোড ব্লক যা অন্তত একবার চলবে
} while (condition);উদাহরণ:
pragma solidity ^0.8.0;
contract MyContract {
uint256 public counter = 0;
function incrementCounter() public {
do {
counter++;
} while (counter < 5);
}
}এখানে, do-while লুপটি প্রথমে কোডের ব্লকটি একবার চালাবে, তারপর counter এর মান ৫ এর চেয়ে কম হলে আবার চলবে।
সারাংশ
Solidity তে for, while, এবং do-while লুপ তিনটি ভিন্ন ধরণের লুপ, যা কোডের ব্লককে একাধিক বার কার্যকর করতে ব্যবহৃত হয়।
- for লুপ নির্দিষ্ট সংখ্যক বার কোড চালানোর জন্য ব্যবহৃত হয়, এবং এটি তিনটি অংশে বিভক্ত।
- while লুপ একটি শর্তের উপর ভিত্তি করে চলতে থাকে যতক্ষণ না শর্ত মিথ্যা হয়।
- do-while লুপ কমপক্ষে একবার কোড চালানোর পর শর্ত যাচাই করে, এবং যদি শর্ত সত্য থাকে তবে আবার চলতে থাকে।
এই লুপগুলো স্মার্ট কন্ট্রাক্টের কার্যকারিতা এবং কম্পিউটেশনাল দক্ষতা নিশ্চিত করতে সাহায্য করে।
Read more