SlideShare a Scribd company logo
1 of 25
‫فلوچارت‬ ‫و‬ ‫الگوریتم‬‫فلوچارت‬ ‫و‬ ‫الگوریتم‬
‫الگوریتم‬ ‫تعریف‬‫الگوریتم‬ ‫تعریف‬
‫با‬ ‫را‬ ‫کاری‬ ‫انجام‬ ‫مراحل‬ ‫که‬ ‫دستورالعملی‬ ‫هر‬‫با‬ ‫را‬ ‫کاری‬ ‫انجام‬ ‫مراحل‬ ‫که‬ ‫دستورالعملی‬ ‫هر‬
‫نماید‬ ‫بیان‬ ‫کافی‬ ‫جزئیات‬ ‫با‬ ‫و‬ ‫دقیق‬ ‫زبانی‬‫نماید‬ ‫بیان‬ ‫کافی‬ ‫جزئیات‬ ‫با‬ ‫و‬ ‫دقیق‬ ‫زبانی‬
‫عملیات‬ ‫خاتمه‬ ‫شرط‬ ‫و‬ ‫مراحل‬ ‫ترتیب‬ ‫بطوریکه‬‫عملیات‬ ‫خاتمه‬ ‫شرط‬ ‫و‬ ‫مراحل‬ ‫ترتیب‬ ‫بطوریکه‬
‫الگوریتم‬ ‫را‬ ‫باشد‬ ‫شده‬ ‫مشخص‬ “ ‫کامل‬ ‫آن‬ ‫در‬‫الگوریتم‬ ‫را‬ ‫باشد‬ ‫شده‬ ‫مشخص‬ “ ‫کامل‬ ‫آن‬ ‫در‬
.‫گویند‬.‫گویند‬
‫الگوریتم‬ ‫تعریف‬ ‫ادامه‬‫الگوریتم‬ ‫تعریف‬ ‫ادامه‬
‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫دقیق‬ ‫زبان‬‫دقیق‬ ‫زبان‬‫همان‬ ‫به‬ “ ‫دقیقا‬ ‫الگوریتم‬ ‫که‬ ‫است‬ ‫آن‬ :‫همان‬ ‫به‬ “ ‫دقیقا‬ ‫الگوریتم‬ ‫که‬ ‫است‬ ‫آن‬ :
.‫گردد‬ ‫اجرا‬ ‫است‬ ‫نویسنده‬ ‫نظر‬ ‫مورد‬ ‫صورتیکه‬.‫گردد‬ ‫اجرا‬ ‫است‬ ‫نویسنده‬ ‫نظر‬ ‫مورد‬ ‫صورتیکه‬
‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫کافی‬ ‫جزئیات‬‫کافی‬ ‫جزئیات‬‫الگوریتم‬ ‫اجرای‬ ‫طول‬ ‫در‬ ‫که‬ ‫است‬ ‫آن‬ ،‫الگوریتم‬ ‫اجرای‬ ‫طول‬ ‫در‬ ‫که‬ ‫است‬ ‫آن‬ ،
‫هدف‬ ‫و‬ ‫مسیر‬ ‫از‬ ‫انحراف‬ ‫باعث‬ ‫و‬ ‫نیامده‬ ‫پیش‬ ‫ناشناخته‬ ‫عملیات‬‫هدف‬ ‫و‬ ‫مسیر‬ ‫از‬ ‫انحراف‬ ‫باعث‬ ‫و‬ ‫نیامده‬ ‫پیش‬ ‫ناشناخته‬ ‫عملیات‬
.‫نگردد‬ ‫اصلی‬.‫نگردد‬ ‫اصلی‬
‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫مراحل‬ ‫ترتیب‬‫مراحل‬ ‫ترتیب‬‫قدم‬ ‫الگوریتم‬ ‫اجرای‬ ‫مراحل‬ ‫که‬ ‫است‬ ‫آن‬ ،‫قدم‬ ‫الگوریتم‬ ‫اجرای‬ ‫مراحل‬ ‫که‬ ‫است‬ ‫آن‬ ،
.‫باشد‬ ‫شده‬ ‫مشخص‬ ‫خر‬ ‫تأ‬ ‫و‬ ‫تقدم‬ ‫رعایت‬ ‫با‬ ‫و‬ ‫قدم‬ ‫به‬.‫باشد‬ ‫شده‬ ‫مشخص‬ ‫خر‬ ‫تأ‬ ‫و‬ ‫تقدم‬ ‫رعایت‬ ‫با‬ ‫و‬ ‫قدم‬ ‫به‬
‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫خاتمه‬ ‫شرط‬‫خاتمه‬ ‫شرط‬‫بهر‬ ‫و‬ ‫باشد‬ ‫می‬ ‫الگوریتم‬ ‫بودن‬ ‫پذیر‬ ‫پایان‬ ،‫بهر‬ ‫و‬ ‫باشد‬ ‫می‬ ‫الگوریتم‬ ‫بودن‬ ‫پذیر‬ ‫پایان‬ ،
‫داده‬ ‫شرایط‬ ‫یا‬ ‫شرایط‬ ‫تحت‬ ‫و‬ ‫دلخواه‬ ‫زمانی‬ ‫در‬ ‫باید‬ ‫الگوریتم‬ ‫حال‬‫داده‬ ‫شرایط‬ ‫یا‬ ‫شرایط‬ ‫تحت‬ ‫و‬ ‫دلخواه‬ ‫زمانی‬ ‫در‬ ‫باید‬ ‫الگوریتم‬ ‫حال‬
.‫پذیرد‬ ‫خاتمه‬ ‫شده‬.‫پذیرد‬ ‫خاتمه‬ ‫شده‬
‫الگوریتم‬ ‫تهیه‬ ‫مراحل‬‫الگوریتم‬ ‫تهیه‬ ‫مراحل‬
:‫شوند‬ ‫اجرا‬ ‫خاصی‬ ‫مراحل‬ ‫باید‬ ‫کارآمد‬ ‫و‬ ‫خوب‬ ‫الگوریتم‬ ‫یک‬ ‫تهیه‬ ‫برای‬:‫شوند‬ ‫اجرا‬ ‫خاصی‬ ‫مراحل‬ ‫باید‬ ‫کارآمد‬ ‫و‬ ‫خوب‬ ‫الگوریتم‬ ‫یک‬ ‫تهیه‬ ‫برای‬
11‫تحلیل‬ ‫و‬ ‫تجزیه‬ ‫را‬ ‫مسئله‬ ‫باید‬ :‫مسئله‬ ‫دقیق‬ ‫تعریف‬ -‫تحلیل‬ ‫و‬ ‫تجزیه‬ ‫را‬ ‫مسئله‬ ‫باید‬ :‫مسئله‬ ‫دقیق‬ ‫تعریف‬ -
‫نداشته‬ ‫وجود‬ ‫آن‬ ‫فهم‬ ‫در‬ ‫ابهامی‬ ‫کوچکترین‬ ‫تا‬ ‫کرده‬‫نداشته‬ ‫وجود‬ ‫آن‬ ‫فهم‬ ‫در‬ ‫ابهامی‬ ‫کوچکترین‬ ‫تا‬ ‫کرده‬
.‫باشد‬.‫باشد‬
22‫نیاز‬ ‫مورد‬ (‫اصلی)متغییرهای‬ ‫عوامل‬ ‫تعیین‬ -‫نیاز‬ ‫مورد‬ (‫اصلی)متغییرهای‬ ‫عوامل‬ ‫تعیین‬ -
33‫و‬ ‫ها‬ ‫)داده‬ : ‫مسئله‬ ‫خروجی‬ ‫و‬ ‫ورودی‬ ‫تعیین‬ -‫و‬ ‫ها‬ ‫)داده‬ : ‫مسئله‬ ‫خروجی‬ ‫و‬ ‫ورودی‬ ‫تعیین‬ -
(‫اطلعات‬(‫اطلعات‬
44‫مسئله‬ ‫مختلف‬ ‫های‬ ‫حل‬ ‫راه‬ ‫بررسی‬ -‫مسئله‬ ‫مختلف‬ ‫های‬ ‫حل‬ ‫راه‬ ‫بررسی‬ -
55‫مناسب‬ ‫حل‬ ‫راه‬ ‫یک‬ ‫انتخاب‬ -‫مناسب‬ ‫حل‬ ‫راه‬ ‫یک‬ ‫انتخاب‬ -
66‫زدایی‬ ‫اشکال‬ -‫زدایی‬ ‫اشکال‬ -
‫فلوچارت‬‫فلوچارت‬
‫الگوریتم‬ ‫تصویری‬ ‫بیان‬‫الگوریتم‬ ‫تصویری‬ ‫بیان‬
‫هندسی‬ ‫اشکال‬ ‫با‬ ‫کار‬ ‫انجام‬ ‫مراحل‬‫هندسی‬ ‫اشکال‬ ‫با‬ ‫کار‬ ‫انجام‬ ‫مراحل‬
.‫شوند‬ ‫می‬ ‫داده‬ ‫نشان‬.‫شوند‬ ‫می‬ ‫داده‬ ‫نشان‬
‫به‬ ‫خطوط‬ ‫توسط‬ ‫کار‬ ‫انجام‬ ‫مراحل‬‫به‬ ‫خطوط‬ ‫توسط‬ ‫کار‬ ‫انجام‬ ‫مراحل‬
.‫گردند‬ ‫می‬ ‫وصل‬ ‫هم‬.‫گردند‬ ‫می‬ ‫وصل‬ ‫هم‬
‫مثال‬‫مثال‬ ‫شرح‬‫شرح‬ ‫شکل‬‫شکل‬
‫خاتمه‬ ‫و‬ ‫شروع‬ ‫دادن‬ ‫نشان‬ ‫برای‬‫خاتمه‬ ‫و‬ ‫شروع‬ ‫دادن‬ ‫نشان‬ ‫برای‬
‫عملیات‬‫عملیات‬
‫مقداردهی‬ ‫و‬ ‫محاسبات‬‫مقداردهی‬ ‫و‬ ‫محاسبات‬
‫اطلعات‬ ‫ورود‬‫اطلعات‬ ‫ورود‬
‫نمایش‬ ‫صفحه‬ ‫روی‬ ‫بر‬ ‫خروج‬‫نمایش‬ ‫صفحه‬ ‫روی‬ ‫بر‬ ‫خروج‬
‫روی‬ ‫بر‬ ‫اطلعات‬ ‫خروج‬‫روی‬ ‫بر‬ ‫اطلعات‬ ‫خروج‬
‫کاغذ‬‫کاغذ‬
‫و‬ ‫گیری‬ ‫تصمیم‬ ،‫سئوال‬‫و‬ ‫گیری‬ ‫تصمیم‬ ،‫سئوال‬
‫دلخواه‬ ‫های‬ ‫شرط‬‫دلخواه‬ ‫های‬ ‫شرط‬
start
stop
c←a+b
d← i
A,B
A,B,”100”
?
‫ورودی‬
‫خروجی‬
‫خروجی‬
‫خروجی‬
‫مثال‬‫مثال‬11::‫را‬ ‫آنها‬ ‫حاصلضرب‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫را‬ ‫آنها‬ ‫حاصلضرب‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬
.‫دهد‬ ‫نمایش‬.‫دهد‬ ‫نمایش‬
‫شروع‬
A,B
z←A*B
z
‫پایان‬
‫مثال‬‫مثال‬22::‫محیط‬ ‫و‬ ‫مساحت‬ ،‫خوانده‬ ‫را‬ ‫دایره‬ ‫یک‬ ‫شعاع‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫محیط‬ ‫و‬ ‫مساحت‬ ،‫خوانده‬ ‫را‬ ‫دایره‬ ‫یک‬ ‫شعاع‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬
.‫دهد‬ ‫نمایش‬ ‫آنرا‬.‫دهد‬ ‫نمایش‬ ‫آنرا‬
‫شروع‬
‫پایان‬
R
A←3.14*R²
P←2*R*3.14
A,P
‫مثال‬‫مثال‬33::‫زیر‬ ‫بصورت‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫زیر‬ ‫بصورت‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬
:‫نماید‬ ‫گیری‬ ‫تصمیم‬:‫نماید‬ ‫گیری‬ ‫تصمیم‬
‫دیگر‬ ‫عدد‬ ‫دو‬ ‫جمع‬ ‫حاصل‬ ‫بود‬ ‫صفر‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -‫دیگر‬ ‫عدد‬ ‫دو‬ ‫جمع‬ ‫حاصل‬ ‫بود‬ ‫صفر‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -
‫دیگر‬ ‫عدد‬ ‫دو‬ ‫تفاضل‬ ‫بود‬ ‫منفی‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -‫دیگر‬ ‫عدد‬ ‫دو‬ ‫تفاضل‬ ‫بود‬ ‫منفی‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -
‫دیگر‬ ‫عدد‬ ‫دو‬ ‫ضرب‬ ‫حاصل‬ ‫بود‬ ‫مثبت‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -‫دیگر‬ ‫عدد‬ ‫دو‬ ‫ضرب‬ ‫حاصل‬ ‫بود‬ ‫مثبت‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -
.‫دهد‬ ‫نمایش‬ ‫را‬.‫دهد‬ ‫نمایش‬ ‫را‬
‫شروع‬
A,B,C
C=0
C<0
D←A+B
Y
N
D←A-B
Y
D←A*B
D
‫پایان‬
NN
‫مثال‬ ‫ادامه‬‫مثال‬ ‫ادامه‬33
‫مثال‬‫مثال‬44::‫مقادیر‬ ‫سپس‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫فلوچارت‬‫مقادیر‬ ‫سپس‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫فلوچارت‬
.‫نماید‬ ‫جابجا‬ ‫هم‬ ‫با‬ ‫را‬ ‫دو‬ ‫آن‬.‫نماید‬ ‫جابجا‬ ‫هم‬ ‫با‬ ‫را‬ ‫دو‬ ‫آن‬
: ‫اول‬ ‫روش‬: ‫اول‬ ‫روش‬‫متغیر‬ ‫از‬ ‫استفاده‬‫متغیر‬ ‫از‬ ‫استفاده‬
‫کمکی‬‫کمکی‬
:‫دوم‬ ‫روش‬:‫دوم‬ ‫روش‬‫عملیات‬ ‫از‬ ‫استفاده‬‫عملیات‬ ‫از‬ ‫استفاده‬
‫ریاضی‬‫ریاضی‬
‫شروع‬
A,B
A,B
T←A
A←B
B←T
A,B
‫پایان‬
‫شروع‬
A,B
A,B
َA←A+B
B←A-B
A←A-B
A,B
‫پایان‬
‫مثال‬‫مثال‬55::‫که‬ ‫کند‬ ‫تعیین‬ ،‫خوانده‬ ‫را‬ ‫مثلث‬ ‫یک‬ ‫ضلع‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫که‬ ‫کند‬ ‫تعیین‬ ،‫خوانده‬ ‫را‬ ‫مثلث‬ ‫یک‬ ‫ضلع‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬
‫خیر؟‬ ‫یا‬ ‫است‬ ‫الزاویه‬ ‫قائم‬ ‫مثلث‬ ‫آیا‬‫خیر؟‬ ‫یا‬ ‫است‬ ‫الزاویه‬ ‫قائم‬ ‫مثلث‬ ‫آیا‬
.‫کند‬ ‫صدق‬ ‫زیر‬ ‫عبارات‬ ‫از‬ ‫یکی‬ ‫در‬ ‫باید‬ ‫آن‬ ‫اضلع‬ ‫اندازه‬ ‫مثلث‬ ‫بودن‬ ‫الزاویه‬ ‫قائم‬ ‫برای‬
A²=B²+C²‫یا‬B²=A²+C²‫یا‬C²=A²+B²
‫شروع‬
A,B,C
A²=B²+C²
Y
N
B²=A²+C²
Y
N
C²=B²+A²
Y
N
“NO” “YES”
‫پایان‬
‫مثال‬‫مثال‬66::‫دوم‬ ‫درجه‬ ‫معادله‬ ‫یک‬ ‫های‬ ‫ریشه‬‫دوم‬ ‫درجه‬ ‫معادله‬ ‫یک‬ ‫های‬ ‫ریشه‬
AX²+BX+C=0AX²+BX+C=0
D=B²-4ACD=B²-4AC
‫اگر‬‫اگر‬D<0D<0‫ندارد‬ ‫ریشه‬ ‫معادله‬ ،‫ندارد‬ ‫ریشه‬ ‫معادله‬ ،
‫اگر‬‫اگر‬D=0D=0‫عبارت‬ ‫حاصل‬ ،‫عبارت‬ ‫حاصل‬ ،––B/2AB/2A‫در‬ ‫را‬‫در‬ ‫را‬X1X1‫و‬‫و‬X2X2‫بده‬ ‫قرار‬‫بده‬ ‫قرار‬
‫عبارت‬ ‫حاصل‬‫عبارت‬ ‫حاصل‬‫در‬ ‫را‬‫در‬ ‫را‬X1X1‫بده‬ ‫قرار‬‫بده‬ ‫قرار‬
‫در‬ ‫را‬ ‫عبارت‬ ‫حاصل‬‫در‬ ‫را‬ ‫عبارت‬ ‫حاصل‬X2X2‫بده‬ ‫قرار‬‫بده‬ ‫قرار‬
‫مقادیر‬‫مقادیر‬X1X1‫و‬‫و‬X2X2‫بده‬ ‫نمایش‬ ‫را‬‫بده‬ ‫نمایش‬ ‫را‬
)2/()( ADB +−
ADB 2/)( −−
‫شروع‬
A,B,C
D<0
Y
N
D=0
Y
N
X1← -B/2A
X2← X1
ADBX
ADBX
2/)(2
2/)(1
−−←
+−←
CABD ∗∗−← 4
2
“No root”
X1,X2
‫پایان‬
‫حلقوی‬ ‫های‬ ‫الگوریتم‬‫حلقوی‬ ‫های‬ ‫الگوریتم‬
‫اول‬ ‫تعریف‬‫اول‬ ‫تعریف‬:‫اجرای‬ ‫بار‬ ‫چندین‬ ‫که‬ ‫الگوریتم‬ ‫از‬ ‫مراحلی‬
‫حلقه‬ ‫یک‬ ‫تشکیل‬ ‫گردد‬ ‫می‬ ‫تکرار‬ ‫آنها‬)LOOP(.‫دهند‬ ‫می‬ ‫را‬
،‫گردد‬ ‫می‬ ‫استفاده‬ ‫کمکی‬ ‫متغیر‬ ‫یک‬ ‫از‬ ‫حلقه‬ ‫یک‬ ‫ساختن‬ ‫برای‬،‫گردد‬ ‫می‬ ‫استفاده‬ ‫کمکی‬ ‫متغیر‬ ‫یک‬ ‫از‬ ‫حلقه‬ ‫یک‬ ‫ساختن‬ ‫برای‬
‫می‬ ‫آماده‬ ‫اولیه‬ ‫مقدار‬ ‫یک‬ ‫با‬ ‫حلقه‬ ‫شروع‬ ‫از‬ ‫قبل‬ ‫را‬ ‫متغیر‬ ‫این‬‫می‬ ‫آماده‬ ‫اولیه‬ ‫مقدار‬ ‫یک‬ ‫با‬ ‫حلقه‬ ‫شروع‬ ‫از‬ ‫قبل‬ ‫را‬ ‫متغیر‬ ‫این‬
‫به‬ ‫بازگشت‬ ‫از‬ ‫قبل‬ ‫و‬ ‫حلقه‬ ‫انتهای‬ ‫در‬ “ ‫معمول‬ ‫سپس‬ ‫و‬ ‫سازیم‬‫به‬ ‫بازگشت‬ ‫از‬ ‫قبل‬ ‫و‬ ‫حلقه‬ ‫انتهای‬ ‫در‬ “ ‫معمول‬ ‫سپس‬ ‫و‬ ‫سازیم‬
‫شرائط‬ ‫یک‬ ‫تحت‬ ‫و‬ ‫کرده‬ ‫اضافه‬ ‫آن‬ ‫به‬ ‫را‬ ‫مقداری‬ ‫حلقه‬ ‫ابتدای‬‫شرائط‬ ‫یک‬ ‫تحت‬ ‫و‬ ‫کرده‬ ‫اضافه‬ ‫آن‬ ‫به‬ ‫را‬ ‫مقداری‬ ‫حلقه‬ ‫ابتدای‬
.‫نماییم‬ ‫می‬ ‫پرش‬ ‫قبل‬ ‫مراحل‬ ‫به‬ ‫خاص‬.‫نماییم‬ ‫می‬ ‫پرش‬ ‫قبل‬ ‫مراحل‬ ‫به‬ ‫خاص‬
:‫دوم‬ ‫تعریف‬:‫دوم‬ ‫تعریف‬‫متغیر‬ ‫به‬ ‫حلقه‬ ‫شروع‬ ‫از‬ ‫قبل‬ ‫که‬ ‫مقداری‬
.‫گویند‬ ‫اولیه‬ ‫شرط‬ ‫یا‬ ‫اولیه‬ ‫مقدار‬ ‫را‬ ‫شود‬ ‫می‬ ‫داده‬ ‫حلقه‬
:‫سوم‬ ‫تعریف‬:‫سوم‬ ‫تعریف‬‫مراحل‬ ‫اجرای‬ ‫یکبار‬ ‫از‬ ‫پس‬ ‫که‬ ‫مقداری‬
‫اضافه‬ ‫مقدار‬ ‫را‬ ‫شود‬ ‫می‬ ‫اضافه‬ ‫حلقه‬ ‫متغیر‬ ‫به‬ ‫حلقه‬
.‫نامند‬ ‫می‬ ‫شونده‬
‫مثال‬‫مثال‬77::‫را‬ ‫صفر‬ ‫از‬ ‫بزرگتر‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫را‬ ‫صفر‬ ‫از‬ ‫بزرگتر‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬
‫و‬ ‫مجموع‬ ‫خوانده‬ ‫را‬ ‫دیگری‬ ‫اعداد‬ ,‫عدد‬ ‫آن‬ ‫تعداد‬ ‫به‬ ‫سپس‬ ‫خوانده‬‫و‬ ‫مجموع‬ ‫خوانده‬ ‫را‬ ‫دیگری‬ ‫اعداد‬ ,‫عدد‬ ‫آن‬ ‫تعداد‬ ‫به‬ ‫سپس‬ ‫خوانده‬
.‫دهد‬ ‫نمایش‬ ‫را‬ ‫آنها‬ ‫میانگین‬.‫دهد‬ ‫نمایش‬ ‫را‬ ‫آنها‬ ‫میانگین‬
N‫شده‬ ‫خوانده‬ ‫عدد‬
C‫شمارنده‬
S‫مجموع‬
A‫اعداد‬
NSS /,
ASS +←
‫شروع‬
N
C ← 0
S ← 0
C=N
‫پایان‬
Y
N
A
1+←CC
‫مثال‬‫مثال‬88::‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬1010‫و‬ ‫گرفته‬ ‫را‬ ‫عدد‬‫و‬ ‫گرفته‬ ‫را‬ ‫عدد‬
.‫است‬ ‫فرد‬ ‫کدام‬ ‫و‬ ‫زوج‬ ‫کدام‬ ‫کند‬ ‫تعیین‬.‫است‬ ‫فرد‬ ‫کدام‬ ‫و‬ ‫زوج‬ ‫کدام‬ ‫کند‬ ‫تعیین‬‫شروع‬
C ← 0
p
k ← p-INT(p/2)*2
K=0
y
n
P, “odd”
C ← C+1
C< 10
n
y
‫پایان‬
P, “even”
‫مثال‬‫مثال‬99::‫را‬ ‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫را‬ ‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬
.‫دهد‬ ‫نشان‬ ‫را‬ ‫عدد‬ ‫ارقام‬ ‫تعداد‬ ‫و‬ ‫خوانده‬.‫دهد‬ ‫نشان‬ ‫را‬ ‫عدد‬ ‫ارقام‬ ‫تعداد‬ ‫و‬ ‫خوانده‬
‫شروع‬
N
S ←0 (‫ارقام‬ ‫)تعداد‬
)10/(NINTN ←
S ← S+1
N>0
Y
N
S
‫پایان‬
‫مثال‬‫مثال‬1010::‫طبیعی‬ ‫عدد‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫طبیعی‬ ‫عدد‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬N>1N>1‫مقسوم‬ ‫و‬ ‫خوانده‬ ‫را‬‫مقسوم‬ ‫و‬ ‫خوانده‬ ‫را‬
‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫های‬ ‫علیه‬‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫های‬ ‫علیه‬‫شروع‬
N
M ← 1
MMNINTNK ∗−← )/(
K=0
Y
N
M
M ← M+1
M<=N
Y
N
‫پایان‬
‫مثال‬‫مثال‬1111::‫بودن‬ ‫اول‬ ، ‫خوانده‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫بودن‬ ‫اول‬ ، ‫خوانده‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬
‫نمایید‬ ‫تعیین‬ ‫را‬ ‫آن‬‫نمایید‬ ‫تعیین‬ ‫را‬ ‫آن‬
‫شروع‬
N
N=2
N
P ← 2
PPNINTNK ∗−← )/(
K=0 N,”NO PRIME”Y
N
P ← P+1
P<=N/2
Y
N
N,”IS PRIME”
‫پایان‬
Y
‫مثال‬‫مثال‬1212::‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬
.‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫فاکتوریل‬ ‫خوانده‬ ‫را‬.‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫فاکتوریل‬ ‫خوانده‬ ‫را‬
‫اعداد‬ ‫ضرب‬ ‫حاصل‬ ‫یعنی‬ ‫عدد‬ ‫یک‬ ‫فاکتوریل‬‫اعداد‬ ‫ضرب‬ ‫حاصل‬ ‫یعنی‬ ‫عدد‬ ‫یک‬ ‫فاکتوریل‬11‫آن‬ ‫تا‬‫آن‬ ‫تا‬
‫عدد‬‫عدد‬
.‫باشد‬ ‫می‬ ‫یک‬ ‫برابر‬ ‫صفر‬ ‫عدد‬ ‫فاکتوریل‬.‫باشد‬ ‫می‬ ‫یک‬ ‫برابر‬ ‫صفر‬ ‫عدد‬ ‫فاکتوریل‬
‫مثال‬ ‫ادامه‬‫مثال‬ ‫ادامه‬1212
AA‫هدنرامشمارنده‬‫هدنرامشمارنده‬‫شروع‬
N
FACT ← 1
A ← 1
A>N
Y
N
FACT
‫پایان‬
FACT ← FACT * A
A ← A+ 1
‫مثال‬‫مثال‬1313::‫عدد‬ ‫که‬ ‫بنویسید‬ ‫ای‬ ‫برنامه‬‫عدد‬ ‫که‬ ‫بنویسید‬ ‫ای‬ ‫برنامه‬NN‫و‬ ،‫خوانده‬ ‫را‬‫و‬ ،‫خوانده‬ ‫را‬
.‫دهد‬ ‫نشان‬ ‫را‬ ‫آن‬ ‫ارقام‬ ‫مجموع‬.‫دهد‬ ‫نشان‬ ‫را‬ ‫آن‬ ‫ارقام‬ ‫مجموع‬
:‫مثال‬:‫مثال‬33++22++11123123 ⇒
‫شروع‬
N
SUM ← 0
10)10/( ∗−← NINTNA
SUM ← SUM+A
)10/(NINTN ←
N>0
N
Y
SUM
‫پایان‬
‫مثال‬‫مثال‬1414::‫که‬ ‫کند‬ ‫تعیین‬ ‫گرفته‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫که‬ ‫کند‬ ‫تعیین‬ ‫گرفته‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬
‫خیر؟‬ ‫یا‬ ‫است‬ ‫کامل‬ ‫آیا‬‫خیر؟‬ ‫یا‬ ‫است‬ ‫کامل‬ ‫آیا‬
‫های‬ ‫علیه‬ ‫مقسوم‬ ‫مجموع‬ ‫با‬ ‫که‬ ‫است‬ ‫کامل‬ ‫عددی‬‫های‬ ‫علیه‬ ‫مقسوم‬ ‫مجموع‬ ‫با‬ ‫که‬ ‫است‬ ‫کامل‬ ‫عددی‬
.‫باهدنرامشد‬ ‫برابر‬ ‫خودش‬ ‫از‬ ‫کوچکتر‬.‫باهدنرامشد‬ ‫برابر‬ ‫خودش‬ ‫از‬ ‫کوچکتر‬
3216 ++⇒
‫شروع‬
N
A ← 1
S ← 0
AANINTNP ∗−← )/(
P=0
Y
N
S ← S+A
A ← A+1
A<=N/2
Y
N
S=N
Y
N
N,” IS COMPLEMENT”
N,” IS NOT COMPLEMENT”
‫پایان‬

More Related Content

Viewers also liked

Capillary pressure seminar final version
Capillary pressure seminar final versionCapillary pressure seminar final version
Capillary pressure seminar final versionmpetroleum
 
Waterflooding seminar (www.mpetro.ir)
Waterflooding seminar (www.mpetro.ir)Waterflooding seminar (www.mpetro.ir)
Waterflooding seminar (www.mpetro.ir)mpetroleum
 
Planning a Chemical Flood EOR Asia 2012 MB Dupont
Planning a Chemical Flood EOR Asia 2012 MB DupontPlanning a Chemical Flood EOR Asia 2012 MB Dupont
Planning a Chemical Flood EOR Asia 2012 MB DupontMike Dupont
 
SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.
SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.
SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.Mike Dupont
 
Baton rouge water damage restoration company offers tips for what to do when ...
Baton rouge water damage restoration company offers tips for what to do when ...Baton rouge water damage restoration company offers tips for what to do when ...
Baton rouge water damage restoration company offers tips for what to do when ...Matt Stan
 
History references
History referencesHistory references
History referencesMBZARE
 
Heinemann zoltán e[1]._-_petroleum_recovery_
Heinemann zoltán e[1]._-_petroleum_recovery_Heinemann zoltán e[1]._-_petroleum_recovery_
Heinemann zoltán e[1]._-_petroleum_recovery_Hanhndcnm
 
Permian Basin - Oil & Gas Mergers, Acquisitions and Divestitures
Permian Basin - Oil & Gas Mergers, Acquisitions and DivestituresPermian Basin - Oil & Gas Mergers, Acquisitions and Divestitures
Permian Basin - Oil & Gas Mergers, Acquisitions and DivestituresWilcox Swartzwelder & Co.
 
Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...
Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...
Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...IJERD Editor
 
Master Thesis: Which solutions and trade strategies petroleum services compan...
Master Thesis: Which solutions and trade strategies petroleum services compan...Master Thesis: Which solutions and trade strategies petroleum services compan...
Master Thesis: Which solutions and trade strategies petroleum services compan...Eléonor Demail
 
Relative permeability presentation
Relative permeability presentationRelative permeability presentation
Relative permeability presentationmpetroleum
 
Eor oilfield review
Eor oilfield reviewEor oilfield review
Eor oilfield reviewUmmu Muadz
 
Abu Dhabi Dec 2014 EOR workshop Julio Herbas
Abu Dhabi Dec 2014 EOR workshop Julio HerbasAbu Dhabi Dec 2014 EOR workshop Julio Herbas
Abu Dhabi Dec 2014 EOR workshop Julio HerbasJulio Herbas
 
Late life water flooding in an oil reservoir
Late life water flooding in an oil reservoirLate life water flooding in an oil reservoir
Late life water flooding in an oil reservoirMuhammad Osama Yousuf
 
Optimizing Well Spacing and Completions in the Bakken/Three Forks Plays
Optimizing Well Spacing and Completions in the Bakken/Three Forks PlaysOptimizing Well Spacing and Completions in the Bakken/Three Forks Plays
Optimizing Well Spacing and Completions in the Bakken/Three Forks PlaysDrillinginfo
 
Boundary Tension & Wettability
Boundary Tension & WettabilityBoundary Tension & Wettability
Boundary Tension & WettabilityM.T.H Group
 

Viewers also liked (20)

Capillary pressure seminar final version
Capillary pressure seminar final versionCapillary pressure seminar final version
Capillary pressure seminar final version
 
Waterflooding seminar (www.mpetro.ir)
Waterflooding seminar (www.mpetro.ir)Waterflooding seminar (www.mpetro.ir)
Waterflooding seminar (www.mpetro.ir)
 
waterflooding
waterfloodingwaterflooding
waterflooding
 
OIL RECOVERY TECHNIQUES
OIL RECOVERY TECHNIQUESOIL RECOVERY TECHNIQUES
OIL RECOVERY TECHNIQUES
 
Domestic Oil and Gas Industry Trends
Domestic Oil and Gas Industry TrendsDomestic Oil and Gas Industry Trends
Domestic Oil and Gas Industry Trends
 
Planning a Chemical Flood EOR Asia 2012 MB Dupont
Planning a Chemical Flood EOR Asia 2012 MB DupontPlanning a Chemical Flood EOR Asia 2012 MB Dupont
Planning a Chemical Flood EOR Asia 2012 MB Dupont
 
SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.
SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.
SPE Workshop Water Quality and Hz Inj - MB Dupont P.Eng.
 
Baton rouge water damage restoration company offers tips for what to do when ...
Baton rouge water damage restoration company offers tips for what to do when ...Baton rouge water damage restoration company offers tips for what to do when ...
Baton rouge water damage restoration company offers tips for what to do when ...
 
History references
History referencesHistory references
History references
 
Heinemann zoltán e[1]._-_petroleum_recovery_
Heinemann zoltán e[1]._-_petroleum_recovery_Heinemann zoltán e[1]._-_petroleum_recovery_
Heinemann zoltán e[1]._-_petroleum_recovery_
 
Permian Basin - Oil & Gas Mergers, Acquisitions and Divestitures
Permian Basin - Oil & Gas Mergers, Acquisitions and DivestituresPermian Basin - Oil & Gas Mergers, Acquisitions and Divestitures
Permian Basin - Oil & Gas Mergers, Acquisitions and Divestitures
 
Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...
Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...
Application of Buckley-Leverett Equation in Modeling the Radius of Invasion i...
 
main file-6
main file-6main file-6
main file-6
 
Master Thesis: Which solutions and trade strategies petroleum services compan...
Master Thesis: Which solutions and trade strategies petroleum services compan...Master Thesis: Which solutions and trade strategies petroleum services compan...
Master Thesis: Which solutions and trade strategies petroleum services compan...
 
Relative permeability presentation
Relative permeability presentationRelative permeability presentation
Relative permeability presentation
 
Eor oilfield review
Eor oilfield reviewEor oilfield review
Eor oilfield review
 
Abu Dhabi Dec 2014 EOR workshop Julio Herbas
Abu Dhabi Dec 2014 EOR workshop Julio HerbasAbu Dhabi Dec 2014 EOR workshop Julio Herbas
Abu Dhabi Dec 2014 EOR workshop Julio Herbas
 
Late life water flooding in an oil reservoir
Late life water flooding in an oil reservoirLate life water flooding in an oil reservoir
Late life water flooding in an oil reservoir
 
Optimizing Well Spacing and Completions in the Bakken/Three Forks Plays
Optimizing Well Spacing and Completions in the Bakken/Three Forks PlaysOptimizing Well Spacing and Completions in the Bakken/Three Forks Plays
Optimizing Well Spacing and Completions in the Bakken/Three Forks Plays
 
Boundary Tension & Wettability
Boundary Tension & WettabilityBoundary Tension & Wettability
Boundary Tension & Wettability
 

Similar to Flowchart

الدالات الأساسية-في-برنامج-الإكسل
الدالات الأساسية-في-برنامج-الإكسلالدالات الأساسية-في-برنامج-الإكسل
الدالات الأساسية-في-برنامج-الإكسلMahmoud Abd Elrahman
 
نمونه پروژه سایت پروژه تیوب
نمونه پروژه سایت پروژه تیوبنمونه پروژه سایت پروژه تیوب
نمونه پروژه سایت پروژه تیوبAlireza Alahdadi
 
AlgorithmFlowchartjavacupmibile1programmingazaduni.pdf
AlgorithmFlowchartjavacupmibile1programmingazaduni.pdfAlgorithmFlowchartjavacupmibile1programmingazaduni.pdf
AlgorithmFlowchartjavacupmibile1programmingazaduni.pdfzjadidfard
 
Jozve c#2 mohamady_zahedy
Jozve c#2 mohamady_zahedyJozve c#2 mohamady_zahedy
Jozve c#2 mohamady_zahedydanesh_fd
 
Pca تجزیه و تحلیل مولفه های اساسی
Pca تجزیه و تحلیل مولفه های اساسیPca تجزیه و تحلیل مولفه های اساسی
Pca تجزیه و تحلیل مولفه های اساسیAbolfazl Fatehi
 
نمونه سوال فصل 3
نمونه سوال فصل 3نمونه سوال فصل 3
نمونه سوال فصل 3pani ansari
 
Visual basicfasl1,2
Visual basicfasl1,2Visual basicfasl1,2
Visual basicfasl1,2computerka
 
Matlab present
Matlab presentMatlab present
Matlab presenthhpnoman
 
logical for engineering camputer lecturer note
logical for engineering camputer lecturer notelogical for engineering camputer lecturer note
logical for engineering camputer lecturer noteshervin shokri
 
سی پلاس پلاس به عنوان زبان دومی برای یادگیری شی گرایی
سی پلاس پلاس به عنوان زبان دومی  برای یادگیری شی گراییسی پلاس پلاس به عنوان زبان دومی  برای یادگیری شی گرایی
سی پلاس پلاس به عنوان زبان دومی برای یادگیری شی گراییmrm_196
 
ساخت ال ای دی رقصان
ساخت ال ای دی رقصانساخت ال ای دی رقصان
ساخت ال ای دی رقصانmohammadhosseinkaka
 
آموزش ساختمان داده ها - بخش اول
آموزش ساختمان داده ها - بخش اولآموزش ساختمان داده ها - بخش اول
آموزش ساختمان داده ها - بخش اولfaradars
 

Similar to Flowchart (20)

MIPS and QtSpim
MIPS and QtSpimMIPS and QtSpim
MIPS and QtSpim
 
الدالات الأساسية-في-برنامج-الإكسل
الدالات الأساسية-في-برنامج-الإكسلالدالات الأساسية-في-برنامج-الإكسل
الدالات الأساسية-في-برنامج-الإكسل
 
نمونه پروژه سایت پروژه تیوب
نمونه پروژه سایت پروژه تیوبنمونه پروژه سایت پروژه تیوب
نمونه پروژه سایت پروژه تیوب
 
AlgorithmFlowchartjavacupmibile1programmingazaduni.pdf
AlgorithmFlowchartjavacupmibile1programmingazaduni.pdfAlgorithmFlowchartjavacupmibile1programmingazaduni.pdf
AlgorithmFlowchartjavacupmibile1programmingazaduni.pdf
 
Quantom
QuantomQuantom
Quantom
 
Nn
NnNn
Nn
 
Jozve c#2 mohamady_zahedy
Jozve c#2 mohamady_zahedyJozve c#2 mohamady_zahedy
Jozve c#2 mohamady_zahedy
 
Learn orcad 9.2
Learn orcad 9.2Learn orcad 9.2
Learn orcad 9.2
 
Amjadi - Ebook 5 - Function - v1
Amjadi - Ebook 5 - Function - v1Amjadi - Ebook 5 - Function - v1
Amjadi - Ebook 5 - Function - v1
 
Pca تجزیه و تحلیل مولفه های اساسی
Pca تجزیه و تحلیل مولفه های اساسیPca تجزیه و تحلیل مولفه های اساسی
Pca تجزیه و تحلیل مولفه های اساسی
 
Id3
Id3Id3
Id3
 
math history
math history math history
math history
 
نمونه سوال فصل 3
نمونه سوال فصل 3نمونه سوال فصل 3
نمونه سوال فصل 3
 
Visual basicfasl1,2
Visual basicfasl1,2Visual basicfasl1,2
Visual basicfasl1,2
 
Matlab present
Matlab presentMatlab present
Matlab present
 
logical for engineering camputer lecturer note
logical for engineering camputer lecturer notelogical for engineering camputer lecturer note
logical for engineering camputer lecturer note
 
سی پلاس پلاس به عنوان زبان دومی برای یادگیری شی گرایی
سی پلاس پلاس به عنوان زبان دومی  برای یادگیری شی گراییسی پلاس پلاس به عنوان زبان دومی  برای یادگیری شی گرایی
سی پلاس پلاس به عنوان زبان دومی برای یادگیری شی گرایی
 
ساخت ال ای دی رقصان
ساخت ال ای دی رقصانساخت ال ای دی رقصان
ساخت ال ای دی رقصان
 
آموزش ساختمان داده ها - بخش اول
آموزش ساختمان داده ها - بخش اولآموزش ساختمان داده ها - بخش اول
آموزش ساختمان داده ها - بخش اول
 
C-1.pptx
C-1.pptxC-1.pptx
C-1.pptx
 

Flowchart

  • 2. ‫الگوریتم‬ ‫تعریف‬‫الگوریتم‬ ‫تعریف‬ ‫با‬ ‫را‬ ‫کاری‬ ‫انجام‬ ‫مراحل‬ ‫که‬ ‫دستورالعملی‬ ‫هر‬‫با‬ ‫را‬ ‫کاری‬ ‫انجام‬ ‫مراحل‬ ‫که‬ ‫دستورالعملی‬ ‫هر‬ ‫نماید‬ ‫بیان‬ ‫کافی‬ ‫جزئیات‬ ‫با‬ ‫و‬ ‫دقیق‬ ‫زبانی‬‫نماید‬ ‫بیان‬ ‫کافی‬ ‫جزئیات‬ ‫با‬ ‫و‬ ‫دقیق‬ ‫زبانی‬ ‫عملیات‬ ‫خاتمه‬ ‫شرط‬ ‫و‬ ‫مراحل‬ ‫ترتیب‬ ‫بطوریکه‬‫عملیات‬ ‫خاتمه‬ ‫شرط‬ ‫و‬ ‫مراحل‬ ‫ترتیب‬ ‫بطوریکه‬ ‫الگوریتم‬ ‫را‬ ‫باشد‬ ‫شده‬ ‫مشخص‬ “ ‫کامل‬ ‫آن‬ ‫در‬‫الگوریتم‬ ‫را‬ ‫باشد‬ ‫شده‬ ‫مشخص‬ “ ‫کامل‬ ‫آن‬ ‫در‬ .‫گویند‬.‫گویند‬
  • 3. ‫الگوریتم‬ ‫تعریف‬ ‫ادامه‬‫الگوریتم‬ ‫تعریف‬ ‫ادامه‬ ‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫دقیق‬ ‫زبان‬‫دقیق‬ ‫زبان‬‫همان‬ ‫به‬ “ ‫دقیقا‬ ‫الگوریتم‬ ‫که‬ ‫است‬ ‫آن‬ :‫همان‬ ‫به‬ “ ‫دقیقا‬ ‫الگوریتم‬ ‫که‬ ‫است‬ ‫آن‬ : .‫گردد‬ ‫اجرا‬ ‫است‬ ‫نویسنده‬ ‫نظر‬ ‫مورد‬ ‫صورتیکه‬.‫گردد‬ ‫اجرا‬ ‫است‬ ‫نویسنده‬ ‫نظر‬ ‫مورد‬ ‫صورتیکه‬ ‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫کافی‬ ‫جزئیات‬‫کافی‬ ‫جزئیات‬‫الگوریتم‬ ‫اجرای‬ ‫طول‬ ‫در‬ ‫که‬ ‫است‬ ‫آن‬ ،‫الگوریتم‬ ‫اجرای‬ ‫طول‬ ‫در‬ ‫که‬ ‫است‬ ‫آن‬ ، ‫هدف‬ ‫و‬ ‫مسیر‬ ‫از‬ ‫انحراف‬ ‫باعث‬ ‫و‬ ‫نیامده‬ ‫پیش‬ ‫ناشناخته‬ ‫عملیات‬‫هدف‬ ‫و‬ ‫مسیر‬ ‫از‬ ‫انحراف‬ ‫باعث‬ ‫و‬ ‫نیامده‬ ‫پیش‬ ‫ناشناخته‬ ‫عملیات‬ .‫نگردد‬ ‫اصلی‬.‫نگردد‬ ‫اصلی‬ ‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫مراحل‬ ‫ترتیب‬‫مراحل‬ ‫ترتیب‬‫قدم‬ ‫الگوریتم‬ ‫اجرای‬ ‫مراحل‬ ‫که‬ ‫است‬ ‫آن‬ ،‫قدم‬ ‫الگوریتم‬ ‫اجرای‬ ‫مراحل‬ ‫که‬ ‫است‬ ‫آن‬ ، .‫باشد‬ ‫شده‬ ‫مشخص‬ ‫خر‬ ‫تأ‬ ‫و‬ ‫تقدم‬ ‫رعایت‬ ‫با‬ ‫و‬ ‫قدم‬ ‫به‬.‫باشد‬ ‫شده‬ ‫مشخص‬ ‫خر‬ ‫تأ‬ ‫و‬ ‫تقدم‬ ‫رعایت‬ ‫با‬ ‫و‬ ‫قدم‬ ‫به‬ ‫از‬ ‫منظور‬‫از‬ ‫منظور‬‫خاتمه‬ ‫شرط‬‫خاتمه‬ ‫شرط‬‫بهر‬ ‫و‬ ‫باشد‬ ‫می‬ ‫الگوریتم‬ ‫بودن‬ ‫پذیر‬ ‫پایان‬ ،‫بهر‬ ‫و‬ ‫باشد‬ ‫می‬ ‫الگوریتم‬ ‫بودن‬ ‫پذیر‬ ‫پایان‬ ، ‫داده‬ ‫شرایط‬ ‫یا‬ ‫شرایط‬ ‫تحت‬ ‫و‬ ‫دلخواه‬ ‫زمانی‬ ‫در‬ ‫باید‬ ‫الگوریتم‬ ‫حال‬‫داده‬ ‫شرایط‬ ‫یا‬ ‫شرایط‬ ‫تحت‬ ‫و‬ ‫دلخواه‬ ‫زمانی‬ ‫در‬ ‫باید‬ ‫الگوریتم‬ ‫حال‬ .‫پذیرد‬ ‫خاتمه‬ ‫شده‬.‫پذیرد‬ ‫خاتمه‬ ‫شده‬
  • 4. ‫الگوریتم‬ ‫تهیه‬ ‫مراحل‬‫الگوریتم‬ ‫تهیه‬ ‫مراحل‬ :‫شوند‬ ‫اجرا‬ ‫خاصی‬ ‫مراحل‬ ‫باید‬ ‫کارآمد‬ ‫و‬ ‫خوب‬ ‫الگوریتم‬ ‫یک‬ ‫تهیه‬ ‫برای‬:‫شوند‬ ‫اجرا‬ ‫خاصی‬ ‫مراحل‬ ‫باید‬ ‫کارآمد‬ ‫و‬ ‫خوب‬ ‫الگوریتم‬ ‫یک‬ ‫تهیه‬ ‫برای‬ 11‫تحلیل‬ ‫و‬ ‫تجزیه‬ ‫را‬ ‫مسئله‬ ‫باید‬ :‫مسئله‬ ‫دقیق‬ ‫تعریف‬ -‫تحلیل‬ ‫و‬ ‫تجزیه‬ ‫را‬ ‫مسئله‬ ‫باید‬ :‫مسئله‬ ‫دقیق‬ ‫تعریف‬ - ‫نداشته‬ ‫وجود‬ ‫آن‬ ‫فهم‬ ‫در‬ ‫ابهامی‬ ‫کوچکترین‬ ‫تا‬ ‫کرده‬‫نداشته‬ ‫وجود‬ ‫آن‬ ‫فهم‬ ‫در‬ ‫ابهامی‬ ‫کوچکترین‬ ‫تا‬ ‫کرده‬ .‫باشد‬.‫باشد‬ 22‫نیاز‬ ‫مورد‬ (‫اصلی)متغییرهای‬ ‫عوامل‬ ‫تعیین‬ -‫نیاز‬ ‫مورد‬ (‫اصلی)متغییرهای‬ ‫عوامل‬ ‫تعیین‬ - 33‫و‬ ‫ها‬ ‫)داده‬ : ‫مسئله‬ ‫خروجی‬ ‫و‬ ‫ورودی‬ ‫تعیین‬ -‫و‬ ‫ها‬ ‫)داده‬ : ‫مسئله‬ ‫خروجی‬ ‫و‬ ‫ورودی‬ ‫تعیین‬ - (‫اطلعات‬(‫اطلعات‬ 44‫مسئله‬ ‫مختلف‬ ‫های‬ ‫حل‬ ‫راه‬ ‫بررسی‬ -‫مسئله‬ ‫مختلف‬ ‫های‬ ‫حل‬ ‫راه‬ ‫بررسی‬ - 55‫مناسب‬ ‫حل‬ ‫راه‬ ‫یک‬ ‫انتخاب‬ -‫مناسب‬ ‫حل‬ ‫راه‬ ‫یک‬ ‫انتخاب‬ - 66‫زدایی‬ ‫اشکال‬ -‫زدایی‬ ‫اشکال‬ -
  • 5. ‫فلوچارت‬‫فلوچارت‬ ‫الگوریتم‬ ‫تصویری‬ ‫بیان‬‫الگوریتم‬ ‫تصویری‬ ‫بیان‬ ‫هندسی‬ ‫اشکال‬ ‫با‬ ‫کار‬ ‫انجام‬ ‫مراحل‬‫هندسی‬ ‫اشکال‬ ‫با‬ ‫کار‬ ‫انجام‬ ‫مراحل‬ .‫شوند‬ ‫می‬ ‫داده‬ ‫نشان‬.‫شوند‬ ‫می‬ ‫داده‬ ‫نشان‬ ‫به‬ ‫خطوط‬ ‫توسط‬ ‫کار‬ ‫انجام‬ ‫مراحل‬‫به‬ ‫خطوط‬ ‫توسط‬ ‫کار‬ ‫انجام‬ ‫مراحل‬ .‫گردند‬ ‫می‬ ‫وصل‬ ‫هم‬.‫گردند‬ ‫می‬ ‫وصل‬ ‫هم‬
  • 6. ‫مثال‬‫مثال‬ ‫شرح‬‫شرح‬ ‫شکل‬‫شکل‬ ‫خاتمه‬ ‫و‬ ‫شروع‬ ‫دادن‬ ‫نشان‬ ‫برای‬‫خاتمه‬ ‫و‬ ‫شروع‬ ‫دادن‬ ‫نشان‬ ‫برای‬ ‫عملیات‬‫عملیات‬ ‫مقداردهی‬ ‫و‬ ‫محاسبات‬‫مقداردهی‬ ‫و‬ ‫محاسبات‬ ‫اطلعات‬ ‫ورود‬‫اطلعات‬ ‫ورود‬ ‫نمایش‬ ‫صفحه‬ ‫روی‬ ‫بر‬ ‫خروج‬‫نمایش‬ ‫صفحه‬ ‫روی‬ ‫بر‬ ‫خروج‬ ‫روی‬ ‫بر‬ ‫اطلعات‬ ‫خروج‬‫روی‬ ‫بر‬ ‫اطلعات‬ ‫خروج‬ ‫کاغذ‬‫کاغذ‬ ‫و‬ ‫گیری‬ ‫تصمیم‬ ،‫سئوال‬‫و‬ ‫گیری‬ ‫تصمیم‬ ،‫سئوال‬ ‫دلخواه‬ ‫های‬ ‫شرط‬‫دلخواه‬ ‫های‬ ‫شرط‬ start stop c←a+b d← i A,B A,B,”100” ? ‫ورودی‬ ‫خروجی‬ ‫خروجی‬ ‫خروجی‬
  • 7. ‫مثال‬‫مثال‬11::‫را‬ ‫آنها‬ ‫حاصلضرب‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫را‬ ‫آنها‬ ‫حاصلضرب‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬ .‫دهد‬ ‫نمایش‬.‫دهد‬ ‫نمایش‬ ‫شروع‬ A,B z←A*B z ‫پایان‬
  • 8. ‫مثال‬‫مثال‬22::‫محیط‬ ‫و‬ ‫مساحت‬ ،‫خوانده‬ ‫را‬ ‫دایره‬ ‫یک‬ ‫شعاع‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫محیط‬ ‫و‬ ‫مساحت‬ ،‫خوانده‬ ‫را‬ ‫دایره‬ ‫یک‬ ‫شعاع‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬ .‫دهد‬ ‫نمایش‬ ‫آنرا‬.‫دهد‬ ‫نمایش‬ ‫آنرا‬ ‫شروع‬ ‫پایان‬ R A←3.14*R² P←2*R*3.14 A,P
  • 9. ‫مثال‬‫مثال‬33::‫زیر‬ ‫بصورت‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫زیر‬ ‫بصورت‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬ :‫نماید‬ ‫گیری‬ ‫تصمیم‬:‫نماید‬ ‫گیری‬ ‫تصمیم‬ ‫دیگر‬ ‫عدد‬ ‫دو‬ ‫جمع‬ ‫حاصل‬ ‫بود‬ ‫صفر‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -‫دیگر‬ ‫عدد‬ ‫دو‬ ‫جمع‬ ‫حاصل‬ ‫بود‬ ‫صفر‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ - ‫دیگر‬ ‫عدد‬ ‫دو‬ ‫تفاضل‬ ‫بود‬ ‫منفی‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -‫دیگر‬ ‫عدد‬ ‫دو‬ ‫تفاضل‬ ‫بود‬ ‫منفی‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ - ‫دیگر‬ ‫عدد‬ ‫دو‬ ‫ضرب‬ ‫حاصل‬ ‫بود‬ ‫مثبت‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ -‫دیگر‬ ‫عدد‬ ‫دو‬ ‫ضرب‬ ‫حاصل‬ ‫بود‬ ‫مثبت‬ ‫سوم‬ ‫عدد‬ ‫اگر‬ - .‫دهد‬ ‫نمایش‬ ‫را‬.‫دهد‬ ‫نمایش‬ ‫را‬
  • 11. ‫مثال‬‫مثال‬44::‫مقادیر‬ ‫سپس‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫فلوچارت‬‫مقادیر‬ ‫سپس‬ ‫خوانده‬ ‫را‬ ‫عدد‬ ‫دو‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫فلوچارت‬ .‫نماید‬ ‫جابجا‬ ‫هم‬ ‫با‬ ‫را‬ ‫دو‬ ‫آن‬.‫نماید‬ ‫جابجا‬ ‫هم‬ ‫با‬ ‫را‬ ‫دو‬ ‫آن‬ : ‫اول‬ ‫روش‬: ‫اول‬ ‫روش‬‫متغیر‬ ‫از‬ ‫استفاده‬‫متغیر‬ ‫از‬ ‫استفاده‬ ‫کمکی‬‫کمکی‬ :‫دوم‬ ‫روش‬:‫دوم‬ ‫روش‬‫عملیات‬ ‫از‬ ‫استفاده‬‫عملیات‬ ‫از‬ ‫استفاده‬ ‫ریاضی‬‫ریاضی‬ ‫شروع‬ A,B A,B T←A A←B B←T A,B ‫پایان‬ ‫شروع‬ A,B A,B َA←A+B B←A-B A←A-B A,B ‫پایان‬
  • 12. ‫مثال‬‫مثال‬55::‫که‬ ‫کند‬ ‫تعیین‬ ،‫خوانده‬ ‫را‬ ‫مثلث‬ ‫یک‬ ‫ضلع‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫که‬ ‫کند‬ ‫تعیین‬ ،‫خوانده‬ ‫را‬ ‫مثلث‬ ‫یک‬ ‫ضلع‬ ‫سه‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬ ‫خیر؟‬ ‫یا‬ ‫است‬ ‫الزاویه‬ ‫قائم‬ ‫مثلث‬ ‫آیا‬‫خیر؟‬ ‫یا‬ ‫است‬ ‫الزاویه‬ ‫قائم‬ ‫مثلث‬ ‫آیا‬ .‫کند‬ ‫صدق‬ ‫زیر‬ ‫عبارات‬ ‫از‬ ‫یکی‬ ‫در‬ ‫باید‬ ‫آن‬ ‫اضلع‬ ‫اندازه‬ ‫مثلث‬ ‫بودن‬ ‫الزاویه‬ ‫قائم‬ ‫برای‬ A²=B²+C²‫یا‬B²=A²+C²‫یا‬C²=A²+B² ‫شروع‬ A,B,C A²=B²+C² Y N B²=A²+C² Y N C²=B²+A² Y N “NO” “YES” ‫پایان‬
  • 13. ‫مثال‬‫مثال‬66::‫دوم‬ ‫درجه‬ ‫معادله‬ ‫یک‬ ‫های‬ ‫ریشه‬‫دوم‬ ‫درجه‬ ‫معادله‬ ‫یک‬ ‫های‬ ‫ریشه‬ AX²+BX+C=0AX²+BX+C=0 D=B²-4ACD=B²-4AC ‫اگر‬‫اگر‬D<0D<0‫ندارد‬ ‫ریشه‬ ‫معادله‬ ،‫ندارد‬ ‫ریشه‬ ‫معادله‬ ، ‫اگر‬‫اگر‬D=0D=0‫عبارت‬ ‫حاصل‬ ،‫عبارت‬ ‫حاصل‬ ،––B/2AB/2A‫در‬ ‫را‬‫در‬ ‫را‬X1X1‫و‬‫و‬X2X2‫بده‬ ‫قرار‬‫بده‬ ‫قرار‬ ‫عبارت‬ ‫حاصل‬‫عبارت‬ ‫حاصل‬‫در‬ ‫را‬‫در‬ ‫را‬X1X1‫بده‬ ‫قرار‬‫بده‬ ‫قرار‬ ‫در‬ ‫را‬ ‫عبارت‬ ‫حاصل‬‫در‬ ‫را‬ ‫عبارت‬ ‫حاصل‬X2X2‫بده‬ ‫قرار‬‫بده‬ ‫قرار‬ ‫مقادیر‬‫مقادیر‬X1X1‫و‬‫و‬X2X2‫بده‬ ‫نمایش‬ ‫را‬‫بده‬ ‫نمایش‬ ‫را‬ )2/()( ADB +− ADB 2/)( −−
  • 15. ‫حلقوی‬ ‫های‬ ‫الگوریتم‬‫حلقوی‬ ‫های‬ ‫الگوریتم‬ ‫اول‬ ‫تعریف‬‫اول‬ ‫تعریف‬:‫اجرای‬ ‫بار‬ ‫چندین‬ ‫که‬ ‫الگوریتم‬ ‫از‬ ‫مراحلی‬ ‫حلقه‬ ‫یک‬ ‫تشکیل‬ ‫گردد‬ ‫می‬ ‫تکرار‬ ‫آنها‬)LOOP(.‫دهند‬ ‫می‬ ‫را‬ ،‫گردد‬ ‫می‬ ‫استفاده‬ ‫کمکی‬ ‫متغیر‬ ‫یک‬ ‫از‬ ‫حلقه‬ ‫یک‬ ‫ساختن‬ ‫برای‬،‫گردد‬ ‫می‬ ‫استفاده‬ ‫کمکی‬ ‫متغیر‬ ‫یک‬ ‫از‬ ‫حلقه‬ ‫یک‬ ‫ساختن‬ ‫برای‬ ‫می‬ ‫آماده‬ ‫اولیه‬ ‫مقدار‬ ‫یک‬ ‫با‬ ‫حلقه‬ ‫شروع‬ ‫از‬ ‫قبل‬ ‫را‬ ‫متغیر‬ ‫این‬‫می‬ ‫آماده‬ ‫اولیه‬ ‫مقدار‬ ‫یک‬ ‫با‬ ‫حلقه‬ ‫شروع‬ ‫از‬ ‫قبل‬ ‫را‬ ‫متغیر‬ ‫این‬ ‫به‬ ‫بازگشت‬ ‫از‬ ‫قبل‬ ‫و‬ ‫حلقه‬ ‫انتهای‬ ‫در‬ “ ‫معمول‬ ‫سپس‬ ‫و‬ ‫سازیم‬‫به‬ ‫بازگشت‬ ‫از‬ ‫قبل‬ ‫و‬ ‫حلقه‬ ‫انتهای‬ ‫در‬ “ ‫معمول‬ ‫سپس‬ ‫و‬ ‫سازیم‬ ‫شرائط‬ ‫یک‬ ‫تحت‬ ‫و‬ ‫کرده‬ ‫اضافه‬ ‫آن‬ ‫به‬ ‫را‬ ‫مقداری‬ ‫حلقه‬ ‫ابتدای‬‫شرائط‬ ‫یک‬ ‫تحت‬ ‫و‬ ‫کرده‬ ‫اضافه‬ ‫آن‬ ‫به‬ ‫را‬ ‫مقداری‬ ‫حلقه‬ ‫ابتدای‬ .‫نماییم‬ ‫می‬ ‫پرش‬ ‫قبل‬ ‫مراحل‬ ‫به‬ ‫خاص‬.‫نماییم‬ ‫می‬ ‫پرش‬ ‫قبل‬ ‫مراحل‬ ‫به‬ ‫خاص‬ :‫دوم‬ ‫تعریف‬:‫دوم‬ ‫تعریف‬‫متغیر‬ ‫به‬ ‫حلقه‬ ‫شروع‬ ‫از‬ ‫قبل‬ ‫که‬ ‫مقداری‬ .‫گویند‬ ‫اولیه‬ ‫شرط‬ ‫یا‬ ‫اولیه‬ ‫مقدار‬ ‫را‬ ‫شود‬ ‫می‬ ‫داده‬ ‫حلقه‬ :‫سوم‬ ‫تعریف‬:‫سوم‬ ‫تعریف‬‫مراحل‬ ‫اجرای‬ ‫یکبار‬ ‫از‬ ‫پس‬ ‫که‬ ‫مقداری‬ ‫اضافه‬ ‫مقدار‬ ‫را‬ ‫شود‬ ‫می‬ ‫اضافه‬ ‫حلقه‬ ‫متغیر‬ ‫به‬ ‫حلقه‬ .‫نامند‬ ‫می‬ ‫شونده‬
  • 16. ‫مثال‬‫مثال‬77::‫را‬ ‫صفر‬ ‫از‬ ‫بزرگتر‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬‫را‬ ‫صفر‬ ‫از‬ ‫بزرگتر‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫کنید‬ ‫رسم‬ ‫فلوچارتی‬ ‫و‬ ‫مجموع‬ ‫خوانده‬ ‫را‬ ‫دیگری‬ ‫اعداد‬ ,‫عدد‬ ‫آن‬ ‫تعداد‬ ‫به‬ ‫سپس‬ ‫خوانده‬‫و‬ ‫مجموع‬ ‫خوانده‬ ‫را‬ ‫دیگری‬ ‫اعداد‬ ,‫عدد‬ ‫آن‬ ‫تعداد‬ ‫به‬ ‫سپس‬ ‫خوانده‬ .‫دهد‬ ‫نمایش‬ ‫را‬ ‫آنها‬ ‫میانگین‬.‫دهد‬ ‫نمایش‬ ‫را‬ ‫آنها‬ ‫میانگین‬ N‫شده‬ ‫خوانده‬ ‫عدد‬ C‫شمارنده‬ S‫مجموع‬ A‫اعداد‬ NSS /, ASS +← ‫شروع‬ N C ← 0 S ← 0 C=N ‫پایان‬ Y N A 1+←CC
  • 17. ‫مثال‬‫مثال‬88::‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬1010‫و‬ ‫گرفته‬ ‫را‬ ‫عدد‬‫و‬ ‫گرفته‬ ‫را‬ ‫عدد‬ .‫است‬ ‫فرد‬ ‫کدام‬ ‫و‬ ‫زوج‬ ‫کدام‬ ‫کند‬ ‫تعیین‬.‫است‬ ‫فرد‬ ‫کدام‬ ‫و‬ ‫زوج‬ ‫کدام‬ ‫کند‬ ‫تعیین‬‫شروع‬ C ← 0 p k ← p-INT(p/2)*2 K=0 y n P, “odd” C ← C+1 C< 10 n y ‫پایان‬ P, “even”
  • 18. ‫مثال‬‫مثال‬99::‫را‬ ‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫را‬ ‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬ .‫دهد‬ ‫نشان‬ ‫را‬ ‫عدد‬ ‫ارقام‬ ‫تعداد‬ ‫و‬ ‫خوانده‬.‫دهد‬ ‫نشان‬ ‫را‬ ‫عدد‬ ‫ارقام‬ ‫تعداد‬ ‫و‬ ‫خوانده‬ ‫شروع‬ N S ←0 (‫ارقام‬ ‫)تعداد‬ )10/(NINTN ← S ← S+1 N>0 Y N S ‫پایان‬
  • 19. ‫مثال‬‫مثال‬1010::‫طبیعی‬ ‫عدد‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫طبیعی‬ ‫عدد‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬N>1N>1‫مقسوم‬ ‫و‬ ‫خوانده‬ ‫را‬‫مقسوم‬ ‫و‬ ‫خوانده‬ ‫را‬ ‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫های‬ ‫علیه‬‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫های‬ ‫علیه‬‫شروع‬ N M ← 1 MMNINTNK ∗−← )/( K=0 Y N M M ← M+1 M<=N Y N ‫پایان‬
  • 20. ‫مثال‬‫مثال‬1111::‫بودن‬ ‫اول‬ ، ‫خوانده‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫بودن‬ ‫اول‬ ، ‫خوانده‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬ ‫نمایید‬ ‫تعیین‬ ‫را‬ ‫آن‬‫نمایید‬ ‫تعیین‬ ‫را‬ ‫آن‬ ‫شروع‬ N N=2 N P ← 2 PPNINTNK ∗−← )/( K=0 N,”NO PRIME”Y N P ← P+1 P<=N/2 Y N N,”IS PRIME” ‫پایان‬ Y
  • 21. ‫مثال‬‫مثال‬1212::‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫مثبت‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬ .‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫فاکتوریل‬ ‫خوانده‬ ‫را‬.‫دهد‬ ‫نمایش‬ ‫را‬ ‫آن‬ ‫فاکتوریل‬ ‫خوانده‬ ‫را‬ ‫اعداد‬ ‫ضرب‬ ‫حاصل‬ ‫یعنی‬ ‫عدد‬ ‫یک‬ ‫فاکتوریل‬‫اعداد‬ ‫ضرب‬ ‫حاصل‬ ‫یعنی‬ ‫عدد‬ ‫یک‬ ‫فاکتوریل‬11‫آن‬ ‫تا‬‫آن‬ ‫تا‬ ‫عدد‬‫عدد‬ .‫باشد‬ ‫می‬ ‫یک‬ ‫برابر‬ ‫صفر‬ ‫عدد‬ ‫فاکتوریل‬.‫باشد‬ ‫می‬ ‫یک‬ ‫برابر‬ ‫صفر‬ ‫عدد‬ ‫فاکتوریل‬
  • 23. ‫مثال‬‫مثال‬1313::‫عدد‬ ‫که‬ ‫بنویسید‬ ‫ای‬ ‫برنامه‬‫عدد‬ ‫که‬ ‫بنویسید‬ ‫ای‬ ‫برنامه‬NN‫و‬ ،‫خوانده‬ ‫را‬‫و‬ ،‫خوانده‬ ‫را‬ .‫دهد‬ ‫نشان‬ ‫را‬ ‫آن‬ ‫ارقام‬ ‫مجموع‬.‫دهد‬ ‫نشان‬ ‫را‬ ‫آن‬ ‫ارقام‬ ‫مجموع‬ :‫مثال‬:‫مثال‬33++22++11123123 ⇒ ‫شروع‬ N SUM ← 0 10)10/( ∗−← NINTNA SUM ← SUM+A )10/(NINTN ← N>0 N Y SUM ‫پایان‬
  • 24. ‫مثال‬‫مثال‬1414::‫که‬ ‫کند‬ ‫تعیین‬ ‫گرفته‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬‫که‬ ‫کند‬ ‫تعیین‬ ‫گرفته‬ ‫را‬ ‫عدد‬ ‫یک‬ ‫که‬ ‫بنویسید‬ ‫را‬ ‫ای‬ ‫برنامه‬ ‫الگوریتم‬ ‫خیر؟‬ ‫یا‬ ‫است‬ ‫کامل‬ ‫آیا‬‫خیر؟‬ ‫یا‬ ‫است‬ ‫کامل‬ ‫آیا‬ ‫های‬ ‫علیه‬ ‫مقسوم‬ ‫مجموع‬ ‫با‬ ‫که‬ ‫است‬ ‫کامل‬ ‫عددی‬‫های‬ ‫علیه‬ ‫مقسوم‬ ‫مجموع‬ ‫با‬ ‫که‬ ‫است‬ ‫کامل‬ ‫عددی‬ .‫باهدنرامشد‬ ‫برابر‬ ‫خودش‬ ‫از‬ ‫کوچکتر‬.‫باهدنرامشد‬ ‫برابر‬ ‫خودش‬ ‫از‬ ‫کوچکتر‬ 3216 ++⇒
  • 25. ‫شروع‬ N A ← 1 S ← 0 AANINTNP ∗−← )/( P=0 Y N S ← S+A A ← A+1 A<=N/2 Y N S=N Y N N,” IS COMPLEMENT” N,” IS NOT COMPLEMENT” ‫پایان‬