![]() |
עזרה ב Java שוב.
שלום :)
טוב, אז יש לי עוד בעיה / שאלה. הפעם היא ניראת הרבה יותר קשה(לטעמי לפחות). התרגיל: פתח ויישם אלגוריתם המקבל כקלט סדרת מספרים חיוביים גדולים מאפס המסתיימת באפס. פלט התוכנית: אורך הרצף העולה(ממש) הארוך ביותר. דוגמאות: עבור הקלט - 0 2 2 4 2 2 יודפס הפלט - 2. עבור הקלט - 0 6 1 4 12 11 8 2 14 5 1 יודפס הפלט - 4. תודה רבה רבה רבה לעוזרים! :) |
בקשת קוד לא מותרת, לכן אתן לך תשובה תאורטית.
הלולאה עוברת מספר מספר. אם המספר גדול יותר מהמספר הקודם - המונה גדל באחד. אם לא - המונה מתאפס והופך ל-0. |
ציטוט:
הלולאה עוברת מספר מספר - כמה מספרים לקלוט בהתחלה? אם המספר גדול יותר מהמספר הקודם - המונה גדל באחד. אם לא - המונה מתאפס והופך ל-0 - זה לא חידש הרבה. |
כל עוד הקלט לא שווה ל0, הלולאה תמשיך.
בנוגע לשאלה, קח לך 3 משתנים, אחד הוא המספר הקודם, השני הוא הרצף הנוכחי, והשלישי הוא הרצף הארוך ביותר, אם בסוף רצף נוכחי הוא גדול יותר מהרצף הארוך ביותר, תעשה השמה. בעיקרון זה הרעיון, אין פה יותר מדי מה לחשוב. |
:-/
ציטוט:
PHP קוד:
ובנוגע למשתנים, "אחד הוא המספר הקודם" - אוקיי. "השני הוא הרצף הנוכחי, והשלישי הוא הרצף הארוך ביותר" - אה? :-/ |
אתה עובר מספר מספר ברגע שהמספר גדול מקודמו (חוץ מהראשון) אתה מקדם את המונה ב1 אחרת מאפס את המונה ל0.
ואז עושה השוואה עם עוד מונה שבודק האם הרצצף הזה גדול מהרצף הקודם. אם כן מעדכן בהתאם. נסה לפתח את זה לבד אחרת לא עשית כלום.... |
ציטוט:
|
כל הזמנים הם GMT +2. הזמן כעת הוא 16:20. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