B
Biggan.meSTEM
বিজ্ঞান ও গণিত সলভার
তথ্য ও যোগাযোগ প্রযুক্তি (HSC ICT)NCTB এইচএসসি আইসিটি (অধ্যায় ৫)সি প্রোগ্রামিংড্রাই-রান ও অ্যালগরিদম

সি প্রোগ্রামিং (C Code) সিমুলেটর ও মেমরি ট্রেসার

এইচএসসি আইসিটি ৫ম অধ্যায়ের জন্য সি প্রোগ্রামিং কোড সিমুলেটর। লুপ, শর্ত ও ভ্যারিয়েবলের ধাপভিত্তিক মেমরি রেজিস্টার পরিবর্তন (Dry-run) ও রিয়েল-টাইম কনসোল।

সি প্রোগ্রাম:
ইনপুট n:
1 / 34
main.c (ANSI C99)বর্তমান লাইন: 4
1#include <stdio.h>
2
3int main() {
4 int n = 6;CURRENT
5 int a = 0, b = 1, next, i;
6
7 printf("Fibonacci Series:\n");
8 for (i = 1; i <= n; i++) {
9 printf("%d ", a);
10 next = a + b;
11 a = b;
12 b = next;
13 }
14 return 0;
15}
ব্যাখ্যা:Initializes n = 6

র‍্যাম মেমরি রেজিস্টার (Variables in RAM)

Live Stack
nint
6
Standard Output (stdout)printf console
// No output yet...

গাণিতিক ভিত্তি ও সমীকরণ প্রতিপাদন

তাত্ত্বিক ভিত্তি, একক বিশ্লেষণ ও সমীকরণের ভৌত সীমাবদ্ধতা

সি প্রোগ্রামিংয়ের মেমরি সংগঠন ও লুপ ট্রেসিং

এইচএসসি আইসিটি পরীক্ষায় সি প্রোগ্রামিংয়ের প্রশ্নগুলোতে শিক্ষার্থীদের সবচেয়ে বেশি নম্বর কাটার কারণ হলো লুপের ভেতরে ভ্যারিয়েবলের মান কীভাবে আপডেট হচ্ছে তা কল্পনা করতে না পারা।

For Loop এর ৪টি ধাপ:

১. ইনিশিয়ালাইজেশন (i = 1)

২. কন্ডিশন চেক (i <= n)

৩. বডি এক্সিকিউশন (Body Execution)

৪. ইনক্রিমেন্ট বা ডিক্রিমেন্ট (i++)

ড্রাই-রান টেবিল কলাম:

Step # • Line # • RAM Variables • Output

পাঠ্যবই ও বোর্ড পরীক্ষার ৩টি সমাধানকৃত উদাহরণ

পাঠ্যবই, অলিম্পিয়াড ও বিগত বোর্ড পরীক্ষার হুবহু সমাধানকৃত ৩টি মানসম্পন্ন অংক

সহজ / মৌলিক লুপbg-emerald-500/10 text-emerald-400 border border-emerald-500/20
একটি C প্রোগ্রামের লুপে for(i = 1; i <= 5; i++) দেওয়া আছে। লুপটি মোট কতবার ঘুরবে এবং শেষ মান কত হবে?
দেওয়া আছে (Given Data):
  • শুরু: i = 1
  • শর্ত: i <= 5
  • বৃদ্ধি: i++
সমাধানের ধাপসমূহ:
লুপের প্রতিটি ধাপ: i = 1, 2, 3, 4, 5 (শর্ত সত্য)।
i = 5 এর পর বৃদ্ধি পেয়ে i = 6 হয়।
শর্ত 6 <= 5 মিথ্যা হওয়ায় লুপ শেষ হয়।
উত্তর:লুপটি মোট ৫ বার ঘুরবে এবং লুপ শেষে i এর মান হবে ৬।
বোর্ড পরীক্ষা স্পেশাল (CQ গ/ঘ)bg-cyan-500/10 text-cyan-400 border border-cyan-500/20
একটি সংখ্যা মৌলিক (Prime) কি না তা যাচাই করার অ্যালগরিদম ও C কোডের ড্রাই-রান সম্পন্ন করো।
দেওয়া আছে (Given Data):
  • সংখ্যা n = 7
  • ভাজক রেঞ্জ: 2 থেকে n/2
