בתרגיל ביניים "סטטי ... מה" עם הססטינה

תגיות:

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

ממש נתקעתי בתרגיל הזה משום מה…
יש דרך “חסכונית” בקוד שאני מפספס כדי לבדוק התאמה של המילים האחרונות לפי הסדר הנכון?

אשמח להכוונה…

מה הכוונה המילים האחרונות?

חלק מהתרגיל היה לבדוק אם המילים האחרונות בשורה מסויימת בבית מסויים זהות לשורות מסויימות אחרות בבתים אחרים, הדרך הכי הגיונית שמצאתי זה לבודד את המילים ולעשות השוואה “יבשה” (מילה בשורה מסויימת == מילה בשורה מסויימת וכן הלאה)… בשיטה הזאת ההשוואה יוצאת ממש ארוכה ומפרכת, אני תוהה אם יש דרך פחות “ניאנדרטלית” לעשות את ההשוואה.

אני מקווה שהסברתי את עצמי כמו שצריך…

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

אני עשיתי ללא ‘==’
את רוב הזמן שביליתי עם התרגיל לקח לי כדי להבין איך לייצג את החוקיות
גם השתמשתי בדרך אחרת שאיפשרה לי להשוות הרבה מילים בבת אחת

לייק 1

אני באמת יומיים על התרגיל, אין לי שום רעיון…

אני ציירתי על נייר (זה המנהג שלי לעיתים קרובות) יש גם עוד מקורות באינטרנט שמסבירים את ההגיון של הסדר, אולי זה יעזור

  • אני גם מעריכה שאפשר להתקדם בחומר עם פתרון פחות אלגנטי לתרגיל הזה, אולי לחזור אליו אח"כ
לייק 1

גם אני ציירתי על נייר, זה בדרך כלל עוזר לי מאוד, אבל כרגע פשוט לא מצאתי פיתרון אלגנטי…
הגשתי פיתרון של כמעט 180 שורות (אמנם עם המחלקה Song, אבל עדיין המון), אני מקווה שאחשוב על משהו בהמשך.

לייק 1

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

בנוגע לבעיה שלך השלמת המילים.
נסה לחשוב בצורה איטרטיבית: קח את המילים שבסדר 0,1,2,3,4 ותסתכל על הבית שאתה רוצה לבדוק.
עכשיו, איך תגיע למילים שאתה מחפש?
אחרי שפתרת עבור המקרה הספציפי (תדפיס הכל בדרך כדי שתדע איפה טעית במקרה וטעית), נסה לחשוב על פתרון גלובלי לכל הבתים ואיך אתה עובר עליהם אחד אחד.

עדכן כשהצלחת!

השיטה שבחרתי כדי לצלוח את התרגיל היא ליצור רשימה של רשימות, שכל איבר ברשימה מייצג בית של השיר (כרשימה שבה המילים האחרונות בכל שורה בבית).

דוגמה:
[[word1, word2...], [word1, word2...]...]

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

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

4 לייקים