בעיה ב-c

oh-da

New member
בעיה ב-c

ראשית כל שלום! ואיחולים על פתיחת הפורום (בהצלחה!). :) יש לי בעיה בתוכנית שאני כותב בשפת c. התוכנית אמורה לסיים את ``המשחק`` כאשר הדמות מגיעה לנקודה מסויימת או כאשר החיים של הדמות מגיעים ל-0, הבעיה היא שהלולאה לא מתסיימת כאשר הדמות מגיעה לנקודה או כאשר החיים מגיעים לאפס. הקוד מצורף, בבקשה אמרו לי מה הבעיה, ואיך אוכל לפתור אותה? תודה.
 

yair24

Member
answer to your question

I dont have any problem to try to help you but you will have to ask your question in my forum in this address: yair24.tripod.com thanks
 

IdanR

New member
בשביל מה הפורום הזה קיים?

אם אין לך בעייה לעזור, אז תעזור בפורום הזה...
 

IdanR

New member
פתרון

הפתרון לבעייתך היא פשוטה, כל מה שאתה צריך לעשות זה לשנות את התנאי בלולאה כך שבמקום תנאי של ``או`` יהיה לך תנאי של ``וגם``: (life>0) && ((x!=75)&&(y!=12)
 

oh-da

New member
עשיתי זאת עוד לפני שעשיתי ||

אך הוא לא גמר את המשחק/הציג את ההודעה שאחרי הלולאה כאשר הוא הגיע לנקודה הסופית (75,12).
 

IdanR

New member
איזו הודעה אמורה להופיע?

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

IdanR

New member
רק רגע...

שמתי לב שיש בעייה אחרת... אני חושב שהתנאי שאתה צריך זה: while ((life>0) && ((x!=75)||(y!=12))) כלומר, בהתחלה AND ובחלק השני OR .
 

oh-da

New member
מושלם!

תודה רבה רבה רבה!!! (ובאמת היה צריך שם קודם && ואחרי זה II.) ושוב תודה :)
 

i_hovav

New member
אני חושב שאני יודע

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

oh-da

New member
תודה על העזרה, אך

הבעיה כבר נפתרה (כפי שניתן לקורא בתגובה שלי בה הכותרת היא - ``מושלם``. הבעיה לא הייתה מה שתיארת, אלא שקודם הייתי צריך לשים && ולאחר מכן ||, כפי שעין כתב. תודה רבה רבה לכם!
 
למעלה