«

»

শখের বশে সি প্রোগ্রামিং: exit এবং continuity নিয়ন্ত্রন(৩)

বন্ধুরা, exit এবং continuity নিয়ন্ত্রনের গতপর্বে আমরা দেখেছিলাম কিভাবে ইউজারের ইনপুট দেয়া ডাটা রিসিভ করা হয়। আজ দেখব সেই ডাটার উপর ভিত্তি করে কিভাবে প্রোগ্রাম exit বা continue করে। তবে তার আগে কোডটা একটু দেখে নিই।

#include<stdio.h>
#include<conio.h>
#include<ctype.h>
void main()
{clrscr();
char ch;
int a;
printf(“continue(y/n)\n”);
ch=getch();
ch=toupper(ch);
while(ch!=’N’)
{
printf(“ENTER THE NUMBER U WANT TO CHECK\n”);
scanf(“%d”,&a);
if (a%2==0)
printf(“IT IS EVEN NUMBER\n”);
else
printf(“IT IS ODD NUMBER\n”);
printf(“continue again(y/n)?\n”);
ch=getch();
ch=toupper(ch);
}
}

এখানে ch=toupper(ch); এর পরবর্তী লাইনে আছে while(ch!=’N’) যার মাধ্যমে while loop শুরু হল এবং লুপের কোড লেখা হয়েছে {} এর মধ্যে। while(ch!=’N’) এর মাধ্যমে বোঝানো হচ্ছে, যদি ch এ সংরক্ষিত ডাটা ‘N’ না হয় তবে তা যেনো লুপ এ প্রবেশ করে আর যদি ‘N’ থাকে তবে লুপে না যেয়ে এর পরবর্তী লাইনে যায়। এখানে লুপের কোডের পরবর্তীতে কোনো লাইন তাই প্রোগ্রামটি exit করবে যদি ch এর সংরক্ষিত ডাটা ‘N’ হয়। উল্লেখ্য ch ভেরিয়েবলে কোন ডাটা থাকবে তা নির্ভর করছে ইউজারের দেয়া ডাটা উপর, যে ডাটা ইউজার ইনপুট দেবে printf(“continue(y/n)\n”); লাইনের continue(y/n) লেখাটি দেখে।

ch এ সংরিক্ষিত ডাটা  ‘N’ না হলে while loop এ ঢোকার পরে

printf(“ENTER THE NUMBER U WANT TO CHECK\n”);

এর মাধ্যমে ENTER THE NUMBER U WANT TO CHECK এই লেখাটি স্ক্রীনে প্রদর্শিত হবে। এবং “\n” এর মাধ্যমে কার্সার এক লাইন নিচে নেমে যাবে। উল্লেখ্য এই লেখার মাধ্যমে ইউজারকে যেকোনো সংখ্যা ইনপুট হিসেবে দিতে বলা হচ্ছে তা চেক করে দেখার জন্য।

এই লেখাটি দেখে ইউজার যে সংখ্যা ইনপুট হিসেবে দেবে তা

scanf(“%d”,&a); এর মাধ্যমে a ভেরিয়েবলে সংরক্ষিত থাকবে।

পরবর্তীতে

if (a%2==0)
printf(“IT IS EVEN NUMBER\n”);
else
printf(“IT IS ODD NUMBER\n”);

এই লাইনগুলোর মাধ্যমে বোঝানো হচ্ছে, যদি a কে 2 দ্বারা ভাগ করলে ভাগশেষ ০ হয়(if (a%2==0) )তবে যেনো IT IS EVEN NUMBER লেখাটি স্ক্রীনে প্রদর্শিত হয় (printf(“IT IS EVEN NUMBER\n”);)

নতুবা অর্থাৎ তা না হলে (else) যেনো IT IS ODD NUMBER লেখাটি স্ক্রীনে প্রদর্শিত হয় (printf(“IT IS ODD NUMBER\n”);)

লক্ষ্য করুন এখনো কিন্তু while loop ই চলছে। লুপ থেকে বের হয় নাই কিন্তু। লুপের পরবর্তী লাইনগুলো হল

printf(“continue again(y/n)?\n”);
ch=getch();
ch=toupper(ch);

লুপের বাইরেও একবার এই লাইনগুলো লেখা হয়েছে, মনে আছে নিশ্চয়ই। এখানে এই লাইনগুলোর কাজ আগের মতই। তবে এক্ষেত্রে লুপের ভেতরে কোড চলা অবস্থাতেই ইউজার ইনপুট দিচ্ছে এবং সেই ইনপুট ch ভেরিয়েবলে সংরক্ষিত হচ্ছে। এরপর কোড থেকে বের হচ্ছে। বের হওয়ার পরে আবার চেক করা দেখা হচ্ছে while(ch!=’N’) এর মাধ্যমে যে,ch এর ডাটা কি ‘N’ নাকি অন্য কিছু। এভাবেই কোড কাজ করবে।

বন্ধুরা, এই হল আমাদের exit এবং continuity নিয়ন্ত্রিত প্রোগ্রাম। ভালো থাকবেন সবাই। ধন্যবাদ সবাইকে।


