তথ্য ও যোগাযোগ প্রযুক্তি • প্রোগ্রামিং ভাষা

তথ্য ও যোগাযোগ প্রযুক্তি প্রশ্ন

একজন শিক্ষার্থী একটি C প্রোগ্রামে নিচের নামগুলো ভ্যারিয়েবল হিসেবে ব্যবহার করতে চাইল-
2marks, total_mark, my name, _roll, float, student#1
সে একটি শিক্ষার্থীর গ্রেড 'A' (একটি অক্ষর), রোল 25 (পূর্ণসংখ্যা) এবং গড় নম্বর 78.5 (দশমিকযুক্ত সংখ্যা) সংরক্ষণ করতে চায়।

  1. ক)

    কি-ওয়ার্ড কাকে বলে?

    (1)
  2. খ)

    C কে case sensitive ভাষা বলা হয় কেন?

    (2)
  3. গ)

    উদ্দীপকের কোন কোন নাম ভ্যারিয়েবল হিসেবে বৈধ এবং কোনগুলো অবৈধ? অবৈধগুলোর কারণসহ লেখো।

    (3)
  4. ঘ)

    উদ্দীপকের তিনটি তথ্য সংরক্ষণের জন্য উপযুক্ত ডেটা টাইপ নির্ধারণ করো। তিনটি মান প্রিন্ট করার জন্য একটি printf স্টেটমেন্ট লেখো এবং ফরম্যাট স্পেসিফায়ারগুলো ব্যাখ্যা করো। গ্রেড সংরক্ষণকারী ভ্যারিয়েবলে সর্বোচ্চ কতটি ভিন্ন মান রাখা যায়?

    (4)

উত্তর ও ব্যাখ্যা

  1. ক)

    AI-তৈরি নমুনা উত্তর C ভাষার যেসব সংরক্ষিত শব্দ ভাষার অংশ এবং যেগুলোকে ভ্যারিয়েবল বা ফাংশনের নাম হিসেবে ব্যবহার করা যায় না, তাদের কি-ওয়ার্ড বলে।

  2. খ)

    AI-তৈরি নমুনা উত্তর C ভাষায় বড় হাতের ও ছোট হাতের অক্ষরকে আলাদা অক্ষর হিসেবে গণ্য করা হয়। যেমন aaa, AAA ও Aaa তিনটি ভিন্ন ভ্যারিয়েবল। একইভাবে Net, net ও NeT-এর মান এক নয়। অক্ষরের ছোট-বড় রূপের এই পার্থক্যের কারণে C কে case sensitive প্রোগ্রামিং ভাষা বলা হয়।

  3. গ)

    AI-তৈরি নমুনা উত্তর বৈধ নাম: total_mark এবং _roll। এ দুটিতে কেবল বর্ণ, অঙ্ক ও আন্ডারস্কোর আছে এবং শুরুতে কোনো অঙ্ক নেই।

    অবৈধ নাম ও কারণ-
    ১) 2marks: নামের প্রথম অক্ষর অঙ্ক হতে পারে না।
    ২) my name: ভ্যারিয়েবলের নামে স্পেস দেওয়া যায় না।
    ৩) float: এটি C ভাষার কি-ওয়ার্ড, কি-ওয়ার্ডকে ভ্যারিয়েবলের নাম হিসেবে ব্যবহার করা যায় না।
    ৪) student#1: নামে # এর মতো বিশেষ চিহ্ন ব্যবহার করা যায় না (কেবল আন্ডারস্কোর ও ডলার চিহ্ন ছাড়া)।

  4. ঘ)

    AI-তৈরি নমুনা উত্তর উপযুক্ত ডেটা টাইপ-
    ১) গ্রেড 'A' একটি মাত্র অক্ষর, তাই char টাইপ।
    ২) রোল 25 পূর্ণসংখ্যা, তাই int টাইপ।
    ৩) গড় নম্বর 78.5 দশমিকযুক্ত সংখ্যা, তাই float (বা double) টাইপ।

    ধরি ভ্যারিয়েবলগুলো যথাক্রমে grade, roll ও avg। প্রিন্টের স্টেটমেন্ট-
    printf("%c %d %f", grade, roll, avg);

    ফরম্যাট স্পেসিফায়ার-
    %c: char টাইপের ডেটা প্রিন্টের জন্য।
    %d: int টাইপের ডেটা প্রিন্টের জন্য।
    %f: float টাইপের ডেটা প্রিন্টের জন্য (double হলে %lf)।

    char টাইপ মেমোরিতে এক বাইট বা 8 বিট জায়গা নেয়। n বিট দিয়ে 2n2^n রকম ভিন্ন জিনিস প্রকাশ করা যায়। তাই 28=2562^8 = 256 টি ভিন্ন মানের যেকোনো একটি char ভ্যারিয়েবলে রাখা যায়। তবে একই সময়ে ভ্যারিয়েবলে কেবল একটি মানই থাকবে।

আরও প্রশ্ন অনুশীলন করতে অ্যাপে যাও