Chaper-5

Programming Language


Chapter-5 Part-1



Part-2 is given below

প্রোগ্রাম বা প্রোগ্রামিংঃ নির্দ্রিষ্ট কোন সমস্যা সমাধানের জন্য কম্পিউটারের ভাষায় কতগুলো নির্দেশ দিয়ে সেই সমস্যা সমাধান করা হয় ।এই নির্দেশগুলোর ধারাবাহিক সমষ্টিকে প্রোগ্রাম বা প্রোগ্রামিং বলে । উদাহরন স্বরূপ আমরা বলতে পারি সরল অংকের কথা কারন এখানে কিছু নির্দ্রিষ্ট নিয়ম মেনে সমস্যার সমাধান করতে হয়।যেমন- প্রথমে () এর কাজ তারপর যথাক্রমে {},[],এর,/,x,+,- এর কাজ ইত্যাদি।

প্রোগ্রামিং ভাষাঃ মনের ভাব প্রকাশের সর্বত্তম মাধ্যম হচ্ছে ভাষা । মানুষের যেমন জাতি বর্ণ ভেদে রয়েছে বিভিন্ন ভাষা টিক তেমনি রয়েছে কম্পিউটারের নিজের ভাষা । আমরা জানি কম্পিউটারের ভাষায় ব্যাবহার হয় শুধু ০ ও ১ । প্রোগ্রামিং ভাষাকে ৫ প্রজন্মে ভাগ করা হয় । যথা-
১। 1st Generation (1945) t Machine Language
২। 2nd Generation (1950) t Assembly Language
৩। 3rd Generation (1960) t High Level Language
৪। 4th Generation (1970) t Very High Level Language
৫। 5th Generation (1980-Present) t Natural Language

Machine language and Assembly language পার্থক্য:

# Machine Language Assembly Language
1 কম্পিউটার যন্ত্র সরাসরি যে ভাষা বুঝতে পারে সে ভাষাই হচ্ছে যান্ত্রিক ভাষা। যে প্রােগ্রামিং ভাষা Numeric Code-এর পরিবর্তে Numeric Code ব্যবহার করা হয় তাকে অ্যাসেম্বলি ভাষা বলে।
2 মেশিনের ভাষায় লিখিত প্রােগ্রামকে বস্তু বা Object প্রােগ্রাম বলা হয়। অ্যাসেম্বলি ভাষায় লিখিত প্রােগ্রামকে উৎস বা Source প্রােগ্রাম বলে।
3 0 এবং 1 এ দুটি অক্ষর দিয়ে যন্ত্রভাষা লেখা হয়। অ্যাসেম্বলি ভাষার অক্ষর এর পরিবর্তে সংকেত ব্যবহার করা হয়।
4 যান্ত্রিক ভাষার প্রােগ্রাম লেখা অত্যন্ত ক্লান্তিকর ও সময়সাপেক্ষ। যান্ত্রিক ভাষার তুলনায় অ্যাসেম্বলি ভাষার প্রােগ্রাম লেখা সহজতর ও কম সময় সাপেক্ষ।
5 যন্ত্র ভাষায় লিখিত প্রােগ্রামে অনুবাদক প্রােগ্রামের প্রয়ােজন হয় না। অ্যাসেম্বলি ভাষায় লিখিত প্রােগ্রামে অ্যাসেম্বলার নামক অনুবাদক প্রােগ্রামের প্রয়ােজন হয়।

High Level ও Low Level Language এর পার্থক্য নিচে দেওয়া হল:

# High Level Language Low Level Language
1 কম্পিউটারকে সর্বজন ব্যবহার উপযােগী করে তুলতে যে ভাষা তৈরি হয় তাকে হাই লেভেল ল্যাংগুয়েজ বলে। কম্পিউটার যে ভাষা সরাসরি বুঝতে পারে তাকে মেশিন ল্যাংগুয়েজ বলা হয় ।
2 উচ্চস্তরের ভাষা মেশিন নির্ভর নয়। তাই এ ভাষায় লিখিত প্রােগ্রাম কম্পিউটারকে বুঝানাের জন্য মেশিনের ভাষায় অনুবাদ করে দিতে হয়। এটি মেশিনের ভাষা বিধায় কম্পিউটারকে বুঝানাের জন্য অনুবাদের প্রয়ােজন হয় না।
3 মেশিনের ভাষার তুলনায় উচ্চস্তরের ভাষার প্রােগ্রাম রচনা করা সহজ। মেশিন ভাষায় প্রােগ্রাম লেখা তুলনামূলকভাবে কষ্টসাধ্য এবং সময়সাপেক্ষ ব্যাপার।
4 উচ্চস্তরের ভাষায় লিখিত প্রােগ্রামকে উৎস বা Source প্রােগ্রাম বলে। মেশিনের ভাষায় লিখিত প্রােগ্রামকে বস্তু বা Object প্রােগ্রাম বলা হয়।
5 কয়েকটি উচ্চস্তরের ভাষা হচ্ছে C++, Basic, Pascal, Fortran etc মেশিনের ভাষা হচ্ছে। বাইনারি যা 0 এবং 1 দ্বারা গঠিত।

অনুবাদ প্রােগ্রাম:অনুবাদ প্রােগ্রাম ও অ্যাসেম্বলি ভাষা অথবা উচ্চ স্তরের ভাষায় লেখা প্রােগ্রামকে মেশিনের ভাষায় রূপান্তরের জন্য ব্যবহৃত প্রােগ্রামকে অনুবাদ প্রােগ্রাম (Translator Program) বলে। অনুবাদ প্রােগ্রাম তিন প্রকার যথাঃ

ক) ইন্টারপ্রিটার (Interpreter)।
খ) কম্পাইলার (Compiler)।
গ) অ্যাসেম্বলার (Assembler)।

Difference between Interpreter and Compiler:

# Compiler Interpreter
1 সম্পূর্ন প্রােগ্রামটিকে একসাথে অনুবাদ করে। এক লাইন করে পড়ে এবং অনুবাদ করে।
2 ডিবাগিং ও টেস্টিং এর ক্ষেত্রে ধীর গতিসম্পন্ন। ডিবাগিং ও টেস্টিং এর ক্ষেত্রে দ্রুত গতিসম্পন্ন।
3 সবগুলাে ভূল একসাথে প্রদর্শন করে। এক লাইন করে ভুল প্রদর্শন করে অনুবাদ বন্ধ করে দেয়।
4 প্রােগ্রাম নির্বাহে কম সময় লাগে। প্রােগ্রাম নির্বাহে বেশি সময় লাগে।
5 অনুবাদকৃত প্রােগ্রামটি পূর্নাঙ্গ মেশিন প্রােগ্রামে রূপান্তরিত করে। অনুবাদকৃত প্রােগ্রামটি পূর্নাঙ্গ মেশিন প্রােগ্রামে রূপান্তরিত হয় না।
6 একবার কম্পাইল অর্থাৎ রূপান্তর করার পর পুনরায় কম্পাইল করার প্রয়ােজন হয় না। প্রতিবার কাজের পূর্বে পুনঃরূপান্তরের প্রয়ােজন হয়।
7 প্রধান মেমােরিতে বেশি জায়গা প্রয়ােজন। প্রধান মেমােরিতে কম জায়গা প্রয়ােজন।
8 কম্পাইলার প্রােগ্রামটি সাধারনত বড় হয়ে থাকে। ইন্টারপ্রিটার প্রােগ্রামটি সাধারনত ছােট হয়ে থাকে।

প্রােগ্রাম উন্নয়নের ধাপসমূহ:

প্রােগ্রাম লেখা ও কম্পিউটারে নির্বাহ করার প্রক্রিয়ায় ৭টি ধাপ অনুসরন করতে হয়। যথাঃ

