সি প্রোগ্রামিং এ ডিসিশন এবং ব্রাঞ্চিং?

Si Programim E Disisana Ebam Brancim



যেকোন প্রোগ্রামিং ভাষার একটি গুরুত্বপূর্ণ উপাদান হল সিদ্ধান্ত নেওয়ার ক্ষমতা, যেখানে কম্পিউটার নির্দিষ্ট শর্তের উপর নির্ভর করে সম্পাদনের নির্দিষ্ট পথ অনুসরণ করার জন্য প্রোগ্রাম করা হয়। সি ভাষা, 1970 এর দশকের গোড়ার দিকে বিকশিত, একটি জনপ্রিয় এবং প্রথম দিকের প্রোগ্রামিং ভাষাগুলির মধ্যে একটি যা অফার করে সিদ্ধান্ত গ্রহণ মাধ্যমে ক্ষমতা শাখা .

সি প্রোগ্রামিং এর সিদ্ধান্ত কি?

সি প্রোগ্রামিং এ, সিদ্ধান্ত গ্রহণ একটি মূল দক্ষতা যা প্রোগ্রামারদের কার্যকর প্রোগ্রাম তৈরি করতে আয়ত্ত করতে হবে। সিদ্ধান্ত গ্রহণ হল বিভিন্ন অবস্থার মূল্যায়ন এবং ফলাফলের উপর ভিত্তি করে সর্বোত্তম পদক্ষেপ বেছে নেওয়ার প্রক্রিয়া। একটি যদি-অন্য বিবৃতি দিয়ে, সিদ্ধান্ত গ্রহণ সি-তে বাস্তবায়িত হয়। সিদ্ধান্তগুলি শর্তের উপর ভিত্তি করে এবং if-else স্টেটমেন্ট ব্যবহার করে নেওয়া হয়। শর্ত সত্য হলে, কোড রান; অন্যদিকে, এটি মিথ্যা হলে, else স্টেটমেন্টে থাকা কোডটি চালানো হয়।

সি প্রোগ্রামিং এ ব্রাঞ্চিং কি?

সি প্রোগ্রামিং এ, শাখা এটি এমন একটি কৌশল যা একটি শর্তের ফলাফলের উপর ভিত্তি করে কার্যকর করার প্রবাহকে পরিবর্তন করতে দেয়। শাখাপ্রশাখা একটি নির্দিষ্ট পরিস্থিতির ফলাফলের উপর নির্ভর করে কোডের নির্দিষ্ট ব্লকগুলি চালানোর জন্য প্রোগ্রামটিকে সক্ষম করে।







সি প্রোগ্রামিং সহ বিভিন্ন ধরনের ব্রাঞ্চিং রয়েছে অন্যথায় যদি , সুইচ , এবং শর্তসাপেক্ষ অপারেটর . ক সুইচ স্টেটমেন্ট , প্রোগ্রামটি একটি মান মূল্যায়ন করে এবং উপলব্ধ ক্ষেত্রের তালিকা থেকে প্রাসঙ্গিক বিকল্পটি বেছে নেয়। শর্তাধীন অপারেটর সংক্ষিপ্ত হয় অন্যথায় যদি বিবৃতি যা আপনাকে ছোট কোড লিখতে দেয়।



সি প্রোগ্রামিং এর সিদ্ধান্ত এবং শাখা

দ্য সিদ্ধান্ত গ্রহণ সি প্রোগ্রামিং-এর প্রক্রিয়ায় প্রোগ্রাম নির্বাহের প্রবাহ নিয়ন্ত্রণ করতে শর্তসাপেক্ষ বিবৃতি ব্যবহার করা জড়িত। শাখাপ্রশাখা প্রোগ্রামটিকে নির্দিষ্ট শর্তের ফলাফলের উপর ভিত্তি করে কোডের বিভিন্ন সেট চালানোর অনুমতি দেয়।



