কম্পিউটার

একটি ইন্টারেক্টিভ গেম লিখে ব্যাশ শিখুন

একটি নতুন প্রোগ্রামিং ভাষা শেখা মজাদার হতে পারে। যখনই আমি একটি নতুন শেখার চেষ্টা করি, আমি ভেরিয়েবলগুলিকে সংজ্ঞায়িত করা, একটি বিবৃতি লেখা এবং অভিব্যক্তির মূল্যায়ন করার উপর ফোকাস করি। একবার আমার এই ধারণাগুলির সাধারণ বোঝার পরে, আমি সাধারণত নিজেরাই বাকিগুলি বের করতে পারি। বেশিরভাগ প্রোগ্রামিং ভাষার কিছু মিল রয়েছে, তাই আপনি একবার একটি প্রোগ্রামিং ভাষা জানার পরে, পরবর্তীটি শেখা অনন্য বিবরণ খুঁজে বের করা এবং এর মধ্যে পার্থক্যগুলিকে স্বীকৃতি দেওয়ার বিষয়।

আমাকে একটি নতুন প্রোগ্রামিং ভাষা অনুশীলন করতে সাহায্য করার জন্য, আমি কয়েকটি পরীক্ষামূলক প্রোগ্রাম লিখতে চাই। একটি নমুনা প্রোগ্রাম যা আমি প্রায়ই লিখি তা হল একটি সাধারণ "সংখ্যা অনুমান করুন" প্রোগ্রাম, যেখানে কম্পিউটার এক থেকে 100 এর মধ্যে একটি সংখ্যা বেছে নেয় এবং আমাকে সংখ্যাটি অনুমান করতে বলে। আমি সঠিকভাবে অনুমান না করা পর্যন্ত প্রোগ্রামটি লুপ হয়৷

"সংখ্যা অনুমান করুন" প্রোগ্রামটি প্রোগ্রামিং ভাষায় বেশ কয়েকটি ধারণার অনুশীলন করে:কীভাবে ভেরিয়েবলের মান নির্ধারণ করতে হয়, কীভাবে বিবৃতি লিখতে হয় এবং কীভাবে শর্তসাপেক্ষ মূল্যায়ন এবং লুপগুলি সম্পাদন করতে হয়। এটি একটি নতুন প্রোগ্রামিং ভাষা শেখার জন্য একটি দুর্দান্ত ব্যবহারিক পরীক্ষা।

বাশে নম্বরটি অনুমান করুন

বেশিরভাগ লিনাক্স সিস্টেমের জন্য ব্যাশ হল স্ট্যান্ডার্ড শেল। একটি সমৃদ্ধ কমান্ড-লাইন ব্যবহারকারী ইন্টারফেস প্রদানের পাশাপাশি, ব্যাশ স্ক্রিপ্ট আকারে একটি সম্পূর্ণ প্রোগ্রামিং ভাষা সমর্থন করে। .

আপনি যদি ব্যাশের সাথে পরিচিত না হন তবে আমি এই ভূমিকাগুলি সুপারিশ করছি:

  • ব্যাশ কি?
  • ব্যাশ প্রোগ্রামিং দিয়ে শুরু করুন
  • সিসাডমিনের জন্য ব্যাশ স্ক্রিপ্টিং দিয়ে শুরু করুন
  • ব্যাশে কিভাবে ফাংশন লিখতে হয়
  • ব্যাশ সম্পর্কে আরও পড়ুন

আপনি "সংখ্যা অনুমান করুন" গেমটির একটি সংস্করণ লিখে ব্যাশ অন্বেষণ করতে পারেন। এখানে আমার বাস্তবায়ন:

#!/bin/bash

number=$(( $RANDOM % 100 + 1 ))

echo "Guess a number between 1 and 100"

guess=0

while [ "0$guess" -ne $number ] ; do
        read guess
        [ "0$guess" -lt $number ] && echo "Too low"
        [ "0$guess" -gt $number ] && echo "Too high"
done

echo "That's right!"
exit 0

স্ক্রিপ্ট ভাঙা

স্ক্রিপ্টের প্রথম লাইন, #!/bin/bash লিনাক্সকে ব্যাশ শেল ব্যবহার করে এই স্ক্রিপ্টটি চালাতে বলে। প্রতিটি স্ক্রিপ্ট #! দিয়ে শুরু হয় অক্ষর জোড়া, যা নির্দেশ করে এটি একটি শেল স্ক্রিপ্ট। যা অবিলম্বে #! অনুসরণ করে চালানোর জন্য শেল হয়. এই ক্ষেত্রে, /bin/bash ব্যাশ শেল।

একটি ভেরিয়েবলে একটি মান নির্ধারণ করতে, = অনুসরণ করে ভেরিয়েবলের নাম তালিকাভুক্ত করুন চিহ্ন. উদাহরণস্বরূপ, guess=0 বিবৃতি guess-এ একটি শূন্য মান নির্ধারণ করে পরিবর্তনশীল।

আপনি ব্যবহারকারীকে read ব্যবহার করে একটি মান লিখতেও অনুরোধ করতে পারেন বিবৃতি আপনি যদি read guess লিখুন , ব্যাশ ব্যবহারকারীর কিছু পাঠ্য প্রবেশ করার জন্য অপেক্ষা করে তারপর সেই মানটিকে guess এ সঞ্চয় করে পরিবর্তনশীল।

