এলগৰিথম আৰু ডেইটা ষ্ট্ৰাকচাৰ

কম্পিউটাৰ বিজ্ঞানৰ এই বিভাগত কাৰ্যক্ষেত্ৰত কম্পিউটাৰ বিজ্ঞানৰ প্ৰয়োগৰ তাত্বিক দিশবোৰৰ অধ্যয়ন কৰা হয়। এনে অধ্যয়নলব্ধ জ্ঞানৰ সহায়তে বাস্তৱ জগতত কম্পিউটাৰ প্ৰয়োগ কৰিবলৈ প্ৰগ্ৰেম লিখা হয়।

তথ্য প্ৰতীকিকৰণ বা ডেইটা এবষ্ট্ৰেকশ্যন

সাধাৰণতে কম্পিউটাৰ প্ৰয়োগ কৰি যিকোনো সমস্যা সমাধান কৰিবলৈ হ'লে প্ৰথমতে সেই সমস্যাৰ এটা গাণিতিক আৰ্হি বা মডেল তৈয়াৰ কৰা হয়। এই অৱৰূপত উক্ত সমস্যা সম্পৰ্কীয় সকলো প্ৰাসংগিক তথ্য ব্যৱহাৰ কৰি উপযুক্ত চলক আৰু প্ৰতীকৰ পাৰস্পৰীক ক্ৰিয়া-প্ৰতিক্ৰিয়াসমূ্হ গাণিতীয় সমীকৰণৰ সহায়ত দৰ্শাই ভৌতিক জগতৰ সমস্যাটো তাত্বিক ৰূপত অৱতাৰণা কৰা হয়। এই প্ৰক্ৰিয়াক তথ্য প্ৰতীকিকৰণ বা ডেইটা এবষ্ট্ৰেকশ্যন বোলা হয়। এই আৰ্হিৰ মুখ্য উপাদানদুটা হ'ল “এলগৰিথম” আৰু “ডেইটা ষ্ট্ৰাকচাৰ”।

এলগৰিথম

এই কাৰ্য্যৰ কৰিবলৈ কম্পিউটাৰক দিবলগীয়া পদ্ধতিগত নিৰ্দেশাৱলীকে “এলগৰিথম” বোলা হয়। এলগৰিথম মূলতে পাচঁটা ভাগত ভগাব পাৰি।

  • ১. ইনপুট (নিৰ্দেশ)
  • ২. আউটপুট (Result/ফল)
  • ৩. ডেফিনেচন (বৰ্ণনা)
  • ৪. ইফেক্তিভনেচ (কাৰ্যকাৰিতা)
  • ৫. তাৰমিনেচন (সমাপন)