সি প্রোগ্রামিং এ, সিদ্ধান্ত গ্রহণ , এবং শাখা এর মাধ্যমে অর্জন করা হয়:





  • যদি বিবৃতি
  • if-else বিবৃতি
  • সুইচ স্টেটমেন্ট
  • নেস্টেড যদি
  • else-যদি মই
  • বিরতি বিবৃতি
  • বিবৃতি চালিয়ে যান

1: যদি বিবৃতি

এর সহজতম পদ্ধতি তৈরি সিদ্ধান্ত সি প্রোগ্রামিং দ্বারা অফার করা হয় যদি বিবৃতি . দ্য যদি বিবৃতি একটি প্রদত্ত শর্ত পরীক্ষা করে এবং শর্তটি সত্য হলে বিবৃতির মূল অংশে কোডটি কার্যকর করে। অন্যথায়, প্রোগ্রামটি এর সাথে যুক্ত কোড ব্লকটিকে উপেক্ষা করে যদি বিবৃতি , এবং এটি পরবর্তী কোডের সাথে চলতে থাকে।

জন্য সিনট্যাক্স যদি-বিবৃতি হল:



যদি ( অবস্থা )
{
বিবৃতি ব্লক;
}

নীচের কোড দেখুন:

# অন্তর্ভুক্ত করুন
int প্রধান ( )
{
int সংখ্যা = বিশ ;
যদি ( একের উপর > 5 )
{
printf ( 'সংখ্যা 5 এর চেয়ে বেশি \n ' ) ;
}
printf ( 'সংখ্যার মান হল: %d \n ' , একের উপর ) ;
ফিরে 0 ;
}

উপরের কোডটি একটি পরিবর্তনশীলকে সংজ্ঞায়িত করে ' একের উপর 20 এর মান সহ এবং একটি if স্টেটমেন্ট ব্যবহার করে এটি 5-এর চেয়ে বড় কিনা তা পরীক্ষা করে। যদি এটি হয়, প্রোগ্রাম প্রিন্ট করে ' সংখ্যাটি 5-এর বেশি ' অবশেষে, এটি 'এর মান প্রিন্ট করে একের উপর '

আউটপুট

2: if-else বিবৃতি

if-else স্টেটমেন্ট হল if স্টেটমেন্টের একটি পরিবর্তন যা শর্তটি সত্য বা মিথ্যা কিনা তার উপর ভিত্তি করে বিভিন্ন কোড ব্লক কার্যকর করার অনুমতি দেয়।

যদি ( অবস্থা ) {
// চালানোর জন্য কোড যদি শর্ত হল সত্য
} অন্য {
// চালানোর জন্য কোড যদি শর্ত হল মিথ্যা
}

ফলস্বরূপ, শর্তটি সত্য হলে প্রথম কোড ব্লকটি কার্যকর করা হবে এবং শর্তটি মিথ্যা হলে দ্বিতীয় কোড ব্লকটি কার্যকর করা হবে।

একটি উদাহরণ হিসাবে নিম্নলিখিত কোড বিবেচনা করুন:

# অন্তর্ভুক্ত করুন
int প্রধান ( )
{
int সংখ্যা = 10 ;
যদি ( একের উপর > 5 )
{
printf ( 'সংখ্যা 5 এর চেয়ে বেশি \n ' ) ;
} অন্য {
printf ( 'সংখ্যা 10 এর কম' ) ;
}
ফিরে 0 ;
}

উপরের প্রোগ্রামটি ভেরিয়েবল সংখ্যা তৈরি করে এবং এটিকে মান দেয় 10। তারপর, একটি ব্যবহার করে যদি বিবৃতি , এটা নির্ধারণ করে যদি ' একের উপর ' 5 এর থেকে বড়৷ ' সংখ্যাটি 5 এর চেয়ে বড় ' ছাপা হয় যদি ' একের উপর '5 ছাড়িয়ে গেছে৷ এটি প্রদর্শন করে' সংখ্যা 10 এর কম ” যদি num 5 এর বেশি না হয়। প্রোগ্রামটি 0 রিটার্ন করে, যা বোঝায় যে এটি সফলভাবে চালানো হয়েছে।

আউটপুট

3: সুইচ স্টেটমেন্ট

