ধাপে ধাপে সি ল্যাঙ্গুয়েজ শিখুন(Part 4)

Posted: জুলাই 9, 2010 in প্রোগ্রামিং
Tags: , , , , ,

লিখেছেনঃ বাকের

Control Statement: Looping (continued):

আগের দিন আমরা while loop ও তার ব্যবহার, সাথে array এর ধারনা পেয়েছিলাম।আজ শুরুতে do-while loop, for loop এবং লুপ এর মধ্যবর্তী পার্থক্য আলোচনা করব।

do-while loop: General form

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

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

 ধাপে ধাপে সি ল্যাঙ্গুয়েজ শিখুন(Part 4) | Techtunes

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

গত টিউন এর প্রবলেমটি আজ আবার করলাম do-while ব্যবহার করে।আউটপুট আগের প্রোগ্রাম এর মত হবে।

প্রোগ্রাম এ দেখুন্ i=sum=0;
একাধিক variable এ একই মান জমা করার জন্য এভাবে লিখা হয়।যেমনঃ i=j=k=sum=0; এই লাইন এ সবগুলো variable এর মান শুন্য দিয়ে replace হবে।

sum += arr[i]; এর মানে হল sum = sum + arr[i];
এ ধরনের আরও কিছু short form রয়েছে।
A += B;   –> A = A + B;
A -= B;   –>  A = A – B;
A *= B-C; –> A = A * (B-C);
etc;

আর i++ হল i=i+1; ++ হল increment operator যা আমরা unary operator বলার সময় পড়েছিলাম।

While এবং do-while এর একটি গুরুত্বপূর্ন পার্থক্য হল, যেখানে while একবার ও execute করে না, সেখানেও do-while একবার execute করে।
লিখে দেখুনঃ
while(0)  //zero
{
printf(“This line will not printed\n”);
}

এবং
do{
printf(“this line will printed\n”);
}while(0);
কারন হল do-while এ condition check হয় লুপ এর শেষে।

for loop: General form:
for( initialization ; condition ; increment/decrement)
{
Statements;
}

নিচের ছবিটা দেখুন।

 ধাপে ধাপে সি ল্যাঙ্গুয়েজ শিখুন(Part 4) | Techtunes

আগের প্রোগ্রামটি আবার for loop use করে করলাম।
 ধাপে ধাপে সি ল্যাঙ্গুয়েজ শিখুন(Part 4) | Techtunes

Nested loop: nested if-else এর মতই একটি loop এর ভেতরে আরেকটি loop ই হচ্ছে nested loop.

k=0;
for( i=0;i<10;i++)
for(j=0;j<10;j++)
{
k++;
}
printf(“k=%d\n”,k);
Output আসবে k=100.

Library Function: Library function হল সি ল্যাঙ্গুয়েজ এ দেয়া default function’s. Library function । সক্ল ফাংশন্ এর corresponding header file আছে। যেমন আমরা যখন printf(), scanf() function ব্যবহার করেছি, তখন আমাদের “stdio.h” header file declare করতে হয়েছে। যেকোন default function প্রোগ্রাম এ ব্যবহার করা হলে তার header file অবশ্যই প্রথমে declare করা লাগবে।

কিছু গুরুত্বপূর্ন লাইব্রেরী ফাংশন।

Function name Header file Work
scanf(…) stdio.h Input নেয়া
printf(…) stdio.h Output দেয়া
abs(i) stdlib.h Return the absolute value of i
acos(d) math.h Return cos-1(d) (মান radian এ return করে, not degree)
asin(d) math.h Return sin-1(d)
atan(d) math.h Return tan-1(d)
Sin(i) math.h Return sin(d) (d এর মান radian এ, degree এর জন্য function টা use করলে degree কে radian এ convert করতে হবে)
cos(i) math.h Return cos(d)
tan(i) math.h Return tan(d)
floor(d) math.h Return only the integer part of a fractional number.
ceil(d) math.h Return the integer_part+1 of a fractional number
getchar() stdio.h Take a single character input
isalnum(c) ctype.h Return true if character c is either A-Z,a-z,0-9
isalpha(c) ctype.h Return true if character c is either A-Z,a-z
isdigit(c) ctype.h Return true if character c is either 0-9
isupper(c) ctype.h Return true if character c is either A-Z
islower(c) ctype.h Return true if character c is either a-z
log(c) math.h Return ln(c)
log10(c) math.h Return log(c)
pow(base,p) math.h Return basep
sqrt(d) math.h Return d (square root of d)
toupper(c) ctype.h or

stdlib.h

Return capital letter of a letter.
tolower(c) ctype.h or

stdlib.h

Return small letter of a letter.
strlen(name) string.h Return the length of a character array
strcpy(name1,name2) string.h Copy name2 to name1
strcmp(name1,name2) string.h Return true if name1 and name2 are exactly same
gets(name) stdio.h Take charater array or string as input

এবার কিছু প্রবলেম করার চেষ্টা করুন। এগুলো আমি কাল example এ করে দেখাব।

  1. একটি integer ইনপুট নিয়ে তা মৌলিক সংখ্যা(prime) কিনা পরিক্ষা করুন।

2.  একটি character array বা string ইনপুট নিয়ে তা reverse order(last character থেকে first character) এ প্রিন্ট করুন।

3.  দুইটি string ইনপুট নিয়ে তা সমান হলে equal আর না হলে not equal প্রিন্ট করুন।

4.  একটি string ইনপুট নিয়ে তার সকল character, capital letter এ প্রিন্ট করুন।

5.  একটি integer ইনপুট নিয়ে তা বর্গসংখ্যা কিনা পরিক্ষা করুন।

আগামীকাল লুপিং এর কিছু special কীওয়ার্ড নিয়ে কথা বলব, বিভিন্ন function ব্যবহার করব, আর সাথে থাকবে অনেক অনেক example যা আপনার কাছে লুপিং কে করে তুলবে পানির মত পরিষ্কার। সকলকে ধন্যবাদ।

Source

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / পরিবর্তন )

Twitter picture

You are commenting using your Twitter account. Log Out / পরিবর্তন )

Facebook photo

You are commenting using your Facebook account. Log Out / পরিবর্তন )

Google+ photo

You are commenting using your Google+ account. Log Out / পরিবর্তন )

Connecting to %s