পাঠ ১: অ্যালগরিদম কী?
এই পাঠে, আপনি শিখবেন অ্যালগরিদম কী এবং কীভাবে VEXcode VR Python-এ অ্যালগরিদম ব্যবহার আপনাকে আরও বৈচিত্র্যময় আচরণ সহ প্রকল্প তৈরি করতে সক্ষম করে। অ্যালগরিদমিক প্রকল্পগুলি ভিআর রোবটকে তার পরিবেশের প্রতি সাড়া দেওয়ার নির্দেশ দেয়, যা ডায়নামিক ক্যাসেল ক্র্যাশার চ্যালেঞ্জ সমাধানের জন্য প্রয়োজনীয় হবে।
শেখার ফলাফল
- অ্যালগরিদমগুলি ক্রম, নির্বাচন এবং পুনরাবৃত্তি (লুপ) দিয়ে তৈরি তা চিহ্নিত করুন।
- অ্যালগরিদম হল নির্দেশাবলীর সুনির্দিষ্ট ক্রম, যা প্রোগ্রামিং ভাষা ব্যবহার করে বাস্তবায়িত হয়, যাতে একটি VR রোবট প্রক্রিয়াগুলি সম্পাদন করে।
অ্যালগরিদম
অ্যালগরিদম হল নির্দেশাবলীর সুনির্দিষ্ট ক্রম, যা VEXcode VR Python এর মতো প্রোগ্রামিং ভাষা ব্যবহার করে বাস্তবায়িত হয়, যাতে একটি VR রোবট দ্বারা প্রক্রিয়াগুলি সম্পন্ন করা হয়।
একটি অ্যালগরিদমের মৌলিক উপাদান হল ক্রম, নির্বাচন এবং পুনরাবৃত্তি।
- ক্রম - একটি প্রকল্পে কাঙ্ক্ষিত ফলাফল তৈরির জন্য আচরণ এবং আদেশগুলিকে একত্রিত করার ক্রম।
- নির্বাচন - একটি প্রকল্পে শর্তসাপেক্ষ বিবৃতির ব্যবহার। শর্তসাপেক্ষ বিবৃতি, যেমন যদিহয় অথবা যদি elseহয়, তাহলে একটি প্রকল্পের প্রকল্প প্রবাহকে প্রভাবিত করে।
- পুনরাবৃত্তি - অ্যালগরিদমগুলি প্রায়শই নির্দিষ্ট সংখ্যক বার, অথবা একটি নির্দিষ্ট শর্ত পূরণ না হওয়া পর্যন্ত ধাপগুলি সম্পাদন করার জন্য পুনরাবৃত্তি ব্যবহার করে। এটি "লুপিং" নামেও পরিচিত। পুনরাবৃত্তি একটি আচরণকে নির্দিষ্ট সংখ্যক বার পুনরাবৃত্তি করে অথবা একটি শর্ত পূরণ না হওয়া পর্যন্ত প্রকল্পের প্রবাহ পরিবর্তন করতে পারে।
ইউনিট 8 চ্যালেঞ্জের এই উদাহরণ প্রকল্পটি একটি অ্যালগরিদমের উদাহরণ। এতে লুপ, সেন্সর ডেটা এবং ডিস্ক মুভার চ্যালেঞ্জ সমাধানের জন্য একটি ক্রমানুসারে একত্রিত কমান্ডের সমন্বয় রয়েছে।
def main():
রেঞ্জ(3) এর মানের জন্য:
রেঞ্জ(3) এর মানের জন্য:
# 1। ডাউন আই সেন্সর
ব্যবহার করে ডিস্কে ড্রাইভ করুন, down_eye.near_object() ব্যবহার না করে:
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 2। ডিস্ক
ম্যাগনেট.এনারাইজ(বুস্ট)
# 3 তুলে নাও। দূরত্ব সেন্সর ব্যবহার করে লক্ষ্যে যান
drivetrain.turn_to_heading(180, DEGREES)
যখন front_distance.get_distance(MM) > 200:
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 4। গোল
magnet.energize(DROP)
drivetrain.drive_for(REVERSE, 100, MM)
# 5 এ ডিস্ক ড্রপ করুন। পরবর্তী ডিস্কের মুখোমুখি ঘুরুন
ড্রাইভট্রেন.turn_to_heading(0, DEGREES)
wait(5, MSEC)
# 6। ঘুরুন এবং পরবর্তী লক্ষ্যে যান
drivetrain.turn_to_heading(90, DEGREES)
drivetrain.drive_for(FORWARD, 800, MM)
# 7। ডিস্কে ঘুরুন
ড্রাইভট্রেন।turn_to_heading(0, DEGREES)
অপেক্ষা করুন(5, MSEC)সিকোয়েন্স
যেভাবে আদেশগুলি ক্রম এবং একত্রিত হয় তা VR রোবটের আচরণ নির্ধারণ করে। এই উদাহরণে, একটি ডিস্ক সরানোর জন্য প্রয়োজনীয় প্রতিটি আচরণ তিনবার কার্যকর করা হয়, তারপর VR রোবট পরবর্তী ডিস্কের সেটে চলে যায় এবং আচরণগুলি পুনরাবৃত্তি করে, যতক্ষণ না সমস্ত ডিস্ক লক্ষ্যে ফিরে আসে। 
নির্বাচন
এই প্রকল্পের মধ্যে নির্বাচন অন্তর্ভুক্ত রয়েছে যা সেন্সর শর্তের উপর ভিত্তি করে প্রকল্পের অংশগুলি নির্ধারণ করে। প্রথমত, ডাউন আই সেন্সরটি নির্ধারণ করতে ব্যবহৃত হয় কখন VR রোবট একটি ডিস্কের কাছে থাকে, তাই ডিস্কটি তোলা যায়। তারপর, দূরত্ব সেন্সর ব্যবহার করে VR রোবট কখন লক্ষ্যের উপরে চলে গেছে তা নির্ধারণ করা হয়, যাতে ডিস্কটি ফেলে দেওয়া যায়। 
প্রথমwhileলুপে, কোন কমান্ডগুলি চালানো হবে তা নির্বাচন ডাউন আই সেন্সর দ্বারা রিপোর্ট করা সেন্সর মানের উপর ভিত্তি করে করা হয়।
- কোনো বস্তু শনাক্ত না করলেও, VR রোবট এগিয়ে যাবে।
- যখন একটি বস্তু সনাক্ত করা হয়, তখন VR রোবট বন্ধ হয়ে যাবে।
দ্বিতীয়while লুপে, কোন কমান্ডটি চালানো হবে তা নির্বাচন করা হয় দূরত্ব সেন্সর দ্বারা রিপোর্ট করা সেন্সর মানের উপর ভিত্তি করে।
- রিপোর্ট করা দূরত্ব 200 মিলিমিটার (মিমি) এর বেশি হলেও, ভিআর রোবটটি এগিয়ে যাবে।
- রিপোর্ট করা দূরত্ব 50 মিলিমিটার (মিমি) এর কম হলেও, ভিআর রোবটটি গাড়ি চালানো বন্ধ করবে এবং ইলেক্ট্রোম্যাগনেটকে শক্তিশালী করতে প্রকল্পের পরবর্তী অংশে চলে যাবে।
পুনরাবৃত্তি
প্রকল্পটি পুনরাবৃত্তি, বা "লুপ" ব্যবহার করে, ক্রিয়াগুলি পুনরাবৃত্তি করতে এবং বারবার রিপোর্ট করা সেন্সর মানগুলি পরীক্ষা করে৷ এই প্রকল্পে নেস্টেড লুপ রয়েছে - একটি লুপ যাতে ভিআর রোবট একই রঙের তিনটি ডিস্ক সংগ্রহ করতে পারে; এবং খেলার মাঠের সমস্ত ডিস্ক সংগ্রহ করার জন্য সেই প্রক্রিয়াটি পুনরাবৃত্তি করার জন্য দ্বিতীয় লুপ। 
এই অ্যালগরিদমটি ডিস্ক মুভার চ্যালেঞ্জ সম্পূর্ণ করার জন্য তিনটি ডিস্ক সংগ্রহ এবং ফেরত দেওয়ার জন্য ডিজাইন করা হয়েছে। একই যুক্তি যা ক্রম, নির্বাচন এবং পুনরাবৃত্তি ব্যবহার করে বারবার ডিস্ক সংগ্রহ এবং সরানোর জন্য প্রয়োগ করা হয় তা ডায়নামিক ক্যাসল ক্র্যাশার চ্যালেঞ্জের মতো অন্যান্য চ্যালেঞ্জেও প্রয়োগ করা যেতে পারে।