এই এলগৰিথমটোক উপযুক্ত প্ৰগ্ৰেমিং লেংগুৱেজ ব্যৱহাৰ কৰি প্ৰগ্ৰেম হিচাবে প্ৰকাশ কৰি কম্পিউটাৰত ৰাণ কৰিলে কম্পিউটাৰটোৱে প্ৰতীকাত্মকভাৱে বাস্তৱ সমস্যাটো আৰু তাৰ অনুসংগবোৰৰ দৰে আচৰণ কৰিব বুলি ভাৱিব পৰা যায়। সমাধান কৰিবলগীয়া সমস্যাটোৰ পৰিৱেশসমূহ দৰ্শাই উপযুক্ত ইনপুট দিলে কম্পিউটাৰটোৱে উক্ত পৰিৱেশত বাস্তৱ সমস্যাটোৰ দৰে আচৰণ কৰিব। এই আচৰণ তথা সংশ্লিষ্ট আউটপুটবিলাক নিৰীক্ষণ কৰি সমস্যাটোৰ সমাধান নিৰ্ণয় কৰিব পৰা যায়। উদাহৰণ স্বৰূপে ধৰাহওক আমাক তিনিজন মানু্হৰ ভিতৰত আটাইতকৈ ওখজনক বাচি উলিয়াবলৈ দিয়া হল। বাস্তৱ ক্ষেত্ৰত এই সমস্যাটো সমাধান কৰিবলৈ আমি মানু্হ তিনিজনৰ উচ্চতাৰ তুলনা কৰিম। কিন্তু কম্পিউটাৰৰ সহায়ত ইয়াকে কৰিবলৈ আমি এক নিৰ্দিষ্ট প্ৰক্ৰিয়া অনুসৰণ কৰিব লাগিব যাক ওপৰৰ পেৰাগ্ৰাফত “তথ্য প্ৰতীকিকৰণ” বা “ডেইটা এবষ্ট্ৰেকশ্যন” বোলা হৈছে। কম্পিউটাৰৰ কাৰ্যক্ষমতাৰ সীমাবদ্ধতা আছে। উপযুক্ত উপকৰণ নহলে এটা কম্পিউটাৰে মানু্হ এজনৰ উচ্চতা জুখিব নোৱাৰে। গতিকে তুলনা কৰিবলগীয়া মানুহ তিনিজনৰ উচ্চতা আমিয়েই জুখিব লাগিব আৰু কীবৰ্ড ব্যৱহাৰ কৰি ইনপুট হিচাবে কম্পিউটাৰক দিব লাগিব। লগতে আমি উচ্চতা জোখা প্ৰক্ৰিয়াটোও প্ৰগ্ৰেমৰূপে প্ৰকাশকৰি কম্পিউটাৰক জনাব লাগিব। এই প্ৰগ্ৰেমৰ এলগৰিথম আৰু সংশ্লিষ্ট ইনপুট-আউটপুট বোৰেই হব আমাৰ সমস্যাটোৰ কম্পিউটাৰ অৱৰূপ বা মডেল। তিনিজনৰ উচ্চতা তুলনা কৰা এলগৰিথমটোত প্ৰথমতে আমি একোজন মানুহৰ উচ্চতাক প্ৰকাশ কৰিবলৈ একোটা চলক ব্যৱহাৰ কৰিম। এনেদৰে আমি একোজন মানুহৰ উচ্চতাৰ “এবষ্ট্ৰেকশ্যন” বা প্ৰতীকিকৰণ কৰিলোঁ। ধৰাহওক এই তিনিজন মানুহ – ঘটিৰাম, বাতিৰাম আৰু কাঁহীৰামৰ উচ্চতা প্ৰকাশ কৰা চলক তিনিটা হ'ল যথাক্ৰমে “ক”, “খ” আৰু “গ”। সংশ্লিষ্ট এলগৰিথমটো হ'ল:

  1. কীবৰ্ডৰ পৰা ইনপুট লৈ উচ্চতাৰ জোখ তিনিটা যথাক্ৰমে “ক”, “খ” আৰু “গ” চলকৰ নামত স্ট'ৰ কৰক।
  2. “ক” আৰু “খ” তুলনা কৰক। যদিহে “ক” ডাঙৰ তেন্তে তলৰ “৩” নং ধাপলৈ যাওক, অন্যথা “৫” নং ধাপলৈ যাওক।
  3. “ক” আৰু “গ” তুলনা কৰক। যদি “ক” ডাঙৰ, তেন্তে স্ক্ৰীণত প্ৰকাশ কৰক: “ঘটিৰাম সকলোতকৈ ওখ।” অন্যথা (“গ” ডাঙৰ হ'লে) স্ক্ৰীণত প্ৰকাশ কৰক: “কাঁহীৰাম সকলোতকৈ ওখ।”
  4. ৬ নং ধাপলৈ যাওক।
  5. “খ” আৰু “গ” তুলনা কৰক। যদি “খ” ডাঙৰ, তেন্তে স্ক্ৰীণত প্ৰকাশ কৰক: “বাতিৰাম সকলোতকৈ ওখ।” অন্যথা (“গ” ডাঙৰ হ'লে) স্ক্ৰীণত প্ৰকাশ কৰক: “কাঁহীৰাম সকলোতকৈ ওখ।”
  6. প্ৰগ্ৰেম সমাপ্ত।

এই এলগৰিথমক এটা জনপ্ৰিয় প্ৰগ্ৰেমিং লেংগুৱেজ “চি”-ত লেখিলে এনে হব:

/**************************************************
 *    A program to compare 3 numbers a, b and c, 
 *    and to find out the biggest 
 ***************************************************/ 
 #include <stdio.h>
 int main() 
 {
        float a, b, c;
        printf(“Please input values for a, b & c: “);
        scanf(%d%d%d”, &a, &b, &c);
        if(a > b) {
                if ( a > c)
                        printf(“A is the biggest\n”);
                else    
                        printf(“C is the biggest\n”);
        } else {
                if ( b > c)
                        printf(“B is the biggest\n”);
                else    
                        printf(“C is the biggest\n”);
        }
 }

ডেইটা ষ্ট্ৰাকচাৰ

এটা বাস্তব সমস্যা প্ৰতীকিকৰণ বা এবষ্ট্ৰেকশ্যন কৰোঁতে ব্যৱহৃত সংশ্লিষ্ট তথ্যসমূ্হ উপযুক্ত ৰূপত উপস্থাপন কৰাৰ প্ৰয়োযন হয়। উদাহৰণস্বৰূপে এটা লাইব্ৰেৰী অটোমেশ্যন প্ৰগ্ৰেমত এখন কিতাপৰ সম্পৰ্কে সকলো তথ্য ষ্ট'ৰ কৰা বা সাঁচি থোৱা বা ব্যৱহাৰ কৰাৰ প্ৰয়োজন হয়। তেনেদৰে এটা মিচাইল গাইডেণ্স প্ৰগ্ৰেমতো মিচাইলৰ গতিপথ, বায়ুগতি ইত্যাদি সম্পৰ্কীয় বিভিন্ন জটিল তথ্য উপস্থাপন আৰু ব্যৱহাৰ কৰাৰ প্ৰয়োজন হয়। এনে জটীল তথ্য প্ৰণালীক বুজা আৰু ব্যৱহাৰৰ সুচল হোৱাকৈ উপযুক্ত ৰূপত সজাই উপস্থাপন কৰিবলৈ ব্যৱহাৰ কৰা বিভিন্ন সজ্জাকে “ডেইটা ষ্ট্ৰাকচাৰ” বা “তথ্যসজ্জা” বোলা হয়। এনেকৈ সজ্জিত তথ্য উপযুক্ত এলগৰিথমৰ সহায়ত ব্যৱহাৰ কৰিলেহে উৎকৃষ্ট সমাধান পোৱা যায়।

Other Languages
Afrikaans: Algoritme
Alemannisch: Algorithmus
አማርኛ: አልጎሪዝም
aragonés: Algorismo
العربية: خوارزمية
asturianu: Algoritmu
azərbaycanca: Alqoritm
تۆرکجه: القوریتم
башҡортса: Алгоритм
беларуская: Алгарытм
беларуская (тарашкевіца)‎: Альгарытм
български: Алгоритъм
bosanski: Algoritam
català: Algorisme
کوردی: ئەلگۆریتم
čeština: Algoritmus
Cymraeg: Algorithm
dansk: Algoritme
Deutsch: Algorithmus
Ελληνικά: Αλγόριθμος
English: Algorithm
Esperanto: Algoritmo
español: Algoritmo
eesti: Algoritm
euskara: Algoritmo
فارسی: الگوریتم
suomi: Algoritmi
føroyskt: Algoritma
français: Algorithme
Gaeilge: Algartam
galego: Algoritmo
עברית: אלגוריתם
हिन्दी: अल्गोरिद्म
hrvatski: Algoritam
magyar: Algoritmus
Հայերեն: Ալգորիթմ
interlingua: Algorithmo
Bahasa Indonesia: Algoritme
Ilokano: Algoritmo
íslenska: Reiknirit
italiano: Algoritmo
ქართული: ალგორითმი
Qaraqalpaqsha: Algoritm
Gĩkũyũ: Algorithm
қазақша: Алгоритм
한국어: 알고리즘
kurdî: Algorîtma
Кыргызча: Алгоритм
Latina: Algorithmus
Lëtzebuergesch: Algorithmus
Lingua Franca Nova: Algoritmo
lumbaart: Algoritm
lietuvių: Algoritmas
latviešu: Algoritms
олык марий: Алгоритм
македонски: Алгоритам
മലയാളം: അൽഗൊരിതം
монгол: Алгоритм
Bahasa Melayu: Algoritma
Mirandés: Algoritmo
नेपाली: अल्गोरिदम
नेपाल भाषा: अल्गोरिथम
Nederlands: Algoritme
norsk nynorsk: Algoritme
norsk: Algoritme
occitan: Algoritme
Oromoo: Seermurtoo
ਪੰਜਾਬੀ: ਕਲਨ ਵਿਧੀ
polski: Algorytm
پنجابی: الگورتھم
português: Algoritmo
română: Algoritm
русский: Алгоритм
русиньскый: Алґорітм
саха тыла: Алгоритм
sicilianu: Alguritmu
Scots: Algorithm
srpskohrvatski / српскохрватски: Algoritam
Simple English: Algorithm
slovenčina: Algoritmus
slovenščina: Algoritem
shqip: Algoritmi
српски / srpski: Алгоритам
Basa Sunda: Algoritma
svenska: Algoritm
తెలుగు: అల్గారిథం
тоҷикӣ: Алгоритм
Tagalog: Algoritmo
Türkçe: Algoritma
татарча/tatarça: Алгоритм
українська: Алгоритм
oʻzbekcha/ўзбекча: Algoritm
Tiếng Việt: Thuật toán
walon: Algorisse
Winaray: Algoritmo
ייִדיש: אלגאריטם
中文: 算法
Bân-lâm-gú: Ián-sǹg-hoat
粵語: 演算法