מחשביםתכנות

סוגים ודוגמאות בסיסיים של אלגוריתמים מחזוריים

סעיף נועד לתת הבנה בסיסית של מה של סבב, אשר נפוצות לכל רמת כשרת שפת מתכנת תכנות.

הרעיון של האלגוריתם

אלגוריתם הוא רצף של פעולות כדי להשיג פתרון לכל מחשב או בעיה אחרת מספר סופי של צעדים. פעולות (הוראות) ליישום האלגוריתם יכול להיות מוצא להורג בזה אחר זה (ברצף) בו זמנית (במקביל) או בכל סדר, באמצעות לולאות ותנאים של המעבר. אלגוריתמים משמשים לא רק בתכנות, אלא גם בתחומים אחרים, למשל בניהול תהליכי ייצור עסק.

סבב

האלגוריתם נקרא מחזורי אם יש פעולות או סדרת פעולות שיש לבצע יותר מפעם אחת. פעולות חוזרות גוף הלולאה אלגוריתמית. בנוסף, בכל מחזור יש מצב לבצע קצות אלגוריתם מחזוריים.

סוגי אלגוריתמים מחזוריים

כל סבב משלב תנאי לולאה, כלומר. א הביטוי הלוגי שמגדיר את השק יבוצע על ידי גוף הלולאה שוב, או מחזור יושלם. על פי שיטה של טיפול כל האלגוריתמים המחזוריים נחלקים לשלוש קבוצות.

מחזור עם תנאי מוקדם

באלגוריתמים כגון מצב הרחבה מחזורית ייבדק לפני העיבוד של גוף הלולאה, כלומר. E. יש צורך ההחזרה של מחזור העיבוד.

קח מספרי הדפסה -5 ל 0 כדוגמא כתנאי אלגוריתמים מחזוריים:

אלמנטים של האלגוריתם:

  1. אנו קובעים את הערך הראשוני של j משתנה בסיס, שווה -5.
  2. אנחנו בודקים את מצבו של הלולאה. התנאי הוא חיובי, ואת הגוף מבוצע בפעם הראשונה.
  3. בהמשך הוסיף ליחידת j משתנה שוב לבדוק את מצבו של הלולאה.
  4. המחזור ממשיך להתבצע עד שערכת j היא פחות או שווה לאפס, אחרת ליציאה ממעגל FALSE הסניף

מחזור עם postcondition

מבחן מותנה מתבצע לאחר מחזור הטיפול הראשון, הגוף השולט על הפלט ממנו.

תן לנו לחשב את הסכום מ 1 למספר n כדוגמא אלגוריתמים מחזוריים אשר להשתמש postcondition:

  1. אנו מציגים n מספר סופי של סכום חישוב ולהגדיר אפס ערך ראשוני של סכום הכולל של נגד סכום מחזור i.
  2. הלולאה מבוצעת לפני תנאי המבחן הראשונים.
  3. בדוק את מצבו של המחזור, r. E. ערך הנגד i הוא קטן או שווה ל- n.
  4. אם במבחן התוצאה הוא חיובי, שנעמיק שוב, או לסיים את המחזור ומוציא את הסכום בתצוגה או ההדפסה.

מחזור ללא תנאי

בדרך כלל משתמשים באלגוריתמים, כאשר המספר הרצוי של חזרות לולאה ידוע מראש, והוא משמש לעתים קרובות כאשר עובדים עם מערכים.

אלגוריתם זה כולל שלושה מרכיבים חובה:

  1. שווי ההתחלה, אשר נקרא פרמטר מחזור, t. המשתנה ק זה שונה לאחר כל מחזור ביצוע, וקובע מועד השלמתו.
  2. בשווי שבו הלולאה מסתיימת.
  3. מחזור שלב.

בכל נקודה, התוכנית בודקת אם הערך הראשוני עולה לגמר. ואם כן, אז המחזור יושלם. אחרת, הערך מתווסף גודל הצעד החל ואת חזרות המחזור. שים לב במיוחד הוא שכל לולאה מותנית יכולה להיות מוחלפת עם מראש או postcondition מותנים.

בשנת ציור את הסבב יש צורך לדבוק בשני תנאי החובה. הראשונה היא לסיים את המחזור, יש צורך כי התוכן של פוסט מושפע הגוף או תנאי מוקדם, אחרת אנחנו יכולים סוף סוף לקבל ללולאה אינסופית. אבל עבור כמה מחזורים כאלה המשמשים יישומי תוכנה. כדוגמא של אלגוריתמים מחזוריים כי יפעלו ללא הגבלה, אתה יכול לגרום למערכת הפעלת Windows, אשר משתמשת בסקר לולאה אינסופי בעכבר כדי לקבוע את הפעולות של המשתמש. שנית, משתנה המועברים למחזור אמור לספק לפחות אחד הוצאתו להורג.

החישוב של העצרת

כדי לבסס את הקריאה תיתן דוגמא אלגוריתמים מחזוריים לחשב את העצרת של מספר שלם. דוגמא זו היא מחזור עם התנאי המוקדם אבל יכולה להיות מיושמת על ידי כל סוג של סבב.

  • נתוני Baseline: נתונים - שלם, אשר נקבע על העצרת.
  • משתני מערכת: פרמטר מחזור i, אשר לוקח ערכים מ 1 לשלב נתונים ג 1.
  • תוצאה: משתנה עצרת - נתוני עצרת, המהווה את המוצר של מספרים שלמים מ 1 לנתונים.

קחו למשל את הצעד אלגוריתם אחר צעד:

  1. האלגוריתם קבל מספר הנתונים, אשר ברצונך לחשב את העצרת.
  2. משתנה עצרת, אשר ישמור את התוצאה הסופית, מוגדר אחדות.
  3. אנו מארגנים פרמטר המחזור i וערך תחילת 1. הערך הסופי יהיו נתונים מהמספר המקוריים. לאחר הערך של i המונה גדול, הלולאה מסתיימת.
  4. חישוב Loop מבוצע עצרת - ערכים נוכחיים עצרת מוכפלים ואת הדלפק i.
  5. על ידי הוספה אחד לערך הנגד, לולאת צק המצב, ואם התוצאה היא חיובית, שסיים זה.
  6. לאחר השלמת מחזור, בפריסה החדשה של ערכם של נתונים העצרת! זה נשאר עצרת ומוצג או מודפס.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 iw.unansea.com. Theme powered by WordPress.