שיפור selectLiteral

מנהלים: TA_nimrod, TA_Igor, TA_Adi

שלח תגובה
matandro
הודעות: 68
הצטרף: 15:16 26/10/2009

שיפור selectLiteral

שליחה על ידי matandro » 19:14 20/11/2009

מותר לי לשנות את מה שהפונקציה מחזירה ומקבלת?
אני צריך שהיא תחזיר מערך של int בגודל 2 במקום כדי לדעת אם בחרתי משתנה טהור\יחיד כך שאני לא צריך לקרוא להופכי שלו
וחבל לי לקרוא לפונקציה שתבדוק שוב פעם על הליטרל אם הוא טהור או יחיד בביטוי
אני מעדיף פשוט לדעת את זה מתוך ה-select literal
חוץ מזה אני רוצה לשלוח לתוך select literal מערך שיש בו את כל הליטרלים הקיימים ב-CNF כלומר שהפונקציה תקבל עוד מערך לתוכה
ככה שאני לא יצתרך לסרוק כל פעם את כל הליטרלים הקיימים ב-CNF כשאני מחפש טהורים

rvn
הודעות: 39
הצטרף: 23:05 14/11/2008
מיקום: מעונות ג'

Re: שיפור selectLiteral

שליחה על ידי rvn » 21:25 20/11/2009

והאם אפשר לשנות את isMember כך שתחזיר את המיקום או -1 במידה ואינו נמצא במערך?

matandro
הודעות: 68
הצטרף: 15:16 26/10/2009

Re: שיפור selectLiteral

שליחה על ידי matandro » 21:58 20/11/2009

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

אני שואל לגבי selectLiteral כי היא פונקציה חובה

TA_Isana
הודעות: 110
הצטרף: 15:19 19/04/2009

Re: שיפור selectLiteral

שליחה על ידי TA_Isana » 11:58 22/11/2009

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

כן. ניתן לשנות את isMember. מאותה סיבה בדיוק.
אבל -- שימו לב כי isMember מופעלת ב satisfies הנתונה. שינוי בה יכול לגרום לשינויים ב satisfies. על אחריות המתכנת.

לגבי כל שאר הפונקציות שנתונות בקובץ, אל תשנו את החתימה והטיפוס המוחזר כי פונקציות אלו יבדקו ישירות ע"י הפעלתן.
Course TA: Tamar Pinhas

שלח תגובה

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