C++ এ getch ফাংশন

C E Getch Phansana



C এবং C++ প্রোগ্রামিং ভাষার ডোমেনে, বিভিন্ন প্রাকৃতিক পদ্ধতি এবং লাইব্রেরি ব্যবহার করা হয়। এই নিবন্ধে, আমরা C++ এর getch() পদ্ধতিটি ঘনিষ্ঠভাবে পরীক্ষা করব। getch() ফাংশনটি ব্যবহার করা হয় যখন আমরা আমাদের কীবোর্ড থেকে অক্ষরের একটি স্ট্রিং পড়তে চাই এবং এটি স্ক্রিনে একটি আউটপুট প্রজেক্ট করে না। এখানে, আমরা আপনার সচেতনতার জন্য বৈধ উদাহরণ এবং প্রমাণের সাহায্যে এই getch() ফাংশনটি সঠিকভাবে অন্বেষণ করব। ব্যবহারকারীর কাছ থেকে ইনপুট নেওয়ার জন্য এই পদ্ধতিটি বেশিরভাগই C++-এ কনসোল-ভিত্তিক (আউটপুট) পরিস্থিতিতে ব্যবহারযোগ্য।

C++ এ Getch() কি?

C++ এ, 'cstdio' হেডার ফাইল নামের লাইব্রেরিটি বেশিরভাগ getch() ফাংশনের জন্য ব্যবহৃত হয়। Getch() কে “conio-তেও সংজ্ঞায়িত করা হয়েছে। h' হেডার ফাইল যা কম্পাইলার-নির্দিষ্ট এবং এটি একটি নন-স্ট্যান্ডার্ড ফাংশন কারণ এটি সম্পূর্ণভাবে C++ লাইব্রেরি স্ট্যান্ডার্ডের অংশ নয়। getch এর সংক্ষিপ্ত রূপ হল 'get character' এবং ব্যবহারকারী ইনপুট পাস না করা পর্যন্ত এটি আউটপুট স্ক্রিনে কিছুক্ষণ থাকার জন্য ব্যবহৃত হয়।

আসুন উদাহরণের সাহায্যে এই ধারণাটি সঠিকভাবে ব্যাখ্যা করি। এখানে, আমরা সঠিক পরিস্থিতির সাহায্যে C++ এ getch() পদ্ধতির সিনট্যাক্স, ব্যবহার এবং আচরণ সম্পর্কে শিখব।







দৃশ্য 1: কিভাবে একটি মেনু-চালিত অ্যাপ্লিকেশনে Getch() ব্যবহার করবেন

আসুন মেনু-চালিত ছোট অ্যাপ্লিকেশন সম্পর্কে আলোচনা করি যার জন্য আমরা বিভিন্ন বিকল্পের তালিকা করব। প্রতিটি বিকল্প একটি রেস্টুরেন্ট মেনু মত বিভিন্ন উদ্দেশ্যে ডিজাইন করা হয়েছে. এই উদাহরণের কোড স্নিপেট নিম্নলিখিত সংযুক্ত করা হয়েছে:



# অন্তর্ভুক্ত করুন
#অন্তর্ভুক্ত
# অন্তর্ভুক্ত করুন
ব্যবহার নামস্থান std ;
int প্রধান ( ) {
চর পছন্দ ;
std :: cout << 'রেস্তোরাঁর মেনু: \n ' ;
std :: cout << '1. বিকল্প 1: পিজা \n ' ;
std :: cout << '2. বিকল্প 2: বার্গার \n ' ;
std :: cout << '3. বিকল্প 3: কেক \n ' ;
std :: cout << 'আপনার পছন্দ লিখুন:' ;
পছন্দ = পেতে ( ) ; // ব্যবহারকারী ইনপুট দেয়  এবং getch() এন্টার বোতাম টিপে ইনপুট পড়ে
সুইচ ( পছন্দ ) {
মামলা '1' :
std :: cout << ' \n আপনি 'পিজ্জা' নির্বাচন করুন \n ' ;
বিরতি ;
মামলা '2' :
std :: cout << ' \n আপনি 'বার্গার' নির্বাচন করুন \n ' ;
বিরতি ;
মামলা '3' :
std :: cout << ' \n আপনি 'কেক' নির্বাচন করুন \n ' ;
বিরতি ;
ডিফল্ট :
std :: cout << '\No পছন্দ - কোন আদেশ নেই \n ' ;
}
ফিরে 0 ;
}

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



