কনস্ট্যান্ট ভ্যারিয়েবলস অ্যান্ড ডেটা টাইপস :ভ্যারিয়েবল (Variable)
প্রোগ্রামিং বা গাণিতিক বিশ্লেষণে ভ্যারিয়েবল
(Variable) একটি অত্যন্ত গুরুত্বপূর্ণ ধারণা। সহজ ভাষায় বলতে গেলে, ভ্যারিয়েবল হলো একটি পাত্র বা মেমরি লোকেশন যেখানে কোনো তথ্য বা ডেটা সাময়িকভাবে জমা রাখা হয়।
নিচে ভ্যারিয়েবল এবং এর সাথে সংশ্লিষ্ট বিষয়গুলো আলোচনা করা হলো:
১. ভ্যারিয়েবল
(Variable) কী?
ভ্যারিয়েবল হলো এমন একটি নাম যা কম্পিউটারের মেমরিতে একটি নির্দিষ্ট স্থানকে নির্দেশ করে। প্রোগ্রামের রান-টাইমে এই স্থানের মান পরিবর্তন হতে পারে বলেই একে "চলক" বা
"Variable" বলা হয়।
- উদাহরণ: ধরুন, x =
10। এখানে x হলো একটি ভ্যারিয়েবল যা 10 মানটি ধারণ করে আছে। পরে আপনি চাইলে x =
20 লিখে এর মান পরিবর্তন করতে পারেন।
২. কনস্ট্যান্ট
(Constant) কী?
কনস্ট্যান্ট বা ধ্রুবক হলো এমন একটি মান যা প্রোগ্রামের পুরো কার্যকাল জুড়ে অপরিবর্তিত থাকে। অর্থাৎ, একবার মান নির্ধারণ করে দিলে তা আর পরিবর্তন করা যায় না।
- উদাহরণ: গাণিতিক মান $\pi$
(Pi) এর মান সবসময় $3.14159$। প্রোগ্রামিংয়ে একে কনস্ট্যান্ট হিসেবে ঘোষণা করা হয়।
৩. ডেটা টাইপ (Data
Types)
একটি ভ্যারিয়েবল কী ধরণের তথ্য জমা রাখবে, তা নির্ধারণ করে দেয় ডেটা টাইপ। প্রধান কিছু ডেটা টাইপ হলো:
- Integer (পূর্ণসংখ্যা): যেমন- ১, ৫, ১০০।
- Float/Double (দশমিক সংখ্যা): যেমন- ১০.৫, ৩.১৪।
- Character (অক্ষর): যেমন-
'A', 'b', 'z'।
- String (শব্দ বা বাক্য): যেমন-
"Hello World", "Bengali Literature"।
- Boolean (যুক্তি): এটি কেবল দুটি মান গ্রহণ করে— True (সত্য) অথবা False (মিথ্যা)।
ভ্যারিয়েবল নামকরণের কিছু সাধারণ নিয়ম
একটি ভ্যারিয়েবল তৈরির সময় নিচের বিষয়গুলো মাথায় রাখা জরুরি:
১. নামের শুরুতে কোনো সংখ্যা (যেমন: 1name) ব্যবহার করা যায় না।
২. নামের মধ্যে কোনো স্পেস বা ফাঁকা জায়গা থাকা চলবে না (যেমন: my name এর বদলে my_name লিখতে হয়)।
৩. সাধারণত এটি ইংরেজি বর্ণমালা, সংখ্যা এবং আন্ডারস্কোর (_) এর সমন্বয়ে গঠিত হয়।
৪. প্রোগ্রামিং ভাষাভেদে এটি 'Case
Sensitive' হতে পারে (যেমন: Age এবং age দুটি আলাদা ভ্যারিয়েবল)।
প্রোগ্রামিংয়ের এই মৌলিক ধারণাগুলো কোনো একটি নির্দিষ্ট ভাষার পরিপ্রেক্ষিতে শিখলে তা অনেক বেশি কার্যকর হয়। আমাদের আলোচনার সুবিধার্থে আমি বহুল ব্যবহৃত এবং তুলনামূলক সহজ Python
এবং কাঠামোগত ভাষা হিসেবে C-এর উদাহরণ দিয়ে বিষয়টি আরও বিস্তারিত করছি।
প্রোগ্রামিংয়ে ভ্যারিয়েবল এবং ডেটা টাইপ কীভাবে কাজ করে, তা নিচের আলোচনা থেকে পরিষ্কার হবে:
১. ভ্যারিয়েবল ডিক্লারেশন
(Variable Declaration)
বিভিন্ন ভাষায় ভ্যারিয়েবল লেখার নিয়ম ভিন্ন হয়:
- C ল্যাঙ্গুয়েজ: এখানে ভ্যারিয়েবল ব্যবহারের আগে তার টাইপ বলে দিতে হয় (একে বলা হয়
Static Typing)।
- উদাহরণ: int
age = 25; (এখানে int মানে হলো এটি একটি পূর্ণসংখ্যা)।
- Python ল্যাঙ্গুয়েজ: এখানে টাইপ বলে দেওয়ার প্রয়োজন নেই, এটি নিজে থেকেই বুঝে নেয়
(Dynamic Typing)।
- উদাহরণ: age
= 25 (সরাসরি লিখলেই চলে)।
২. মেমরি ম্যানেজমেন্ট (কিভাবে ডেটা জমা থাকে)
কল্পনা করুন, কম্পিউটারের মেমরি বা RAM হলো অনেকগুলো ছোট ছোট খোপ বা বক্সের মতো। যখন আপনি একটি ভ্যারিয়েবল তৈরি করেন, তখন মেমরিতে একটি বক্স রিজার্ভ হয় এবং তার একটি নির্দিষ্ট নাম দেওয়া হয়।
উদাহরণ:
আপনি যদি লেখেন price = 500, তবে মেমরিতে একটি জায়গা 'price' নামে চিহ্নিত হবে এবং সেখানে '500' মানটি বসে যাবে।
৩. কনস্ট্যান্টের প্রয়োজনীয়তা
প্রোগ্রামিংয়ে কিছু মান থাকে যা আমরা চাই না কেউ ভুল করেও বদলে ফেলুক।
- C-তে: const
float PI = 3.14; ব্যবহার করা হয়।
- Python-তে: পাইথনে সরাসরি 'কনস্ট্যান্ট' কিওয়ার্ড নেই, তবে সাধারণত বড় হাতের অক্ষরে লিখে (যেমন: PI =
3.14) বোঝানো হয় যে এটি পরিবর্তন করা উচিত নয়।
একটি ছোট তুলনা টেবিল:
|
বৈশিষ্ট্য |
C Language |
Python |
|
টাইপ নির্ধারণ |
আগে থেকে বলে দিতে হয়
(Explicit) |
স্বয়ংক্রিয়ভাবে বুঝে নেয়
(Implicit) |
|
সিনট্যাক্স |
int x =
10; |
x = 10 |
|
ব্যবহার |
সিস্টেম সফটওয়্যার বা হার্ডওয়্যার লেভেলে |
ডেটা সায়েন্স, এআই বা সাধারণ স্ক্রিপ্টিংয়ে |
৪. ভ্যারিয়েবলের স্কোপ (Scope)
ভ্যারিয়েবলটি প্রোগ্রামের কোথায় ব্যবহার করা যাবে, তার ওপর ভিত্তি করে এটি দুই প্রকার:
১. Global Variable: যা প্রোগ্রামের যেকোনো জায়গা থেকে ব্যবহার করা যায়।
২. Local Variable: যা শুধুমাত্র একটি নির্দিষ্ট ফাংশন বা ব্লকের ভেতরে কাজ করে।
নিচে C এবং Python
ভাষায় এই লজিকগুলো কীভাবে কাজ করে তা দেখানো হলো:
১. দুটি সংখ্যার যোগফল (Sum of
Two Numbers)
এখানে আমরা দুটি ভ্যারিয়েবল নেব সংখ্যা রাখার জন্য এবং একটি ভ্যারিয়েবল নেব যোগফল রাখার জন্য।
Python কোড:
Python
# ভ্যারিয়েবল ঘোষণা ও মান প্রদান
number1 = 10
number2 = 20
# লজিক প্রয়োগ
sum = number1 + number2
# ফলাফল প্রদর্শন
print("যোগফল হলো:", sum)
C কোড:
C
int num1 = 10, num2 = 20, sum;
sum = num1 + num2;
printf("Sum is: %d",
sum);
২. বৃত্তের ক্ষেত্রফল নির্ণয় (Area of
a Circle)
এখানে আমাদের একটি কনস্ট্যান্ট ($\pi$) এবং একটি ভ্যারিয়েবল (ব্যাসার্ধ বা $r$) প্রয়োজন। আমরা জানি বৃত্তের ক্ষেত্রফলের সূত্র হলো: $Area =
\pi \times r^2$।
Python কোড:
Python
# কনস্ট্যান্ট (ধ্রুবক)
PI = 3.14159
# ভ্যারিয়েবল (ব্যাসার্ধ)
radius = 5
# ক্ষেত্রফল নির্ণয়ের সূত্র
area = PI * (radius ** 2)
print("বৃত্তের ক্ষেত্রফল:", area)
কেন আমরা ভ্যারিয়েবল ব্যবহার করি?
উপরের উদাহরণে দেখুন, আপনি যদি ব্যাসার্ধ 5-এর বদলে 10 করতে চান, তবে আপনাকে পুরো কোড বদলাতে হবে না। শুধু radius = 10 লিখে দিলেই প্রোগ্রামটি নতুন ফলাফল দিয়ে দেবে। এটাই ভ্যারিয়েবলের আসল শক্তি।
৩. ইনপুট ফাংশন (User
Input)
এতক্ষণ আমরা মানগুলো আগে থেকেই লিখে দিয়েছিলাম (Static)। কিন্তু যদি ব্যবহারকারীর কাছ থেকে মান নিতে চাই?
- Python-এ: radius
= input("ব্যাসার্ধ কত?")
- C-তে: scanf("%d",
&radius);
একটি ছোট ক্যালকুলেটর তৈরি করা প্রোগ্রামিং শেখার জন্য দারুণ একটি ধাপ। কারণ এটি ব্যবহার করে আপনি একইসাথে ভ্যারিয়েবল, ইউজার ইনপুট এবং কন্ডিশনাল লজিক (যদি-তবে) শিখতে পারবেন।
নিচে পাইথন (Python)
ভাষায় একটি সাধারণ ক্যালকুলেটর তৈরির কোড এবং এর কাজের প্রক্রিয়া আলোচনা করা হলো:
১. সাধারণ ক্যালকুলেটর তৈরির কোড (Python)
এই কোডটি ব্যবহারকারীর কাছ থেকে দুটি সংখ্যা এবং একটি গাণিতিক চিহ্ন (যোগ, বিয়োগ, গুণ বা ভাগ) ইনপুট নেবে।
Python
# ব্যবহারকারীর কাছ থেকে সংখ্যা ইনপুট নেওয়া
# float ব্যবহার করা হয়েছে যাতে দশমিক সংখ্যাও কাজ করে
num1 = float(input("প্রথম সংখ্যাটি লিখুন: "))
operator = input("কি করতে চান? (+, -, *, /) দিন: ")
num2 = float(input("দ্বিতীয় সংখ্যাটি লিখুন: "))
# লজিক প্রয়োগ (Conditional Logic)
if operator == "+":
result = num1 + num2
print("ফলাফল:", result)
elif operator == "-":
result = num1 - num2
print("ফলাফল:", result)
elif operator == "*":
result = num1 * num2
print("ফলাফল:", result)
elif operator == "/":
if num2 != 0:
result = num1 / num2
print("ফলাফল:", result)
else:
print("ভুল! শূন্য (0) দিয়ে ভাগ করা সম্ভব নয়।")
else:
print("দুঃখিত, এই চিহ্নটি সঠিক নয়।")
২. এখানে কী কী ব্যবহার করা হয়েছে?
এই ছোট প্রজেক্টটিতে আমরা প্রোগ্রামের সব গুরুত্বপূর্ণ অংশ ব্যবহার করেছি:
- ভ্যারিয়েবল
(Variables): num1, num2, operator, এবং result হলো আমাদের ভ্যারিয়েবল যা তথ্য জমা রাখছে।
- ডেটা টাইপ
(Data Types): আমরা float ব্যবহার করেছি যাতে কেউ 10.5+5.2
এর মতো হিসাবও করতে পারে। আর চিহ্নের জন্য ব্যবহার করেছি String টাইপ।
- লজিক (If-Else): এখানে কম্পিউটার সিদ্ধান্ত নিচ্ছে যে ব্যবহারকারী যদি + দেয় তবে সে যোগ করবে, আর যদি / দেয় তবে ভাগ করবে।
৩. কনস্ট্যান্টের বাস্তব ব্যবহার (সুদের হিসাবের ক্ষেত্রে)
যদি আমরা সুদের হিসাব (Simple
Interest) করতে চাই, তবে সেখানে অনেক সময় ব্যাংকের সুদের হার একটি নির্দিষ্ট কনস্ট্যান্ট হিসেবে ধরা হয়।
সূত্র: I=P×R×T
(এখানে I = সুদ, P = আসল টাকা, R = সুদের হার, T = সময়)
চিন্তা করুন: যদি ব্যাংকের সুদের হার সবসময় 10% থাকে, তবে আপনি প্রোগ্রামে RATE = 0.10 কে একটি কনস্ট্যান্ট হিসেবে সেট করে দিতে পারেন। এতে বারবার মানটি টাইপ করতে হবে না এবং ভুল হওয়ার সম্ভাবনা কমে যাবে।
সেলসিয়াস থেকে ফারেনহাইট রূপান্তরের কোডটি শিখলে আমরা বুঝতে পারব কীভাবে একটি গাণিতিক সূত্রকে প্রোগ্রামের ভাষায় অনুবাদ করতে হয়। এটি মূলত ভ্যারিয়েবল এবং গাণিতিক অপারেটর ব্যবহারের একটি আদর্শ উদাহরণ।
নিচে সেলসিয়াস থেকে ফারেনহাইট রূপান্তরের লজিক এবং কোডটি দেওয়া হলো:
১. গাণিতিক সূত্র
(Mathematical Formula)
আমরা জানি, সেলসিয়াস ($C$) থেকে ফারেনহাইট ($F$) এ যাওয়ার সূত্রটি হলো:
$$F = (C \times \frac{9}{5}) + 32$$
প্রোগ্রামিংয়ের ভাষায় আমরা এটিকে এভাবে লিখি: F = (C * 1.8) + 32
২. পাইথন (Python)
কোড
এই কোডটি ব্যবহারকারীর কাছ থেকে সেলসিয়াস মান ইনপুট নেবে এবং ফারেনহাইট মানটি আউটপুট হিসেবে দেখাবে।
Python
# ব্যবহারকারীর কাছ থেকে সেলসিয়াস মান নেওয়া
celsius = float(input("সেলসিয়াস তাপমাত্রা লিখুন: "))
# সূত্র প্রয়োগ করে ফারেনহাইট বের করা
# এখানে 9/5 এর বদলে সরাসরি 1.8 ব্যবহার করা যায়
fahrenheit = (celsius * 1.8) + 32
# ফলাফল প্রদর্শন
print(f"{celsius} ডিগ্রি সেলসিয়াস = {fahrenheit} ডিগ্রি ফারেনহাইট।")
৩. এই কোড থেকে আমরা কী শিখলাম?
- ভ্যারিয়েবল আপডেট: এখানে celsius এবং fahrenheit দুটি ফ্লোট
(Float) টাইপ ভ্যারিয়েবল, কারণ তাপমাত্রা দশমিক হতে পারে।
- অপারেটর প্রিসিডেন্স: লক্ষ্য করুন, আমরা ব্র্যাকেট () ব্যবহার করেছি। গণিতের মতো প্রোগ্রামিংয়েও আগে গুণ বা ভাগের কাজ হয়, তারপর যোগের কাজ।
- কনস্ট্যান্টের ব্যবহার: এখানে 32 এবং 1.8 হলো ফিক্সড বা কনস্ট্যান্ট মান যা সূত্রের অংশ।
৪. এখন আপনি এটি কোথায় চালিয়ে দেখবেন?
আপনার কম্পিউটারে যদি কোনো সফটওয়্যার ইনস্টল করা না থাকে, তবে আপনি খুব সহজেই নিচের পদ্ধতিগুলো ব্যবহার করতে পারেন:
1.
অনলাইন কম্পাইলার: Google-এ Online Python Compiler লিখে সার্চ দিলে অনেক ওয়েবসাইট পাবেন (যেমন:
Programiz বা Replit), যেখানে সরাসরি এই কোডটি কপি-পেস্ট করে 'Run' দিলেই ফলাফল দেখতে পাবেন।
2.
মোবাইল অ্যাপ: ফোনে 'Pydroid
3' (Android) বা 'Pythonista' (iOS) অ্যাপ দিয়েও এই কোডটি প্র্যাকটিস করা যায়।
এটি শিখলে আপনি বুঝতে পারবেন কীভাবে একটি প্রোগ্রাম শুধু গাণিতিক হিসাবই করে না, বরং প্রাপ্ত তথ্যের ওপর ভিত্তি করে সিদ্ধান্ত
(Decision Making) নিতে পারে।
নিচে উন্নত কোডটি দেওয়া হলো যেখানে আমরা if-else লজিক ব্যবহার করে একটি "সতর্কবার্তা" বা
"Warning System" যোগ করেছি:
১. উন্নত পাইথন কোড (সতর্কবার্তাসহ)
Python
# ব্যবহারকারীর কাছ থেকে সেলসিয়াস মান নেওয়া
celsius = float(input("সেলসিয়াস তাপমাত্রা লিখুন: "))
# ফারেনহাইট রূপান্তর
fahrenheit = (celsius * 1.8) + 32
# ফলাফল প্রদর্শন
print(f"তাপমাত্রা: {fahrenheit} ডিগ্রি ফারেনহাইট।")
# কন্ডিশনাল লজিক বা সিদ্ধান্ত গ্রহণ
if fahrenheit > 100:
print("⚠️ সতর্কবার্তা: তাপমাত্রা অনেক বেশি! সাবধানে থাকুন।")
elif fahrenheit < 32:
print("❄️ সতর্কবার্তা: প্রচণ্ড শীত! তুষারপাতের সম্ভাবনা আছে।")
else:
print("✅ তাপমাত্রা স্বাভাবিক আছে।")
২. এখানে কী ঘটছে? (লজিক বিশ্লেষণ)
প্রোগ্রামিংয়ে if-else অনেকটা রাস্তার মোড়ের মতো কাজ করে। এটি চেক করে যে কোনো একটি শর্ত
(Condition) সত্য কি না।
- If (যদি): যদি ফারেনহাইট ১০০-এর বেশি হয়, তবে প্রথম মেসেজটি দেখাবে।
- Elif (নাহলে যদি): যদি প্রথমটি সত্যি না হয়, তবে কম্পিউটার চেক করবে তাপমাত্রা ৩২-এর নিচে কি না (হিমাঙ্ক)।
- Else (নাহলে): উপরের কোনোটিই যদি সত্যি না হয় (অর্থাৎ তাপমাত্রা ৩২ থেকে ১০০-এর মধ্যে থাকে), তবে সে বলবে
"তাপমাত্রা স্বাভাবিক"।
৩. আপনার জন্য একটি ছোট চ্যালেঞ্জ
আপনি কি এই কোডটিতে আরেকটি ছোট পরিবর্তন করতে পারবেন? ধরুন, তাপমাত্রা যদি ঠিক ৯৮.৬ ডিগ্রি ফারেনহাইট হয় (যা মানুষের শরীরের স্বাভাবিক তাপমাত্রা), তবে প্রোগ্রামটি বলবে: "আপনার শরীরের তাপমাত্রা স্বাভাবিক।"
এটি করার জন্য আপনাকে elif fahrenheit == 98.6: এই লাইনটি ব্যবহার করতে হবে। মনে রাখবেন, প্রোগ্রামিংয়ে তুলনা করার জন্য একটি সমান চিহ্নের বদলে দুটি সমান চিহ্ন (==) ব্যবহার করা হয়।

0 Comments