ABA


"חידה (אפשר לענות בכל שפה...)"
גירסת הדפסה        
קבוצות דיון פיתוח, תיכנות ובניית אתרים נושא #13285 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 13285
Static
חבר מתאריך 1.7.02
1329 הודעות, דרג אמינות חבר זה
   00:12   14.05.06   
אל הפורום  
  חידה (אפשר לענות בכל שפה...)  
 
   יש 2 משתנים
x=2321 y=76767
רוצים לבצע החלפה בין הערכים שלהם ז"א
x=76767 y=2321

עכשיו הקטע הטריקי...
צריך לבצע את זה ללא שימוש במשתנה עזר או מערך כלשהו

יש 2 פתרונות שאני מכיר... אז בהצלחה


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  לא מזמן הביאו את הרעיון... :| אבל כל הכבוד על היוזמה.. גם של השאר פה:) Nesher  14.05.06 00:24 1
  אני אתן לאחרים עוד זמן לחשוב...אבל יש מגוון פתרונות. MadXP 14.05.06 09:48 2
  חח זה ממש חידה קלה עידן_הכלי 14.05.06 12:56 3
     מכתב Net_Boy  14.05.06 20:52 4
  כן, הפתרון שלכם זה הפחות יעיל... יש עוד פתרון, נראה אם תצליחו Static 14.05.06 21:18 5
     יעיל באיזה מובן? sHuMpI 14.05.06 22:12 6
         מס' הפקודות זהה - הנה הפתרון היעיל יותר למי שרוצה Static 14.05.06 22:33 8
             כנס עידן_הכלי 14.05.06 22:42 9
                 xor מתבצע ב -2 cycle ב alu. MadXP 14.05.06 23:45 11
                 כל הכבוד אח שלו, לא התכוונתי להעליב Static 15.05.06 17:50 12
  אפשר נדמה לי עם ctrcpy() בשפת c Sn00py  14.05.06 22:23 7
     במקרה כזה עדיין צריך משתנה עזר Nesher  14.05.06 23:07 10

       
Nesher  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 2.7.02
2 הודעות, 24 פידבק, 43 נקודות
   00:24   14.05.06   
אל הפורום  
  1. לא מזמן הביאו את הרעיון... :| אבל כל הכבוד על היוזמה.. גם של השאר פה:)  
בתגובה להודעה מספר 0
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MadXP

דרג אמינות חבר זה
   09:48   14.05.06   
אל הפורום  
  2. אני אתן לאחרים עוד זמן לחשוב...אבל יש מגוון פתרונות.  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
עידן_הכלי

דרג אמינות חבר זה
   12:56   14.05.06   
אל הפורום  
  3. חח זה ממש חידה קלה  
בתגובה להודעה מספר 0
 
  

x=2321
y=76767

y = x + y =79088
x = y -x =76767
y = y - x = 2321

לא כתבתי בשום שפה כי לא צריך פה הרבה לחשוב, חיבור וחיסור פשוט :-)


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Net_Boy  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 1.4.02
17151 הודעות, 1 פידבק, 2 נקודות
   20:52   14.05.06   
אל הפורום  
  4. מכתב  
בתגובה להודעה מספר 3
 
   ערכתי לאחרונה בתאריך 14.05.06 בשעה 20:53 בברכה, Net_Boy
 

x += y
y = -(y - x)
x -= y


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות, דרג אמינות חבר זה
   21:18   14.05.06   
אל הפורום  
  5. כן, הפתרון שלכם זה הפחות יעיל... יש עוד פתרון, נראה אם תצליחו  
בתגובה להודעה מספר 0
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
sHuMpI

דרג אמינות חבר זה
   22:12   14.05.06   
אל הפורום  
  6. יעיל באיזה מובן?  
בתגובה להודעה מספר 5
 
   במספר הפקודות?


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות, דרג אמינות חבר זה
   22:33   14.05.06   
אל הפורום  
  8. מס' הפקודות זהה - הנה הפתרון היעיל יותר למי שרוצה  
בתגובה להודעה מספר 6
 
   x= x xor y
y= x xor y
x= x xor y

זה יותר יעיל מכיוון ש XOR מבצע פחות פולסים מאשר פעולות חיבור חיסור
ולכן הפעולה תיהיה יותר מהירה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
עידן_הכלי

דרג אמינות חבר זה
   22:42   14.05.06   
אל הפורום  
  9. כנס  
בתגובה להודעה מספר 8
 
   מאיפה הבאת את זה ש xor עושה פחות פעולות מ +

ובקשר לפתרון יעיל או לא, במקום להגיד יפה שחשבת על זה, זה התגובה הטיפשית שאתה נותן?

מילא הייתי עושה לך פה איזה לולאה, זיכרון, משהו, אבל 3 שורות קוד הכי פשוטות שיכולות להיות.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MadXP

דרג אמינות חבר זה
   23:45   14.05.06   
אל הפורום  
  11. xor מתבצע ב -2 cycle ב alu.  
בתגובה להודעה מספר 9
 
   פקודות אחרות כמו div או mult או add לוקחות לפחות 3 cycles וזו הסיבה ש xor הוא הפתרון המועדף.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Static
חבר מתאריך 1.7.02
1329 הודעות, דרג אמינות חבר זה
   17:50   15.05.06   
אל הפורום  
  12. כל הכבוד אח שלו, לא התכוונתי להעליב  
בתגובה להודעה מספר 9
 
   בכל מקרה הפתרון שלך סבבה ותיארתי לעצמי שמייד אנשים יביאו אותו
כל הרעיון של החידה זה לפתור אותה בצורה היעילה ביותר

בכל מקרה הצעת פתרון יפה.


ולמי ששאל XOR לוקח איזה 3 פולסים וחיבור חיסור לוקח איזה 13-15 פולסים
אני לא סגור על המס' המדויקים


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Sn00py 
חבר מתאריך 1.8.02
2954 הודעות, דרג אמינות חבר זה
   22:23   14.05.06   
אל הפורום  
  7. אפשר נדמה לי עם ctrcpy() בשפת c  
בתגובה להודעה מספר 0
 
  

\x6C\x65\x65\x74\x68\x61\x78\x30
\x72\x3A\x2D\x29
tresp4sser


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
Nesher  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 2.7.02
2 הודעות, 24 פידבק, 43 נקודות
   23:07   14.05.06   
אל הפורום  
  10. במקרה כזה עדיין צריך משתנה עזר  
בתגובה להודעה מספר 7
 


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net