offSchoolবেটা

তথ্য ও যোগাযোগ প্রযুক্তি · অধ্যায় ৬

প্রোগ্রামিংয়ের মাধ্যমে সমস্যার সমাধান

SSC ICT Chapter 6

  • ৯টি টপিক
  • ৮টি সিমুলেশন
  • ২৫ পিরিয়ড

সিমুলেশন

টপিক

  1. সমস্যা সমাধান, প্রোগ্রামিং ভাষা, মেশিন কোড, কম্পাইলার ও ইন্টারপ্রেটার

    সমস্যা সমাধান ও প্রোগ্রামিং · প্রোগ্রামিং ভাষা ও মেশিন কোড · কম্পাইলার ও ইন্টারপ্রেটার · কোন প্রোগ্রামিং ভাষাটি শিখব?

    পড়ে নাও

    বাস্তব জীবনে আমরা নানা সমস্যায় পড়ি। সমস্যা সমাধান হলো সমস্যার প্রকৃতি বুঝে তা অতিক্রমের উপায় খুঁজে বের করা।

    পুরো টপিক পড়ো →

  2. পাইথনে প্রোগ্রামিংয়ের যাত্রা শুরু

    পাইথন ইনস্টল করা · Thonny সেটআপ ও প্রোগ্রাম চালানো

    পড়ে নাও

    পাইথনে কোড লেখার জন্য আগে প্রোগ্রামিং পরিবেশ তৈরি করতে হয়। python.org-এর ডাউনলোড পেইজ থেকে সবচেয়ে সাম্প্রতিক ভার্সন ডাউনলোড করতে হয়। ইনস্টলার চালালে একটি উইন্ডো আসে।

    পুরো টপিক পড়ো →

  3. টেক্সট প্রদর্শন, ভ্যারিয়েবল ও নামকরণ

    টেক্সট প্রদর্শন করা · ভ্যারিয়েবল (চলক) · ভ্যারিয়েবলের নামকরণের নিয়ম

    পড়ে নাও

    print() ফাংশন মনিটরের পর্দায় বার্তা দেখায়। বাংলা লেখাও দেখানো যায়। print("আমি বাংলাদেশকে ভালোবাসি") আউটপুট: আমি বাংলাদেশকে ভালোবাসি প্রোগ্রামে তথ্য রাখতে ভ্যারিয়েবল ব্যবহার করা হয়।

    পুরো টপিক পড়ো →

  4. ডেটাটাইপ ও টাইপ কাস্টিং

    int, float, str ও bool · টাইপ কাস্টিং

    পড়ে নাও

    কম্পিউটারকে পূর্ণসংখ্যা, ভগ্নাংশযুক্ত সংখ্যা, লেখা, সত্য-মিথ্যা ইত্যাদি নানা ধরনের তথ্য নিয়ে কাজ করতে হয়। ডেটাটাইপ বলে দেয় একটি তথ্য মেমোরিতে কতটা জায়গা নেবে এবং প্রসেসর তা কীভাবে প্রক্রিয়া করবে।

    পুরো টপিক পড়ো →

  5. ইনপুট গ্রহণ ও গাণিতিক অপারেশন

    ইনপুট গ্রহণ · গাণিতিক অপারেটর

    পড়ে নাও

    ব্যবহারকারীর কাছ থেকে তথ্য নিতে input() ফাংশন লাগে। প্রোগ্রাম এই লাইনে এসে থেমে যায় এবং ব্যবহারকারী কিছু লিখে Enter চাপলে আবার চলে। গুরুত্বপূর্ণ কথা: তুমি সংখ্যা লেখো বা অক্ষর, input() সবসময় তা str হিসেবে নেয়।

    পুরো টপিক পড়ো →

  6. তুলনামূলক অপারেটর ও শর্ত: if, if...else, elif

    তুলনামূলক অপারেটর · if স্টেটমেন্ট · if...else স্টেটমেন্ট · elif স্টেটমেন্ট

    পড়ে নাও

    দুটি মান তুলনা করে ফল True বা False দেয়। | অপারেটর | অর্থ | |---|---| | == | সমান (Equal) | | != | অসমান (Not Equal) | | < | ছোট (Less Than) | | <= | ছোট বা সমান (Less or Equal) | | | বড় (Greater Than) | | = | বড় বা…

    পুরো টপিক পড়ো →

  7. match স্টেটমেন্ট

    পড়ে নাও

    অনেক সম্ভাবনার মধ্য থেকে একটি কাজ বেছে নিতে অনেকগুলো elif-এর বদলে match স্টেটমেন্ট ব্যবহার করা যায়। elif-এ শর্ত বা রিলেশনাল এক্সপ্রেশন দেখে বাছাই হয়, কিন্তু match-এ সাধারণত একটি ভ্যারিয়েবলের মান দেখে বাছাই হয়।

    পুরো টপিক পড়ো →

  8. লুপ: for, নেস্টেড for, while, নেস্টেড while

    for লুপ ও range () · নেস্টেড for লুপ · while লুপ · নেস্টেড while লুপ

    পড়ে নাও

    একই কাজ বারবার করতে লুপ ব্যবহার করা হয়। প্রধান লুপ for ও while। for লুপ তখন সুবিধাজনক, যখন আগে থেকে জানা থাকে কাজটি কতবার চলবে। গণনার জন্য একটি কাউন্টার ভ্যারিয়েবল থাকে।

    পুরো টপিক পড়ো →

  9. break ও continue স্টেটমেন্ট

    পড়ে নাও

    লুপ সাধারণত শর্ত মিথ্যা না হওয়া পর্যন্ত একই কাজ বারবার করে। কিন্তু মাঝপথে থামতে বা কোনো একটি বার বাদ দিতে হলে দুটি স্টেটমেন্ট ব্যবহার করা হয়: break ও continue।

    পুরো টপিক পড়ো →

