Ticker

6/recent/ticker-posts

Variables and Data Types

v  


         সি কি?

C হল একটি সাধারণ-উদ্দেশ্য প্রোগ্রামিং ভাষা যা 1972 সালে বেল ল্যাবরেটরিতে ডেনিস রিচি তৈরি করেছিলেন।

পুরানো হওয়া সত্ত্বেও এটি একটি খুব জনপ্রিয় ভাষা। এটির জনপ্রিয়তার প্রধান কারণ হল কম্পিউটার বিজ্ঞানের ক্ষেত্রে এটি একটি মৌলিক ভাষা।

সি দৃঢ়ভাবে ইউনিক্সের সাথে যুক্ত, কারণ এটি ইউনিক্স অপারেটিং সিস্টেম লেখার জন্য তৈরি করা হয়েছিল।

   v  কেন সি শিখবেন?

  • এটি বিশ্বের সবচেয়ে জনপ্রিয় প্রোগ্রামিং ভাষাগুলির মধ্যে একটি
  • আপনি যদি সি জানেন তবে অন্যান্য জনপ্রিয় প্রোগ্রামিং ভাষা যেমন জাভা, পাইথন, সি++, সি#, ইত্যাদি শিখতে আপনার কোন সমস্যা হবে না, কারণ সিনট্যাক্স একই রকম।
  • জাভা এবং পাইথনের মতো অন্যান্য প্রোগ্রামিং ভাষার তুলনায় সি খুব দ্রুত
  • সি খুবই বহুমুখী; এটি অ্যাপ্লিকেশন এবং প্রযুক্তি উভয় ক্ষেত্রেই ব্যবহার করা যেতে পারে

C এবং C++ এর মধ্যে পার্থক্য

  • C++ C এর একটি এক্সটেনশন হিসেবে বিকশিত হয়েছিল এবং উভয় ভাষাতেই প্রায় একই সিনট্যাক্স রয়েছে
  • C এবং C++ এর মধ্যে প্রধান পার্থক্য হল C++ ক্লাস এবং অবজেক্টকে সমর্থন করে, যখন C করে না

 ভেরিয়েবল

সংঙ্গাঃ ভেরিয়েবল হল সংখ্যা এবং অক্ষরের মতো ডেটার মান সংরক্ষণের জন্য ধারক।

ভেরিয়েবলের নামকরণের সাধারণ নিয়ম হল:

  • Ø  নামের অক্ষর, অঙ্ক এবং আন্ডারস্কোর থাকতে পারে
  • Ø  নাম অবশ্যই একটি অক্ষর বা একটি আন্ডারস্কোর দিয়ে শুরু হতে হবে (_)
  • Ø  নামগুলি কেস-সংবেদনশীল ( myVarএবং myvarবিভিন্ন পরিবর্তনশীল)
  • Ø  নামগুলিতে হোয়াইটস্পেস বা বিশেষ অক্ষর যেমন!, #, %, ইত্যাদি থাকতে পারে না।
  • Ø  সংরক্ষিত শব্দ (যেমন int) নাম হিসেবে ব্যবহার করা যাবে না

 সি-তে, বিভিন্ন ধরনের ভেরিয়েবল রয়েছে (বিভিন্ন কীওয়ার্ড দিয়ে সংজ্ঞায়িত),

উদাহরণস্বরূপ:

Ø  int- পূর্ণসংখ্যা (সম্পূর্ণ সংখ্যা) সংরক্ষণ করে, দশমিক ছাড়া, যেমন 123বা-123
Ø  float- ফ্লোটিং পয়েন্ট সংখ্যা সংরক্ষণ করে, দশমিক সহ, যেমন 19.99বা-19.99
Ø  char- একক অক্ষর সংরক্ষণ করে, যেমন 'a'বা 'B'। অক্ষর একক উদ্ধৃতি দ্বারা বেষ্টিত হয়
    ভেরিয়েবল ঘোষণা করা (তৈরি করা)

সিনট্যাক্স:

type variableName = value;

যেখানে টাইপ হল C প্রকারের একটি (যেমন int), এবং variableName হল ভেরিয়েবলের নাম (যেমন x বা myName )। ভেরিয়েবলের একটি মান নির্ধারণ করতে সমান চিহ্ন ব্যবহার করা হয় ।