জন্য আরেকটি গুরুত্বপূর্ণ হাতিয়ার সিদ্ধান্ত গ্রহণ সি প্রোগ্রামিং-এ হল সুইচ বিবৃতি দ্য সুইচ বিবৃতি ঠিক মত নির্দিষ্ট অবস্থার জন্য পরীক্ষা করে if-else বিবৃতি করবেন, তবে এটি সেই শর্তের জন্য একাধিক সম্ভাবনা পরীক্ষা করতে পারে। আমরা যখন বিভিন্ন ফলাফলের সাথে মোকাবিলা করি তখন এটি সহায়ক।

ব্যবহার করার জন্য সিনট্যাক্স সুইচ স্টেটমেন্ট সি প্রোগ্রামিং-এ হল:

সুইচ ( অভিব্যক্তি ) {
মামলা ধ্রুবক1:
// চালানোর জন্য কোড যদি অভিব্যক্তি ধ্রুবক 1 সমান
বিরতি ;
মামলা ধ্রুবক2:
// চালানোর জন্য কোড যদি অভিব্যক্তি constant2 সমান
বিরতি ;
...
ডিফল্ট:
// চালানোর জন্য কোড যদি কোনো ক্ষেত্রেই মেলে না
বিরতি ;
}

অভিব্যক্তি এই ক্ষেত্রে মূল্যায়ন করা হচ্ছে পরিবর্তনশীল, এবং মামলার বিবৃতি এর সাথে তুলনা করা মান অন্তর্ভুক্ত করুন।

একটি উদাহরণ হিসাবে নিম্নলিখিত কোড বিবেচনা করুন:

# অন্তর্ভুক্ত করুন

int প্রধান ( ) {
int সংখ্যা = 2 ;
সুইচ ( একের উপর ) {
মামলা 1 :
printf ( 'সংখ্যা হল 1' ) ;
বিরতি ;
মামলা 2 :
printf ( 'সংখ্যা হল 2' ) ;
বিরতি ;
মামলা 3 :
printf ( 'সংখ্যা হল 3' ) ;
বিরতি ;
ডিফল্ট:
printf ( '1, 2 এবং 3 ছাড়া অন্য সংখ্যা' ) ;
বিরতি ;
}
ফিরে 0 ;
}

উপরের প্রোগ্রামটি দেখায় কিভাবে পরিবর্তনশীলের মান পরীক্ষা করতে সুইচ স্টেটমেন্ট ব্যবহার করতে হয় “ একের উপর এবং প্রাসঙ্গিক কোড ব্লক চালান। এই ক্ষেত্রে, যেহেতু ' একের উপর ' 2 তে আরম্ভ করা হয়, আউটপুট হবে ' সংখ্যা হল 2 '

আউটপুট

4: নেস্টেড যদি

বিবৃতি থাকলে নেস্টেড ব্রাঞ্চিং স্টেটমেন্ট যা অন্যান্য নেস্টেড ইফ স্টেটমেন্টের মধ্যে এমবেড করা হয়। এটি অন্যান্য শর্তসাপেক্ষ বিবৃতিগুলির মধ্যে একাধিক শর্ত পরীক্ষা করে আরও জটিল শাখাযুক্ত যুক্তির জন্য অনুমতি দেয়। ভিতরের যদি বিবৃতি বিবৃতি সত্য মূল্যায়ন করা হলে বাইরের শুধুমাত্র মৃত্যুদন্ড কার্যকর করা হয়.

জন্য মৌলিক সিনট্যাক্স নেস্টেড যদি স্টেটমেন্ট নিচে দেওয়া হল:

যদি ( অবস্থা ) {
যদি ( অভিব্যক্তি ) {
বিবৃতি ব্লক;
} অন্য {
বিবৃতি ব্লক;
}
} অন্য {
বিবৃতি ব্লক;
}

একটি উদাহরণ হিসাবে নিম্নলিখিত কোড বিবেচনা করুন:

# অন্তর্ভুক্ত করুন