আমরা getch() পরিবর্তনশীল পছন্দে পাস করি কারণ ব্যবহারকারীর ইনপুট এই ভেরিয়েবলে সংরক্ষিত থাকে এবং নির্বাচিত বিকল্প অনুযায়ী স্বয়ংক্রিয়ভাবে আউটপুট প্রদর্শন করে। মেনু থেকে একটি বিকল্প নির্বাচন করতে, আমরা সুইচ() ফাংশন ব্যবহার করি এবং এই ফাংশনে 'চয়েস' পাস করি। 'সুইচ' পদ্ধতির ভিতরে, আমরা প্রতিটি বিকল্পের বিরুদ্ধে পৃথকভাবে মামলা করি। C++ এ 'সুইচ' পদ্ধতিতে, প্রতিটি ক্ষেত্রের শেষে একটি বিরতি বিবৃতি সর্বদা ব্যবহার করা হয় যা বিবৃতির শেষ নির্দেশ করে। যখন আমরা এটি কম্পাইল এবং এক্সিকিউট করি, আউটপুটটি কনসোল স্ক্রিনে প্রদর্শিত হয় যা নিম্নলিখিতটিতে সংযুক্ত থাকে:





এখন, getch() ফাংশন এখানে কাজ করবে। যখন ব্যবহারকারী পছন্দটি প্রবেশ করেন, তখন getch() ফাংশনটি এই ইনপুটটিকে সুইচ কেসের সাথে তুলনা করবে এবং কনসোলে স্বয়ংক্রিয়ভাবে এবং অবিলম্বে আউটপুট বা বিকল্পটি দেখাবে।



পূর্বে সংযুক্ত স্ক্রিনশটে, ব্যবহারকারী '2' পছন্দটি প্রবেশ করেন এবং আউটপুটটি স্ক্রিনে 'আপনি 'বার্গার' নির্বাচন করেন' হিসাবে উপস্থিত হয়। এই উদাহরণে getch() এর কাজটি পরিষ্কার করা হয়েছে কারণ ব্যবহারকারী ইনপুট প্রবেশ করে এবং প্রত্যাশিত আউটপুট কনসোলে প্রদর্শিত ব্যবহারকারীর দেওয়া ইনপুটের পরিবর্তে কনসোল স্ক্রিনে প্রদর্শিত হয়।

দৃশ্য 2: Getch() ব্যবহার করে ব্যবহারকারীর কাছ থেকে লুকানো পাসওয়ার্ড গ্রহণ করুন

এই পরিস্থিতিতে, ব্যবহারকারী কীভাবে গোপনে পাসওয়ার্ড ইনপুট করতে পারে এবং কনসোল স্ক্রিনে ইনপুট পাসওয়ার্ড দেখাতে পারে সে সম্পর্কে আমরা ধারণার মধ্য দিয়ে যাব। এখানে, ব্যবহারকারী ইনপুট পাস না করা পর্যন্ত আমরা স্ক্রীন ধরে রাখতে getch() ফাংশন ব্যবহার করি। মনে রাখবেন যে getch() ব্যবহারকারীর ইনপুট প্রদর্শন করে না কারণ কার্সার কনসোল স্ক্রিনে ইনপুট প্রদর্শন করে না। এই দৃশ্যের কোড স্নিপেটটি নিম্নরূপ উল্লেখ করা হয়েছে:

#অন্তর্ভুক্ত করুন
#অন্তর্ভুক্ত
# অন্তর্ভুক্ত
# অন্তর্ভুক্ত করুন
#include
int প্রধান ( )
{
চর pasw [ 8 ] ;
int মি ;
std :: cout << '8 সংখ্যার পাসওয়ার্ড লিখুন:' ;
জন্য ( মি = 0 ; মি <= 7 ; মি ++ ) {
pasw [ মি ] = পেতে ( ) ;
std :: cout << '*' ;
}
pasw [ মি ] = ' \0 ' ;
std :: cout << ' \n ' ;
std :: cout << 'প্রবিষ্ট পাসওয়ার্ডটি লুকান:' ;
জন্য ( মি = 0 ; pasw [ মি ] ! = ' \0 ' ; মি ++ )
std :: cout << ( '% গ' , pasw [ মি ] ) ;
পেতে ( ) ;
ফিরে 0 ;
}

