NiTRo37 פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 יש לי בעיה קטנה....נו טוב , גדולה , במדעי המחשב - לולאות. זה גרם לי להכשל במבחן הקודם , בגלל שבכלל לא הבנתי את הנושא , או שהמורה שלי לא מלמדת טוב. קיצר , רציתי לדעת אם מישהו יוכל להסביר לי את העניין בקצרה , או אפילו להביא מדריכים והסברים. תודה רבה , ויום טוב קישור לתוכן שתף באתרים אחרים More sharing options...
zurkin1232 פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 לולאה זה קטע קוד שחוזר על עצמו מספר פעמים, עד שמתקיים תנאי עצירה כלשהו.אם אתה צריך משהו ספציפי יותר, נא לפרט. קישור לתוכן שתף באתרים אחרים More sharing options...
NiTRo37 פורסם 2006 בפברואר 7 מחבר Share פורסם 2006 בפברואר 7 אני מתקשה לכתוב את הפקודות אחרי הFORוכל זה.....ואני גם לא יודע איפה ואם בכלל לשים סוגריים מסולסלות ( {} ) המורה שלי אמרה שכן..... קישור לתוכן שתף באתרים אחרים More sharing options...
magafaim פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 איך לכתוב את שורת הלולאה אתה יודע? קישור לתוכן שתף באתרים אחרים More sharing options...
zurkin1232 פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 לגבי הסוגריים - אם יש לך בתוך ה-FOR רק פקודה אחת, אתה לא חייב לשים אותן (מה שבא לך). אם יש יותר חייבים. אם אתה לא בטוח, פשוט תשים.לגבי התנאים ב-FOR, אז אפשר להגיד שלולאת FOR שקולה ללולאת WHILE באופן הבא:הקוד הזה:for (A; B; C){...}שקול לקוד הזה:A;while (B){...C;}ובאופן מילולי:דבר ראשון מתבצע A. זה סה"כ פקודת איתחול, אפילו לא חייבים להשתמש בה.אח"כ, כל עוד התנאי B מתקיים, מתבצעות הפקודות שתחת ה-FOR (בתוך הסוגריים), ואחריהן מתקיים הקוד C.C זה קוד שבדר"כ גורם לתנאי ב-B להשתנות.כלומר הלולאה מתבצעת כך:1. ביצוע A2. בדיקה האם B הוא אמת (ערכו שונה מ-0). אם כן - עבור ל-3, אם לא - עבור ל-6.3. ביצוע הקוד (...)4. ביצוע C5. עבור ל-2.6. סיוםדוגמא - לולאה שמדפיסה את כל המספרים בין 1 ל-10:int i;for (i=1; i<=10; ++i){ printf("%d", i);}מה קורה פה? i מקבל את הערך 1, ואז כל עוד הוא לא מגיע ל-10, הוא מודפס, ואז ערכו גדל ב-1.זהו פחות או יותר.מקווה שהובנתי. קישור לתוכן שתף באתרים אחרים More sharing options...
genia פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 רק הערה קטנה לגבי הקוד האחרון של מי שהגיב פה לפני:במקום I++ תשים ++I -מה שאתה עושה זה להגדיל את I לפני שהלולאה רצה נראה לי(אני לא בטוח שהוא יתחיל ב 2) ולןכ צריך לשים את ה ++ אחרי ה I קישור לתוכן שתף באתרים אחרים More sharing options...
zurkin1232 פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 לא, אין הבדל. קישור לתוכן שתף באתרים אחרים More sharing options...
big foot פורסם 2006 בפברואר 7 Share פורסם 2006 בפברואר 7 עוד הרחבה משתמשים בלולאות FOR כאשר יש מספר ידוע של פעמים שצריך לבצע פעולה מסוימתלדוגמה:הדפסת כל המספרים מ1 עד 10 ומשתמשים בלולאות WHILE כאשר לא יודעים כמה פעמים כלומר שיש תאי עצירהלדוגמה:בדיקת אם הכלט שהמשתמש הכניס נכון או במילים פשוטות יותר תקינית כלט קישור לתוכן שתף באתרים אחרים More sharing options...
The_Doom_Master פורסם 2006 בפברואר 8 Share פורסם 2006 בפברואר 8 יש אתר ללמידה בקשר לזה עם הסבר בעברית כדי לבדוקclang.eitan.ac.il קישור לתוכן שתף באתרים אחרים More sharing options...
NiTRo37 פורסם 2006 בפברואר 8 מחבר Share פורסם 2006 בפברואר 8 אתם לא מתארים עד כמה עזרתם לי , עכשיו הבנתי סוףסוף . תודה רבה! (צביקה אתה יכול להחליף את המורה שלי! ;D ) קישור לתוכן שתף באתרים אחרים More sharing options...
Ghosthunter פורסם 2006 בפברואר 8 Share פורסם 2006 בפברואר 8 בC זה לא כל כך משנה אם אתה לא מבצע מספר קבוע של פעולות.בעצם זה נותן כלי חזק יותר(מבחינתי כל שורה פחות מחזק את התוכנית).p=head(l);while(p!=end(l)){.....p=next(l, p);}או פשוט יותר:for(p=head(l);p!=end(l);p=next(l, p)){...}לא "מספר קבוע" של פעולות.אני אוהב יותר את הצורה השניה. קישור לתוכן שתף באתרים אחרים More sharing options...
שניצל פורסם 2006 בפברואר 8 Share פורסם 2006 בפברואר 8 רק הערה קטנה לגבי הקוד האחרון של מי שהגיב פה לפני:במקום I++ תשים ++I -מה שאתה עושה זה להגדיל את I לפני שהלולאה רצה נראה לי(אני לא בטוח שהוא יתחיל ב 2) ולןכ צריך לשים את ה ++ אחרי ה Iלא, אין הבדל.כן ולא.בעיקרון עדיף להשתמש ב-I++ על פני ++I (כלומר קודם להוסיף 1 ל-I, ואז להחזיר את הערך שלו).למה?כי במקרה הראשון, המעבד מגדיל את הערך של I ב-1, ואז מחזיר את הערך שלו וזהו.במקרה השני, המעבד שומר את הערך של I בצד, מוסיף לו 1, ואז מחזיר את הערך הישן שלו.וזה למעשה גורם להעתקה מיותרת של המספר.(מעשית לא, כי המעבד רואה שאתם לא משתמשים במספר, ולכן הוא לא באמת צריך לשמור אותו בצד. אבל יש מקרים שבהם המעבד לא יכול לעשות את זה, ולכן צריך לפתח הרגל נכון) קישור לתוכן שתף באתרים אחרים More sharing options...
Recommended Posts
ארכיון
דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.