בעיה בהדפסת עלים של עץ משחק ב-JAVA - עמוד 3 - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

בעיה בהדפסת עלים של עץ משחק ב-JAVA


ניר.

Recommended Posts

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

אתה יכול למקד אותי בדיוק איפה נמצאת הבעיה בקוד בבקשה ?

קישור לתוכן
שתף באתרים אחרים

  • תגובות 37
  • נוצר
  • תגובה אחרונה

אני לא יודע, אבל אני מתייחס לשטויות כמו


ArrayList<GameTreeNode> children=node.getChildren();
Iterator<GameTreeNode> itChild=null;
if(node!=null)

שברור שאם node הוא null אז התוכנית תקרוס לפני ה IF

ובשטות כמו


if (children != null)
{
itChild=children.iterator();
player = level%2==0 ? participant : presentBoard.opposite(participant);
}
if(children!=null)

למה IF כפול ?

בכל מקרה, בדקת שהאינסופיות היא כתוצאה מרקורסיה של הפונקציה הזו ולא בחלק אחר של התוכנית (כמו חישוב הצעדים)?

קישור לתוכן
שתף באתרים אחרים

כן האינסופיות היא בפונקציה הזאת..בדקתי ב-DEBUG...

תיקנתי לפי מה שאמרת וזה עדיין עושה לי את הבעיה של לולאה אינסופית..


private void printLeaves(int level, GameTreeNode node)
{
int player=participant;
Iterator<GameTreeNode> itChild=null;
if(node!=null)
{
ArrayList<GameTreeNode> children=node.getChildren();
if(children!=null)
{
itChild=children.iterator();
player = level%2==0 ? participant : presentBoard.opposite(participant);
while(itChild.hasNext())
{
GameTreeNode child = itChild.next();
printLeaves(level+1, child);
}
}
else
{
System.out.println("Level " + level + ": " + (player==PLAYER ? "whitePlayer" : "blackPlayer") + " at " + node.getMove().x + ", " + node.getMove().y);
}
}
else
{
System.out.println("There Is No Root.");
}
}

קישור לתוכן
שתף באתרים אחרים

  • 2 שבועות מאוחר יותר...

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

מישהו יודע כיצד פותרים את הבעיה הזו ?

מצ"ב קובץ RAR של הפרויקט...

[attachment deleted by admin]

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.


×
  • צור חדש...