תיארנו את החוקיות שנרמז עליה בתרגיל 3 של שעור קודם. נניח שנתונים הפרוקים למכפלות ראשוניים של
אז מתקבלים הפרוקים:
לדוגמא:
בכדי שהפרוקים יכילו את אותם המספרים הראשוניים , נוסיף את החסרים עם חזקות אפס:
וכך נוכל לקבל:
ב-Python אפשר כמובן, כפי שהשתמשנו לקבל את התו (מחרוזת באורך 1)
שמתאר מספר D, שמקיים
על ידי
c = "%d" % D
digits = "0123456789" c = digits[D]
הזכרנו את חשיבות בסיס-2 (Binary) במחשבים, וכן את העובדה שבסיס-16
משמש לעזר, כך שכל 4 ספרות בבסיס-2 מיוצגות על-ידי ספרה אחת בבסיס
.
בבסיס 16, אנו זקוקים ל-6 סימנים נוספים לספרות שיתארו את המספרים
D
המקיימים:
.
לשם כך משמתמשים ב
digits = "0123456789abcdef" c = digits[D]נותנות את התו המבוקש.
תוכלו לראות או להוריד פתרון לתרגיל 3 שניתן בשעור קודם .
base16(n)
שמקבלת מספר
base16(0)
תחזיר:
"0"
base16(3134520014)
תחזיר (:רע לפנים:)
"bad4face"