প্রদত্ত কোডে দেখা গেছে, getch() ফাংশন ব্যবহারের জন্য এবং স্ক্রিনে আউটপুট প্রদর্শনের জন্য প্রয়োজনীয় স্ট্যান্ডার্ড লাইব্রেরি যোগ করুন। এই প্রোগ্রামের প্রধান কাজ হল বিভিন্ন ধাপ ধারণ করা যার মাধ্যমে আমরা ব্যবহারকারীর কাছ থেকে একটি পাসওয়ার্ড ইনপুট করি এবং পাসওয়ার্ডটি স্ক্রিনে দেখাই। আমাদের দরকার অ্যারে ভেরিয়েবল যার ডাটা টাইপ হল “Char” যার আকার 8 টি উপাদান। এটি ব্যতীত, আমাদের একটি ভেরিয়েবলও দরকার যা পুনরাবৃত্তির মান সংরক্ষণ করে।

এখানে, আমরা একটি 'ফর লুপ' ব্যবহার করি যা ব্যবহারকারীর প্রতিটি ইনপুট গণনা পড়ে যদি অ্যারের আকার '8' হয়। তারপরে, ব্যবহারকারী শুধুমাত্র লুপের সাহায্যে ইনপুট কনসোল উইন্ডোতে কী পাসওয়ার্ড টিপুন। এই 'for' লুপের ভিতরে, আমরা getch() ফাংশনটিকে passw[] অ্যারেতে পাস করি। ব্যবহারকারী পাসওয়ার্ডের 8 টি অক্ষর ইনপুট না করা পর্যন্ত এই ফাংশনটি স্ক্রিনে ধরে থাকে। প্রতিটি লুপ গণনায়, প্রতিটি ব্যবহারকারীর ইনপুট গণনায় '*' প্রিন্ট করুন এবং লুপটি এখানে বন্ধ হয়ে যায়।

এর পরে, আমরা আবার “for” লুপ ব্যবহার করি যা শুধুমাত্র passw[] থেকে মান নিয়ে লুকানো পাসওয়ার্ড নিজেই দেখায়। ব্যবহারকারীর ইনপুট অ্যারেতে পুরোপুরি সংরক্ষিত না হওয়া পর্যন্ত এবং স্ক্রীনে পাসওয়ার্ড প্রদর্শন না করা পর্যন্ত Getch স্বয়ংক্রিয়ভাবে স্ক্রীন ধরে রাখে।

প্রোগ্রামটি চালানোর জন্য 'কম্পাইল এবং রান' বিকল্পে ক্লিক করুন এবং স্ক্রিনে আউটপুট দেখান।

স্ক্রিনে 8 ডিজিটের পাসওয়ার্ড দিন। যখন 8 সংখ্যার ইনপুট সম্পন্ন হয়, এটি স্বয়ংক্রিয়ভাবে কনসোল উইন্ডোতে টাইপ করা পাসওয়ার্ড প্রদর্শন করে। কীবোর্ড কী 8 বার টিপুন এবং পাসওয়ার্ড টাইপ করুন।

গেচ() ফাংশনের কারণে আউটপুট স্ক্রিন জমে যায়। getch() ফাংশনটি স্ক্রিনে ইনপুট ডেটা প্রিন্ট করে যেমনটি পূর্বে সংযুক্ত স্ক্রিনশটে দেখানো হয়েছে।

উপসংহার

উপসংহারে বলা যায়, getch() হল C এবং C++ প্রোগ্রামিং-এর সবচেয়ে গুরুত্বপূর্ণ ফাংশন যা ব্যবহারকারীকে কীবোর্ড থেকে ইনপুট ফ্রিজ করতে সাহায্য করে অথবা পর্দায় ইনপুট দেখানো কার্সার ছাড়াই। এর নন-স্ট্যান্ডার্ড লাইব্রেরির কারণে, যদি আমরা প্রোগ্রামে getch() ব্যবহার না করি, তাহলে প্রোগ্রাম এক্সিকিউশনের প্রয়োজনীয় সময় মিলিসেকেন্ডে না হওয়া পর্যন্ত কনসোল উইন্ডোটি প্রদর্শিত হয়। এই নিবন্ধে, আমরা সঠিক কোড উদাহরণ সহ এই পদ্ধতিটি ব্যাখ্যা করেছি।