الگوریتم شرطی
الگوریتم‌های شرطی یکی از پایه‌ای‌ترین مفاهیم در برنامه‌نویسی هستند که به برنامه امکان تصمیم‌گیری بر اساس شرایط مختلف را می‌دهند. در این نوع الگوریتم‌ها، برنامه ابتدا یک شرط منطقی را بررسی می‌کند و سپس با توجه به درست یا نادرست بودن آن، مسیر مناسب را اجرا می‌کند. ساختارهای شرطی معمولاً با دستورهای if، else و else if پیاده‌سازی می‌شوند و می‌توانند به‌صورت تک‌مسیره، دومسیره یا چندمسیره طراحی شوند. در این مقاله، مفهوم الگوریتم شرطی، انواع ساختارهای شرطی، نقش عملگرهای حسابی، مقایسه‌ای، منطقی و انتسابی، همچنین ترتیب اولویت عملگرها بررسی شده است. علاوه بر آن، با استفاده از مثال‌هایی به یادگیری شما کمک خواهیم کرد.

فهرست مطالب مقاله الگوریتم شرطی

الگوریتم شرطی چیست؟ این نوع الگوریتم ها برای تصمیمی گیری استفاده میشوند و و سه نوع هستند با حمله اگر شروع میشوند و در صورتی که دو مسیره بشه یعنی دو تصمیم قرار باشد بگیریم مثلا این یا این استفاده میشود. شرطی های چند مسیره به صورت این یا این و در غیر اینصورت که این ها نباشد این . شرط ها دو نوع هستند یا درست یا غلط هستند. یعنی یا true و یا fals  هستند.

الگوریتم‌ های شرطی از مهم‌ ترین ابزار های برنامه‌ نویسی هستند که، به کامپیوتر امکان میدهند تصمیم‌ گیری کنند. این الگوریتم‌ ها بر اساس شرایط مشخص مسیر های مختلفی را اجرا میکنند. شرط‌ ها معمولا با دستورات if، else if و else تعریف میشوند. وقتی شرط درست باشد، بخش خاصی از برنامه اجرا میشود. در غیر این صورت، بخش دیگری اجرا خواهد شد.

الگوریتم‌ های شرطی در حل مسائل واقعی مثل: تعیین سن، مقایسه اعداد و مدیریت داده‌ ها کاربرد فراوان دارند. ان‌ ها به برنامه‌ نویس انعطاف و دقت بیشتری میدهند. با طراحی درست شرط‌ ها میتوان از خطا های منطقی جلوگیری کرد. به همین علت یادگیری الگوریتم‌ های شرطی برای هر برنامه‌ نویس ضروری میباشد.

الگوریتم شرطی چیست؟

الگوریتم شرطی چیست؟ الگوریتمی است که، اجرای دستورات ان به یک شرط منطقی وابسته است. در این الگوریتم برنامه ابتدا شرط مشخصی را بررسی میکند. اگر شرط درست باشد یک مسیر از دستورات اجرا میشود. اگر شرط نادرست باشد مسیر دیگری اجرا خواهد شد. معمولا از دستورات else if، if، else برای پیاده‌ سازی ان استفاده میشود.

الگوریتم‌ های شرطی برای تصمیم‌ گیری در مسائل واقعی کاربرد دارند. ان‌ ها باعث انعطاف‌ پذیری برنامه و جلوگیری از خطا های منطقی میشوند. الگوریتم شرطی ابزاری است که رفتار برنامه را بر اساس شرایط مختلف تغییر میدهد.

عملگر ها در برنامه نویسی:

عملگر ها نماد ها و یا کاراکتر هایی هستند که، روی داده‌ ها عمل خاصی انجام میدهند و نتیجه‌ ای تولید میکنند. در برنامه‌ نویسی عملگر ها برای محاسبات ریاضی، مقایسه، ترکیب منطقی و تغییر مقدار متغیر ها استفاده میشوند.  عملگر ها ابزار اصلی پردازش داده‌ ها و کنترل جریان برنامه هستند و بدون ن‌ ها برنامه‌ نویسی امکان‌ پذیر نیست.

انواع اصلی عملگر ها عبارت اند از:

عملگر های مقایسه ای، عملگر های محاسباتی، عملگر های منطقی و… را شامل میشوند، که ترتیب اولویت ان ها بسیار مهم است.

  • عملگر های حسابی: برای انجام عملیات ریاضی مثل: جمع +، تفریق -، ضرب *، تقسیم / و باقیمانده %.

  • عملگر های مقایسه‌ ای: برای مقایسه مقادیر و نتیجه دادن True یا False، مثل: برابر ==، نابرابر !=، بزرگتر >، کوچکتر <.

  • عملگر های منطقی: برای ترکیب شرایط منطقی، مثل:  AND &&، OR || و NOT !.

  • عملگر های انتساب: برای اختصاص مقدار به متغیر ها، مثل: =، +=، -=.

  • عملگر های بیتی: برای کار با بیت‌ های اعداد صحیح، مثل: &، |، ^، ~، <<، >>.

  • عملگر های متفرقه دیگر: مثل: عملگر شرطی ? : و عملگر های افزایش/کاهش ++، –.

