===> הוספת תנאים מאריכה זמן ריצה ?? <===

מנהלים: The Architect, The Architect

נעול
alom
הודעות: 8
הצטרף: 00:46 07/01/2009

===> הוספת תנאים מאריכה זמן ריצה ?? <===

שליחה על ידי alom » 01:00 07/01/2009

האם ייתכן שזמן הריצה של התכנית ייתארך באופן משמעותי עקב הוספת התנאי הבא בפונקציה שפותרת את משימה 9: if n==1 וטיפול בו??
כלומר כאשר הרצנו את התכנית מבלי להתייחס למקרה בו מ=1 התכנית רצה מהר(לדוגמא כאשר הרצנו עבור מ=12 לקח לתכנית כשניה לרוץ וכאשר הוספנו את תנאי הבדיקה if n==1 וטיפלנו בו הזמן שלקח לתכנית לרוץ התארך לדקה פלוס... ועבור 15 התארך ליותר מרבע שעה...)
יש למישהו רעיון למה זה קורה???
ואם יש גם איזשהו כיוון לאיך מטפלים במקרה בוn=1 מבלי להאריך את זמן הריצה של התכנית?? תודה מראש!

בל"ל
הודעות: 41
הצטרף: 21:11 21/11/2008

שליחה על ידי בל"ל » 12:16 07/01/2009

אני יודע שאני לא עונה על השאלה.. אבל.. למה להוסיף טיפול ייחודי ל 1?
הCNF שנוצר לכם בשביל 1 בסופו של דבר הוא רצף של קלוזים בני משתנה אחד (שהוא במקרה גם 1) שזה דבר שSOLVE שלכם אמור לפתור די בקלות..

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

alom
הודעות: 8
הצטרף: 00:46 07/01/2009

הרצת התכנית עבור n=1

שליחה על ידי alom » 13:11 07/01/2009

בל"ל, שלום!תודה על התשובה לשאלה הראשונה, יש לנו שאלה נוספת ונשמח אם תוכל לעזור:
כאשר אנחנו מריצות את התכנית עבור n=1 (ללא תנאים נוספים) אנחנו מקבלות את השגיאה הבאה:
Exception in thread "main" java.lang.NegativeArraySizeException
זה מכיוון שהוא מנסה לחפש את האלכסונים ובמקרה שn=1 אין אלכסונים.. והוא נותן לנו את השגיאה הזו...
מה אתה עשית כדי שבמקרה שn=1 הוא לא ייכנס לאלכסונים או ייכנס אבל לא ייתן שגיאה???
תודה!(גם אנשים אחרים יכולים לענות...)

eliran
הודעות: 57
הצטרף: 15:07 09/12/2008

שליחה על ידי eliran » 13:41 07/01/2009

כמו שבל"ל אמר אין צורך לבדוק במיוחד את האלכסונים של N=1 בין אם אין לו אלכסון או שהוא האלכסון של עצמו, הבעיה שלך java.lang.NegativeArraySizeException אומרת שאת מנסה ליצור מערך בעל גודל שלילי (כנראה בפונקציה 9), תעקבי אחרי התוכנית ותראי אם את יכולה לשנות את גודל המערך לחיובי.

בל"ל
הודעות: 41
הצטרף: 21:11 21/11/2008

שליחה על ידי בל"ל » 14:29 07/01/2009

אני לא יודע איך כתבתם את קטע הקוד של האלכסונים
אבל מה שאני עשיתי זה מצאתי אלגוריתם שאיתו אפשר לבנות בקלות את מטריצת האלכסונים ואז על כל שורה ושורה קראתי לפונקציות 7-8 לפי הצורך

ממה שאת אומרת אני מסיק שהאלגוריתם שלכם לטיפול באלכסונים תקול
אם תסתכלי ב

http://myforum.bgu.ac.il/phpBBHeb/viewt ... highlight=

שם נתנו רמזים מאד מפורטים איך להגיע לאלגוריתם

alom
הודעות: 8
הצטרף: 00:46 07/01/2009

תודה לכל מי שעזר!

שליחה על ידי alom » 14:37 07/01/2009

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

נעול

חזור אל “- מבוא למדעי המחשב”