beginner#flowchartUpdated: 2026-05-13

ফ্লোচার্ট (Flowchart)


১. ভূমিকা — ছবিতে দেখালে সহজ হয় না?

তুমি কি কখনো কোনো পণ্যের ব্যবহারবিধি দেখেছো? অথবা হাসপাতালের "রোগী কোথায় যাবে" — এই ধরনের দিকনির্দেশনার বোর্ড?

সেখানে তীর চিহ্ন দিয়ে দেখানো থাকে — কোথায় গেলে কী হবে। এটাই মূলত Flowchart!

এখন প্রশ্ন হলো: আমরা কি শুধু কথায় Algorithm লিখবো? নাকি ছবিতে দেখাবো?

ছবিতে দেখানো অনেক সহজ — তাই Flowchart (ফ্লোচার্ট) তৈরি হয়েছিল।


২. সমস্যা — শুধু কথায় বললে সবাই বোঝে না

ধরো তুমি তোমার ছোট ভাইকে বললে: "ATM থেকে টাকা তুলতে হলে কার্ড দাও, PIN দাও, পরিমাণ দাও, টাকা নাও।"

সে বুঝলো না — কোথায় শুরু, কোথায় শেষ, ভুল PIN হলে কী হয়?

যদি একটা চিত্র দেখাতে পারতে — সব স্পষ্ট হয়ে যেতো।

Flowchart হলো সেই চিত্র — Algorithm-কে চিত্রে রূপ দেওয়া।


৩. চিত্রের মাধ্যমে বোঝো

Flowchart-এর প্রতীক (Symbols):

┌──────────────┐     ┌──────────────────┐
│   Terminal   │     │    Process       │
│  (শুরু/শেষ) │     │ (হিসাব/কাজ)     │
│  ওভাল আকার  │     │  আয়তক্ষেত্র    │
└──────────────┘     └──────────────────┘

┌──────────────┐     ┌──────────────────┐
│  Decision    │     │  Input/Output    │
│   (শর্ত)    │     │  (ইনপুট/আউটপুট) │
│ হীরক আকার  │     │  সামান্তরিক     │
└──────────────┘     └──────────────────┘

        ↓  (Arrow / তীর — প্রবাহের দিক)

প্রতীক সারণি:

প্রতীকআকৃতিব্যবহার
Terminalডিম্বাকার (Oval)শুরু (Start) এবং শেষ (End)
Processআয়তক্ষেত্র (Rectangle)হিসাব বা কাজ
Decisionহীরক (Diamond)হ্যাঁ/না প্রশ্ন
Input/Outputসামান্তরিক (Parallelogram)ডেটা নেওয়া বা দেখানো
Arrowতীর চিহ্নপ্রবাহের দিক
Connectorবৃত্ত (Circle)একটি পয়েন্ট থেকে অন্যত্র যাওয়া

৪. বাস্তব জীবনের সাথে মিল

ট্রেন লাইন ভাবো:

ট্রেন একটি নির্দিষ্ট পথে চলে। কোনো জায়গায় লাইন দুটি ভাগ হয় — সিগন্যাল দেখে ট্রেন ঠিক করে কোন পথে যাবে।

Flowchart ঠিক এমন:

  • Arrow = ট্রেন লাইন
  • Process = স্টেশন (কাজ হয়)
  • Decision = লাইন বিভক্ত হওয়ার জায়গা
  • Terminal = শুরুর স্টেশন এবং শেষ স্টেশন

Module 1: সংজ্ঞা ও ধারণা

Flowchart (ফ্লোচার্ট) হলো Algorithm-এর চিত্ররূপ প্রকাশ। এতে বিভিন্ন জ্যামিতিক আকৃতি এবং তীর চিহ্ন ব্যবহার করে একটি প্রক্রিয়ার প্রবাহ (Flow) দেখানো হয়।

Flowchart-এর সুবিধা:

  • ✅ দেখতে সহজ, বুঝতে সহজ
  • ✅ ভুল খুঁজে বের করা সহজ
  • ✅ দলীয় কাজে সবাই একসাথে বুঝতে পারে
  • ✅ কোড লেখার আগে পরিকল্পনা করতে সাহায্য করে

Flowchart-এর অসুবিধা:

  • ❌ বড় প্রোগ্রামের জন্য জটিল হয়ে যায়
  • ❌ পরিবর্তন করতে পুরো চিত্র আঁকতে হয়

Module 2: কীভাবে কাজ করে

Flowchart আঁকার নিয়ম:

১. সবসময় Terminal (Start) থেকে শুরু করো
         ↓
