Jukti ভেরিয়েবল ডিক্লেয়ারেশন: সম্পূর্ণ গাইড
যুক্তি এ ভেরিয়েবল ডিক্লেয়ার করা খুবই পরিষ্কার ও স্ট্রাকচার্ড। আপনি চাইলে একটা ভেরিয়েবল, আবার চাইলে এক লাইনে একাধিক ভেরিয়েবলও ডিক্লেয়ার করতে পারবেন। আর কোনো ভেরিয়েবলে মান না দিলে যুক্তি নিজে থেকেই ডিফাল্ট ভ্যালু সেট করে দেয়।
এই “এক লাইনে একাধিক ভেরিয়েবল” ফিচারটা আলাদাভাবে হ্যান্ডেল করা আছে
(কমা , দিয়ে)।
ডিফাল্ট ভ্যালু সেট করার লজিকও এর মধ্যেই আছে।
২) ডাটা টাইপসহ ডিক্লেয়ারেশন
লজিকবাংলা-এ নির্দিষ্ট ডাটা টাইপ ব্যবহার করে ভেরিয়েবল ডিক্লেয়ার করা যায়—এটা কোডকে পড়তে সহজ করে
এবং শিক্ষার্থীদের কাছে “এই ভেরিয়েবল কী রাখবে” বিষয়টা পরিষ্কার হয়।
Parser এই টাইপগুলোকে KEYWORD হিসেবে ধরে।
২.১ উপলব্ধ ডাটা টাইপ
| টাইপ | ব্যবহার |
| পূর্ণসংখ্যা | Integer (পূর্ণ সংখ্যা) |
| দশমিক | Float/Decimal (দশমিক সংখ্যা) |
| বাক্য | String (টেক্সট) |
| অক্ষর | Character (একটি অক্ষর/চিহ্ন) |
| তালিকা | Array/List (একাধিক ডাটা) |
| সময় | Time Object (সময়/তারিখ সম্পর্কিত ভ্যালু) |
২.২ একক ভেরিয়েবল ডিক্লেয়ারেশন
পূর্ণসংখ্যা বয়স = ২৫;
দশমিক তাপমাত্রা = ৯৮.৪;
বাক্য শহর = "ঢাকা";
অক্ষর গ্রেড = "A";
দেখাও "বয়স: " >> বয়স;
দেখাও "তাপমাত্রা: " >> তাপমাত্রা;
দেখাও "শহর: " >> শহর;
দেখাও "গ্রেড: " >> গ্রেড;
; বাধ্যতামূলক (যদি/লুপ/ক্লাস ব্লক ছাড়া)।৩) একাধিক ভেরিয়েবল ডিক্লেয়ারেশন (নতুন বৈশিষ্ট্য)
একই টাইপের একাধিক ভেরিয়েবল এক লাইনে লিখতে পারবেন, শুধু কমা (,) দিয়ে আলাদা করতে হবে।
- যেগুলোতে মান নেই, তাদের জন্য টাইপ অনুযায়ী ডিফাল্ট মান বসায়।
৩.১ সব ভেরিয়েবলে মান দিয়ে
পূর্ণসংখ্যা ক=১০, খ=২০, গ=৩০;
দেখাও ক >> ", " >> খ >> ", " >> গ;
আউটপুট: ১০, ২০, ৩০
৩.২ মিশ্র ডিক্লেয়ারেশন (কিছুতে মান, কিছুতে নেই)
পূর্ণসংখ্যা প=১০০, ব;
দেখাও "প=" >> প >> ", ব=" >> ব;
আউটপুট: প=১০০, ব=০
ব-এর মান দেওয়া হয়নি, তাই Parser টাইপ দেখে ডিফাল্ট ভ্যালু বসিয়েছে।
পূর্ণসংখ্যার ডিফাল্ট ভ্যালু = ০।
৩.৩ সব ভেরিয়েবল মান ছাড়া
পূর্ণসংখ্যা ম, ন, ও;
দেখাও "ম=" >> ম >> ", ন=" >> ন >> ", ও=" >> ও;
আউটপুট: ম=০, ন=০, ও=০
৩.৪ বিভিন্ন ডাটা টাইপে multiple decl
// পূর্ণসংখ্যা
পূর্ণসংখ্যা x=৫, y=১০, z=১৫;
// দশমিক
দশমিক pi=৩.১৪, e=২.৭১, phi=১.৬১৮;
// বাক্য
বাক্য নাম="রহিম", শহর="ঢাকা", দেশ="বাংলাদেশ";
দেখাও নাম >> " - " >> শহর >> ", " >> দেশ;
// মিশ্র (কিছুতে মান নেই)
বাক্য প্রথম="আলী", দ্বিতীয়="বাবু", তৃতীয়;
দেখাও প্রথম >> ", " >> দ্বিতীয় >> ", " >> তৃতীয়;
৪) ডিফাল্ট ভ্যালু (Default Value)
যদি আপনি ভেরিয়েবল ডিক্লেয়ার করার সময় কোনো মান না দেন, লজিকবাংলা টাইপ দেখে নিজে থেকেই প্রাথমিক মান বসিয়ে দেয়। এই সিদ্ধান্তটা Parser-এ hardcoded ভাবে আছে। :contentReference[oaicite:5]{index=5}
| ডাটা টাইপ | ডিফাল্ট মান |
| পূর্ণসংখ্যা | ০ |
| দশমিক | ০.০ |
| বাক্য | "" |
| অক্ষর | "" |
| তালিকা | [] |
| সময় | সময়() (current time) |
পূর্ণসংখ্যা স্কোর; // স্কোর = ০
দশমিক তাপমাত্রা; // তাপমাত্রা = ০.০
বাক্য নাম; // নাম = ""
তালিকা items; // items = []
দেখাও স্কোর;
দেখাও তাপমাত্রা;
দেখাও নাম;
দেখাও items;
৫) ফর লুপের সাথে ব্যবহার (Multiple init/step)
তোমার Parser for-loop (পুনরাবৃত্তি) এর init/step অংশে একাধিক assignment সাপোর্ট করে।
তাই শুরু i=১, j=১০ এবং step-এ i++, j--—এই স্টাইল কাজ করাতে পারো।
// আগে ডিক্লেয়ার
পূর্ণসংখ্যা i, j;
// এরপর for-loop
পুনরাবৃত্তি (শুরু i=১, j=১০; যতক্ষণ i<=৫; i++, j--) {
দেখাও "i=" >> i >> ", j=" >> j;
নতুনলাইন;
}
৬) বাস্তব উদাহরণ
// ৬.১ ছাত্রের তথ্য
বাক্য নাম="সাকিব", শ্রেণী="দশম", বিভাগ="বিজ্ঞান";
পূর্ণসংখ্যা রোল=১৫, বয়স=১৬;
দশমিক জিপিএ=৪.৫;
দেখাও "নাম: " >> নাম; নতুনলাইন;
দেখাও "শ্রেণী: " >> শ্রেণী >> " (" >> বিভাগ >> ")"; নতুনলাইন;
দেখাও "রোল: " >> রোল >> ", বয়স: " >> বয়স; নতুনলাইন;
দেখাও "জিপিএ: " >> জিপিএ; নতুনলাইন;
// ৬.২ গণিত সমস্যা
পূর্ণসংখ্যা দৈর্ঘ্য=১০, প্রস্থ=৫, উচ্চতা=৮;
পূর্ণসংখ্যা ক্ষেত্রফল, আয়তন;
ক্ষেত্রফল = দৈর্ঘ্য * প্রস্থ;
আয়তন = দৈর্ঘ্য * প্রস্থ * উচ্চতা;
দেখাও "ক্ষেত্রফল: " >> ক্ষেত্রফল; নতুনলাইন;
দেখাও "আয়তন: " >> আয়তন; নতুনলাইন;
// ৬.৩ তাপমাত্রা রূপান্তর
দশমিক সেলসিয়াস=৩৭.০, ফারেনহাইট, কেলভিন;
ফারেনহাইট = (সেলসিয়াস * ৯.০ / ৫.০) + ৩২.০;
কেলভিন = সেলসিয়াস + ২৭৩.১৫;
দেখাও "সেলসিয়াস: " >> সেলসিয়াস >> "°C"; নতুনলাইন;
দেখাও "ফারেনহাইট: " >> ফারেনহাইট >> "°F"; নতুনলাইন;
দেখাও "কেলভিন: " >> কেলভিন >> "K"; নতুনলাইন;
৭) সাধারণ ভুল এবং সমাধান
// ৭.১ ❌ কমা ভুলে গেলে
পূর্ণসংখ্যা ক=১০ খ=২০;
// ✓ সঠিক
পূর্ণসংখ্যা ক=১০, খ=২০;
// ৭.২ ❌ সেমিকোলন ভুলে গেলে
পূর্ণসংখ্যা ক=১০, খ=২০
// ✓ সঠিক
পূর্ণসংখ্যা ক=১০, খ=২০;
// ৭.৩ ❌ বিভিন্ন টাইপ একসাথে
পূর্ণসংখ্যা ক=১০, বাক্য নাম="রহিম";
// ✓ সঠিক (আলাদা লাইনে)
পূর্ণসংখ্যা ক=১০;
বাক্য নাম="রহিম";
// ✓ সঠিক (একই টাইপ একসাথে)
পূর্ণসংখ্যা ক=১০, খ=২০;
বাক্য নাম="রহিম", শহর="ঢাকা";
লজিকবাংলা-এ কিওয়ার্ডকে ভেরিয়েবল নাম হিসেবে ব্যবহার করা যায় না।
যেমন পূর্ণসংখ্যা যদি = ১০; এটা error দেবে।
৮) বেস্ট প্র্যাকটিস
- অর্থবহ নাম দিন:
দৈর্ঘ্য, প্রস্থ, উচ্চতা—এগুলোx,y,zএর চেয়ে পরিষ্কার - সম্পর্কিত ভেরিয়েবল একসাথে লিখুন:
ঘন্টা, মিনিট, সেকেন্ড - গুরুত্বপূর্ণ ভেরিয়েবলগুলোতে initial value দিন: যেমন স্কোর/সীমা
// ✓ ভালো উদাহরণ
পূর্ণসংখ্যা স্কোর=০, সর্বোচ্চ=১০০, সর্বনিম্ন=০;
বাক্য প্রথম_নাম, শেষ_নাম, পুরো_নাম;
; দিন
- মান না দিলে ডিফাল্ট ভ্যালু পাবে
- কিওয়ার্ডকে ভেরিয়েবল নাম বানানো যাবে না