C Programming in Bengali 01 । বাংলায় সি প্রোগ্রামিং ০১

C Programming in Bengali । বাংলায় সি প্রোগ্রামিং ” এর এই পর্বে আমরা শিখব

ক) IDE কি এবং Codeblocks কিভাবে ইন্সটল করতে হয় ?
খ) একটি সি ভাষায় লেখা প্রোগ্রাম কেমন হয়ে থাকে ?
গ) একটি প্রোগ্রামে কি কি অংশ থাকে এবং অংশ গুলো কি ?
ঘ) Algorithm এবং Flowchart কি ?
ঙ) printf এবং scanf নিয়ে কিভাবে কাজ করতে হয় ? 
চ) কিছু ফরম্যাট স্পেসিফায়ার সম্পর্কে জানতে পারব ।
ছ) C Program এ কিভাবে কমেন্ট যুক্ত করতে হয় ?

ক.১) IDE কি? 

শুরুতেই আসি IDE নিয়ে । ঘরে বসে কিভাবে C Programming প্র্যাকটিস করব? এই প্রশ্ন এর উত্তরে বলা যাবে অনেক ভাবেই করতে পারেন । যেমন Notepad , Notepad++ ইত্যাদি । তবে সব থেকে ভালো হয় কোনো না কোনো IDE ব্যবহার করা । এবং C Programming Language ও C++ Language এর জন্য CodeBlocks সবথেকে ভালো । তবে আপনি যদি লিনাক্স বা ম্যাক ইউজার হয়ে থাকেন তবে আলাদা ভাবে কম্পাইলার ( gccl ) ব্যবহার করতে হতে পারে । CodeBlocks উইন্ডোজ ইউজাররা সহজে ব্যবহার করতে পারবে ।

IDE বলতে বুঝায় এমন এপ যাতে প্রোগ্রামিং এর জন্য প্রয়োজনীয় সকল কিছু বিদ্যমান থাকে ।  IDE এর পূর্ণরূপ হলো Integrated Development Environment । মূলত আইডিই তে একই সাথে টেক্সট এডিটর ও কম্পাইলার থাকে ।

·         Android Phone এ সি প্রোগ্রামিং করতে চান?



C Programming in Bengali 01 । বাংলায় সি প্রোগ্রামিং ০১


ক.২) CodeBlocks কিভাবে ইন্সটল করতে হয়?

এপ্লিকেশনটি প্রোগ্রামিং এর অন্য প্রস্তুত করা একটু ঝামেলা যুক্ত নতুনদের জন্য। তাই আমরা বিস্তারিত দেখিয়ে দিচ্ছি । ব্যবহার উপযোগী করে ইন্সটল করতে নিচের ধাপ গুলো অনুসরন করুন :
  • সবার প্রথমে আপনার কম্পিউটারের যেকোনো ব্রাউজার চালু করে নিন।
  • এবার  http://www.codeblocks.org লিখুন  বা এখান থেকে ক্লিক করুন ।
  • সেখান থেকে Main মেন্যুর Downloads এ ক্লিক করুন।
  • এবার Download the binary release এ ক্লিক করুন ।
  • আপনি উইন্ডোজ ব্যবহারকারি হয়ে থাকলে codeblocks-17.12mingw-setup.exe ফাইলটি Drive C তে ডাওনলোড করে ইন্সটল করে নিন। সেখানে থাকা অন্য ৫ টি নয়। কারণ্ এটাতে টেক্সট এডিটর ও কম্পাইলার একসাথে আছে।
  • ইন্সটল প্রক্রিয়া শেষে Codeblocks টি ওপেন করুন।
  • এরপর উপরের সেটিংস বাটনে এ ক্লিক করুন।
  • সেখান থেকে Compiler এ ক্লিক করুন।
  • একটি ডায়ালগ বক্স আসবে যার Selected Compiler এ GNU GCC Compiler করুন বা আগে থেকে করা থাকলে x নম্বর ধাপে যান।
  • এবার Toolchain executables এ ক্লিক করুন।
  • সেখানে Compiler’s installation directory গিয়ে ব্রাউজ করে C:\Progra, Files (x86)\CodeBlocks\MinGW তে সেট করুন।
  • এবার Ok করুন।
  • CodeBlocks এর প্রথম পেইজটি আবার আসবে । সেখান থেকে Create a new project>console application > Next > C > Next > যেকোন নাম দিয়ে Next > Next চাপুন ।
  • আপনার কোডব্লকস ব্যবহারের জন্য প্রস্তুত ।



খ) একটি সি ভাষায় লেখা প্রোগ্রাম কেমন হয়ে থাকে ?

নিচে একদম সাধারণ একটি সি প্রোগ্রামের কোড দেখানো হলো :

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf(“Pathgriho.com”);
}


গ) একটি প্রোগ্রামে কি কি অংশ থাকে এবং অংশ গুলো কি কি?

একটি সি প্রোগ্রামে লেখা কোডে সাধারনত ৬ টি অংশ থাকে।
 Document Section
 Link Section
 Definition Section
 Global Declare Section
 Main Function
 Sub Function বা Sub Program