২. ক্রমানুসারে Process/Decision যোগ করো
         ↓
৩. Arrow দিয়ে সংযুক্ত করো (সাধারণত উপর থেকে নিচে)
         ↓
৪. Decision-এ দুটি বাহু: "হ্যাঁ" এবং "না"
         ↓
৫. Terminal (End) দিয়ে শেষ করো
         ↓
৬. প্রতিটি Arrow-এর দিক স্পষ্ট রাখো

Module 3: প্যাটার্ন ও উদাহরণ

প্যাটার্ন ১: Sequential Flowchart (ক্রমানুসারী)

উদাহরণ ১.১: দুটি সংখ্যার যোগফল

        ┌─────────┐
        │  START  │
        └────┬────┘
             ↓
        ┌────┴────────────────┐
        │  a এবং b ইনপুট নাও │
        └────┬────────────────┘
             ↓
        ┌────┴──────────┐
        │  sum = a + b  │
        └────┬──────────┘
             ↓
        ┌────┴────────────────┐
        │  sum প্রিন্ট করো   │
        └────┬────────────────┘
             ↓
        ┌────┴────┐
        │   END   │
        └─────────┘

উদাহরণ ১.২: আয়তক্ষেত্রের ক্ষেত্রফল

        ┌─────────┐
        │  START  │
        └────┬────┘
             ↓
        ┌────┴───────────────────┐
        │  দৈর্ঘ্য l ও প্রস্থ w  │
        │       ইনপুট নাও        │
        └────┬───────────────────┘
             ↓
        ┌────┴───────────┐
        │  area = l × w  │
        └────┬───────────┘
             ↓
        ┌────┴──────────────────┐
        │  area প্রিন্ট করো    │
        └────┬──────────────────┘
             ↓
        ┌────┴────┐
        │   END   │
        └─────────┘

উদাহরণ ১.৩: গড় নির্ণয়

        ┌─────────┐
        │  START  │
        └────┬────┘
             ↓
        ┌────┴──────────────────────┐
        │  তিনটি সংখ্যা a, b, c   │
        │        ইনপুট নাও          │
        └────┬──────────────────────┘
             ↓
        ┌────┴──────────────────────┐
        │  avg = (a + b + c) / 3    │
        └────┬──────────────────────┘
             ↓
        ┌────┴──────────────────────┐
        │  avg প্রিন্ট করো         │
        └────┬──────────────────────┘
             ↓
        ┌────┴────┐
        │   END   │
        └─────────┘

প্যাটার্ন ২: Conditional Flowchart (শর্তযুক্ত)

উদাহরণ ২.১: সংখ্যা ধনাত্মক না ঋণাত্মক

          ┌─────────┐
          │  START  │
          └────┬────┘
               ↓
          ┌────┴──────────┐
          │  n ইনপুট নাও  │
          └────┬──────────┘
               ↓
          ┌────┴─────┐
          │  n > 0?  │
          └──┬────┬──┘
        হ্যাঁ↓    ↓না
    ┌────────┴┐  ┌┴──────────┐
    │"ধনাত্মক"│  │ n < 0?    │
    └────────┬┘  └┬───────┬──┘
             ↓ হ্যাঁ↓     ↓না
             │  ┌─┴──────┐ ┌┴──────────┐
             │  │"ঋণাত্মক"│ │"শূন্য"    │
             │  └─┬──────┘ └┬──────────┘
             ↓    ↓          ↓
          ┌──┴────┴──────────┴──┐
          │      END             │
          └─────────────────────┘

উদাহরণ ২.২: পাস/ফেল নির্ধারণ

          ┌─────────┐
          │  START  │
          └────┬────┘
               ↓
          ┌────┴──────────────┐
          │  marks ইনপুট নাও  │
          └────┬──────────────┘
               ↓
          ┌────┴──────────────┐
          │   marks >= 33?    │
          └──┬─────────────┬──┘
        হ্যাঁ↓             ↓না
      ┌───────┴──┐    ┌────┴──────┐
      │  "পাস"  │    │   "ফেল"  │
      └───────┬──┘    └────┬──────┘
              ↓             ↓
          ┌───┴─────────────┴───┐
          │         END          │
          └─────────────────────┘

