কম্পিউটার টিউটোরিয়াল

C প্রোগ্রাম: elseif স্টেটমেন্ট ব্যবহার করে সংখ্যা ওয়ার্ড ফরম্যাটে প্রিন্ট করা


সমস্যা

স্যুইচ কেস ছাড়া C প্রোগ্রামিং ভাষায় দত্ত সংখ্যাকে ওয়ার্ড ফরম্যাটে কীভাবে প্রিন্ট করবেন?

সমাধান

এই প্রোগ্রামে টু-ডিজিট সংখ্যা ওয়ার্ডে প্রিন্ট করার জন্য তিনটি কন্ডিশন চেক করা হয়—

  • if (no < 0 || no > 99) — ইনপুট সংখ্যা টু-ডিজিট নয়।
  • else if (no == 0) — প্রথম সংখ্যা শূন্য প্রিন্ট।
  • else if (no >= 10 && no <= 19) — সিঙ্গেল ডিজিট নম্বর ওয়ার্ডে প্রিন্ট।
  • else if (no >= 20 && no <= 90) —
    • if (no % 10 == 0) — টু-ডিজিট নম্বর ওয়ার্ডে প্রিন্ট।

প্রোগ্রাম

#include<stdio.h>
#include<string.h>
int main() {
    int no;
    char *firstno[] = {"zero", "ten", "eleven", "twelve", "thirteen",
        "fourteen", "fifteen", "sixteen", "seventeen",
        "eighteen", "nineteen"};
    char *secondno[] = {"twenty", "thirty", "forty", "fifty", "sixty",
        "seventy", "eighty", "ninety"};
    char *thirdno[] = {"one", "two", "three", "four", "five", "six",
        "seven", "eight", "nine"};
    printf("enter a number:");
    scanf("%d", &no);
    if (no < 0 || no > 99)
        printf("enter number is not a two digit number\n");
    else if (no == 0)
        printf("the enter no is:%s\n", firstno[no]);
    else if (no >= 10 && no <= 19)
        printf("the enter no is:%s\n", firstno[no - 10 + 1]);
    else if (no >= 20 && no <= 90)
        if (no % 10 == 0)
            printf("the enter no is:%s\n", secondno[no / 10 - 2]);
        else
            printf("the enter no is:%s %s\n", secondno[no / 10 - 2], thirdno[no % 10 - 1]);
    return 0;
}

আউটপুট

enter a number: 79
the enter no is: seventy nine
enter a number: 234
enter number is not a two digit number

  1. C প্রোগ্রামিং-এ প্রাকৃতিক সংখ্যা কলাম-ওয়াইজ (Column-wise) প্রিন্ট করা

  2. C প্রোগ্রামিং-এ নাম্বার প্যাটার্ন প্রিন্ট করা (দুই ধরনের প্যাটার্ন)

  3. C প্রোগ্রাম: দেওয়া সংখ্যাকে শব্দে রূপান্তর করা

  4. সি প্রোগ্রামিং-এ ম্যাট্রিক্স ডায়াগোনাল প্যাটার্নে সংখ্যা প্রিন্ট করা