Control Flow

৬। Control Flow

একই কোড বার বার রান করার জন্য লুপিং ব্যবহার করা হয়।  এগুলোর মধ্যে একটা হচ্ছে For Loop.
For Loop:

ফর লুপ অনেক ভাবেই লেখা যায়… for loop এর কয়েকটি অংশ রয়েছে, নিচের ছবিটি লক্ষ করিঃ

For Loop Illustrated

এ for loop এর তিনটি অংশ রয়েছে। তার আগে আমরা দেখেনি for loop সাধারন ব্যবহার নিয়ম।

for (exprission1; Exprission2;Expression3 ) {
   Statement
}

 

এখানে প্রথম exprission1  হচ্ছে for loop এর প্রথম অংশ। এটি দ্বারা একটি নির্দিষ্ট বিষয়ের প্রাথমিক মান দেওয়া হয় । যাকে বলা হয় initial অংশ। এই বিষয়টিকে বলা হয় Index. এটি পুরো লুপিং প্রক্রিয়াকে নিয়ন্ত্রন করে। প্রাথমিক মানটি কোন কিছু যাছাই না করেই আউটপুট দেয়। মানে হচ্ছে প্রথমিক মান টা কোন কিছু যাচাই না করেই আউটপুট দিবে (যেমন প্রিন্ট বা অন্য কোন কাজে)।

দ্বিতীয় অংশটি অর্থাৎ Exprission2 দ্বারা  একটি শর্ত দেওয়া হয়। লুপটি কতক্ষন পর্যন্ত চলবে তা এটি নির্নয় করে। Exprission2 তে সাধারনত একটি logical expression থাকে যা শুধু সত্য মিথ্যে বুঝতে পারে। যদি সত্য হয় তাহলে true রিটার্ন করে আর যদি মিথ্যে হয় তাহলে false রিটার্ন করে।  এটি যদি false ছাড়া অন্য কোন মান রিটার্ন করে তাহলে লুপটি চলবে, আর যদি false রিটার্ন করে তাহলে লুপটি আর চলবে না।

Expression3 কাজ হচ্ছে আমারা প্রথমে যে প্রাথমিক মান নিলাম তাকে আমাদের ইচ্ছে মত মডিফাই করা। এটি প্রত্যেক লুপের শেষ ধাপে কাজ করে।

আর আগেই বলছি লুপটি ততক্ষনই চলবে যতক্ষন পর্যন্ত Exprission2 মিথ্যে বা  false  রিটার্ন না করে। এরপরের অংশ হচ্ছে Statement, লুপটি যার উপর কাজ করবে। সুইফট এ আমাদের for এর পর প্রথম ব্র্যাকেট না ব্যবহার করতে হয় না। আর করলেও প্রোগ্রামটি কোন ভুল দেখাবে না। নিচের উদাহরনটি দেখি।


for var x = 1; x  < 100; x++ { 

 print(x)

 }

উপরের প্রোগ্রামটিতে আমরা একটা ভ্যারিয়েবল নিয়েছি, x নামে। ইনিশিয়াল, এরপর লিখেছি x < 100 , যা দিয়ে প্রতিবার চেক করবে x এর মান কি ১০০ থেকে ছোট কিনা, যদি ছোট হয় তাহলে print(x) দিয়ে x এর মান প্রিন্ট করবে, এবং শেষে x++ দিয়ে x এর মান এক করে প্রতিবার বাড়িয়ে দেবে।

উপরের প্রোগ্রামটি লিখলে ডানপাশে কিছুই দেখাবে না। শুধু 4 items এমন একটা লেখা দেখাবে। আমরা লুপিং এর আউটপুট দেখতে চাইলে রাইট ক্লিক করে Open in Assistant Editor এ ক্লি করলে আমাদের লুপের আউটপুট দেখাবে। নিচের ছবিটির মত বা এমন কিছুঃ

 

looping in swift

আমরা ইচ্ছে করলে নিচের মত করেও for loop লিখতে পারি।


for index in 1...5 {
   print("This line will print 5 times")
}

যে লুপ ব্যবহার করা আরো সহজ, এখানে 1…5 দিয়েই লুপটি কন্ট্রোল করা হয়, এক দিয়ে ইনিশিয়ালাইজ এর কাজ করা হয়েছে এবং ৫ দিয়ে কত বার পর্যন্ত লুপটি রান করবে তা বলে দেওয়া হয়েছে। আমরা ইচ্ছে করলে নিচের মত করও লিখতে পারিঃ


for index in 5...10 {
  print("This line will print 5 times")
}

ইনিশিয়াল ভ্যালু এবং শেষ ভ্যালু যে কোন মানই আমরা দিতে পারি।
আমরা ইচ্ছে করলে একটা Array এর ভ্যালু এর উপর ও ইটারেশন চালাতে পারি এই for Loop দিয়ে:

var catName = ["billy", "catty", "pitty", "buddy"]
for name in catName {
  print("Cat Name: \(name)")
}

যেখানে name হচ্ছে যে কোন একটি ভ্যারিয়েবল নেইম, catName হচ্ছে আমাদের অ্যারে। অ্যারে এর প্রতিটা ইলিমেন্ট একটা একটা করে name এর মধ্যে এসাইন হবে, এবং for লুপের ভেতরের স্টেটমেন্ট এক্সিকিউট হবে। যখন দেখবে অ্যারের ভেতর আর কোন মান আর অবশিষ্ঠ নেই, তখন লুপিং শেষ হবে।

অন্যান্য লুপিং নিয়ে আরেকদিন লিখে পোস্টটি আপডেট করব 🙂


Leave a Reply

Your email address will not be published. Required fields are marked *