1.1 HEADER FILE :
C Program Language অনেক গুলো function নিয়ে তৈরি। এই function গুলোর কোনো সেটকে File বলে। এদের মধ্যে main file টিকে বলা হয়ে থাকে Header File । Header File কে .h এর মাধ্যমে প্রকাশ করা হয়।উপরের কোডটির #include <stdio.h> ও  #include <stdlib.h> এর .h অংশটুকুই Header File ।

1.2 LINK SECTION :
কোডের যেখানে main function কে ডিক্লেয়ার করা হয় সেটাই হচ্ছে LINK SECTION ।  LINK SECTION কে #include <stdio.h> এই আকারে লিখতে হয় । এখানে stdio দ্বারা Standard Input & Output বুঝায় । অর্থাৎ উপরের প্রোগ্রামটাতে
#include <stdio.h>
#include <stdlib.h>  অংশটুকু LINK SECTION ।

1.3 GLOBAL DECLARE SECTION :
প্রত্যেকটি কোডের শুরুতে একটি main function ডিক্লেয়ার করা থাকে যাকে গ্লোবাল ফাংশন বলে।উপরের এই কোডে int main ( ) অংশটুকুই গ্লোবাল ফাংশন নির্দেশ করে।

1.4 EXECUTION PART :
main function কে ডিক্লেয়ার করার পর থেকে  { } এর মধ্যের অংশের নামই Execution Part। এখানে মূল প্রোগ্রামের কাজ করা হয়ে থাকে। এই পার্টের বেশিরভাগ কাজের পরেই “ ; ” দেয়া বাধ্যতামূলক ।

1.5 PRINTF : 
এটি মূলত আউটপুটের জন্য ব্যবহার করা হয় । printf এর ভেতরে যা থাকবে পর্দায় তাই ই প্রদর্শিত হবে। printf এর সবগুলো লেটার স্মল লেটারে লেখতে হবে ।

ঘ.১ ) Algorithm কি?

Algorithm হচ্ছে অনেক টা রান্নার রেসিপির মতো । রান্না করতে গেলে যে আপনি রান্নার ধাপ সম্পর্কে আগেই জ্ঞান লাভ করেন ঠিক সেরকম ভাবে প্রোগ্রামিং ভাষায় কোডিং করার পূর্বেও আপনাকে ধাপ গুলো সম্পর্কে স্পষ্ট হতে হবে । এবং এই ধাপ গুলো আপনি কোথাও খসড়া করে রাখবেন । এটাই Algorithm ।

মনে করুন আপনি ২ সংখ্যার যোগফল নির্নয়ের জন্য একটি প্রোগ্রাম লিখতে চাচ্ছেন । তাহলে তার ধাপ বা এলগরিদম হলো :

ধাপ ১ . শুরু
ধাপ ২ . দুটি সংখ্যা ইনপুট নেয়া
ধাপ ৩ . সংখ্যা ২ টি যোগ করা
ধাপ ৪ . যোগফল প্রদর্শন করা
ধাপ ৫ . শেষ

এই ৫ টি ধাপ আগে থেকে ঠিক করে নেয়াটাই হলো ALGORITHM



ঘ.২) Flowchart কি?

Flowchart হলো কোডিং এর ধাপ গুলোকে চিত্রের মাধ্যমে প্রকাশ করা । এই চিত্রের মাধ্যমে প্রকাশ করার জন্য কিছু নিয়ম রয়েছে। শুরু বা শেষ হয় একই রকম চিত্র দিয়ে । আবার ইনপুট ও প্রসেসিং হয় ভিন্ন ২ ধরনের আকারের চিত্রে । কমেন্ট / টিকার জন্যও রয়েছে আলাদা ।

উপরের এলগরিদম টি আরেকবার লক্ষ করা যাক ।
ধাপ ১
 শুরু
ধাপ ২
 দুটি সংখ্যার মান ইনপুট নেয়া
ধাপ ৩
 সংখ্যা ২ টি যোগ করা
ধাপ ৪
 যোগফল প্রদর্শন করা
ধাপ ৫
 শেষ

এই ধাপগুলোকে প্রবাহ চিত্রের মাধ্যমে দেখানোই ফ্লো চার্ট ।
ফ্লো চার্ট টি নিম্মরূপ :

·         Flowchart সম্পর্কে আরও কিছুটা ধারণা পেতে পূর্ববর্তী লিংকে ক্লিক করুন ।


ঙ.১ ) printf নিয়ে কিভাবে কাজ করতে হয়? 

ইতোমধ্যে আমরা Printf  নিয়ে কিছুটা আলোচনা করেছি । সেখান থেকে আমরা জেনেছিলাম যে printf ব্যবহার করে কোনো কিছু আউটপুট দেয়া হয় । নিচের কোড টুকুতে লক্ষ্য করি

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf(“Pathgriho.com”);
}
এখানে printf এর (“”) এর মধ্যবর্তী স্থানে আমাদের লিংক Pathgriho.com রয়েছে । প্রোগ্রামটি রান করালে পর্দায় এই অংশটুকুই দেখাবে ।