int প্রধান ( ) {
int num1 = 1 ;
int num2 = পনের ;
int num3 = 7 ;

যদি ( সংখ্যা1 > সংখ্যা2 ) {
যদি ( সংখ্যা1 > 3 নং ) {
printf ( 'num1=1 হল সবচেয়ে বড় সংখ্যা \n ' ) ;
}
অন্য {
printf ( 'num3=7 হল বৃহত্তম সংখ্যা \n ' ) ;
}
}
অন্য {
যদি ( সংখ্যা2 > 3 নং ) {
printf ( 'num2=15 হল সবচেয়ে বড় সংখ্যা \n ' ) ;
}
অন্য {
printf ( 'num3=7 হল বৃহত্তম সংখ্যা \n ' ) ;
}
}

ফিরে 0 ;
}

উপরের প্রোগ্রামটি তিনটি পূর্ণসংখ্যার তুলনা করে, ' সংখ্যা1 ', ' সংখ্যা2 ', এবং ' 3 নং “, এবং কোনটি বৃহত্তম সংখ্যা তা নির্ধারণ করতে নেস্টেড ইফ স্টেটমেন্ট ব্যবহার করে। এটি প্রথমে তুলনা করে ' সংখ্যা1 ' এবং ' সংখ্যা2 ', তারপর এই দুটির মধ্যে বড়টির সাথে তুলনা করে' 3 নং ' আউটপুট নির্দেশ করবে কোন ভেরিয়েবলের মান সবচেয়ে বেশি।

আউটপুট

5: অন্যথা-যদি মই

আমরা সহজেই একটি জটিল সমস্যা সমাধান করতে পারি যখন অনেকগুলি মানদণ্ড অনুক্রমিক ক্রমে একটি নিয়োগ করে মই-যদি বা else-যদি অভিব্যক্তি .

নীচের জন্য সিনট্যাক্স আছে else-যদি মই বিবৃতি:

যদি ( শর্ত1 )
{
বিবৃতি ব্লক;
}
অন্য যদি ( শর্ত2 )
{
বিবৃতি ব্লক;
}
অন্য যদি ( শর্ত3 )
{
বিবৃতি ব্লক;
}
অন্য
{
ডিফল্ট বিবৃতি
}

একটি উদাহরণ হিসাবে নিম্নলিখিত কোড বিবেচনা করুন:

# অন্তর্ভুক্ত করুন

int প্রধান ( ) {
int চিহ্ন = 80 ;

যদি ( চিহ্ন > = 90 && চিহ্ন = 80 && চিহ্ন = 70 && চিহ্ন = 60 && চিহ্ন = পঞ্চাশ && চিহ্ন < 60 ) {
printf ( 'গ্রেড: ডি' ) ;
}
অন্য {
printf ( 'গ্রেড: ব্যর্থ' ) ;
}
ফিরে 0 ;
}

উপরের প্রোগ্রামটি নিয়োগ করে যদি-অন্যথা যুক্তি পরিবর্তনশীল 'চিহ্ন' এর বর্তমান মান অনুযায়ী একটি গ্রেড নির্ধারণ করতে। 'মার্কস' এর মানের উপর নির্ভর করে, প্রোগ্রামটি A+ থেকে ব্যর্থ পর্যন্ত একটি সংশ্লিষ্ট গ্রেড আউটপুট করবে।

আউটপুট

6: বিরতি বিবৃতি

দ্য বিরতি বিবৃতি সি প্রোগ্রামিং-এর একটি গুরুত্বপূর্ণ নিয়ন্ত্রণ প্রবাহ বিবৃতি যা প্রোগ্রামারদের লুপ এবং সুইচ স্টেটমেন্টের আচরণ নিয়ন্ত্রণ করতে দেয়। দ্য বিরতি বিবৃতি সি প্রোগ্রামিং-এ দুটি অ্যাপ্লিকেশন রয়েছে:

  • যখন একটি লুপ a পৌঁছায় বিরতি বিবৃতি, এটি অবিলম্বে বন্ধ করা হয়, এবং প্রোগ্রাম নিয়ন্ত্রণ লুপ অনুসরণকারী বিবৃতিতে হস্তান্তর করা হয়।
  • এটি সুইচ স্টেটমেন্টে ব্যবহার করে একটি কেস শেষ করতে ব্যবহার করা যেতে পারে।