শিখনফল

  • সমস্যা সমাধান সম্পর্কে জানতে পারবে।
  • প্রোগ্রামিং ভাষা সম্পর্কে জানতে পারবে।
  • পাইথন প্রোগ্রামিং ভাষা ব্যবহার করে কোডিং করতে পারবে।
  • পাইথন প্রোগ্রামিং ভাষা ব্যবহার করে সাধারণ সমস্যার সমাধান করতে পারবে।

এই অধ্যায়ের পার্থক্য ও গাইড

এই অধ্যায়ের সূত্র

  • input() সবসময় স্ট্রিং দেয়; সংখ্যা হিসেবে যোগ করতে int() দিয়ে টাইপ কাস্টিং করতে হয়
    "5"+"3"="53"int("5")+int("3")=8\text{"5"} + \text{"3"} = \text{"53"} \qquad \text{int}(\text{"5"}) + \text{int}(\text{"3"}) = 8
    সিমুলেশনে দেখো →

সৃজনশীল প্রশ্ন ও উত্তর

ময়মনসিংহের একটি বিদ্যালয়ের দশম শ্রেণির শিক্ষার্থী সুমাইয়া পাইথনে ফলাফলের গ্রেড বের করার একটি প্রোগ্রাম লেখে (কোড ক)। তার বন্ধু রাফি একই কাজের জন্য শর্তগুলো উল্টো ক্রমে সাজিয়ে আরেকটি প্রোগ্রাম লেখে (কোড খ)।

কোড ক:

marks = int(input('Enter marks: '))
if marks >= 80:
    print('A+')
elif marks >= 70:
    print('A')
elif marks >= 60:
    print('A-')
elif marks >= 40:
    print('Pass')
else:
    print('Fail')

কোড খ:

marks = int(input('Enter marks: '))
if marks >= 40:
    print('Pass')
elif marks >= 60:
    print('A-')
