Thursday, 7 September 2017

লুপের ঘুরাঘুরি (Loop in C program) part-2



আমরা গত পর্বে একটা প্রোগ্রাম লিখেছিলাম,

যেখানে for(i=1; i<=5; i=i+1) লুপটা এই রকম ছিলো।
আমরা আজকে করবো সামান্য কিছু পরিবর্তন করে।


 
#include<stdio.h >
int main()
{
    int i=0;
    for(i=0; i<5; i=i+1)
    {
        printf("Hello world\n");
    }
    return 0;
}

আমরা আগের প্রোগ্রামে i এর মান নিয়েছিলাম 1. কিন্তু এবার i এর মান 0.
তাই শর্তটি ও সামান্য বদলেছে। i<=5 এর পরিবর্তে আমরা i<5 বসিয়েছি। এর মানে i এর মান 0 থেকে শুরু হবে এবং
5 এর আগে অর্থাৎ 4 গিয়ে শেষ হবে।
তোমার যতথেকে ইচ্ছা i এর মান নিতে পারো, তবে সচারচর i=0 থেকেই নেওয়া হয়। এবার নিচের প্রোগ্রামটা দেখোঃ
 
#include<stdio.h >
int main()
{
    int i=0;
    for(i=0; i<5; i++)
    {
        printf("Hello world\n");
    }
    return 0;
}

এবার কি কোন পার্থক্য দেখতে পারছো? i=i+1 এর জায়গায় আমরা i++  বসিয়ে দিয়েছি।
i+1 কে i++ লেখা হয় সংক্ষেপে।

এবার নিচের প্রোগ্রামটা দেখোঃ
 
#include<stdio.h >
int main()
{
    int i;
    for(i=0; i<5; i++)
    {
        printf("Hello world\n");
    }
    return 0;
}

এই প্রোগ্রামেও শধু একটা জিনিস বদলেছি, আমরা int i=0 ; এই অংশটুকুটায় শধু int i; লেখেছি। এর কারণ হলো,
for(i=0;........) এইখানে আমরা i এর মান নির্ধারণ করে দিয়েছি। তাই আর উপরে না দিলেও চলবে।
নিচের প্রোগ্রামটা রান করে দেখোঃ

#include <stdio.h>
int main()
{
    int i=50;

    for(i=0; i<5; i++)
{
printf("%d\n",i);
}
return 0;
}

বলো তো আউটপুট কি? এর আউটপুট হলো 0,1,2,3,4
উপরে i এর মান 50 হলেও , for(i=0.. এই লাইনে এসে i er ,man ekon ০ হয়ে গেছে। তাই কাইন্ট 0 থেকেই শুরু হবে, এনং প্রতিবার i এর মান প্রিন্ট করবে।

এবার মনেকরো আমাদের বলা হলো ১-১০ পর্যন্ত  সংখ্যা প্রিন্ট করতে , নিশ্চয় ১০ বার printf(.........)
লেখা শুরু করবে না। তাহলে চলো লুপ দিয়ে প্রোগ্রামটা লিখিঃ

#include<stdio.h>

int main()

{

    int i;



    for(i=1; i<=10; i++)

    {

        printf("%d\n",i);

    }

    return 0;

}


আমরা একই  প্রোগ্রামটা for(i=1; i<11; i++) এভাবেও লিখতে পারতাম। এই স্টেটমেন্টটার লজিক তুমি নিজে বের করার চেস্টা করো।

এখন মনেকরো বলা হলো ০-১০ পর্যন্ত প্রিন্ট করতে হবে। তাহলে আমাদের প্রোগ্রামটা হবে এরকমঃ

#include<stdio.h>

int main()

{

    int i;



    for(i=0; i<=10; i++)

    {

        printf("%d\n",i);

    }

    return 0;

}

একই প্রোগ্রামটা আমরা for(i=0; i<11; i++) দিয়ে লিখতে পারি।

আশাকরি i এর মান ইনিশিয়ালাইজড এবং ব্রেকিং কন্ডিশন নিয়ে তোমাদের আর কোন অসুবিধা নেই। তবু কোন কিছু না বোঝলে অবশ্যই কমেন্টে জানাবে।

0 comments:

Post a Comment