Sunday, January 5, 2014

C প্রোগ্রামিং - ছয় অধ্যায় - Continue StatemenT

Continue statement: continue statement ব্যবহৃত হয় বিভিন্ন লুপিং প্রোগ্রাম এর ক্ষেত্রে। continue statement যদি কোন while or do-while loop এর ক্ষেত্রে execute হয় তবে ঐ continue statement এর পর , সরাসরি লুপিং এর condition এর অংশে চলে যায়
নিচের উদাহরনগুলো ব্যাপারটাকে পরিস্কার করে তুলবে।



এখানে  i++  এর কারনে এর i মান যখন ৫ এবং ৬ তখন continue statement এর কারনে ৫ এবং ৬ এর মান প্রিন্ট না করে সরাসরি condition অংশে চলে যাবে ।


এখানে ও একই বেপার হয়েছে ।


আর যদি for loop হয় সেক্ষেত্রে for loop এর increment/decrement অংশে চলে যায়।

তাহলে ত বুজতে পেরেছ কোনো জায়গায় continue ব্যবহার করলে লুপের ভেতরে continue-এর পরের অংশের কাজ আর হয় না। নিচের প্রোগ্রামটি কোড করে কম্পাইল ও রান করো: 




#include <stdio.h>  
 int main()  
 {  
     int n = 0;  
     while (n < 10) {  
         n = n + 1;  
         if (n % 2 == 0) {  
             continue;  
         }  
         printf("%d\n", n);  
     }  
     return 0;  
 }


এই প্রোগ্রামটি 1 থেকে 10-এর মধ্যে কেবল বেজোড় সংখ্যাগুলো প্রিন্ট করবে। জোড় সংখ্যার বেলায় continue ব্যবহার করার কারণে প্রোগ্রামটি printf("%d\n", n); স্টেটমেন্ট এক্সিকিউট না করে লুপের পরবর্তী ধাপের কাজ শুরু করবে।

C প্রোগ্রামিং - ছয় অধ্যায় - Break StatemenT

আজ একটি দরকারি জিনিস নিয়ে আলোচনা  করব , যেটি দিয়ে তোমরা জোর করে লুপ থেকে বের হয়ে যেতে পারবে। সেটি হচ্ছে  break স্টেটমেন্ট। break statement ব্যবহৃত হয় প্রধানত লুপ terminate  ( শেষ ) করা বা  বের হয়ে যাওয়ার জন্য। লুপিং এর ক্ষেত্রে যখন break statement  টি  execute হয়, তখন যে loop এর ভিতরে break statement টি লিখা হয়েছে, সেই লুপ এর মধ্যে আর কোন কাজ না করে সরাসরি বাইরে চলে আসে।


For loop, while loopdo-while loop এর ক্ষেত্রেও break statement ব্যবহৃত হয়। নিচে for loop এর মধ্যে break statement ব্যবহার করা হল। প্রোগ্রাম লিখলেই ব্যাপারটি পরিষ্কার হয়ে যাবে।

#include<stdio.h>
int main()
{
    int i;
    for (i=0; i<10; i++)
    {
        if(i==5)
        {
            break ;
        }
        printf("i=%d\n",i);
    }
    printf("outside for loop : i=%d\n",i);
    return 0;
}



এই প্রোগ্রামটি কী করবে ? 1 থেকে 10 পর্যন্ত প্রিন্ট করবে। যদিও while-এর ভেতর আমরা বলেছি যে শর্ত হচ্ছে n <= 100, কিন্তু লুপের ভেতরে আবার বলে দিয়েছি যে যদি n > 10 হয়, তবে break; , মানে বের হয়ে যাও, বা লুপটি ভেঙে দাও। break সব সময় যেই লুপের ভেতর থাকে সেটির বাইরে , প্রোগ্রামটিকে নিয়ে আসে। সুতরাং n-এর মান 10 প্রিন্ট হওয়ার পরে এর মান এক বাড়বে (n++;) অর্থাৎ n-এর মান হবে 11। আর তখন n > 10 সত্য হবে, ফলে প্রোগ্রামটি if কন্ডিশনের ভেতরে ঢুকে যাবে। সেখানে গিয়ে সে দেখবে তাকে break করতে বলা হয়েছে তাই সে লুপের বাইরে চলে যাবে।