সুতরাং, একটি ভেরিয়েবল তৈরি করতে যা একটি সংখ্যা সংরক্ষণ করতে হবে , নিম্নলিখিত উদাহরণটি দেখুন:

উদাহরণ

myNum of type নামে একটি ভেরিয়েবল তৈরি করুন এবং এতে intমান 15 বরাদ্দ করুন:

int myNum = 15;

আপনি মান নির্ধারণ না করে একটি ভেরিয়েবল ঘোষণা করতে পারেন এবং পরে মান নির্ধারণ করতে পারেন:

উদাহরণ:

// Declare a variable

int myNum;

 

// Assign a value to the variable

myNum = 15;

 

Ø  আউটপুট ভেরিয়েবল:

আপনি আউটপুট অধ্যায় থেকে শিখেছেন যে আপনি ফাংশনের সাথে মান/প্রিন্ট টেক্সট আউটপুট করতে পারেন printf():

উদাহরণ:

printf("Hello World!");


Ø  বাস্তব জীবনের উদাহরণ

প্রায়শই আমাদের উদাহরণগুলিতে, আমরা ভেরিয়েবলের নামগুলিকে তাদের ডেটা টাইপের সাথে মেলে ( intটাইপের জন্য myInt বা myNum, প্রকারের জন্য myChar char, ইত্যাদি) সহজ করে দেই। বিভ্রান্তি এড়াতে এটি করা হয়।

আমরা একটি প্রোগ্রাম তৈরি করেছি যা একটি কলেজ ছাত্র সম্পর্কে বিভিন্ন ডেটা সঞ্চয় করে:


#include <stdio.h>

int main() {

  int studentID = 15;

  int studentAge = 23;

  float studentFee = 75.25;

  char studentGrade = 'B';

  printf("Student id: %d\n", studentID);

  printf("Student age: %d\n", studentAge);

  printf("Student fee: %f\n", studentFee);

  printf("Student grade: %c", studentGrade);

  return 0;

}


ডেটা প্রকার

ভেরিয়েবল অধ্যায়ে যেমন ব্যাখ্যা করা হয়েছে , সি-তে একটি ভেরিয়েবল অবশ্যই একটি নির্দিষ্ট ডেটা টাইপ হতে হবে এবং এটি প্রদর্শন করতে আপনাকে অবশ্যই ফাংশনের ভিতরে একটি ফরম্যাট স্পেসিফায়ার ব্যবহার করতে হবে: printf ( )


উদাহরণ:

#include <stdio.h>

int main() {

  int myNum = 5;              

  float myFloatNum = 5.99;    

  char myLetter = 'D';  

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

  printf("%f\n", myFloatNum);

  printf("%c\n", myLetter);

  return 0;

} 

Ø  মৌলিক তথ্য প্রকার

ডেটা টাইপ ভেরিয়েবল সংরক্ষণ করবে তথ্যের আকার এবং ধরন নির্দিষ্ট করে।

Data Type

Size

Description

Example

int

2 or 4 bytes

Stores whole numbers, without decimals

1

float

4 bytes

Stores fractional numbers, containing one or more decimals. Sufficient for storing 6-7 decimal digits

1.99

double

8 bytes

Stores fractional numbers, containing one or more decimals. Sufficient for storing 15 decimal digits

1.99

char

1 byte

Stores a single character/letter/number, or ASCII values

'A'

Ø  বেসিক ফরম্যাট স্পেসিফায়ার

প্রতিটি ডাটা টাইপের জন্য আলাদা ফরম্যাট স্পেসিফায়ার আছে। এখানে তাদের কিছু আছে:

Format Specifier

Data Type

%d or %i

int

%f or %F

float

%lf

double

%c

char

%s

Used for strings (text), which you will learn more about in a later chapter

v ক্যারেক্টার ডাটা টাইপস

ডেটা টাইপ একটি একক অক্ষর charসংরক্ষণ করতে ব্যবহৃত হয় ।

Ø  অক্ষরটিকে অবশ্যই একক উদ্ধৃতি দ্বারা বেষ্টিত হতে হবে, যেমন 'A' বা 'c', এবং আমরা %cএটি প্রিন্ট করতে বিন্যাস নির্দিষ্টকারী ব্যবহার করি:

উদাহরণ:

#include <stdio.h>

int main() {

  char myGrade = 'A';

  printf("%c", myGrade);

  return 0;

}

Ø  বিকল্পভাবে, আপনি যদি ASCII-এর সাথে পরিচিত হন, আপনি নির্দিষ্ট অক্ষর প্রদর্শন করতে ASCII মান ব্যবহার করতে পারেন। মনে রাখবেন যে এই মানগুলি উদ্ধৃতি ( ) দ্বারা বেষ্টিত নয় '', কারণ সেগুলি সংখ্যা:

উদাহরণ:

#include <stdio.h>

int main() {

  char a = 65, b = 66, c = 67;

  printf("%c\n", a);

  printf("%c\n", b);

  printf("%c", c);

  return 0;

}


Ø  আপনি যদি একটি একক অক্ষরের বেশি সঞ্চয় করার চেষ্টা করেন তবে এটি শুধুমাত্র শেষ অক্ষরটি মুদ্রণ করবে:

উদাহরণ:

char myText = 'Hello';
printf("%c", myText);

দ্রষ্টব্য: একাধিক অক্ষর সংরক্ষণের জন্য char টাইপ ব্যবহার করবেন না , কারণ এটি ত্রুটি তৈরি করতে পারে।

একাধিক অক্ষর (বা পুরো শব্দ) সঞ্চয় করতে, স্ট্রিং ব্যবহার করুন (যা আপনি পরবর্তী অধ্যায়ে আরও শিখবেন):


উদাহরণ:

#include<stdio.h>

main(){

   char a[]="Sazzad";

   char b[]="Hoshain";

   printf("My name is: %s %s", a,b);

}

 

v সংখ্যাসূচক প্রকার

intআপনি যখন 35 বা 1000 এর মতো দশমিক ছাড়া একটি পূর্ণ সংখ্যা সংরক্ষণ করতে চান এবং floatবা doubleযখন আপনার একটি ফ্লোটিং পয়েন্ট সংখ্যা (দশমিক সহ), যেমন 9.99 বা 3.14515 প্রয়োজন তখন ব্যবহার করুন ।

int data type:

int myNum = 1000;

printf("%d", myNum);

float data type:

float myNum = 5.75;

printf("%f", myNum);

double data type:

double myNum = 19.99;

printf("%lf", myNum);


Ø  একটি ফ্লোটিং পয়েন্ট মানের নির্ভুলতা নির্দেশ করে দশমিক বিন্দুর পরে মানটিতে কত সংখ্যা থাকতে পারে । এর নির্ভুলতা float হল ছয় বা সাত দশমিক সংখ্যা, যখন double ভেরিয়েবলের যথার্থতা প্রায় 15টি সংখ্যা। অতএব, বেশিরভাগ গণনার জন্য এটি ব্যবহার করা প্রায়শই নিরাপদ - তবে মনে রাখবেন যে double এটি দ্বিগুণ মেমরি  float নেয় (8 বাইট বনাম 4 বাইট)।

উদাহরণ:

#include <stdio.h>

int main() {

  float f1 = 35e3;

  double d1 = 12E4;

  printf("%f\n", f1);

  printf("%lf", d1);

  return 0;

}

 

মেমরি সাইজ

আমরা ডেটা প্রকারের অধ্যায়ে প্রবর্তন করেছি যে একটি ভেরিয়েবলের মেমরির আকার প্রকারের উপর নির্ভর করে পরিবর্তিত হয়:

 

Data Type

Size

int

2 or 4 bytes

float

4 bytes

double

8 bytes

char

1 byte

 

মেমরির আকার বলতে বোঝায় কম্পিউটারের মেমরিতে একটি টাইপ কতটা জায়গা দখল করে ।

আসলে একটি ডেটা টাইপ বা ভেরিয়েবলের আকার (বাইটে) পেতে, sizeofঅপারেটরটি ব্যবহার করুন:

উদাহরণ:

#include <stdio.h>

int main() {

  int myInt;

  float myFloat;

  double myDouble;

  char myChar;

  printf("%lu\n", sizeof(myInt));

  printf("%lu\n", sizeof(myFloat));

  printf("%lu\n", sizeof(myDouble));

  printf("%lu\n", sizeof(myChar));

  return 0;

}

Post a Comment

0 Comments