ערכתי לאחרונה בתאריך 04.12.10 בשעה 13:11 בברכה, חומוס
גדולים שנותנים לך.
תציין בדיוק מה אתה לא מביןבכל אופן, זה הרעיון (שלי לפחות)
אתה עובד עם 3 מחרוזות
currentName - תפקידה לקלוט שם חדש כל פעם
shortestName - לשמור את השם הקצר
longestName - לשמור את השם הארוך
עכשיו, נניח והמשתמש רוצה להכניס 5 אחים, אז מה שקורה זה דבר כזה:
אתה קולט את 2 השמות הראשונים למחרוזות shortestName וlongestName
ועושה השוואה - במידה ובlongestName יש שם יותר ארוך מאשר בshortestName
אז אתה משאיר את המצב ככה, במידה ולא, אתה מחליף בין המחרוזות (תוכל להשתמש ב currentName כמחרוזת עזר על מנת לבצע את ההחלפה).
התוצאה היא שכעת יש לך 2 מחרוזות מאותחלות בשם הכי קצר והכי ארוך (עד כה...)
כעת, כשנשארו לך עוד 3 שמות לקלוט, אתה עושה לולאת FOR/WHILE עבור 3 איטרציות (סיבובים בלולאה), כאשר בכל איטרציה אתה קולט את השם החדש ל
currentName ועושה השוואות עם shortestName וlongestName
במידה והוא קצר יותר מshortestName, אז אתה מכניס אותו לshortestName
במידה והוא ארוך יותר מוlongestName, אז אתה מכניס אותו לוlongestName
כשהלולאה תסתיים יהיה לך את השם הארוך ביותר בלוlongestName
ואת הקצר ביותר בלshortestName
כמובן יש עוד דרכים לפתור את התרגיל הזה, הוא נורא פשוט
מקווה שלא סיבכתי אותך יותר מדי
אם אתה לא מבין משהו תגיד בדיוק מה אתה לא מבין