লুপিং অ্যান্ড ডিসিশন মেকিং : ফর ইচ (Foreach)
প্রোগ্রামিংয়ে ফর ইচ
(Foreach) লুপ হলো কোনো একটি সংগ্রহ বা লিস্টের (যেমন: Array বা Collection) প্রতিটি উপাদানের ওপর পর্যায়ক্রমে কাজ করার সবচেয়ে সহজ পদ্ধতি। সাধারণ for লুপের তুলনায় এটি অনেক বেশি পরিচ্ছন্ন এবং ভুল হওয়ার সম্ভাবনা কম থাকে।
নিচে Foreach লুপের কাজ করার পদ্ধতি এবং সিদ্ধান্ত গ্রহণের প্রক্রিয়া আলোচনা করা হলো:
১. ফর ইচ (Foreach) লুপ কী?
যখন আমাদের কাছে একগুচ্ছ ডেটা থাকে এবং আমরা জানি না সেখানে ঠিক কতগুলো উপাদান আছে, অথবা আমরা প্রতিটি উপাদানকে একবার করে ব্যবহার করতে চাই, তখন Foreach ব্যবহার করা হয়। এটি নিজে থেকেই লিস্টের শুরু থেকে শেষ পর্যন্ত চলে এবং প্রতিটি আইটেমকে আলাদাভাবে প্রসেস করে।
কাজের ধাপ:
1.
এটি লিস্টের প্রথম উপাদানটি ধরে।
2.
সেই উপাদানটি নিয়ে নির্দিষ্ট কাজ সম্পন্ন করে।
3.
এরপর স্বয়ংক্রিয়ভাবে পরবর্তী উপাদানে চলে যায়।
4.
লিস্ট শেষ না হওয়া পর্যন্ত এই প্রক্রিয়া চলতেই থাকে।
২. লুপের ভেতর ডিসিশন মেকিং (Decision Making)
লুপিংয়ের সময় প্রায়ই আমাদের সিদ্ধান্ত নিতে হয় যে সব উপাদানের ওপর কাজ করা হবে নাকি নির্দিষ্ট কিছুর ওপর। এর জন্য if-else স্টেটমেন্ট ব্যবহার করা হয়।
·
ফিল্টারিং: যেমন, একটি স্টুডেন্ট লিস্ট থেকে শুধু যারা পাশ করেছে তাদের নাম প্রিন্ট করা।
·
ব্রেক
(Break): নির্দিষ্ট কোনো শর্ত মিলে গেলে লুপটি মাঝপথেই থামিয়ে দেওয়া।
·
কন্টিনিউ
(Continue): কোনো নির্দিষ্ট উপাদানকে বাদ দিয়ে পরবর্তী উপাদানে চলে যাওয়া।
৩. একটি বাস্তব উদাহরণ (Pseudocode)
ধরা যাক, আমাদের কাছে একটি ফলের ঝুড়ি আছে এবং আমরা শুধু 'আম' খুঁজছি।
Plaintext
ফলের_তালিকা = ["আপেল", "আম", "কলা", "আম", "কমলা"]
Foreach প্রতিটি ফল in ফলের_তালিকা:
IF ফল == "আম":
প্রিন্ট: "আমি একটি আম পেয়েছি!"
ELSE:
প্রিন্ট: "এটি আম নয়।"
৪. কেন Foreach ব্যবহার করবেন?
·
সহজ গঠন: আপনাকে লুপের শুরু (i = 0) বা শেষ সীমা (i < length) নিয়ে চিন্তা করতে হয় না।
·
নিরাপত্তা: লুপের সীমানা ছাড়িয়ে যাওয়ার (Index Out of
Bounds) ঝুঁকি থাকে না।
·
কোড রিডাবিলিটি: কোড পড়তে অনেকটা সাধারণ ইংরেজি বাক্যের মতো মনে হয়।
যেহেতু PHP, JavaScript, এবং Java
তিনটি ল্যাঙ্গুয়েজেই foreach লুপের ব্যবহার বেশ জনপ্রিয়, আমি নিচে এগুলোর সিনট্যাক্স এবং একটি করে উদাহরণ তুলে ধরছি।
১. PHP-তে Foreach লুপ
PHP-তে সাধারণত অ্যাসোসিয়েটিভ অ্যারে
(Associative Array) হ্যান্ডেল করার জন্য এটি সবচেয়ে বেশি ব্যবহৃত হয়।
সিনট্যাক্স:
PHP
foreach ($array as $value) {
// কোড এখানে বসবে
}
উদাহরণ (সিদ্ধান্ত গ্রহণসহ):
ধরা যাক একটি স্টুডেন্ট লিস্ট থেকে আমরা শুধু 'Pass' করা স্টুডেন্টদের দেখাব।
PHP
$results = ["Rahim"
=> "Pass", "Karim" => "Fail", "Abir"
=> "Pass"];
foreach ($results as $name => $status)
{
if ($status == "Pass") {
echo $name . " উত্তীর্ণ হয়েছেন।<br>";
}
}
২.
JavaScript-তে forEach() মেথড
JavaScript-এ অ্যারের জন্য একটি বিল্ট-ইন মেথড হিসেবে এটি কাজ করে।
সিনট্যাক্স:
JavaScript
array.forEach(function(element) {
// কোড এখানে বসবে
});
উদাহরণ:
JavaScript
let numbers = [10, 25, 40, 55, 70];
numbers.forEach((num) => {
if (num > 50) {
console.log(num + " সংখ্যাটি ৫০ এর বড়।");
}
});
৩. Java-তে Enhanced
For Loop (Foreach)
Java-তে একে 'Enhanced For Loop' বলা হয়, যা কালেকশন বা অ্যারের ওপর কাজ করে।
সিনট্যাক্স:
Java
for (DataType item : array) {
// কোড এখানে বসবে
}
উদাহরণ:
Java
String[] fruits = {"Apple",
"Mango", "Orange"};
for (String fruit : fruits) {
if (fruit.equals("Mango")) {
System.out.println("ফলের রাজা " + fruit + " পাওয়া গেছে!");
}
}
সারসংক্ষেপ:
|
বৈশিষ্ট্য |
PHP |
JavaScript |
Java |
|
কীওয়ার্ড |
foreach |
.forEach() |
for |
|
ব্যবহার |
অ্যারে ও অবজেক্ট |
শুধুমাত্র অ্যারে |
অ্যারে ও কালেকশন |
|
সহজবোধ্যতা |
খুব সহজ |
মডার্ন (অ্যারো ফাংশনসহ) |
টাইপ ডিক্লেয়ার করতে হয় |
0 Comments