কম্পিউটার – একাদশ শ্রেণি – Algorithm & Flow chart
অ্যালগোরিদম (Algorithm) কাকে বলে?
Algorithm হল একগুচ্ছ পর্যায়ক্রমিক নির্দেশের সমষ্টি, যে নির্দেশগুলি পর পর ধাপে কাজ করে এবং কোন নির্দিষ্ট কার্য সম্পাদন করে। এটি হল এমন একটি প্রক্রিয়া, যা computer এর কোন program এর প্রতিটি ধাপ পর্যায়ক্রমে বর্ণনা করে।
Algorithm এর সুবিধা
• এটি কোন programming language এর উপর নির্ভরশীল নয়।
• Algorithm কে সহজেই Flow chart এ পরিবর্তিত করা যায়।
• জটিল program সহজে বোঝা যায়।
• Program এর ভুল সহজে নির্ণয় করা যায়।
• Program পরিবর্তন ও পরিবর্ধনে সহায়তা করে।
Algorithm এর অসুবিধা
• Algorithm লিখতে অনেক সময় লাগে।
• Data flow সব সময় পরিষ্কারভাবে বোঝা যায় না।
Algorithm এর বৈশিষ্ট্য
Algorithm এর ক্ষেত্রে নিম্নলিখিত বৈশিষ্ট্যগুলি দেখা যায়:
• Algorithm সহজবোধ্য হবে।
• Algorithm এর প্রতিটি ধাপ স্পষ্ট হয়, কোন জটিলতা থাকবে না।
• Algorithm এর ধাপ অর্থাৎ step এর সংখ্যা অসীম হতে পারবে না।
• Algorithm এক বা একাধিক results অর্থাৎ output দিতে পারে। কমপক্ষে একটি output থাকবে।
Flow chart কাকে বলে?
চিত্রের মাধ্যমে কোন program বা Algorithm কে প্রকাশ করা হলে তাকে Flow chart বলা হয়।
প্রকৃতপক্ষে Flow chart হল কতকগুলি জ্যামিতিক আকৃতি দিয়ে তৈরি একটি চিত্র, যা থেকে সহজেই বুঝতে পারা যায় যে কোন একটি program এর কোন ধাপ বা step এর পর অন্য কোন ধাপ সম্পন্ন হবে।
Flow chart এর বৈশিষ্ট্য
• Flow chart কোন program এর প্রকৃতি বুঝতে সাহায্য করে।
• একাধিক জ্যামিতিক আকৃতি ব্যবহার করে Flow chart তৈরি করা হয়।
• জ্যামিতিক চিহ্নগুলি ছোট বা বড় হতে পারবে, কিন্তু তার আকারগত পরিবর্তন ঘটতে পারে না।
• Flow chart এ data বা তথ্য প্রবাহের নির্দিষ্ট অভিমুখ থাকে।
• Data প্রবাহ সাধারণত ঊর্ধ্ব থেকে নিম্নমুখী হয়, অর্থাৎ এটি Top¬–down approach অনুসরণ করে।
• ব্যবহৃত প্রতিটি জ্যামিতিক আকৃতির নির্দিষ্ট অর্থ আছে।
• Flow chart কোন programming language এর উপর নির্ভরশীল নয়।
Flow chart এর সুবিধা
• এটি সম্পূর্ণ program সম্পর্কে একটি পরিষ্কার ধারণা দেয়।
• চিত্রের মাধ্যমে প্রকাশ করা হয় বলে program জানে না এমন ব্যক্তিও এটি বুঝতে সক্ষম হয়।
• Program এর বিভিন্ন ত্রুটি বা Error খুঁজতে এবং তা সমাধান করতে সাহায্য করে।
• Program এর পরিষ্কারভাবে বুঝতে পারা যায়।
• এটি programming language এর উপর নির্ভরশীল নয় এবং Flow chart থেকে যেকোন language এ program লেখা সম্ভব।
একাদশ শ্রেনি থেকে → বাংলা | ইংরাজি
Flow chart এর অসুবিধা
• Program এ পরিবর্তন করতে হলে Flow chart এ পরিবর্তন করা প্রয়োজন হয় যার ফলে অনেক ক্ষেত্রে নতুন করে Flow chart তৈরি করতে হয়। ফলে সময় ও অর্থের অপচয় ঘটে।
• Program খুব জটিল হলে তার Flow chart ও খুব জটিল ও clumsy হয়ে যায়, যা বুঝতে অসুবিধা হয়।
• Flow chart এর জ্যামিতিক চিহ্নগুলি সরাসরি computer keyboard এর সাহায্যে আঁকা যায় না। ফলে এটি তৈরি ও পরিবর্তন করার সময় ও পরিশ্রম সাপেক্ষ হয়।
Flow chart তৈরি করতে বিভিন্ন প্রকার জ্যামিতিক চিহ্ন ব্যবহৃত হয়। সর্বাধিক চিহ্নগুলি হল
একটি সংখ্যা ইনপুট জোড় না বিজোড় তা নির্ণয় করার জন্য Flow chart ও Algorithm কি হবে?
Algorithm:
Step 1: start
Step 2: Read the number A
Step 3: R = A%2
Step 4: If R = = 0 print “Even” else print “Odd”
Step 5: stop
একটি সংখ্যা ইনপুট মৌলিক (Prime) কিনা নির্ণয় করার জন্য Flow chart ও Algorithm কি হবে?
Algorithm:
Step 1: start
Step 2: Read the number A
Step 3: D = 2 [Initialize]
Step 4: Repeat step 4 through 6 until D = = A
Step 5: If A%D = = 0, print “Not prime”, go to step 8
Step 6: D = D + 1
Step 7: If D = = A, print “Prime number”
Step 8: stop
Flow chart
একাদশ শ্রেনি থেকে → অর্থনীতি | ভূগোল
একটি সংখ্যা ইনপুটের Factorial নির্ণয় করার Flow chart ও Algorithm কি হবে?
Algorithm:
Step 1: start
Step 2: Read the number n
Step 3: i = 1, fact = 1 [Initialize]
Step 4: Repeat step 4 through 6 until i = n
Step 5: fact = fact * i
Step 6: i = i + 1
Step 7: Print fact
Step 8: stop
Flow chart:
দশটি সংখ্যাবিশিষ্ট Array থেকে নির্দিষ্ট সংখ্যা Search করার Algorithm কি হবে?
Algorithm:
Step 1: start
Step 2: Define variables a[10], x, i
Step 3: Input ten array elements: a[i]
Step 4: Input element to search: x
Step 5: i = 0 [Initialize]
একাদশ শ্রেণি থেকে → Physics | Chemistry | Biology | Computer
Step 6: Repeat step 6 through 8 until i<10
Step 7: If a[i] = x, go to step 9
Step 8: i = i + 1
Step 9: Print “Element index is” i, and go to step 11
Step 10: Print “Element does not exist in the array”
Step 11: stop
সমাপ্ত।
এই লেখাটির সর্বস্বত্ব সংরক্ষিত। বিনা অনুমতিতে এই লেখা, অডিও, ভিডিও বা অন্য ভাবে কোন মাধ্যমে প্রকাশ করলে তার বিরুদ্ধে আইনানুগ ব্যবস্থা নেওয়া হবে।
লেখিকা পরিচিতিঃ
বিজ্ঞান স্নাতক এবং কম্পিউটার বিজ্ঞানে উচ্চ শিক্ষিতা নন্দিতা বসুর পেশা শিক্ষকতা।তিনি বই পড়তে বড় ভালোবাসেন। কাজের ফাঁকে, অবসরে, বাসে ট্রামে তো বটেই, শোনা যায় তিনি নাকি ঘুমিয়ে ঘুমিয়েও বই পড়তে পারেন।
এই লেখাটি থেকে উপকৃত হলে সবার সাথে শেয়ার করতে ভুলো না।
JumpMagazine.in এর নিয়মিত আপডেট পাবার জন্য –
- সাবস্ক্রাইব করো – YouTube চ্যানেল
- লাইক করো – facebook পেজ
- সাবস্ক্রাইব করো – টেলিগ্রাম চ্যানেল
- Facebook Group – লেখা – পড়া – শোনা
XI_Comp_8a