উদাহরণ ২.৩: বড় সংখ্যা নির্ণয়

          ┌─────────┐
          │  START  │
          └────┬────┘
               ↓
          ┌────┴───────────────────┐
          │  a এবং b ইনপুট নাও    │
          └────┬───────────────────┘
               ↓
          ┌────┴───────────┐
          │    a > b?      │
          └──┬──────────┬──┘
        হ্যাঁ↓          ↓না
      ┌───────┴───┐  ┌───┴────────┐
      │ "a বড়"  │  │  "b বড়"  │
      └───────┬───┘  └───┬────────┘
              ↓           ↓
          ┌───┴───────────┴───┐
          │       END          │
          └───────────────────┘

প্যাটার্ন ৩: Loop Flowchart (পুনরাবৃত্তিমূলক)

উদাহরণ ৩.১: ১ থেকে ৫ পর্যন্ত প্রিন্ট

          ┌─────────┐
          │  START  │
          └────┬────┘
               ↓
          ┌────┴──────┐
          │   i = 1   │
          └────┬──────┘
               ↓
          ┌────┴──────────┐
          │   i <= 5?     │◄──────────┐
          └──┬─────────┬──┘           │
        হ্যাঁ↓         ↓না            │
      ┌───────┴───┐  ┌─┴───┐          │
      │ i প্রিন্ট │  │ END │          │
      └───────┬───┘  └─────┘          │
              ↓                        │
          ┌───┴──────────┐             │
          │  i = i + 1   │─────────────┘
          └──────────────┘

উদাহরণ ৩.২: ১ থেকে n পর্যন্ত যোগফল

          ┌─────────┐
          │  START  │
          └────┬────┘
               ↓
          ┌────┴──────────┐
          │  n ইনপুট নাও  │
          └────┬──────────┘
               ↓
          ┌────┴──────────────┐
          │  sum = 0, i = 1   │
          └────┬──────────────┘
               ↓
          ┌────┴──────────┐
          │   i <= n?     │◄──────────────────┐
          └──┬─────────┬──┘                   │
        হ্যাঁ↓         ↓না                    │
      ┌───────┴──────┐  ┌──┴────────────┐     │
      │sum = sum + i │  │sum প্রিন্ট করো│     │
      └───────┬──────┘  └──┬────────────┘     │
              ↓             ↓                  │
          ┌───┴──────────┐ ┌┴───┐              │
          │  i = i + 1   │ │END │              │
          └───┴──────────┘ └────┘              │
              └───────────────────────────────┘

উদাহরণ ৩.৩: Factorial গণনা

          ┌─────────┐
          │  START  │
          └────┬────┘
               ↓
          ┌────┴──────────────┐
          │  n ইনপুট নাও     │
          └────┬──────────────┘
               ↓
          ┌────┴───────────────────┐
          │  result = 1, i = 1     │
          └────┬───────────────────┘
               ↓
          ┌────┴──────────┐
          │   i <= n?     │◄──────────────────┐
          └──┬─────────┬──┘                   │
        হ্যাঁ↓         ↓না                    │
      ┌───────┴──────────┐  ┌──┴──────────────┐│
      │result = result×i │  │result প্রিন্ট   ││
      └───────┬──────────┘  └──┬──────────────┘│
              ↓                 ↓               │
          ┌───┴──────────┐ ┌────┴──┐            │
          │  i = i + 1   │ │  END  │            │
          └───┴──────────┘ └───────┘            │
              └───────────────────────────────┘

Module 4: বাস্তব প্রয়োগ

বাস্তব ব্যবহারFlowchart-এর ভূমিকা
সফটওয়্যার ডিজাইনকোড লেখার আগে পরিকল্পনা
ব্যবসায়িক প্রক্রিয়াঅফিসের কাজের ধাপ দেখানো
হাসপাতালরোগী দেখার প্রক্রিয়া
ব্যাংকিংলোন অনুমোদনের ধাপ
শিক্ষাভর্তি প্রক্রিয়া বর্ণনা

Module 5: সাধারণ ভুল ও সতর্কতা

ভুল ১: ভুল প্রতীক ব্যবহার

❌ ভুল: হিসাবের জন্য Diamond (হীরক) ব্যবহার
✅ সঠিক: হিসাবের জন্য Rectangle (আয়তক্ষেত্র) ব্যবহার

❌ ভুল: শর্তের জন্য Rectangle ব্যবহার
✅ সঠিক: শর্তের জন্য Diamond (হীরক) ব্যবহার

ভুল ২: Arrow-এর দিক না দেওয়া

❌ ভুল: দুটি বক্সের মধ্যে লাইন টানা কিন্তু তীর নেই
✅ সঠিক: সব সংযোগে তীর চিহ্ন থাকবে

ভুল ৩: Decision-এ দুটি পথ না রাখা

