אלוגריתם פשוט

avihu2

New member
השינוי.....

במקום לעשות mod 2 עושים mod של הבסיס הרצוי....
 

Twinsen

New member
אלוגריתם פשוט

שלום אני צריך לתאר באלגוריתם שמקבל מספר שלם ומדפיס את ייצוגו הבינארי מותר להדפסה לצאת הפוך, כלומר מהסוף להתחלה תודה
 
תודה. יש חידונת קצת קשורה לנושא:

יש מאזניים. באלו 4 משקלות נוכל להשתמש לשקילת כל מספר שלם של גרמים של חול, מ-1 עד 40?
 
נסיון לפתרון החידה ../images/Emo107.gif

1 , 3 , 9 , 27 ק"ג. ובאופן כללי : אם יש ברשותנו n משקולות, שמשקלן הוא : ... , 3º , 3¹ , 3² , 3³ וכן הלאה עד ל 3 בחזקת n-1 , ניתן לשקול באמצעותן כל משקל שבין 1 לבין 3ⁿ-1)/2) . ההוכחה של זה מסתמכת על כך שהביטוי האחרון הוא בעצם סכום הסדרה ההנדסית של המשקלים של כולן. בדוגמה שנתת פשוט n=4 .
 
הקשר הוא, השימוש בשיטת ספירה

על בסיס 3. באמצעות המשקולות הללו אפשר ל"שקול" כל מספר שלם ממינוס 40 עד פלוס 40, אם נידבר שמשקל החול על אחת מכפות המאזניים נחשב חיובי, ועל הכף השנייה נחשב שלילי. סה"כ 81 ערכים, 3 בחזקת 4. כל מישקולת היא ספרה אחת בבסיס 3, ויכולים להיות לה 3 ערכים: -1, 0, 1.
 

נירש

New member
המרה מדצימלי לבינארי

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

נירש

New member
האלגוריתם עדיין עובד...

ניקח למשל מספר דו ספרתי: 13. (רשמתי את שארית החלוקה אחרי הפסיק)
13 : 2 = 6 , 1 6 : 2 = 3 , 0 3 : 2 = 1 , 1 1 : 2 = 0 , 1​
וכך קבלנו 1101 (ואם אתה לא משוכנע שזה 13 בבינארית, אפשר לחשב לפי שיטת המשקלים או לפי הכפלה של המספר ב-2 בחזקת המקום, מימין לשמאל. בשיטת המשקלים 1 2 4 8 תוכל לראות שקבלנו 8+4+1=13). יש לציין שהאלגוריתם עובד על כל מספר בכל גודל.
 
למעלה