সমাধানের ধাপসমূহ:
লুপ শুরু করি i = 2 থেকে 3 (7 / 2 = 3) পর্যন্ত।
7 % 2 = 1 (ভাগশেষ 0 নয়)।
7 % 3 = 1 (ভাগশেষ 0 নয়)।
কোনো ভাজক দ্বারা নিঃশেষে বিভাজ্য না হওয়ায় সংখ্যাটি মৌলিক।
উত্তর:n = 7 একটি মৌলিক সংখ্যা (Prime Number)।
ধারার যোগফল ও মেমরি ট্রেসbg-purple-500/10 text-purple-400 border border-purple-500/20
ফিবোনাচ্চি ধারার প্রথম ৬টি পদের মান C প্রোগ্রামের মেমরি রেজিস্টার পরিবর্তনের মাধ্যমে দেখাও।
দেওয়া আছে (Given Data):
  • a = 0, b = 1, n = 6
সমাধানের ধাপসমূহ:
পদ ১: ০ (next = 0 + 1 = 1, a=1, b=1)
পদ ২: ১ (next = 1 + 1 = 2, a=1, b=2)
পদ ৩: ১ (next = 1 + 2 = 3, a=2, b=3)
পদ ৪: ২ (next = 2 + 3 = 5, a=3, b=5)
পদ ৫: ৩, পদ ৬: ৫
উত্তর:ফিবোনাচ্চি ধারা: 0, 1, 1, 2, 3, 5

বোর্ড পরীক্ষা ও ল্যাব চেকলিস্ট

✓ একক রূপান্তর (SI Units)গণনার পূর্বে সকল মানকে SI এককে নিয়ে নিন।
✓ সূত্র ও পক্ষান্তর উল্লেখখাতায় মূল সূত্র লিখে লক্ষ্য চলককে আলাদা করুন।
✓ তাৎপর্যপূর্ণ অঙ্ক ও রাউন্ডিংচূড়ান্ত ফলাফলে ২ বা ৩ দশমিক স্থান পর্যন্ত রাউন্ড করুন।

বাস্তব ও শিল্পক্ষেত্রে প্রয়োগ

শিল্প-কারখানা, ওষুধ প্রস্তুতি, প্রকৌশল ও আধুনিক গবেষণায় প্রয়োগ

সি প্রোগ্রামিং ল্যাঙ্গুয়েজকে আধুনিক সকল কম্পিউটার ভাষার জননী বলা হয়। লিনাক্স ও উইন্ডোজ অপারেটিং সিস্টেম কার্নেল, ডাটাবেজ ইঞ্জিন (MySQL, PostgreSQL), এমবেডেড মাইক্রোকন্ট্রোলার এবং উচ্চগতির গেম ইঞ্জিন আজও সি ও সি++ দিয়ে তৈরি। আমাদের এই ভিজ্যুয়াল মেমরি ট্রেসারে কোড রান করে শিক্ষার্থীরা কম্পিউটার আর্কিটেকচারের সরাসরি বাস্তব ধারণা পায়।

বহুল জিজ্ঞাসিত প্রশ্নাবলী (FAQ)

শিক্ষার্থীদের সচরাচর ভুল ও গুরুত্বপূর্ণ প্রশ্নের একাডেমিক উত্তর

সি ভাষায় if-else এবং লুপের ড্রাই-রান (Dry-Run) কী?
ড্রাই-রান হলো কম্পিউটার ছাড়া কাগজের পাতায় পেন্সিল দিয়ে কোডের প্রতিটি লাইনের পর ভ্যারিয়েবলগুলোর মান কীভাবে পরিবর্তিত হচ্ছে তা সারণী আকারে লিখে টেস্ট করার পদ্ধতি। এইচএসসি পরীক্ষায় এটি সরাসরি লিখিত প্রশ্নে আসে।
while লুপ এবং do-while লুপের মধ্যে মূল পার্থক্য কী?
while লুপে লুপে প্রবেশের আগেই শর্ত যাচাই করা হয় (Entry-controlled)। অপরদিকে do-while লুপে অন্তত একবার বডি এক্সিকিউট হওয়ার পর শর্ত যাচাই করা হয় (Exit-controlled)।
ব্রেক (break) এবং কন্টিনিউ (continue) স্টেটমেন্টের কাজ কী?
break স্টেটমেন্ট লুপকে সাথে সাথে বন্ধ করে বাইরে বের করে দেয়। আর continue স্টেটমেন্ট বর্তমান চক্রের বাকি অংশ বাদ দিয়ে পরবর্তী ইটারেশনে চলে যায়।