C এক্সপ্রেশন : Expression

এক্সপ্রেশন শব্দের অর্থ অভিব্যক্তি। এমন কিছু আচার আচরণ, ইশারা ইঙ্গিত, কথাবার্তা, শব্দ, মুখভঙ্গি যা আমাদের মনের একটি নির্দিষ্ট ভাব প্রকাশ করে তাই হচ্ছে অভিব্যক্তি। অভিব্যক্তি দ্বারা ভাব প্রকাশ করা হয়, অভিব্যক্তিকে সব সময়ই অর্থবহ হতে হয়।

C এক্সপ্রেশন সমূহও অনেকটা তেমনই। C ভাষায় এক্সপ্রেশন হচ্ছে অপারেটর ও অপার‍্যান্ড এর সমন্বয়ে তৈরী কোড সেগমেন্ট যার একটি নির্দিষ্ট চুড়ান্ত মান আছে। অর্থাৎ ঐ কোড সেগমেন্টকে এক্সেকিউট করলে, অপারেটর দের কাজ শেষ হবার পরে ১ টি মাত্র চুড়ান্ত মান পাওয়া যাবে। এই চুড়ান্ত মান গাণিতিক বা সংখ্যা মান হতে পারে, আবার যৌক্তিক বা লজিকার মান (সত্য বা মিথ্যা; True বা False) ও হতে পারে।

মোট কথা হল, এক্সপ্রেশন হচ্ছে এমন একটি কোড সমন্বয় যার একটি মান আছে। যেমন, ধরা যাক a, b ও c তিনটি ইন্টিজার ভ্যারিয়েবল। নিচের এসাইনমেন্ট স্টেটমেন্টটি খেয়াল করা যাক,

a= b+c;

এখানে এসাইনমেন্ট অপারেটর এর বাম পাশে আছে a এবং ডান পাশে আছে কোড সেগমেন্ট b+c। b+c এর অর্থ হচ্ছে b ও c তে জমা থাকা ভ্যালুর যোগফল। অর্থাৎ,  b+c এর একটি চূড়ান্ত মান আছে। তাই b+c অংশটি হচ্ছে একটি এক্সপ্রেশন।

এক্সপ্রেশন প্রায় সব সময়ই অপারেটর ও অপার‍্যান্ড (ভ্যারিয়েবল, কনস্ট্যান্ট ইত্যাদি) এর সমন্বয়ে গঠিত। এবং এক্সপ্রেশন এর সব সময়ই একটি লজিকাল বা যৌক্তিক মান থাকে। চুড়ান্ত মানের উপর ভিত্তি করে তার যৌক্তিক মান হয় সত্য অথবা মিথ্যা হয়।

C তে কোন বুলিয়ান (Boolean) True বা False নেই। কিন্তু অন্য একটি উপায়ে C তে সত্য বা মিথ্যা নিরূপন করা যায়। যখন কোন এক্সপ্রেশনের চুড়ান্ত সংখ্যা মান শূন্য (0) তখন সেই এক্সপ্রেশনটি মিথ্যা, অর্থাৎ লজিকাল মান হল False। যে কোন অশূন্য সংখ্যা মানের জন্য কোন এক্সপ্রেশন সত্য, অর্থাৎ লজিকালি True।
উল্টোভাবে বলতে গেলে, C ভাষায় সকল মিথ্যা এক্সপ্রেশন এর সংখ্যা মান 0 আর সত্য এক্সপ্রেশন এর মান অশূন্য (সাধারণত 1)।

মনে রাখতে হবে যে, অশূন্য মানের সকল এক্সপ্রেশন ই সত্য, তবে সাধারণত সত্য এক্সপ্রেশন এর মানকে  1 দ্বারা প্রকাশ করা হয়। এর মানে এই নয় যে, কেবল 1 ই সত্য বা True। বস্তুত কোন এক্সপ্রেশন এর মান শূন্য না হলেই তা সত্য।

এবার বলেন দেখি নিচের কোডের আউটপুট কত?

#include<stdio.h>

int main()
{
    int a, b, c, d;
    c=1;
    d=10;

    a= c>d;
    b= d<c;

    printf("%d %d", a, b);

return 0;
}

অপারেটর ও অপার‍্যান্ড এর উপর ভিত্তি করে এক্সপ্রেশন অনেক ধরনের হতে পারে। যেমন,

গাণিতিক বা Arithmetic অপারেটর কোন এক্সপ্রেশন এ থাকলে তাকে গাণিতিক বা arithmetic এক্সপ্রেশন বলে। আবার কোন গাণিতিক এক্সপ্রেশনে উপস্থিত অপার‍্যান্ড এর ধরন এর উপর ভিত্তি করে,
ইন্টিজার এক্সপ্রেশন,
ফ্লোটিং পয়েন্ট বা রিয়েল এক্সপ্রেশন
এবং মিশ্র বা মিক্সড এক্সপ্রেশন এই তিন ভাগে ভাগ করা যায়।

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

এরকম আরো অনেক ধরনের এক্সপ্রেশন আছে।

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

0 comments:

Post a Comment