عملگر های حسابی (Arithmetic Operators):

نماد معنی
+ جمع دو مقدار
تفریق مقدار دوم از اول
* ضرب دو مقدار
/ تقسیم مقدار اول بر دوم
% باقیمانده تقسیم (مدولوس)

عملگر های مقایسه‌ ای (Comparison Operators):

نماد معنی
== برابر است
!= برابر نیست
> بزرگتر است
< کوچکتر است
>= بزرگتر یا برابر است
<= کوچکتر یا برابر است

عملگر های منطقی (Logical Operators):

نماد معنی
&& AND منطقی – هر دو شرط درست باشند
   
! NOT منطقی – معکوس کردن شرط

عملگر های انتساب (Assignment Operators):

نماد معنی
= اختصاص مقدار
+= جمع مقدار با متغیر و اختصاص نتیجه
-= تفریق مقدار از متغیر و اختصاص نتیجه
*= ضرب مقدار در متغیر و اختصاص نتیجه
/= تقسیم مقدار متغیر بر عدد و اختصاص نتیجه

عملگر های بیتی (Bitwise Operators):

نماد معنی
& AND بیتی
| OR بیتی
^ XOR بیتی
~ NOT بیتی
<< شیفت چپ (Left Shift)
>> شیفت راست (Right Shift)
 

سایر عملگر ها:

نماد معنی
? : عملگر شرطی – انتخاب بین دو مقدار بر اساس شرط
++ افزایش مقدار متغیر به اندازه ۱
کاهش مقدار متغیر به اندازه ۱
 
ترتیب و اولویت عملگر ها:

عملگر پرانتز ( )
اولویت مطلق دارد. هر چیزی داخل پرانتز ابتدا محاسبه میشود.

عملگر های افزایش و کاهش ++, —
پیش‌ رو (Prefix) یا پس‌ رو (Postfix) بسته به زبان.

*عملگر های حسابی , /, %
ضرب، تقسیم و باقی مانده قبل از جمع و تفریق انجام میشوند.

عملگر های حسابی +, –
جمع و تفریق بعد از ضرب، تقسیم و مدول.

عملگر های مقایسه‌ ای <, >, <=, >=
برای مقایسه دو مقدار استفاده میشوند.

عملگر های مقایسه‌ ای ==, !=
بررسی برابری یا نا برابری.

عملگر های منطقی && (AND)
ترکیب شروط، اولویت پایین‌ تر از مقایسه.

عملگر های منطقی || (OR)
ترکیب شروط با اولویت کمتر از AND.

عملگر انتساب =, +=, -=, …
اختصاص مقدار به متغیر اخرین اولویت را دارد.

