if-else if-else দিয়ে একটি সি প্রোগ্রাম (এসএসসি পরীক্ষার ফলাফল কে GPA তে প্রকাশ)

সমস্যা: এসএসসি পরীক্ষার ফলাফল কে GPA তে প্রকাশ করার একটা সি প্রোগ্রাম লিখুন। যেমন আপনি যদি কীবোর্ড থেকে 70 ইনপুট দেন তাহলে দেখাবে A+ (GPA-5.00) সমাধানঃ এসএসসি পরীক্ষার ফলাফলকে GPA তে প্রকাশ করার নিয়মটা লক্ষ্য করুন : যদি 80 বা তার বেশি হয় তবে GPA 5.00 বা A+ অথবা যদি 70 বা 70 থেকে বেশি এবং 80 থেকে কম হয় তবে GPA 4.00 বা A অথবা যদি 60 বা 60 থেকে বেশি এবং 70 থেকে কম হয় তবে GPA 3.50 বা A- অথবা যদি 50 বা 50 থেকে বেশি এবং 60 থেকে কম হয় তবে GPA-3.00 বা B অথবা যদি 40 বা 40 থেকে বেশি এবং 50 থেকে কম হয় তবে GPA-2.00 বা C অথবা যদি 33 বা 33 থেকে বেশি এবং 40 থেকে কম হয় তবে GPA-1.00 বা D অথবা Fail সি প্রোগ্রামিং এ যদি বুঝাতে if অথবা যদি বুঝাতে else if অথবা বুঝাতে else ব্যবহার করা হয়। সম্পূর্ন কোডঃ

Code Example

OUTPUT

Enter marks : 45
you have obtained C(GPA-2.00)

ব্যাখ্যাঃ উপরের প্রোগ্রামটা টা রান করার পর আউটপুটে এ Enter marks : লেখাটা দেখানোর পর কীবোর্ড থেকে 45 ইনপুট দেওয়া হয়েছে এবং scanf(“%f”,&mark); স্টেটমেন্ট এর মাধ্যমে 45 কে mark ভেরিয়েবলে রাখা হয়েছে। তারপর ‘if (mark>80)’ লাইনটা এক্সিকিউট হবে। এখন দেখবে যে if এর ভেতরে যে শর্ত দেওয়া আছে তা ভুল কারণ mark এর মান 45 হওয়ায় mark>80 সত্য নয়। তাই if(mark>80) এর পরে যে স্টেটমেন্ট টা আছে সেটা এক্সিকিউট করবে না। তারপর else if(mark>=70 && mark<80) পাবে এবং এখানেও else if এর ভেতরের শর্ত টা সত্য নয়। তাই else if(mark>=70 && mark<80) এর পরে যে স্টেটমেন্ট টা আছে সেটা এক্সিকিউট করবে না। এভাবে বাকি else if এর ভেতরের শর্তগুলো যাচাই করবে এবং যখন else if(mark>40 && mark<50) পাবে তখন দেখবে যে else if(mark>=40 && mark<50) এর ভেতরে যে শর্ত দেওয়া আছে তা সত্য কারণ mark এর মান 45 হওয়ায় mark>=40 && mark<50 সত্য। তাই else if(mark > = 40 && mark<50) এর পরে যে স্টেটমেন্ট আছে সেটা এক্সিকিউট করবে। অর্থাৎ printf(“ you have obtained C(GPA-2.00)”); স্টেটমেন্ট টা এক্সিকিউট করবে। বিঃদ্র: যখন if এবং else if এর ভেতরের কোন শর্ত ই সত্য হয় না তখন else এর নিচের স্টেটমেন্ট টা এক্সিকিউট হবে। যেমন: উপরের প্রোগ্রামে যদি আপনি 31 ইনপুট দেন তাহলে sorry you have failed লেখাটা দেখতে পাবেন।