সমস্যা
C প্রোগ্রামিং ভাষা ব্যবহার করে দত্ত এক বা দুটি ডিজিটের সংখ্যাকে ইংরেজি ওয়ার্ডে কনভার্ট করা সম্ভব কিনা?
সমাধান
স্যুইচ কেসের সাহায্যে সহজেই দত্ত দুটি ডিজিটের সংখ্যাকে ইংরেজি ওয়ার্ড ফরম্যাটে কনভার্ট করা যায়। শুধু দুটি ডিজিট নয়, যেকোনো সংখ্যাও C-তে ইংরেজি স্টেটমেন্টে কনভার্ট করা যায়।
এই প্রোগ্রামে আমরা এক বা দুটি ডিজিটের সংখ্যাকে ইংরেজি ওয়ার্ড ফরম্যাটে কনভার্ট করব।
উদাহরণ
#include<stdio.h>
int main() {
int no;
printf("enter any 1 or 2 digit number:");
scanf("%d", &no);
if (no < 0 || no >= 99) // finding out whether enter no is 2 digit or not
printf("Invalid number");
else {
printf("entered number:");
switch (no) {
case 0: printf("zero"); break;
case 10: printf("ten"); break;
case 11: printf("eleven"); break;
case 12: printf("twelve"); break;
case 13: printf("thirteen"); break;
case 14: printf("fourteen"); break;
case 15: printf("fifteen"); break;
case 16: printf("sixteen"); break;
case 17: printf("seventeen"); break;
case 18: printf("eighteen"); break;
case 19: printf("nineteen"); break;
default:
switch (no / 10) // first digit word
{
case 2: printf("twenty"); break;
case 3: printf("thirty"); break;
case 4: printf("forty"); break;
case 5: printf("fifty"); break;
case 6: printf("sixty"); break;
case 7: printf("seventy"); break;
case 8: printf("eighty"); break;
case 9: printf("ninety"); break;
}
switch (no % 10) // second digit word
{
case 1: printf("one"); break;
case 2: printf("two"); break;
case 3: printf("three"); break;
case 4: printf("four"); break;
case 5: printf("five"); break;
case 6: printf("six"); break;
case 7: printf("seven"); break;
case 8: printf("eight"); break;
case 9: printf("nine"); break;
}
}
}
return 0;
}
আউটপুট
enter any 1 or 2 digit number: 83 entered number: eighty three enter any 1 or 2 digit number: 6 entered number: six enter any 1 or 2 digit number: 548 Invalid number