১) সমস্যা চিহৃিত করন (Investigation)
২) সমস্যা বিশ্লেষন (Problem Analysis)
৩) প্রােগ্রাম ডিজাইন (Program Design)
৪) প্রােগ্রাম ডেভেলপমেন্ট বা কোডিং (Program Development or Coding)
৫) প্রােগ্রাম বাস্তবায়ন (Program Implementation)
৬) প্রােগ্রাম ডকুমেন্টেশন (Program Documentation)
৭) প্রােগ্রাম রক্ষনাবেক্ষন (Program Maintenance)

সমস্যা চিহৃিত করন:প্রােগ্রামটি কী সমস্যা সমাধানের জন্য রচনা করা হবে সে সমস্যাটির একটি পরিস্কার বর্ণনা তৈরি করা হয়।
সমস্যা বিশ্লেষন:সমস্যা বিশ্লেষন ও সমস্যা সমাধানের জন্য কম্পিউটার প্রয়ােজন কিনা তা নির্ণয়, সমস্যার কাঠামােগত বর্ণনা প্রস্তুত এবং সম্ভব হলে সমস্যার গানিতিক মডেল প্রস্তুত করতে হয়।
প্রােগ্রাম ডিজাইন:সমস্যার গঠনগত বর্ণনা হতে সুবিধাজনক অ্যালগরিদম এবং ফ্লোচার্ট সহায়তায় প্রােগ্রামের পূর্নাঙ্গ পরিকল্পনা করতে হয়।
প্রােগ্রাম ডেভেলপমেন্ট : প্রােগ্রাম ডেভেলপমেন্ট বা কোডিং ও কম্পিউটারের বােধগম্য ভাষায় প্রােগ্রাম রচনাকে কোডিং বলা হয়।
প্রােগ্রাম ডকুমেন্টেশন:প্রােগ্রাম বাস্তবায়ন ও প্রােগ্রাম রচনার পর প্রথমে প্রােগ্রামের প্রতিটি অংশ এবং পরে সম্পূর্ন প্রােগ্রাম পরীক্ষা করে দেখতে হয়। এ সময় প্রয়ােজনীয় সংশােধনের মাধ্যমে প্রােগ্রামকে প্রক্রিয়াকরণের জন্য উপযুক্ত করে সম্পূর্নভাবে তৈরি করে নেয়া হয়।
প্রােগ্রাম ডকুমেন্টেশন: ভূল সংশােধনের পর প্রােগ্রাম। সঠিকভাবে কাজ করলে তাকে Run Program বলা হয়। এ প্রােগ্রামকে ভবিষ্যতে রক্ষনের জন্য লিপিবদ্ধ করতে হয়। এ লিপিবদ্ধকরণকে প্রােগ্রাম লেখ্য বা ডকুমেন্টেশন বলা হয়।
প্রােগ্রাম রক্ষনাবেক্ষন:প্রােগ্রাম রক্ষনাবেক্ষন ও বিভিন্ন প্রয়ােজনে ও প্রােগ্রামের উন্নতিকল্পে প্রােগ্রামের আধুনিকীকরণ, পরিবর্তন, পরিবর্ধন, প্রােগ্রামের ভুল সংশােধন ইত্যাদি প্রােগ্রাম রক্ষনাবেক্ষন কাজের অন্তর্ভুক্ত।

প্রােগ্রাম ভূল (Program Bugs): উঃ প্রােগ্রামের ভূলকে বাগ (Bugs) বলা হয়। প্রােগ্রাম তৈরির সময় বিভিন্ন কারনে ভূল হতে পারে তাকে প্রোগ্রাম বাগ বলে। প্রােগ্রামের ভূলকে তিন ভাগে করা যায় যথাঃ