elif marks >= 70:
    print('A')
elif marks >= 80:
    print('A+')
else:
    print('Fail')
  1. ক

    টাইপ কাস্টিং কী?

    উত্তর দেখাও

    কোনো ডেটার ডেটাটাইপ পরিবর্তন করে অন্য ডেটাটাইপে রূপান্তর করাকে টাইপ কাস্টিং বলে, যেমন int(), float(), str() দিয়ে।

  2. খ

    কোড ক-এর প্রথম লাইনে input()-এর চারপাশে int() ব্যবহার করা হয়েছে কেন? ব্যাখ্যা করো।

    উত্তর দেখাও

    input() ফাংশন সংখ্যা টাইপ করলেও তা সবসময় str (টেক্সট) হিসেবে গ্রহণ করে। str-এর সাথে marks >= 80 এর মতো সংখ্যাগত তুলনা করা যায় না (পাইথনে ত্রুটি আসে)। তাই int() দিয়ে ইনপুটকে পূর্ণসংখ্যায় রূপান্তর করে marks-এ রাখা হয়েছে, যাতে তুলনা সঠিকভাবে হয়।

  3. গ

    কোড ক-এ ইনপুট যথাক্রমে ৮৫, ৬৫ ও ৩০ দিলে (তিনবার আলাদাভাবে চালালে) কী আউটপুট পাওয়া যাবে? ধাপে ধাপে দেখাও।

    উত্তর দেখাও

    কোড ক-এ শর্তগুলো ওপর থেকে নিচে পরীক্ষিত হয় এবং প্রথম সত্য শর্তের ব্লকটি চলে। ইনপুট ৮৫: 85 >= 80 সত্য, আউটপুট A+। ইনপুট ৬৫: 65 >= 80 ও 65 >= 70 মিথ্যা, 65 >= 60 সত্য, আউটপুট A-। ইনপুট ৩০: কোনো শর্তই (>= 80, 70, 60, 40) সত্য নয়, তাই else চলে এবং আউটপুট Fail। (python৩-এ চালিয়ে যাচাই করা হয়েছে: A+, A-, Fail।)

  4. ঘ

    কোড খ-এ ৮৫ ইনপুট দিলে কোন আউটপুট আসবে এবং কেন তা ভুল? কোডটি সংশোধন করার উপায় লেখো এবং তিনজন শিক্ষার্থীর নম্বরের জন্য for লুপ ব্যবহার করে সংশোধিত কোড লেখো।

    উত্তর দেখাও

    কোড খ-এ ৮৫ ইনপুট দিলে Pass আসে (৬৫-এর জন্যও Pass আসে, ৩০-এর জন্য Fail)। কারণ elif ওপর থেকে নিচে পরীক্ষিত হয় এবং প্রথম সত্য শর্তের ব্লকটি চলে। সবচেয়ে ওপরে marks >= 40 থাকায় ৪০ বা তার বেশি সব নম্বরেই এটি সত্য হয়, ফলে A+, A, A- পর্যন্ত নিচের শর্তগুলোয় কখনোই পৌঁছানো যায় না। সংশোধনের উপায়: শর্তগুলো বড় থেকে ছোট ক্রমে সাজাতে হবে, যেমন কোড ক-এ আছে (প্রথমে >= 80, শেষে >= 40)। তিনজনের জন্য for লুপ:

    for i in range(3):
        marks = int(input('Enter marks: '))
        if marks >= 80:
            print('A+')
        elif marks >= 70:
            print('A')
        elif marks >= 60:
            print('A-')
        elif marks >= 40:
            print('Pass')
        else:
            print('Fail')
    

    ইনপুট ৮৫, ৬৫, ৩০ দিলে আউটপুট A+, A-, Fail আসে (python৩-এ চালিয়ে যাচাই করা)।

সৃজনশীল প্রশ্নের উত্তর লেখার নিয়ম →