এ সম্পর্কিত আরো কিছু টুইট:

beemp3.com সাইটে Mp3 ডাউনলোডে'র জন্য একটি ছোট্ট একটি টুইট!
কম্পিউটারে টেম্পরারি ভাইরাস মুছুন.........
অনলাইন আয় করুন সহজে ! ( নতুনদের জন্য)
আপনার ওয়ার্ডপ্রেস মেনু কে সাজিয়ে নিন ৩ কলামে। ফ্রী ডাউনলোড করুন ওয়ার্ডপ্রেস প্রেমিয়াম প্লাগিন।
সব প্রোগ্রাম খোলা রেখেই কম্পিউটার বন্ধ করুন ।
খুব সহজে ওয়ার্ডপ্রেস সাইটকে মোবাইল এর উপযোগী করে নিন………….
এর থেকে সহজ উপায়ে Bitcoin আয় করা সম্ভব না !!! দিনে কমপক্ষে ৬০০০০ Satoshi!!! পেমেন্ট প্রুফ সহ!!! 1 Bi...

মন্তব্য দিনঃ

comments

About the author

MITHU

Permanent link to this article: http://techtweets.com.bd/tips-tricks/mithublue/12194

5 comments

Skip to comment form

  1. উজ্জল

    সকলের উদ্দেশ্যে আর একটু সহজ করে দিলাম।

    #include

    void main(){

    int a;
    char c;

    while(1){

    scanf(“%d”,&a);

    if(a==0)
    break; //enter 0 to break

    else if (a%2==0)
    printf(“IT IS EVEN NUMBER\n”);

    else
    printf(“IT IS ODD NUMBER\n”);

    }

    return 0;
    }

    1. উজ্জল

      শেষের return 0; টা delete করে কম্পাইল করবেন।

    2. MITHU

      ১)আমিও সেই একই কথাই ভাবছিলাম। return 0; আসবে কেন এখানে, কারণ return 0 , void main() এর সাথে লিখতে হয় না।
      ২) একটা প্রোগ্রাম বহু ভাবে করা যায়। আপনি যেভাবে দেখালেন,এর থেকেও সোজাভাবে করা যায়। কিন্তু আমি এভাবে করেছি যাতে একটা বিষয়ে আরো অনেক কিছু কাভার করতে পারি। তাছাড়া, আমি এখানে পিএইচপি নিয়েও লিখছি। পিএইচপি এর বেসিক সি এর সাথে পুরো মিলে। আমার সব ব্লগগুলো এমনই ধারাবাহিকভাবে লিখেছি যাতে পেছনের গুলো পড়ার পরে সামনের গুলো বুঝতে সমস্যা না হয়, যেমন পিএইচপি এর অপারেটর আমি এর আগে আলোচনা করেছি, কেউ যদি সেগুলো দেখে তাহলে while(1) এর চেয়ে while(ch!=’N’) এটাই ভালো বুঝবে। একটা জিনিস সহজ করার আগের কাজ তা ভালোভাবে বুঝতে পারা।
      ৩) আর আপনার প্রোগ্রামটা দেখে আমি অবাক হলাম কারণ,আপনি জোড় বেজোড়ের ধারণাই বদলে দিলেন। কারণ কেউ যদি “০” কি তা জানতে চায় সে ক্ষেত্রে আপনার এই কোড দিয়ে দেখতে পারবে না, ০ কি কোনো সংখ্যা না যে আপনি তাকে এর মধ্যে ফেলতে চাচ্ছেন না। ০ কাভার হয়না বলেই আমি এভাবে লিখিনি।

  2. উজ্জল

    ভাইয়া, ০ নিয়া কথা বলছেন? আপনার code 0 এর জন্য কি answer দিবে? even নাকি odd? আপনি কি জানেন না যে ০ একটা অস্বাভাবিক সংখ্যা যা ধনাত্মক না আবার ঋণাত্মক ও না।আপনার অবস্থা তো আমার থেকেও খারাপ।

    সরি ভাই,ভাল থাকবেন।

    1. MITHU

      আশ্চর্য,আপনার কমেন্ট দেখে তো আপনি লজ্জা পাবেন কি? আমিই লজ্জা পাচ্ছি। ০ ধনাত্বক/রিনাত্বক না এ কথা এখানে আসছে কেন ? তার মানে কি, জোড় বেজোড় বিচারের জন্য ধনাত্বক/রিনাত্বকের সম্পর্ক থাকতে হবে ? যান, আমার কথা তো বিশ্বাস হয় না, নিন আপনার জন্য জ্ঞানের পসরা নিয়ে আসলাম। পড়ুন আর সময় না থাকলে অন্তত প্রথম ২লাইন হলেও পড়ুন।
      mathworld.wolfram.com/EvenNumber.html
      আরো পড়ুন
      mathforum.org/library/drmath/view/57132.html
      আরো লাগবে!!!!
      (লিংকগুলোর আগে http যোগ করে নেবেন।)

মন্তব্য করুন