ক) সিনট্যাক্স ভূল (Syntax Error)
খ) লজিক বা যুক্তিগত ভূল (Logic Error)
গ) রান টাইম ও এক্সিকিউশন টাইম বা নির্বাহজনিত ভূল (Run time & Execution Time Error)
সিনট্যাক্স ভূল: যে ভাষায় প্রােগ্রাম লেখা হয় সেই ভাষার ব্যাকরনগত ভূল হলাে সিনট্যাক্স ভূল। এ ভূল বিভিন্ন ধরনের। হতে পারে। যেমন: বানান ভূল এরকম INPUT এর স্থলে INPIT, print এর স্থলে pirnt ইত্যাদি। কম্পিউটারকে Error message দিয়ে জানিয়ে দেয়।
লজিক বা যুক্তিগত ভূল কম্পিউটার প্রােগ্রাম করার সময় যুক্তিগত ভূলসমূহকে যুক্তিগত ভূল বলে।যেমন : A+B এর স্থলে A A-B লিখলে যুক্তিগত ভূল হয়। এক্ষেত্রেও ভূলের বার্তা প্রদর্শন করে না।
রান টাইম ও এক্সিকিউশন টাইম বা নির্বাহজনিত ভূল (Run time & Execution Time Error): কম্পিউটারকে ভূল ডেটা দিলে বা ডেটার ফরমেট ঠিক না থাকলে এ ধরনের ভূল হয়। যেমন ? শুন্য দিয়ে ভাগ করতে গেলে Error message

ডিবাগিংঃপ্রােগ্রামের ভূলকে বাগ (Bugs) বলা হয়।একটি প্রোগ্রামের মধ্যে ভুল বের করে সমাধান করার নামই ডিবাগিং ।

প্রােগ্রাম টেস্টিং : প্রােগ্রাম টেস্টিং হচ্ছে কোনাে প্রােগ্রাম কোডিং সম্পন্ন করার পর প্রােগ্রামটির যে ধরনের আউটপুট বা ফলাফল হওয়া উচিৎ তা ঠিকমতাে আসছে কিনা বা রান করছে কিনা তা যাচাই করা।

অ্যালগরিদম: অ্যালগরিদম কোনাে সমস্যা সমাধান করার জন্য যে সমস্ত সুনির্দিষ্ট ধাপ অনুসরণ করে লিখিত ভাবে প্রকাশ করা হয় তাকে অ্যালগরিদম বলে।

ফ্লোচার্ট:ফ্লোচার্ট ও বিশেষ কিছু জ্যামিতিক চিহ্ন ব্যবহার করে কোনাে সমস্যার যৌক্তিক ধারাবাহিক সমাধানকে যে চিত্রের মাধ্যমে প্রকাশ করা হয় তাকে ফ্লোচার্ট বলে।

ফ্লোচার্ট ও বিশেষ কিছু জ্যামিতিক চিহ্ন:

Flow Chart

অবজেক্ট ওরিয়েন্টেড প্রােগ্রামিং (OOP): অবজেক্ট ওরিয়েন্টেড প্রােগ্রামিং মডেলে ডেটা ও সংশ্লিষ্ট কোডকে একক হিসেবে বিবেচনা করা হয়। এ ধরনের একককে ক্লাস (Class) বলে। এক ক্লাসের ডেটা অন্য ক্লাসের কাছে অদৃশ্য। ফলে অনিচ্ছাকৃতভাবে ভুল চলকের মান ব্যবহার করা সম্ভব নয়। এক একটি ক্লাস এক একটি ধরন বােঝায়। ক্লাসে কোনাে ডেটা রেখে নির্বাহ করতে হলে নির্দিষ্ট ক্লাসের অবজেক্ট তৈরি করতে হয়। অবজেক্টের বিভিন্ন কোড়কে নির্বাহ করানাের জন্য সংশ্লিষ্ট অবজেক্টকে বিশেষ বার্তা পাঠাতে হয়। কোনাে প্রােগ্রাম উন্নয়নের সময় ক্লাসগুলাে এমনভাবে নির্মাণ করা হয়, যাতে তা বাস্তব সমস্যাকে ভালােভাবে উপস্থাপন করতে পারে । ছােটো আকারের প্রােগ্রাম রচনার জন্য OOP মডেল কোনাে বিশেষ সুবিধা দেয় না। কিন্তু বড় ধরনের প্রােগ্রাম (কয়েক হাজার লাইনের অধিক) উন্নয়নের জন্য OOP অপরিহার্য মডেল। OOP-এর বিশেষ সুবিধা হলাে- ইনহেরিটেলের মাধ্যমে প্রচলিত ক্লাসকে বর্ধিত করে নতুন ও উন্নত ক্লাস তৈরি করা যায়। ডেটা লুকানাে থাকে বলে অপ্রত্যাশিত পরিবর্তন সম্ভব নয়। সহজেই ছােটো থেকে বড় প্রােগ্রাম উন্নয়ন করা যায়। সকল প্রােগ্রামিং ভাষাই অবজেক্ট ওরিয়েন্টড প্রােগ্রামিং সমর্থন করে না। কোনাে প্রােগ্রামিং ভাষাকে পরিপূর্ণ অবজেক্ট ওরিয়েন্টেড প্রােগ্রামিং ভাষা হতে হলে কমপক্ষে তিনটি বৈশিষ্ট্য থাকতে হয়। এগুলাে হলাে-