একটি ভেরিয়েবলের মান উল্লেখ করতে, $ ব্যবহার করুন পরিবর্তনশীল নামের আগে। সুতরাং, guess-এ একটি মান সংরক্ষণ করা পরিবর্তনশীল, আপনি $guess ব্যবহার করে এটি পুনরুদ্ধার করতে পারেন .

আপনি ভেরিয়েবলের জন্য আপনার পছন্দের নাম ব্যবহার করতে পারেন, তবে ব্যাশ নিজের জন্য কয়েকটি বিশেষ পরিবর্তনশীল নাম সংরক্ষণ করে। একটি বিশেষ পরিবর্তনশীল হল RANDOM , যা আপনি প্রতিবার উল্লেখ করার সময় একটি খুব বড় র্যান্ডম সংখ্যা তৈরি করে।

আপনি যদি একটি মান সঞ্চয় করার সাথে সাথে একটি অপারেশন করতে চান তবে আপনাকে বিশেষ বন্ধনীতে বিবৃতিটি আবদ্ধ করতে হবে। এটি ব্যাশকে প্রথমে সেই বিবৃতিটি কার্যকর করতে বলে এবং = ভেরিয়েবলে ফলিত মান সংরক্ষণ করে। একটি গাণিতিক অভিব্যক্তি মূল্যায়ন করতে, $(( )) ব্যবহার করুন আপনার বক্তব্যের চারপাশে। ডবল বন্ধনী একটি গাণিতিক অভিব্যক্তি নির্দেশ করে . আমার উদাহরণে, number=$(( $RANDOM % 100 + 1 )) $RANDOM % 100 + 1 অভিব্যক্তি মূল্যায়ন করে এবং তারপর number-এ মান সংরক্ষণ করে পরিবর্তনশীল।

স্ট্যান্ডার্ড গাণিতিক অপারেটর যেমন + (প্লাস), - (মাইনাস), * (গুণ করুন), / (বিভক্ত), এবং % (মডিউল) প্রয়োগ করুন৷

তার মানে number=$(( $RANDOM % 100 + 1 )) এক এবং 100 এর মধ্যে একটি এলোমেলো সংখ্যা তৈরি করে। মডুলো অপারেটর (% ) অবশিষ্ট ফেরত দেয় দুটি সংখ্যা ভাগ করার পর। এই ক্ষেত্রে, ব্যাশ একটি এলোমেলো সংখ্যাকে 100 দ্বারা ভাগ করে, একটি অবশিষ্টাংশকে শূন্য থেকে 99 রেঞ্জে রেখে দেয়। সেই মানের সাথে একটি যোগ করে, আপনি একটি এবং 100 এর মধ্যে একটি র্যান্ডম সংখ্যা পাবেন।

ব্যাশ শর্তাধীন অভিব্যক্তি সমর্থন করে এবং প্রবাহ নিয়ন্ত্রণ loops মত "সংখ্যা অনুমান করুন" গেমে, যতক্ষণ পর্যন্ত guess মান থাকে ততক্ষণ ব্যাশ লুপ করা চালিয়ে যায় number এর সমান নয় . অনুমানটি এলোমেলো সংখ্যার চেয়ে কম হলে, ব্যাশ প্রিন্ট করে "খুব কম" এবং অনুমানটি সংখ্যার চেয়ে বড় হলে, ব্যাশ প্রিন্ট করে "খুব বেশি।"

এটি কিভাবে কাজ করে

এখন আপনি আপনার ব্যাশ স্ক্রিপ্ট লিখেছেন, আপনি "নম্বর অনুমান করুন" গেমটি খেলতে এটি চালাতে পারেন। আপনি সঠিক সংখ্যা না পাওয়া পর্যন্ত অনুমান করা চালিয়ে যান:

Guess a number between 1 and 100
50
Too high
30
Too high
20
Too high
10
Too low
15
Too high
13
Too low
14
That's right!

আপনি যতবার স্ক্রিপ্ট চালাবেন, ব্যাশ একটি ভিন্ন র্যান্ডম নম্বর বেছে নেবে।

এই "সংখ্যা অনুমান করুন" গেমটি একটি নতুন প্রোগ্রামিং ভাষা শেখার সময় একটি দুর্দান্ত পরিচায়ক প্রোগ্রাম কারণ এটি বেশ সহজবোধ্য উপায়ে বেশ কয়েকটি সাধারণ প্রোগ্রামিং ধারণা অনুশীলন করে। এই সহজ গেমটি বিভিন্ন প্রোগ্রামিং ভাষায় প্রয়োগ করে, আপনি কিছু মূল ধারণা প্রদর্শন করতে পারেন এবং প্রতিটি ভাষায় বিবরণ তুলনা করতে পারেন।

আপনি একটি প্রিয় প্রোগ্রামিং ভাষা আছে? আপনি এটিতে "সংখ্যা অনুমান করুন" গেমটি কীভাবে লিখবেন? আপনার আগ্রহী হতে পারে এমন অন্যান্য প্রোগ্রামিং ভাষার উদাহরণ দেখতে এই নিবন্ধ সিরিজটি অনুসরণ করুন৷


  1. মজার উপায় ব্যাশ শেখার জন্য 3টি কমান্ড লাইন গেম

  2. ধাঁধার এই বইটি দিয়ে ব্যাশ শিখুন

  3. আপনার লেখার খেলার জন্য সেরা ব্যাকরণগত বিকল্প

  4. Learn Math অ্যাপের মাধ্যমে কিভাবে মৌলিক গণিত পাটিগণিত শিখবেন:নম্বরের খেলা