דף 1 מתוך 1

[בעיה בתשובה?]מבחן 2009 מועד ב' שאלה 3 סעיף א'

נשלח: 17:15 20/01/2010
על ידי danny
להלן התשובה שסיפקתם לשאלה הנ"ל:

קוד: בחירת הכל

public Object next(){
if (!hasNext())
throw new NoSuchElementException();
String ans = "";
currentIndex = currentIndex + 1;
While ((currentIndex < str.length()) &&
(str.charAt(currentIndex) != ‘ ‘)) {
ans = ans + str.charAt(currentIndex);
currentIndex = currentIndex + 1;
}
return ans;
}
נראה שלפני לולאת ה-while נעשתה טעות כך שמדלגים על התו הראשון במחרוזת המקורית... לא?

Re: [בעיה בתשובה?]מבחן 2009 מועד ב' שאלה 3 סעיף א'

נשלח: 17:30 20/01/2010
על ידי rotgold
כן גם אני שמתי לב...
לדעתי פשוט צריך היה לאתחל את השדה currentIndex לערך 1- ולא 0....
כי הטעות הזו תקרה רק עבור המילה הראשונה במשפט... אח"כ אנחנו באמת נרצה לדלג על תו אחד שהוא הרווח...

Re: [בעיה בתשובה?]מבחן 2009 מועד ב' שאלה 3 סעיף א'

נשלח: 17:36 20/01/2010
על ידי danny
הם עשו את זה פשוט כדי "לדלג" על הרווח
ברגע שאתה מחזיר מילה אחת, אז נשאר התו " " ושאר המחרוזת
לכן יש את השורה שמקדמת את האינדקס.

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

Re: [בעיה בתשובה?]מבחן 2009 מועד ב' שאלה 3 סעיף א'

נשלח: 18:31 20/01/2010
על ידי TA_Yoni
צודקים: צריך לאתחל את currentIndex בבנאי ל 1-