১. ইনহেরিটেন্স: ইনহেরিটেন্স এমন একটি ক্ষমতা যার মাধ্যমে কোনাে প্রচলিত ক্লাসের কোনাে পরিবর্তন না করে পরিবর্ধিত নতুন ক্লাস তৈরি করা যায়। নতুন ক্লাস মূল ক্লাসের প্রয়ােজনীয় বৈশিষ্ট্য ধারণ করে থাকে।
২. এনক্যাপসুলেশন: কোনাে চলকের ডেটা এবং ইনস্ট্রাকশন একত্রিত অবস্থায় থাকাকে এনক্যাপসুলেশন বলে। যে চলকের জন্য যে ডেটা সেই চলকের বাইরে তার আর কোনাে অস্তিত্ব নেই। ফলে ডেটার ওপর প্রােগ্রামের অন্য অংশের কোনাে প্রভাব পড়ে না।
৩.পলিমরফিজম: পলিমরফিজম অর্থ হচ্ছে বহুরূপ। এ বৈশিষ্ট্যের জন্য কোনাে কোড মডিউলের নাম এক হলেও একাধিক রূপ থাকতে পারে। কখন কোন রূপটি ব্যবহৃত হবে তা কম্পাইলার নির্ণয় করবে। একই অপারেটর ভিন্ন ধরনের ডেটার ওপর প্রয়ােগ করা যেতে পারে। সঠিক ডেটা নিরূপণ করা কম্পাইলারের দায়িত্ব। | OOP প্রােগ্রামিং ভাষার উদাহরণ হলাে C++, Java, C# ইত্যাদি।

C Programming Language


C is Mid level language:C তে যেমন Assembly Language এর মত bit, byte, Memory address নিয়ে কাজ করা যায়, তেমনি High level language এর data type ডাটা নিয়ে কাজ করা যায়। এ জন্য C কে Mid level language বলা হয়।