عملگر نماد توضیح و کاربرد
پرانتز ( ) اولویت مطلق؛ هر چیزی داخل پرانتز ابتدا محاسبه می‌شود
افزایش و کاهش ++, -- پیش‌رو (Prefix) یا پس‌رو (Postfix) بسته به زبان
ضرب، تقسیم و باقیمانده *, /, % انجام قبل از جمع و تفریق
جمع و تفریق +, - انجام بعد از ضرب، تقسیم و مدول
مقایسه‌ای <, >, <=, >= مقایسه دو مقدار
مقایسه‌ای برابری ==, != بررسی برابری یا نابرابری
منطقی AND && ترکیب شروط، اولویت پایین‌تر از مقایسه
منطقی OR `  
انتساب =, +=, -=, … اختصاص مقدار به متغیر، آخرین اولویت

ساختار فقط با اگر (if):

الگوریتم هایی که با اگر هستند الگوریتم هایی هستند که بخشی از دستور را اجرا میکنند اگر شرط برقرار باشد اگر هم شرط برقرار نباشد اجرا نمیشود.

مثال الگوریتم اگر یا if / یک عدد بنوبسید که مشخص کند عدد مثبت است:

شروع

عددی را بگیر

اگر عدد بزرگتر از صفر بود بنویس عدد مثبت است

پایان

سودوکد مثال الگوریتم اگر یا if / یک عدد بنوبسید که مشخص کند عدد مثبت است:

START

input number

if number>0 then

“output “the number is positive

ENDIF

END

 

نکته :در سودوکد شرطی باید حتما به صورت زیر شرط را نوشت:

THEN (شرط) IF

نکته : و حتما خروجی IF یا همان OUTPUT دوتا ایندنت میخورد به این معنی است که OUTPUT داخل IF است و تا ENDIF داخل IF  قرار میگیرد. ایندنت همان تب یا فاصله ایت که به ان اسکوپ هم میگویند.

 

 

 

مثال الگوریتم اگر یا IF / یک عدد از ورودی بگیرد و سه حالت ان را بررسی کند:

شروع

عددی را از کاربر بگیر

اگر عدد بزرگتر از صفر بود بنویس عدد مثبت است

اگر عدد بر 2 بخش پذی بود بنویس عدد زوج است

اگر عدد بزرگتر از 100 بود بنویس عدد بزرگ است

پایان

سودوکد مثال الگوریتم اگر یا IF / یک عدد از ورودی بگیرد و سه حالت ان را بررسی کند:

START

input number

if number>0 then

“output “the number is positive

ENDIF

if number MOD 2=0  then

“output “the number is even

ENDIF

if number>100  then

“output “the number is large

ENDIF

END

 

نکته: اگر شرط ها هیچ ربطی به هم نداشته باشند باید جدا بنویسیم شرط ها را. در اینجا تمامی شرط ها جدا بررسی میشوند و بعد از هر شرط باید ENDIF را بگذاریم. ایندنت ها را باید رعایت کنیم و مود یا همان MOD در اینجا به معنی بخش پذیر است.

 

دوره جاوا 2026 فرشاد فلاح در اپ‌ساز

ساختار اگر / در غیر این صورت ( IF / ELSE ):

در این مسیر اگر شرط برقرار نباشد مسیر جایگرین اجرا میشود.

مثال الگوریتم IF ELSE / مثبت و منفی بودن عدد را مشخص کنید.

شروع

عدد را از کاربر بگیر

اگر عدد بزرگتر از صفر بود بنویس عدد مثبت است

در غیر این صورت بنویس عدد منفی یا صفر است

پایان

سودوکد مثال الگوریتم IF ELSE / مثبت و منفی بودن عدد را مشخص کنید.

STSRT

input number

if number>0  then

“output “positive number

ELSE

“output “negative  or zero

ENDIF

END

ساختار اگر/ یا اگر/ در غیر این صورت ( IF / ELSE IF / ELSE ):

زمانی استفاده میشود که چند حالت مختلف را باید بررسی کنیم . توی یک دیتا بررسی میکنیم.

مثال الگوریتم ( IF / ELSE IF / ELSE ) ، مقایسه نمره دانشجو:

شروع

نمره دانشجو را بگیر

اگر نمره بزرگ تر یا مساوری 17 بود بنویس عالی

اگر اگر نمره بزرگ تر یا مساوی 10 بود بنویس قبول

در غیر این صورت بنویس مردود

پایان

سودوکد مثال الگوریتم ( IF / ELSE IF / ELSE ) ، مقایسه نمره دانشجو:

START

input mark

if mark>=17  then

“output “excellent

ELSE IF mark>=10  then

“output “pass

ELSE

“output “fail

ENDIF

END

نکته: در اینجا if اگر برقرار نبود else if  را مینویسیم و اگر هر دو ان ها برقرار نبودند else  را مینویسیم به ترتیب.

منطق در شرط:

مثال الگوریتم برای رای دادن منطق در شرط:

شروع

سن و وضعیت شهروندی و وضعیت تابعیت را از ورودی بگیر

اگر سن بالای 18 باشد و شهروندی شهروند است یا بالای 10 سال اقامت دارد چاپ کن میتواند رای دهد

سودوکد مثال الگوریتم برای رای دادن منطق در شرط:

START

input age

input citizenship

input immigration

if age>=18 && (citizenship==citizen || immigration>=10)  then

“output “can vote

ELSE

“output “cannot vote

ENDIF

END

فلوچارت مثال الگوریتم برای رای دادن منطق در شرط:
الگوریتم شرطی فلوچارت

نتیجه گیری:

الگوریتم‌ های شرطی ابزار اصلی برنامه‌ نویسی برای تصمیم‌ گیری و کنترل جریان اجرای برنامه هستند. این الگوریتم‌ ها با بررسی یک یا چند شرط مشخص، تعیین میکنند کدام دستورات اجرا شوند. اگر شرط برقرار باشد، بلوک مربوطه اجرا میشود و در غیر این صورت بلوک جایگزین، مثل: else، اجرا خواهد شد. الگوریتم‌ های شرطی میتوانند تک‌ شاخه if یا چند شاخه if-else if-else باشند تا شرایط پیچیده‌ تر مدیریت شود.

ترتیب شرط‌ ها اهمیت زیادی دارد، چون اولین شرط درست، اجرای بلوک مربوطه را تعیین میکند و بقیه شرط‌ ها نادیده گرفته میشوند. این الگوریتم‌ ها در کاربرد های عملی بسیار متنوع هستند، مثلا: بررسی سن، نمره، موجودی کالا یا تصمیم‌ گیری در بازی‌ ها. الگوریتم شرطی ابزار اصلی برای کنترل جریان برنامه و اجرای هوشمندانه دستورات بر اساس شرایط مختلف میباشد.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

اپلیکیشن مشابه دیوار اپ‌ساز