❌ ভুল: Decision বক্স থেকে শুধু একটি পথ
✅ সঠিক: "হ্যাঁ" এবং "না" দুটি পথই থাকবে

ভুল ৪: Start/End ভুলে যাওয়া

❌ ভুল: Flowchart সরাসরি Process দিয়ে শুরু
✅ সঠিক: সবসময় START Terminal দিয়ে শুরু, END দিয়ে শেষ

Module 6: সুবিধা-অসুবিধা

পরিস্থিতিFlowchart ব্যবহার করোঅন্য পদ্ধতি ব্যবহার করো
ছোট প্রোগ্রাম✅ উপযুক্ত
বড় প্রোগ্রাম❌ অনেক জটিল হয়Pseudocode ভালো
দলীয় কাজ✅ সবাই বুঝতে পারে
দ্রুত পরিকল্পনা❌ সময় লাগেAlgorithm লেখা দ্রুত

🔁 নিজে পরীক্ষা করো

MCQ:

১. Flowchart-এ হিসাব বা প্রক্রিয়া বোঝাতে কোন আকৃতি ব্যবহার হয়?

  • ক) ডিম্বাকার
  • খ) আয়তক্ষেত্র ✓
  • গ) হীরক
  • ঘ) সামান্তরিক

২. Decision বক্সে সর্বনিম্ন কয়টি পথ থাকে?

  • ক) ১
  • খ) ২ ✓
  • গ) ৩
  • ঘ) ৪

৩. Flowchart-এ ইনপুট/আউটপুট বোঝাতে কোন আকৃতি ব্যবহার হয়?

  • ক) আয়তক্ষেত্র
  • খ) হীরক
  • গ) সামান্তরিক ✓
  • ঘ) বৃত্ত

৪. কোনটি Flowchart-এর সুবিধা নয়?

  • ক) দেখতে সহজ
  • খ) বুঝতে সহজ
  • গ) বড় প্রোগ্রামে সহজ ✓
  • ঘ) পরিকল্পনায় সাহায্য করে

৫. Loop Flowchart-এ কোন বৈশিষ্ট্য থাকে?

  • ক) শুধু সামনে যায়
  • খ) পেছনে ফেরার Arrow থাকে ✓
  • গ) কোনো Decision থাকে না
  • ঘ) শুধু একটি পথ থাকে

সংক্ষিপ্ত প্রশ্ন:

৬. Flowchart-এর ৫টি প্রতীক এবং তাদের ব্যবহার লেখো।

৭. "একটি সংখ্যা জোড় না বিজোড়" নির্ধারণের Flowchart আঁকো।


📝 HSC পরীক্ষার প্রস্তুতি

১. Algorithm এবং Flowchart-এর মধ্যে পার্থক্য কী? কোনটি কখন ব্যবহার করা ভালো?

২. একটি Loop Flowchart-এ যদি "হ্যাঁ" এবং "না" পথ উল্টো হয়ে যায়, তাহলে কী সমস্যা হবে?

৩. তুমি কি Flowchart ছাড়াই সরাসরি কোড লিখতে পারো? Flowchart আঁকা কি সময়ের অপচয়?


🎯 অনুশীলন প্রশ্ন

সহজ: "তিনটি সংখ্যার মধ্যে সর্বোচ্চটি খুঁজে বের করো" — এর Flowchart আঁকো।

মাঝারি: "১ থেকে ১০০ পর্যন্ত সকল জোড় সংখ্যার যোগফল" — এর Flowchart আঁকো।

কঠিন: "একটি সংখ্যা মৌলিক (Prime) কিনা পরীক্ষা করো" — এর Flowchart আঁকো।


✅ সারাংশ

🎯 মনে রেখো:

  • Flowchart = Algorithm-এর চিত্ররূপ
  • ৫টি প্রধান প্রতীক:
    • Oval → Start/End
    • Rectangle → Process (হিসাব/কাজ)
    • Diamond → Decision (শর্ত)
    • Parallelogram → Input/Output
    • Arrow → প্রবাহের দিক
  • ৩ ধরনের Pattern:
    • Sequential → সরল পথ
    • Conditional → Diamond থেকে দুটি পথ
    • Loop → পেছনে ফিরে আসার Arrow
  • সবসময় START দিয়ে শুরু, END দিয়ে শেষ
  • Decision বক্সে সবসময় "হ্যাঁ" এবং "না" দুটি পথ

💡 পরীক্ষার টিপস: HSC-তে Flowchart আঁকার সময় প্রতীকের আকৃতি সঠিক রাখবে এবং Arrow-এর দিক দিতে ভুলবে না।