C প্রােগ্রাম ভাষার বৈশিষ্ট্য (Characteristics of ‘C' language):
কম্পিউটার প্রােগ্রাম ডিজাইনে সি ভাষা একটি সুশৃঙ্খল পদ্ধতি এবং কাঠামাে প্রদান করেছে। সি ভাষার নিম্নলিখিত বৈশিষ্ট্য পাওয়া যায়-

1.সি একটি মধ্যস্তরের ভাষা। এ ভাষায় কমপিউটারের বিট পর্যায়ের প্রােগ্রামিং এর মাধ্যমে হার্ডওয়্যার নিয়ন্ত্রণ ও সিস্টেম প্রােগ্রাম রচনা করা যায়।
2.এ ভাষায় উচ্চস্তরের ভাষার সুবিধা পাওয়া যায় আবার নিম্নস্তরের ভাষা সমকক্ষ প্রােগ্রাম রচনা করা যায়। সি ল্যাংগুয়েজ দিয়ে সব ধরনের প্রােগ্রাম রচনা করা যায়। তাই একে General purpose language ও বলা হয় ।
3.সি ল্যাংগুয়েজে মূল সমস্যাকে ছােট ছােট ভাগে ভাগ করে প্রতিটি ভাগে প্রয়ােজনীয় ভেরিয়েবল, ফাংশন, কলটেন্ট ইত্যাদি ব্যবহার করা যায় এবং প্রয়ােজনে ইত্যাদি কন্ট্রোল স্টেটমেন্টও ব্যবহার করা যায়। তাই সি-কে স্ট্রাকচার্ড ল্যাংগুয়েজও বলা হয়।
4. সি প্রােগ্রামের ভাষা শুরু হয় একটি ফাংশন main() এর মাধ্যমে। প্রতিটি প্রােগ্রামের কাজ এই ফাংশন থেকে শুরু হয়।
5.ফাংশনের মধ্যে যেসব Statement থাকে সেগুলােকে দ্বিতীয় বন্ধনী এর রাখতে হয়। প্রতিটি Statement-এর শেষে সেমিকোলন (;) দিতে হয়। প্রােগ্রামে কোন Comment ব্যবহার করতে হলে তার আগে * চিহ্ন এবং শেষে * চিহ্ন ব্যবহার করতে হয় । প্রােগামের যে কোন স্থানে যতগুলাে ইচ্ছা Comment দেখা যায়। পর্যাপ্ত সংখ্যাক লাইব্রেরি ফাংশন, ব্রাঞ্চিং স্টেটমেন্ট ও কন্ট্রোল স্টেটমেন্টের সুবিধা রয়েছে। সাধারণত সি ল্যাংগুয়েজ দিয়ে লিখিত এক মেশিনের প্রােগ্রাম অন্য মেশিনে চালানাে যায়।
6.এতে অনেক পর্যাপ্ত সংখ্যক কম্পাউন্ড অপারেটর, যেমন-+, -, *= ইত্যাদি রয়েছে।

ডেটা টাইপ:
‘সি’ প্রােগ্রামে অনেক ধরনের ডেটা নিয়ে কাজ করা যায়, যেমন- পূর্ণ সংখ্যা, ভগ্নাংশ, ক্যারেক্টার, স্ট্রিং ইত্যাদি। ডেটার ধরন এবং মেমােরি পরিসর সংরক্ষণের ভিত্তিতে সি প্রােগ্রামে ব্যবহৃত ডেটাকে প্রধানত চারটি ভাগে ভাগ করা হয়। যথাchar, int, float, double। এদেরকে বেসিক বা মৌলিক অথবা বিল্টইন ডেটা টাইপ বলা হয়। আবার প্রয়ােজনে নিজস্ব ডেটা টাইপ তৈরি করে নেয়া যায়। এরূপ ডেটা টাইপকে ইউজার ডিফাইন্ড বা কাস্টম ডেটা টাইপ বলা হয়। চিত্রে ‘সি’ | প্রােগ্রামে ব্যবহৃত বিভিন্ন প্রকার বিল্টইন, মডিফাইড এবং কাস্টম ডেটা টাইপের শ্রেণিবিন্যাস দেখানাে হলাে।

data type

char টাইপ: সি প্রােগ্রামে ক্যারেক্টার টাইপ ডেটা নিয়ে কাজ করার জন্য char টাইপ ভেরিয়েবল ব্যবহার করা হয়। | char টাইপ ভেরিয়েবল ঘােষণার জন্য char কিওয়ার্ড ব্যবহার করা হয়। প্রতিটি char টাইপ ভেরিয়েবলের জন্য কম্পাইলার ১ বাইট জায়গা সংরক্ষণ করে। অর্থাৎ প্রােগ্রামে char ch = 78; স্টেটমেন্টের মাধ্যমে ch নামে char টাইপের কোনাে ভেরিয়েবল ঘােষণা করলে কম্পাইলার প্রােগ্রাম নির্বাহকালে মেমােরিতে ch নামে এক বাইট জায়গা বরাদ্দ করে সেখানে ৭৮ সংরক্ষণ করবে। char টাইপ ডেটার জন্য সিনট্যাক্স (Syntax) হলােchar variable name; char ch = 'a';

int টাইপ: সি প্রােগ্রামে পূর্ণসংখ্যা (যেমন, ২০,-৪৬৭, ৮৯০) ইত্যাদি নিয়ে কাজ করার জন্য int টাইপ ভেরিয়েবল | ব্যবহার করা হয় । int টাইপ ভেরিয়েবল ঘােষণার জন্য int কিওয়ার্ড ব্যবহার করা হয়। প্রতিটি int টাইপ ভেরিয়েবলের জন্য কম্পাইলার ২ বাইট জায়গা সংরক্ষণ করে। অর্থাৎ প্রােগ্রামে int value = 90; স্টেটমেন্টের মাধ্যমে value | নামে int টাইপের কোনাে ভেরিয়েবল ঘােষণা করলে কম্পাইলার প্রােগ্রাম নির্বাহকালে মেমােরিতে value নামে দুই বাইট জায়গা বরাদ্দ করে সেখানে ৯০ সংরক্ষণ করবে।। int টাইপ ডেটার জন্য সিনট্যাক্স (Syntax) হলােint variable name; int numl; short int num2; long int num3; Example: 5, 6, 100, 2500

float টাইপ: সি প্রােগ্রামে রিয়েল বা ভগ্নাংশসহ কোনাে সংখ্যা (যেমন, ২০.৩৪, ৪৬.৮৭, ৮৯.৭০) ইত্যাদি নিয়ে কাজ করার জন্য float টাইপ ভেরিয়েবল ব্যবহার করা হয়। float টাইপ ভেরিয়েবল ঘােষণার জন্য float কিওয়ার্ড ব্যবহার করা হয়। প্রতিটি float টাইপ ভেরিয়েবলের জন্য কম্পাইলার ৪ বাইট বা ৩২ বিট জায়গা সংরক্ষণ করে। অর্থাৎ | প্রােগ্রামে float value; স্টেটমেন্টের মাধ্যমে value নামে float টাইপের কোনাে ভেরিয়েবল ঘােষণা করলে কম্পাইলার প্রােগ্রাম নির্বাহকালে মেমােরিতে value নামে ৪ বাইট বা ৩২ বিট জায়গা সংরক্ষণ করবে। float টাইপ ডেটার জন্য সিনট্যাক্স (Syntax) হলােfloat variable name float numl; double num2; long double num3; Example: 9.125, 3.1254

double টাইপ: সি প্রােগ্রামে float টাইপ ভেরিয়েবলের মতাে রিয়েল বা ভগ্নাংশবিশিষ্ট সংখ্যা (যেমন, ২০,-৪৬৭, ৮৯০) ইত্যাদি নিয়ে কাজ করার জন্য double টাইপ ভেরিয়েবল ঘােষণা করা হয়, তবে float টাইপ ভেরিয়েবলের চেয়ে double টাইপ ভেরিয়েবলের রেঞ্জ বেশি। double টাইপ ভেরিয়েবল ঘােষণার জন্য double কিওয়ার্ ড ব্যবহার করা হয়। প্রতিটি double টাইপ ভেরিয়েবলের জন্য কম্পাইলার মেমােরিতে ৮ বাইট জায়গা সংরক্ষণ করে। অর্থাৎ প্রােগ্রামে double value; স্টেটমেন্টের মাধ্যমে value নামে double টাইপের কোনাে ভেরিয়েবল ঘােষণা করলে কম্পাইলার প্রােগ্রাম নির্বাহকালে মেমােরিতে value নামে ৮ বাইট জায়গা সংরক্ষণ করবে।


Operators


operator

Input


input

Output


output
Input output Input output

Lets Start Programing

Chapter-5 Part-4



Part-5 is given below

1. Hello World program:

#include<stdio.h>
  int main(){
 printf("Hello World");
 return 0;
}

Output:

    Hello World
  

Operators

2.Add two number:

#include<stdio.h>
  int main(){
  int a,b,c;
  a=2;
  b=3;
  c=a+b;
  printf("%d",c);
 return 0;
}

Output:

    5
  

Conditionanl Statement

Chapter-5 Part-4



Part-5 is given below

সি প্রোগ্রামে শর্ত সাপেক্ষে কোন কাজ করাকেই Conditionanl Statement বলে । সাধারনত ২ ভাবে এই কাজ করা হয়ে থাকে ।যথা-
১। if...else Statement
২। switch Statement

if...else Statement: এই Conditionanl Statement সাধারণত একটি সর্ত জুড়ে দেয়া হয় ,যদি শর্তটি সত্য হয় তবে if এর { } ভেতরে যে code গুলো আছে সেগুলো excute করবে আর যদি না হয় তাহলে else { } ভেতরে যে code গুলো আছে সেগুলো excute করবে ।যেমন-
if(condition){
//excute these code
}
else{
//excute these code
}


3.Comparing age btween two:

#include<stdio.h>
int main(){
int a,b,c;
   a=23;// age of a
   b=20; //age of b
   if(a > b){
     printf("a is grater than b");
   }
   else {
    printf("b is grater than a");
   }
  return 0;
  }

Output:

      a is grater than b
  

else if Statement: এই Conditionanl Statement এ অনেক গুলো শর্ত দেই সেক্ষেত্রে else if Statement ।যেমন-

4.Comparing age btween conditions:

#include<stdio.h>
int main(){
int a,b,c;
   a=23;// age of a
   b=20; //age of b
   if(a > b){
     printf("a is grater than b");
   }
   else if(a == b){ //equal to for comparering
    printf("They are same age");
   }
   else {
    printf("b is grater than a");
   }
  return 0;
  }

Output:

      a is grater than b
  

switch Statement

4.Comparing age btween two:

#include<stdio.h>
int main(){
int a,b,c;
   a=3;// age of a
  switch(a){
    case 1: 
           printf("a is 1");
    case 2: 
           printf("a is 2");
    case 3: 
           printf("a is 3");
    default:
            printf("Nothing");      
    
  }
  return 0;
  }

Output:

      a is 3
  

Loop

Loops: একই কাজ বার বার সম্পূর্ন করাকেই Loop বলে । উদাহরণ যেমন তোমাকে ১০০ বার তোমার নাম লিখতে বলা হলো তার অর্থ হলো একই কাজ তুমি ১০০ বার করছ বা ১০০ টা লুপ চলছে একই কথা । লুপ ৩ ধরনের -
1.For Loop
2.While Loop
3.Do while loop


For loop While loop Do While loop
#include<stdio.h> int main() { int a; for(a=1;a<=10; a++) { printf("%d\t ",a); } #include<stdio.h> int main() { int a=1; while(a<=10){ printf("%d\t ",a); a++; } } #include<stdio.h> int main() { int a=1; do{ printf("%d\t ",a); a++; } while(a<=10); }
output: 1 2 3 4 5 6 7 8 9 10 output: 1 2 3 4 5 6 7 8 9 10 output: 1 2 3 4 5 6 7 8 9 10

Array

Array:মনে করো তোমাকে বলা হলো তোমার ১০ জন বন্ধুর রোল নং সংরক্ষণ করতে বলা হলো ।তাহলে কি তুমি ১০ টি ভেরিয়াবল ডিকলেয়ার করবে? আবার ধর ১০ জন হয়ে ১০০০ জন হলো তাহলে বিষয়টা অনেক কষ্টসাধ্য ।এই রকম সমস্যা সমাধানের জন্য Array ব্যবহার করা হয় ।
1.For Loop
2.While Loop
3.Do while loop


Part-5 is given below

Best way of learing

Self learing is the best learing in the world. Discover yourself first then will get what you are And what you want to do .It will push you for self learing.

Download

play store

Start Online Earn

ad
Why you need to learn coding?

Coding will play a vital role in one's life . It will help to open a new window of thinking . You can think better way than past . It helps to organise all the thing in better way .