עבור לתוכן

משחק איקס עיגול באסמבלר ובשפת C

Featured Replies

פורסם

שלום רב לכולם !!

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

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

מצ"ב התוכנית שפיתחתי וקובץ עזר אשר בו משתמשת התוכנית שבניתי..

תודה מראש לעוזרים

קבצים מצורפים:

התוכנית שפיתחתי - http://www.upfree.net/7708011

קובץ העזר ( חובה להוריד אותו ולמקמו באותה תיקייה בה נמצא התוכנית שפיתחתי לשם פעילותה התקינה של התוכנית) -http://www.upfree.net/7282183

  • תגובות 40
  • צפיות 17k
  • נוצר
  • תגובה אחרונה
פורסם

תבנה לך לוח בזכרון על פי הנתונים שמקבל

כלומר

קיבלת 3 תבנה מערך של 3 על 3

אחרת 4 על 4

וכו'

לגבי בדיקת ניצחון, יש כל מיני דרכים, אני מניח שפחות מעניין אותך יעילות וכו'

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

ואז תבדוק

ואם יש דגל אתה יוצא מן הלולאה של המשחק ומדפיס "WIN" או משהו כזה

עשיתי בעבר תוכנה כזאתי.

פורסם
  • מחבר

תבנה לך לוח בזכרון על פי הנתונים שמקבל

כלומר

קיבלת 3 תבנה מערך של 3 על 3

אחרת 4 על 4

וכו'

לגבי בדיקת ניצחון, יש כל מיני דרכים, אני מניח שפחות מעניין אותך יעילות וכו'

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

ואז תבדוק

ואם יש דגל אתה יוצא מן הלולאה של המשחק ומדפיס "WIN" או משהו כזה

עשיתי בעבר תוכנה כזאתי.

אתה יכול לעלות את התוכנית/התוכנה הזאת שבנית בעבר ?

פורסם

אני כרגע בעבודה

העניין הוא שעשיתי כזה בעבר ממש, לא זוכר אפילו איפה זה וכו'

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

אבל העקרונות הם ממש דומים.

חפש גם ברשת, יש מלא דוגמאות בסגנון

פורסם
  • מחבר

חיפשתי ולא מצאתי משהו..אני אודה לך אם תוכל לעזור לי..

פורסם

טוב אני לא בבית עכשו

זה יצטרך לחכות.

אבל באמת

תתחיל לעשות מה שאמרתי, זה לא ממש קשה.

תתחיל מלעשות פונקציה פשוטה שמקבלת X וY (נניח מקבל אותם במחסנית, לא בעיה) ובונה את המערך - כולה מערך של X על Y תאים.

תאתחל כל התאים למינוס 1 (מסמן שאין שם כלום עדיין)

לאחר מכן תתקדם משם, נניח תוסיף פונקציה שבודקת אם יש שורות שכל התאים מכילים הערך 2 (נניח זה X), או שכל התאים זה 1 (עיגול)

וכך הלאה.

פורסם
  • מחבר

אני עשיתי את זה רק יש לי בעיה בקובץ שהיא נכנסת ללולאה אין סופית..איך פותרים את הבעיה הזאת?

פורסם

אוקיי

כנראה איך שהוא תנאי סיום הלולאה לא טוב

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

תשים משתנה BX נניח שיכיל את 4, ואז אתה מוריד אותו ב1 כל פעם, ו בודק JNZ

נראה לי די בסדר

לא?

פורסם
  • מחבר

אוקיי

כנראה איך שהוא תנאי סיום הלולאה לא טוב

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

תשים משתנה BX נניח שיכיל את 4, ואז אתה מוריד אותו ב1 כל פעם, ו בודק JNZ

נראה לי די בסדר

לא?

זה מה שעשיתי וזה עדיין לא עובד..אתה יכול בבקשה לעבור על זה בצורה מעמיקה ולבדוק לי זאת?

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

קבצים מצורפים:

http://www.upfree.net/6034931 - התוכנית בשפת C

פורסם

^^

אני לא יכול להכנס לקבצים האלו שבעבודה :s05:

(חוסמים את זה פה)

אבל,

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

תתחיל מהתחלה, תעבור שורה שורה ותבדוק איפה יש משהו לא מובן או שיש משהו שנראה לך כל כך מובן שאפילו לא השקעת בבדיקות שלו ויכול להיות ששם נופל

פורסם
  • מחבר

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

מתי אתה מסיים לעבוד וחוזר הביתה כך שתוכל לעזור לי ולבדוק בקבצים גם מה הבעיה ?

פורסם

יקח לי עוד כמה שעות :(

פורסם
  • מחבר

יקח לי עוד כמה שעות :(

עד מתי בערך?עד הערב?

אתה תוכל לעבוד ולבדוק את זה היום ? (2 התוכניות - C ואסמבלר)

פורסם

תראה

אני לא כזה שולט באסמבלי

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

אני מעדיף שלא תפתח צייפיות.

למה שלא תדבר עם המורה או מתרגל שלך?

או תבקש עזרה מחברים אחרים בכיתה וכו'?

או תחפש ברשת?

או כל דבר אחר?

פורסם

עד מתי בערך?עד הערב?

אתה תוכל לעבוד ולבדוק את זה היום ? (2 התוכניות - C ואסמבלר)

אתה קצת חצוף.

הבן אדם בעבודה ואתה רוצה שהוא יעשה לך את השיעורי בית עוד היום.

ארכיון

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

דיונים חדשים