HOME ফ্লোচার্ট ও C-প্রোগ্রাম
$$x = 45, y = 36$$
Rajshahi • 2025
ক) টোকেন কী?
খ) চলকের নামে আন্ডারস্কোর ব্যবহার করা যাবে- বুঝিয়ে লেখ।
গ) উদ্দীপকে উল্লিখিত সংখ্যাদ্বয়ের গ. সা. গু. নির্ণয়ের জন্য ফ্লোচার্ট তৈরি কর।
ঘ) উদ্দীপকে উল্লিখিত সংখ্যাদ্বয়ের ল. সা. গু. নির্ণয়ের জন্য একটি C-প্রোগ্রাম রচনা কর।

সমাধান (Solution)

ক) টোকেন কী?
C প্রোগ্রামে ব্যবহৃত প্রতিটি ক্ষুদ্রতম উপাদানকে (যেমন: কিওয়ার্ড, আইডেন্টিফায়ার, কনস্ট্যান্ট, স্ট্রিং, স্পেশাল সিম্বল বা অপারেটর) সমষ্টিগতভাবে টোকেন বলা হয়। এটি একটি প্রোগ্রামের মূল গঠনকারী একক।

খ) চলকের নামে আন্ডারস্কোর (_) ব্যবহার করা যাবে— বুঝিয়ে লেখ।
C প্রোগ্রামে চলক বা ভেরিয়েবলের নামকরণের ক্ষেত্রে আন্ডারস্কোর (_) ব্যবহার করা বৈধ। চলকের নামের শুরুতে বা মাঝখানে একাধিক শব্দকে আলাদা করতে এটি ব্যবহৃত হয় (যেমন: first_name বা _value)। তবে চলকের নামে আন্ডারস্কোর ছাড়া অন্য কোনো বিশেষ চিহ্ন বা স্পেস ব্যবহার করা যায় না।

গ) উদ্দীপকে উল্লিখিত সংখ্যাদ্বয়ের গ.সা.গু. (GCD) নির্ণয়ের ফ্লোচার্ট
দুটি সংখ্যার গ.সা.গু. বের করার সবচেয়ে কার্যকর পদ্ধতি হলো ইউক্লিডীয় পদ্ধতি। নিচে এর ফ্লোচার্ট দেওয়া হলো:
শুরু (Start)Input: x, yy ≠ 0?হ্যাঁtemp = yy = x mod yx = tempনাOutput: xশেষ (End)
ঘ) সংখ্যাদ্বয়ের ল.সা.গু. (LCM) নির্ণয়ের C-প্রোগ্রাম
আমরা জানি, দুটি সংখ্যার গুণফল তাদের গ.সা.গু. এবং ল.সা.গু.-এর গুণফলের সমান। অর্থাৎ, $LCM = (x \times y) / GCD$।
#include <stdio.h>

int main() {
    int x = 45, y = 36, a, b, temp, gcd, lcm;
    a = x;
    b = y;
    // গ.সা.গু. বের করার লজিক (ইউক্লিডীয় পদ্ধতি)
    while (b != 0) {
        temp = b;
        b = a % b;
        a = temp;
    }
    gcd = a;
    // ল.সা.গু. নির্ণয়
    lcm = (x * y) / gcd;
    printf("The LCM of %d and %d is: %d\n", x, y, lcm);
    return 0;
}
ব্যাখ্যা:
১. প্রোগ্রামে x ও y এর মান নির্দিষ্ট করে দেওয়া হয়েছে।
২. while লুপ ব্যবহার করে প্রথমে সংখ্যা দুটির গ.সা.গু. বের করা হয়েছে।
৩. গ.সা.গু. পাওয়ার পর গাণিতিক সূত্রের সাহায্যে ল.সা.গু. (LCM) নির্ণয় করে আউটপুট দেখানো হয়েছে।