printf কে সাধারনত ইউজারের থেকে কোনো ডেটা চাওয়ার জন্য এবং ইউজারকে ডেটা দেয়ার জন্য ব্যবহার করা হয় । যেমন ২ টি সংখ্যার যোগফল নির্নয়ের জন্য কোনো প্রোগ্রাম করতে গেলে সেখানে ইউজারের থেকে সংখ্যা ২ টি গ্রহন করার জন্য যেমন printf প্রয়োজন ; তেমনি প্রয়োজন যোগফল ইউজারকে দেখানোর জন্যও । আর এক্ষেত্রে যেমনটা হতে পারে তা হলো :

printf(“ Enter 2 integer numbers \n “ );
printf (“ The Sum is %d “, var ) ;


ঙ.২ ) scanf নিয়ে কিভাবে কাজ করতে হয়?

scanf ইনপুটের জন্য ব্যবহার করা হয়। যেমন ২ টি সংখ্যার যোগফল নির্নয় করতে গেলে প্রথমে সংখ্যা ২ টির মান গ্রহন করতে হবে । সেই কাজটি আমরা এর মাধ্যমে করে থাকি।

আমরা ইউজারের থেকে ডেটা ইনপুট নিয়ে থাকি Scanf ফাংশনের সাহায্যে । Scanf(“”) এভাবে লেখা হয় ফাংশনটি  এবং এর প্রথম বন্ধনীর মধ্যের “ “ এর মাঝে ডেটা ইনপুট নেয়ার কাজ সম্পাদন করতে হয়।

ইনপুট নেয়ার সময় মাথায় রাখতে হবে ,  যে ডেটা ইনপুট নেব তাঁর ডেটা টাইপ সম্পর্কেও জ্ঞান থাকা প্রয়োজন ।কারণ বিভিন্ন ধরনের ডেটা টাইপের জন্য ডেটা স্পেসিফায়ার পৃথক পৃথক হয়ে থাকে । যেমন আমরা যদি Integers Type Data ইনপুট নিতে চাই সেক্ষেত্রে তার Format Specifier হবে %d । একই ভাবে ভগ্নাংশ , ডাবল ইত্যাদি ডেটা টাইপের জন্যও ভিন্ন ভিন্ন Format Specifier আছে।

এখন যদি আমরা ধরে নিই আমরা পুর্ণসংখ্যা বা Integers Type Data ইনপুট নিতে চাই।  সেক্ষেত্রে আমরা শুরুতে Integer Data Type এর জন্য int ব্যবহার করব এবং একটি variable নিয়ে নেব। এক্ষেত্রে ফরম্যাট স্পেসিফায়ার হবে %d ।

এই অংশটুকুর উপর কোড টি দাঁড়াচ্ছে এরকম যে ,

#include<stdio.h>
Int main ()
{
Int rabi ;
Scanf(“

এখন আমাদের কাজ এই Scanf(“  এর পর একটি পূর্ণসংখ্যা নেয়া । এর জন্য আমাদের কে ডাবল কোটেশনের মধ্যে Integers Type Data এর Format Specifier %d ব্যবহার করব এবং কোটেশনের বাইরে কমা (,) ব্যবহার করে & দিতে হবে এবং & এর পর যেই variable এ মানটি রাখব তা লিখব । এক্ষেত্রে আমরা rabi তে রাখতে চাচ্ছি । তাহলে কোডটি হবে
Scanf(“ %d “, &rabi);

অর্থাৎ  এ পর্যন্ত আমরা কোডটি পেলাম যে রকম তা হলো
#include<stdio.h>
Int main ()
{
Int a ;
Scanf(“ %d “, &rabi);

এভাবে আমরা scanf এর মাধ্যমে ইনপুট নিতে পারবো 
  • যেকোনো প্রয়োজনে আমাদের সাথে যোগাযোগ করতে পোস্টের নিচে কমেন্ট করুন বা Contact Us ক্লিক করুন ।

চ) কিছু ফরমেট স্পেসিফায়ার: 

ডেটা টাইপ

কীওয়ার্ড

. স্পেসিফায়ার

Character

char

%c

Integer

int

%d

Float

float

%f

Double Number

double

%lf


ছ) সি প্রোগ্রামিং এ কমেন্ট যুক্ত করার নিয়ম:
 C Programming  এ কমেন্ট ২ প্রকার । যথা:
১. Singular Line Comment ( সিঙ্গুলার লাইন কমেন্ট )
২. Multiple Line Comment ( মাল্টিপল লাইন কমেন্ট )

রবিউল ইসলাম সাকিব
পাঠগৃহ The Reading Room
Md. Rabiul Mollah

Okay! So here I'm Md. Rabiul Mollah from Pathgriho Network. I'm currently a student of B.Sc in Textile Engineering Management at Bangladesh University of Textiles. facebook instagram github twitter linkedin

Previous Post Next Post

এই লেখাটি আপনার সোশ্যাল মিডিয়া ওয়ালে শেয়ার করুন 😇 হয়তো এমনও হতে পারে আপনার শেয়ার করা এই লেখাটির মাধ্যমে অন্য কেউ উপকৃত হচ্ছে! এবং কারো উপকার করার থেকে ভাল আর কি হতে পারে?🥺