מדעי המחשב

עריסטו

Active member
מה הבעיה?

תביא את A לאיפה שאתה רוצה, אחר כך תביא את B לאיפה שאתה רוצה...
 

סאביבית

New member
שכל דוגמא שלא תיתן

בסופו של דבר זה אותו דבר, רק תשנה את סדר התאים. ובכלל- בדוגמא שנתת A C מתחלפים ביניהם. ואת BDE אפשר לסדר B=e E=d D=b
 

DirectT

New member
../images/Emo62.gif

אוקיי בהתחלה עלה לי לראש ROLL, אבל אני לא יודע איך ROLL עובד וזו פונקציה שקיימת [עד כמה שידוע לי] רק באסמבלר. אבל בשפה עילית, הייתי עושה לולאה שמכניסה למחסנית באופן הבא, בונה לולאה שתעלה על מספר האיברים, בתוך הלולאה הייתי עובד על מחסנית באופן הבא: 1. מכניס את האיבר ה-I לתוך המחסנית 2. מכניס את I+1 גם לתוך המחסנית 3. מוציא מהמחסנית לתוך האיבר I 4. מוציא מהמחסנית לאיבר I+1 וככה עובד על כל שאר האיברים נ.ב: שכחתי להוסיף שהאיברים צריכים להיות בתוך מערך, או לשם הנוחיות שתי מערכים. מה אתם אומרים על הפיתרון הזה?
 

the Sman

New member
למה הפיתרון הזה לא נכון:

a:=a+b b:=a-b a:=a-b הפיתרון הזה נראה לי הרבה יותר פשוט מהפיתרון שהוצע. השאלה היא אם אני מפספס משהו והפיתרון שלי הוא טעות.
 
לא נכון! מה שהוצע

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

סתם חחחח לא יודע לא מזמן חזרתי לתפוז. רק עכשיו שמתי לב שאתה blink1823, מה קורה? סתם אם בא לך להמשיך את השיחה אז במסרים.
 

Ultra Spidey

New member
אבל יש לך התעסקות עם Overflow

נניח ש a = 65500 ו b = 300000, ושניהם Integer- לא תוכל להציב בa את a+b.
 

בסג

New member
ההודעה הקודמת נשלחה בטעות...

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