নিচের প্রোগ্রামটিতে FOR LOOP দিয়ে  Break Statement  এর আর একটি উদাহরণ দেওয়া হল :




                    




#include <stdio.h>  
 int main()   
 {  
     int n = 1;  
     while(n <= 100) {  
         printf("%d\n", n);      
         n++;  
         if(n > 10) {  
             break;  
         }  
     }  
     return 0;  
 }  




আশা করি বুজতে পারবে ...............।

Saturday, January 4, 2014

C প্রোগ্রামিং - ছয় অধ্যায় - Do While Loop - PART -4

লুপিং হচ্ছে প্রোগামিং এর প্রাণ । ছোট বড় প্রায় সব প্রোগ্রামেই লুপ এর ব্যবহার করতে হয়। লুপিং এর জন্য অনেক গুলো statement রয়েছে। যেমনঃ
1. While
2. Do-while
3. For ইত্যাদি।
আজ  do-while loop লুপ নিয়ে আলোচনা করব।



do-while loop: General form

do
    {
statement;
statement;
statement;
……;
   }
while(condition);


চিত্রটি দেখুন।

নিচের উদাহরনটি দেখুন।

while(0)  //zero
{
         printf(“This line will not printed\n”);
}


do{
         printf(“this line will printed\n”);
    }    while(0);



While এবং do-while এর একটি গুরুত্বপূর্ন পার্থক্য হল, যেখানে while একবার ও execute করে না, সেখানেও do-while একবার execute করে।
কারন হল do-while এ condition check হয় লুপ এর শেষে। কিছু example দিয়ে বোঝা যাক ।



প্রথম এর টা WHILE  দিয়ে করলাম । আসা করি  বুজবেন ।

শর্ত মেলেনি তাই কোনো কিছু print  হয় নি 

#include<stdio.h>
int main()
{
    int i=1;
    while (i<1)
    {
        i++;
        printf ("%d\n",i);
    }
return 0;
}



এবার DO-While ব্যবহার করে একটা প্রোগ্রাম করি ।




#include<stdio.h>
int main()
{
    int i=1;
    do
    {
        i++;
        printf ("%d\n",i);
    }
    while (i<=10);
    return 0;
}



কিছু বুঝতে পারছ ? আমাদের শর্ত   (i<=10);  কিন্তু প্রিন্ট করল ১১ পর্যন্ত কেনো কারন হল do-while এ condition check হয় লুপ এর শেষে তাই পূর্বেরশর্ত পুরন হবার পর i++ এর কারনে ১১ হয়েছে ।







#include<stdio.h>
int main()
{
    int i=0;
    do
    {
        printf ("%d\n",i);
        i++ ;
    }
    while (i<1);
    return 0;
}

 এখানে প্রথম এ 0 প্রিন্ট করল তারপর যখন দেখল i++ তখন সে ০+১ যোগ করে ১ হল কিন্তু WHILE  এর শর্ত পুরন না করতে পারায় আর কিছু করল না । 



C প্রোগ্রামিং পাঁচ অধ্যায় -Nested if-else Statement - PART- 2

Nested if-else: একটি if বা else এর statement এর মধ্যে আবার if-else লিখাই Nested if-else.
General Form:


if (expression
{
   if  (expression
          statement ;
      else 
         statement ;
}
else
 {
  if  (expression
        statement ;
else
        statement ;
 }

উদাহরনটি দেখুন।






#include<stdio.h>
int main()
{
    int value ;
    scanf("%d",&value);
    if (value>=0)
    {
        if(value==0)
            printf("number is zero\n");
        else
            printf("%d is a positive number \n",value);
    }
    else
        printf("%d is a negative number\n",value);
    return 0;
}


আজ এই  পর্যন্ত ।

C প্রোগ্রামিং ছয় অধ্যায় - While loop এর মধ্যে যোগ করা - PART 3

আজ আমরা দেখব while  Looping এর মাধ্যমে কিভাবে ১০ টি সংখ্যার মধ্যে যোগ করা যায় ।ধরুন আপনার দশটা সংখ্যা ইনপুট নিয়ে যোগফল দেখা দরকার। আপনি কি দশবার scanf() function দিয়ে ডাটা ইনপুট নিবেন। কখনোই না। কারন সংখ্যাটা দশ না হয়ে আরও বড় হতে পারে। এ ধরনের সমস্যার সমাধানই হচ্ছে লুপিং।
এবার প্রথমে উল্লেখ করা প্রবলেমটা দেখি।
আমার দশবার loop চালানো প্রয়োজন। এবার নিচের উদাহরনটা দেখুন।




















  1: #include<stdio.h>
  2: int main()
  3: {
  4:     int sum,i,val;
  5:     i=0;
  6:     sum=0;
  7:     while(i<10)
  8:     {
  9:         scanf("%d",&val);
 10:         sum = sum+val;
 11:         i++;
 12:     }
 13:     printf("sum=%d\n",sum);
 14:     return 0;
 15: }
 16: 

OUTPUT:

.
.
.
উল্লেখ্য, প্রতিটি নাম্বার এর আলাদাকারী হিসেবে  স্পেস কাজ করেছে। শেষে 10 লিখার পর এন্টার চাপুন আর আউটপুট দেখুন।
লুপিং এর ক্ষেত্রে condition টা অতি গুরুত্তপূর্ণ। কেননা condition যদি সঠিকভাবে কাজ না করে, মানে condition যদি কখনো false না হয় তবে তা infinity loop এ পড়বে।
যেমনঃ

int i=1;
while(i==1)
{
printf(“a”);
}
printf(“program ended successfully\n”);


উপরের উদাহরনটি করে দেখুন। এই প্রোগ্রামটি কখনই শেষ হবে না। যা প্রোগ্রামটিকে ক্রাশ করাবে।


C প্রোগ্রামিং - কিছু সাধারণ প্রশ্ন ও উত্তর -ASCII-Statement- ( PART -1)

এখানে সি এর কিছু বেসিক জিনিস আলোচনা কোরা হলো । এ গুলো এর আগেও বিভিন্ন পোস্ট এ আলোচনা করা হয়েছে । তারপরও সাধারণ ভাবে আলোচনা করা হল ।

ASCII Character set: আমাদের কীবোর্ড এর সকল কী এর corresponding কিছু value রয়েছে। যেমন A এর ASCII value 65. অর্থাৎ আমরা যখন্ কোন
variable এ character ‘A’ টা জমা রাখি তখন ঐ variable এ ৬৫ জমা থাকে।

Statement: আমরা যখন কোন প্রোগ্রাম লিখব তখন বিভিন্ন ধরনের কাজ করব।যেমন এক variable এর সাথে আরেক variable যোগ করা এবং তা অন্য কোন variable এ জমা রাখা।
A=3; // A variable e 3 রাখা.
c=A+3; // c variable e A এর সাথে 3 যোগ করে c variable এ রাখা।এতে A এর value পরিবর্তিত হয় না।
উল্লেখ্য C language এ সকল statement এর পর ; দেয়া লাগে। 
// (double forwardslash) এর পর যা লিখা হয় তা কমেন্ট হিসেবে গন্য হয়।


C প্রোগ্রামিং - তিন অধ্যায় - Input নেয়ার কিছু ফাংশনঃ scanf () , getchar ( ) -PART- 4

Data Input And Output
Input নেয়ার কিছু ফাংশনঃ scanf() , gets() , getchar() , getch();

scanf(): এই ফাংশনটা দিয়ে int, float, double, single character, string input হিসেবে নেয়া যায়।
example টা দেখুন।


 

  1: #include<stdio.h>
  2: int main()
  3: {
  4:     int i;
  5:     float f;
  6:     char ch;
  7:     printf(" input a number :");
  8:     scanf("%d",&i);
  9:     printf("your entered number is %d \n\n",i);
 10:     printf(" input a floating number :");
 11:     scanf("%f",&f);
 12:     printf("your entered floating number is %f \n\n",f);
 13:     getchar();
 14:     printf(" input a character  :");
 15:     scanf("%c",&ch);
 16:     printf("your entered character is %c \n\n",ch);
 17:     return 0;
 18: }

এখানে উল্লেখযোগ্য ব্যাপার হচ্ছে scanf() function এর মধ্যে & সাইন ব্যবহার।  যখন কোন variable declare করা হয় তখন র‌্যাম এ ঐ variable এর জন্য জায়গা তৈরি হয়। input নেয়ার সময় C তে ঐ memory location উল্লেখ করা লাগে। তাই &সাইন দেয়া হয়েছে। যদি & সাইন ব্যবহার না করেন তবে প্রোগ্রাম compile করলেও কোন ভুল ধরবে না। কিন্তু প্রোগ্রাম রান করে ইনপুট দেয়ার সময় প্রোগ্রাম্ ক্রাশ করবে। একে runtime error ও বলা হয়। আউটপুট এ শুধুমাত্র ভেরিএবল এর নাম দিলেই হয়। সেখানে & সাইন ব্যবহার করা লাগে না।

scanf() function এর আলাদাকারী(separator) কী হচ্ছে Enter ও space। scanf() এ int,float,double ইনপুট দেয়ার সময় নাম্বার ইনপুট না দেয়া পর্যন্ত সে wait করে। কিন্তু charater(char)type data ইনপুট নেয়ার সময় space বা enter এর ASCII value নিয়ে নেয়।

getchar() function কোন একটি character (single) ইনপুট নেয়ার জন্য ব্যবহার হয়। তাই তৃতীয় ব্লক এ single character ইনপুট নেয়ার আগে getchar() ব্যবহার করা হয়েছে float এবং character এর মধ্যবর্তী separator টা নেয়ার জন্য। getchar() টা ব্যবহার না করলে আউটপুট এর character এ কিছু দেখাবে না।
Output with getchar() function:



Typing 512 then enter



Type 3.565 then enter



3.565 টাইপ করার পরবর্তী এন্টার টা getchar() function এ ঢুকেছে। তারপর একটি character type করে এন্টার দিন।


প্রোগ্রাম এর শেষ লাইন return 0; execute করে প্রোগ্রাম শেষ হল।

printf() ফাংশন এ একাধিক ভেরিএবল এর আউটপুট একসাথে দেখার জন্য প্রতিটি specifier এর জন্য ভেরিএবল এর নাম ক্রমানূসারে লিখলেই হয়।

printf(“var1=%d, var2=%f ,var3=%c\n” , var1,var2,var3);

char type variable এর specifier হল %c. যদি %c এর জায়গায় %d ব্যবহার করা হয় তবে ঐ variable  এর ASCII value দেখাবে।

char ch=’A’;
printf(“ch=%d”,ch);


























C প্রোগ্রামিং - দ্বিতীয় অধ্যায় - Type Casting - PART - 9

Type Casting: বিভিন্ন গানিতিক কাজ করার পূর্বে আমাদের type casting সম্পর্কে জানা দরকার। ধরুন একটি integer type (int) variable এর মধ্যে একটি float type variable এর value assign করতে চান।



তখন int variable এর মধ্যে float variable এর মানের শুধুমাত্র integer part টা জমা হয়।
Consider following statements in a program.
int a;
float b=5.3;
a =b; //এই statement এর পর a এর মান হবে 5
b=a; // এই statement এর পর a এর মান হবে 5.00

এগুলো হলো auto type casting. তবে কখনো কখনো manually typecast করা লাগতে পারে।
int a,c,d;
float b=5.3;
c=503;

//a=c%b; এই লাইন টা ভুল কারন b float type variable.
//to do that task

d=(int) b; //manual type casting.
a=c%d;

এখানে d variable এ মান রাখার সময় manual type casting করা হয়েছে। এই কাজটি আরও অনেকভাবে করা যায়।যেমনঃ
int a,c=505;
float b=5.3;
a=c%(int)b; //doing the same thing.

Wednesday, January 1, 2014

C প্রোগ্রামিং তিন অধ্যায় - বিভিন্ন Type এর Data Input and Output কিভাবে নিব - PART 3

আমরা single character, numerical values এবং string কিভাবে কম্পিউটারে input নিব তা দেখবো। single character, numerical values. এবং string যেকোন মান কম্পিউটারে নেওয়ার জন্য “scanf” function ব্যবহার করা হয়। আবার putchar এর মত কোন মান পর্দায় দেখানোর জন্য “printf” function ব্যবহার করা হয়। putchar দিয়ে একটি মাত্র character কম্পিউটারে Out Put দেখানো যেত, কিন্তু “printf” function দ্বারা একদিক ডাটা যেমন single character, numerical values এবং string ইত্যাদির যেকোন মান কম্পিউটারে Output দেখানো যায়।

“scanf” function ব্যবহারের নিয়মঃ

char name;
scanf(“%c”,&name);

এখানে name নামে একটি variable নেওয়া হয়েছে। তার পর আমরা এখন ইনপুট ডিভাইস থেকে এ চলকের মান  কম্পিউটারে নিব। এ জন্য Scanf(“%c”,&name); statement দিয়ে তা নেওয়া হয়েছে।
এখানে control string হচ্ছে c। প্রতিটি control string একটি % চিহ্ন দিয়ে শুরু করতে হয়। তাই এখানে control stringটি %c দ্বারা লিখা হয়েছে। এখানে c দ্বারা বুঝানো হয় যে Data item একটি single character। এরকম আরো অনেক গুলো control string রয়েছে। নিছে এর একটি তালিকা দেওয়া হল।

CodeMeaning
%aInput হিসেবে Floating-point  Data item  নিতে পারবে।
%cInput হিসেবে একটি মাত্র character Data item নিতে পারবে।
%dInput হিসেবে Decimal integer Data item নিতে পারবে।
%eInput হিসেবে Floating-point  Data item  নিতে পারবে।
%fInput হিসেবে Floating-point  Data item  নিতে পারবে।
%gInput হিসেবে Floating-point  Data item নিতে পারবে।
%iInput হিসেবে Decimal, Hexadecimal or Octal Integer Data item  নিতে পারবে।
%oInput হিসেবে Octal Integer Data item  নিতে পারবে।
%pInput হিসেবে Pointer Data item নিতে পারবে।( Pointer সম্পর্কে পরে আলোচনা করা হবে)।
%sInput হিসেবে String   Data item নিতে পারবে।
%uInput হিসেবে Unsigned decimal Data item নিতে পারবে।
%xInput হিসেবে Hexadecimal Data item নিতে পারবে।



“printf” function ব্যবহারের নিয়মঃ

char name;
printf(“%c”, name);
এখানে name নামে একটি Character variable নেওয়া হয়েছে। এখন মনে করি nameএর মান কম্পিউটারে আছে আমরা তার Output বের করবো।তাই printf(“%c”, name); দ্বারা তা Output ডিভাইসে প্রকাশ করে। এখানে ও control string হচ্ছে c । scanf এর মত printf এ ও প্রতিটি control string একটি % চিহ্ন দিয়ে শুরু করতে হয়। তাই এখানে control stringটি %c দ্বারা লিখা হয়েছে। এখানে c দ্বারা বুঝানো হয় যে Data item একটি single character। scanf ও printf এর control string একই। তবে scanf এর control string দ্বারা কি ধরনের মান ইনপুট নিবে তা বুঝায়, আর printf এর control string দ্বারা কিধরনের মান আউটপুট দিবে তা বুঝায়। নিচে printf এর control string গুলো দেওয়া হল।
CodeMeaning
%aএটি ব্যবহার করলে Floating-point  Data item  আউটপুট দিবে।
%cএটি ব্যবহার করলে একটি মাত্র character Data item আউটপুট দিবে।
%dএটি ব্যবহার করলে Decimal integer Data item আউটপুট দিবে।
%eএটি ব্যবহার করলে Floating-point  Data item  আউটপুট দিবে।
%fএটি ব্যবহার করলে Floating-point  Data item  আউটপুট দিবে।
%gএটি ব্যবহার করলে Floating-point  Data item আউটপুট দিবে।
%iএটি ব্যবহার করলে Decimal, Hexadecimal or Octal Integer Data item আউটপুট দিবে।
%oএটি ব্যবহার করলে Octal Integer Data item  আউটপুট দিবে।
%pএটি ব্যবহার করলে Pointer Data item আউটপুট দিবে।
%sএটি ব্যবহার করলে String   Data item আউটপুট দিবে।
%uএটি ব্যবহার করলে Unsigned decimal Data item আউটপুট দিবে।
%xএটি ব্যবহার করলে Hexadecimal Data item আউটপুট দিবে।
এবার আমরা scanf ও printf এর ব্যবহারের উপর একটি ছোট্ট প্রোগ্রাম দেখিঃ

#include
int main()
{
char name[80];
scanf("%s",&name);
printf("%s",name);
return 0;
}

এখানে একটি name নামে একটি character array (array সম্পর্কে পরে আলোচনা করা হবে) নেওয়া হয়েছে, যা মোট ৮০ টি character ধারন করতে পারবে(আসলে ৭৯ টি আরেকটি Null Character, যা সম্পর্কে পরে আলোচনা করা হবে) । তার পর এর মান ইনপুট ডিভাইস হতে নেওয়া হবে scanf function দ্বারা। scanf এর ভিতর %s দ্বারা বুঝানো হয়েছে যে এটি একটি String Input নিবে। তার পর এ মান printf("%s",name); দ্বারা পর্দায় আউটপুট দেখানো হয়েছে।

C প্রোগ্রামিং ছয় অধ্যায় - For Loop - PART 2

লুপিং হচ্ছে প্রোগামিং এর প্রান। ছোট বড় প্রায় সব প্রোগ্রামেই লুপ এর ব্যবহার করতে হয়। লুপিং এর জন্য অনেক গুলো statement রয়েছে। যেমনঃ

1. While
2. Do-while
3. For ইত্যাদি।

আজ  For লুপ নিয়ে আলোচনা করব। লুপিং এর কাজে সবচেয় বেশি ব্যবহৃত হয় for loop । এ for loop এর তিনটি অংশ রয়েছে। তার আগে আমরা দেখেনেই  for loop সাধারন ব্যবহার নিয়ম। 

for(exprission1;Exprission2;Expression3)Statement 

বিদ্রঃ এখানে প্রত্যেকটি Expression ; (সেমিকোলন) দিয়ে আলাদা করে দিতে হবে।


এখানে প্রথম exprission1  হচ্ছে for loop এর প্রথম অংশ। এটি দ্বারা একটি নির্দিষ্ট বিষয়ের প্রাথমিক মান দেওয়া হয় । যাকে বলা হয় initial অংশ। এই বিষয়টিকে বলা হয় Index. এটি পুরো লুপিং প্রক্রিয়াকে নিয়ন্ত্রন করে। প্রাথমিক মানটি কোন কিছু যাছাই না করেই আউটপুট দেয়। মানে হচ্ছে প্রথমিক মান টা কোন কিছু যাচাই না করেই আউটপুট দিবে (যেমন প্রিন্ট বা অন্য কোন কাজে)।



দ্বিতীয় অংশটি অর্থাৎ Exprission2 দ্বারা  একটি শর্ত দেওয়া হয়। লুপটি কতক্ষন পর্যন্ত চলবে তা এটি নির্নয় করে। Exprission2 তে সাধারনত একটি logical expression থাকে যা শুধু সত্য মিথ্যে বুঝতে পারে। যদি সত্য হয় তাহলে 1 রিটার্ন করে আর যদি মিথ্যে হয় তাহলে 0 রিটার্ন করে।  এটি যদি 0 ছাড়া অন্য কোন মান রিটার্ন করে তাহলে লুপটি চলবে, আর যদি 0 রিটার্ন করে তাহলে লুপটি আর চলবে না।

Expression3 কাজ হচ্ছে আমারা প্রথমে যে প্রাথমিক মান নিলাম তাকে আমাদের ইচ্ছে মত মডিফাই করা। এটি প্রত্যেক লুপের শেষ ধাপে কাজ করে।
আর আগেই বলছি লুপটি ততক্ষনই চলবে যতক্ষন পর্যন্ত Exprission2 মিথ্যে বা  0 রিটার্ন না করে।


For loop সম্পর্কে আমরা এতক্ষন অনেক কিছু জানলাম, এবার প্রোগ্রামে এটাকে কিভাবে ব্যবহার করব তা দেখি। তার জন্য একটি প্রোগ্রাম লিখি যা 1 থেকে 10 পর্যন্ত সংখা গুলো প্রিন্ট করবে।
আপনাদের জন্য নিচের প্রোগ্রামটি। এটার আউটপুট কি হবে কিভাবে হবে তা বের করুন।


#include<stdio.h>
int main()
{
int i;
for(i=0;i<=10;i++)
printf("%d\n",i);
return 0;
}


এর আউট পুট হচ্ছেঃ


1
2
3
4
5
6
7
8
9
10

এখানে আমরা একটি integer variable নিয়েছি। for loop এর প্রথম Expression এ আমরা এর প্রাথমিক মান নিলাম ০. প্রাথমিক মানটি for loop এর দ্বিতীয় অংশ অর্থাৎ logical অংশ দ্বারা যাচাই না হয়েই প্রিন্ট করবে। এবং প্রথম Expression কাজ শেষ হয়ে যাবে। এর আর কোন কাজ নেই।

Print করার পর এবার তৃতীয় অংশ অর্থাৎ Exprission3 এখানে i++ অংশ দ্বারা মডিফাই হবে। আমরা জানি i++=i+1 সুতরাং এখানে i এর মান এক বাড়বে এবং ০ থেকে 1 হবে। এবং এবার দ্বিতীয় অংশ Expression2 এখানে i<=10 অংশ দ্বারা লজিক্যাল যাচাই হবে। এখানে যাচাই করবে যে i এর মান 10 বা 10 থেকে ছোট কিনা। যেহেতু এখন i (১)এর মান ১০ থেকে ছোট তাই লুপটা আবার চলবে।
এবং দ্বিতীয় বার এসে 1 প্রিন্ট করবে।

আবার Exprission3 তে এসে মডিপাই হবে। আগের লুপ থেকে i এর মান পেয়েছি 1 এখন আবার 1 এর সাথে এক বেড়ে 2 হবে ( এ অংশ i++ দ্বারা) ।
আবার দ্বিতীয় অংশ i<=10  অংশ দ্বারা লজিক্যাল যাচাই হবে। যেহেতু 2,  10 থেকে ছোট তাই আবার 2 প্রিন্ট করবে। এভাবে প্রত্যেক ধাপ শেষ করবে। যখন i এর মান বেড়ে 11 হয়ে যাবে তখন আর লুপ চলবে না। এবং আমাদের প্রোগ্রামটি শেষ হবে।