জন্য বাক্য গঠন বিরতি বিবৃতি:

বিরতি ;

উদাহরণ কোড দেখুন:

# অন্তর্ভুক্ত করুন

int প্রধান ( ) {
int সংখ্যা = 12 ;
যখন ( একের উপর পনের ) {
বিরতি ;
}
}
ফিরে 0 ;
}

C কোডের এই টুকরোটি একটি সময় লুপ ঘোষণা করে যা পূর্ণসংখ্যা পরিবর্তনশীল হিসাবে দীর্ঘায়িত হয় ' একের উপর ” 22 এর কম এবং এটিকে 12 এ আরম্ভ করে। লুপে, “ একের উপর ” 1 দ্বারা বৃদ্ধি করা হয় এবং এর মান ব্যবহার করে কনসোলে রিপোর্ট করা হয় printf . লুপ তারপর a দিয়ে শেষ করা হয় ব্রেক স্টেটমেন্ট যদি 'সংখ্যা' একটি if স্টেটমেন্ট দ্বারা নির্ধারিত 15 এর থেকে বড়। এই কোডটি কার্যকরভাবে 12 এবং 15 (অন্তর্ভুক্ত) এর মধ্যে 'num' এর মান প্রিন্ট করার পরে লুপটি শেষ করে। প্রোগ্রামটি 0 ফেরত দিয়ে শেষ হয়, যা দেখায় যে এটি সঠিকভাবে চলছে।

আউটপুট

7: বিবৃতি চালিয়ে যান

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

এর সিনট্যাক্স বিবৃতি চালিয়ে যান হল:

চালিয়ে যান ;

এই উদাহরণ তাকান.

# অন্তর্ভুক্ত করুন

int প্রধান ( ) {
int সংখ্যা = 12 ;
যখন ( একের উপর পনের ) {
চালিয়ে যান ;
}
}
প্রত্যাবর্তন 0 ;
}

উপরের প্রোগ্রামের while লুপ ভ্যারিয়েবলের মান প্রিন্ট করতে ব্যবহৃত হয় “ একের উপর 'যদি এটি 22 এর কম হয়। যদি' একের উপর লুপের সময় 15 ছাড়িয়ে যায়, চালিয়ে যান বিবৃতি কার্যকর করা হয়, এবং লুপের বর্তমান পুনরাবৃত্তি বাদ দেওয়া হয়। এই ক্ষেত্রে, লুপটি পাঁচবার কার্যকর করবে, প্রতিবার 'num' এর মান মুদ্রণ করবে, যতক্ষণ না ' একের উপর ” 16 এ পৌঁছায় এবং লুপ পুনরাবৃত্তিটি এড়িয়ে যায় যেখানে “ একের উপর ” হল 16, তারপর লুপটি বন্ধ না হওয়া পর্যন্ত অবশিষ্ট পুনরাবৃত্তির সাথে চলতে থাকে।

আউটপুট

উপসংহার

সিদ্ধান্ত গ্রহণ এবং শাখা সি ভাষার গুরুত্বপূর্ণ উপাদান যা জটিল, ইন্টারেক্টিভ অ্যাপ্লিকেশন তৈরি করতে দেয় যা বাস্তব-বিশ্বের বিভিন্ন পরিস্থিতি পরিচালনা করে। শর্তসাপেক্ষ বিবৃতি, if-else এবং switch, তৈরিতে ব্যবহৃত প্রাথমিক ক্ষেত্রে সিদ্ধান্ত ভিত্তিক অ্যালগরিদম যদিও শাখা কোডের সংগঠনে একটি চ্যালেঞ্জ তৈরি করতে পারে, সঠিক পরিকল্পনা এবং কার্যকর করার সাথে, প্রোগ্রামাররা দক্ষ এবং ত্রুটি-মুক্ত প্রোগ্রাম তৈরি করতে পারে যা নির্দিষ্ট প্রয়োজনীয়তা পূরণ করে।