תמונת מקור - Leonardo AI
תּגידו, האם המונח המתמטי "מספר קַפְּרֵקַר" אומר לכם משהו? מכירים?
אולי כן ואולי לא…
אז הנה קצת היסטוריה…
ד"ר קפרקר (בשמו המקוצר… שמו המלא הוא דאטארייה רמאצ'אנדרה קפרקר) היה מתמטיקאי הודי שחי במאה 20.
קפרקר עבד כמורה רגיל לגמרי בבית הספר בהודו, אך בזמנו הפנוי אהב לחקור את תכונותיהם של המספרים ואף התפרסם בזכות עבודותיו.
מספר קפרקר (kaprekar number) הוא אחד מאותם גילויים שחקר וגילה קפרקר.
אין להתבלבל עם המונח "קבוע קפרקר" (המספר 6174). אמנם גם הוא חלק מתגליותיו של קפרקר אך מדובר על עניין שונה לגמרי…
ורגע, כמעט שכחתי…
אתם זוכרים את המונח "מספר הרשאד" ?
נכון מאוד, כתבתי אודותיו במאמר בלינק כאן.
וגם הוא חלק מארסנל התגליות של ד"ר קפרקר.
כזה היה קפרקר. האיש והאגדה שאהב לחקור מספרים!
ולעִנְיָינֵנוּ, מהו מספר קפרקר?
את התשובה ניתן להגדיר כך או כך, אבל אני אסביר זאת במילים פשוטות ואף אתן דוגמא לכך.
מספר קפרקר הוא מספר טבעי שסכום הספרות של ריבועו (דהיינו תוצאת "העלאת" מספר זה בחזקת 2 כלומר הכפלה בעצמו) שווה למספר עצמו.
הנה דוגמא לכך:
המספר 9 הוא מספר קפרקר, שהרי:
אם נחשב את הבסיס 9 בחזקת (כלומר, במעריך) 2 - התוצאה תהא 81.
וכעת נחשב את "סכום הספרות" של מספר 81
התשובה היא = 9.
בדיוק כמו המספר "המקורי" של בסיס החזקה.
זו הוכחה שמספר 9 הוא מספר קפרקר,
כעת, בואו נראה איך כל הנ"ל קשור לאקסל ולעולמן של הפונקציות…
אם תרצו מכל סיבה שהיא לבדוק באמצעות האקסל/גוגל שיטס האם מספר כלשהו (X) הוא מספר קפרקר או לא?
האם זה בר ביצוע?
התשובה היא - כן ובהחלט!
לפניכם צילום מסך (מתוך הגיליון המצורף בלינק להלן) המדגים את תהליך הבדיקה שלב אחר שלב:
אפרט ואסביר את השלבים שלב אחר שלב:
שלב 1:
נכתוב בתא A2 את המספר שאנו מעוניינים לבצע עליו בדיקה - האם הוא "מספר קפרקר" או לא.
שלב 2:
זהו מבנה הפונקציה בתא B2:
קוד:
=POWER(A2,2)
במאמר בלינק כאן הזכרתי והסברתי אודות פונקציית power.
פונקציה זו מבצעת חישוב חזקות של בסיס החזקה במעריך החזקה.
כאן, אנו מעוניינים תחילה לברר מהי התוצאה של "העלאה בריבוע" למספר 9.
והתוצאה = 81 שהרי 9 בחזקת 2 (כלומר 9*9) שווה 81.
שלב 3:
זהו מבנה הפונקציה בתא C2:
קוד:
=LEN(B2)
כפי שאתם יודעים, פונקציית len סופרת את מספר התווים במחרוזת הטקסט התא שנכתב בארגומנט שבה.
גם כאן, פונקציית len סופרת את מספר התווים בתא שהתקבל משלב 2.
והתוצאה היא 2 שהרי הטקסט "81" מכיל 2 תווים בדיוק.
לשם מה אנו צריכים את החשבון הזה? אתם שואלים ובצדק…
את התשובה לכך תגלו בשלב 5.
שלב 4:
זהו מבנה הפונקציה בתא D2:
קוד:
=SEQUENCE(C2)
בשלב זה אנו יוצרים "סדרת" מספרים המתחילה ב 1 (כברירת מחדל) באמצעות פונקציית sequence הנפלאה,
(אודות פונקציה זו כתבתי במאמר בלינק כאן ועוד…)
כאשר מי שנוקבת "ואומרת" לפונקציה כמה שורות תהיה סדרת מספרים זו - היא פונקציית len
זו שבשלב 3 החזירה את התוצאה 2.
ואכן בשלב 4 ישנה סדרה שנראית ככה:
1
2
מיד תגלו בשלב הבא את הצורך ביצירת הסדרה החשבונית הנ"ל.
שלב 5:
הגענו לשלב העיקרי והכמעט סופי בתהליך. איזה יופי!
אם נחזור להגדרתו של "מספר קפרקר" אנו צריכים למצוא / לחשב את סכום הספרות של המספר שהתקבל מחישוב "ההעלאה בריבוע" של המספר לבדיקה.
בקיצור, בדוגמא שהבאתי כאן אנו צריכים "לפרק" את המספר 81 לשני תאים שונים ולהמשיך הלאה בסכימת התאים.
איך עושים את זה?
זהו מבנה הפונקציה בתא E2:
קוד:
=IFERROR(ARRAYFORMULA(MID(B2,D2:D,1)),"")
זוכרים את פונקציית mid?
כן…הזכרתי אותה בעבר פעמים רבות (ובמאמר כאן הסברתי אודותיה בהרחבה).
בארגומנט הראשון אנו מזינים הפניה לתא B2 (דהיינו ערך 81 שהתקבל מריבועו של המספר 9)
בארגומנט השני אנו אומרים לפונקציה מאיזה תו להתחיל את "השליפה".
וכאן אנו נכתוב את "ההוראות" לפריסת מערך שכזה דהיינו המספרים שהתקבלו משלב 4= 1 - 2
(כזכור, שלב 4 הוא תלוי בשלב 3 כלומר בפונקציית len. וזו בדיוק התשובה לתמיהה - לשם מה נצרכים כאן שלב 3 ושלב 4...)
הפונקציה מחזירה באופן מערכתי את התווים שהיא שולפת.
כנגד מספר 1 שהתקבל משלב 4 פונקציית mid שולפת את התו ה 1 דהיינו מספר 8.
וכנגד מספר 2 שהתקבל משלב 4 פונקציית mid שולפת את התו ה 2 דהיינו מספר 1.
כאמור, בכל פעם השליפה היא תו 1 בודד. זו בדיוק משמעות הספרה 1 בארגומנט השלישי.
בגוגל שיטס יש לעטוף את הפונקציה בפונקציית arrayformula…
נפלא מאוד!
שלב 6:
כעת, נותר לנו לסכום את סכום הספרות שהתקבלו בשלב 5.
פעולה זו מבוצעת בקלות רבה באמצעות פונקציית sumproduct הנפלאה והגאונית.(כתבתי אודותיה במאמר בלינק כאן).
זהו מבנה הפונקציה בתא F2:
קוד:
=SUMPRODUCT(E2:E3)
התוצאה היא 9
שהרי 9 = 1 + 8
הופ!
חזרנו כאן שוב למספר 9 - כלומר לנקודת "ההתחלה" - לאותו מספר לבדיקה!
לא פחות ולא יותר!
אכן, מספר 9 הוא "מספר קפרקר" שמתקיימת בו ההגדרה - "מספר טבעי שסכום הספרות של ריבועו שווה למספר עצמו".
חשוב לציין כי בשיטה "המקורית" לחישוב יש לפרק את הסכום שהתקבל לשניים ואז לחברו.
בדוגמא הנ"ל היה ניתן לבצע זאת בעזרת פונקציות left ו right למשל ואז לקבל שתי "קבוצות".
קבוצה אחת = 8 וקבוצה שניה = 1 ואח"כ לסכום אותן יחדיו.
אך אין נפקא מינה בין שיטה הזו לבין השיטה שציינתי כאן דהיינו להחזיר את כל הרצף של המספר 81 כמערך "מפורק" לתאים נפרדים.
על מנת להקל ולפשט את החישוב העדפתי להשתמש בשיטה הנ"ל שציינתי.
שלב 7:
וזהו מבנה הפונקציה בתא G2:
קוד:
=IF(F2=A2,TRUE(),FALSE())
כן…זו פונקציית if הכי קלאסית שיש שמבצעת השוואה בין המספר לבדיקה לבין תוצאת סכום הספרות של ריבועו ומחזירה true או false כלומר - אמת או שקר.
ואם הגעתם עד הלום, הנה "הדובדבן שבקצפת"...
לפניכם צילום מסך נוסף מתוך הגיליון המצורף בלינק להלן:
זהו מבנה הפונקציות בתא B2 "מקופלות" זו בתוך זו.
קוד:
=IF(SUMPRODUCT(MID(POWER(A2,2),SEQUENCE(LEN(POWER(A2,2))),1))=A2,TRUE(),FALSE())
ההחזר בשורה תחתונה הוא - true או false.
הכי קצר והכי קולע!
פשוט וואו!
ועד כאן לאקסל ולעולמן של הפונקציות…
מקווה שנהניתם…
לסיום, הישגיו הרבים של ד"ר קפרקר הם נבעו מכוח סקרנות עז למחקר ,לימוד וניתוח של מספרים.
"הסקרנות היא תחילתה של החכמה" אמר הפילוסוף היווני סוֹקְרַֿטֶס.
וכמו שהתבטא פעם אבי תורת היחסות, הפיזיקאי הגרמני - יהודי שזכה לתואר כבוד "מגדולי הפיזיקאים בכל הזמנים" - אלברט איינשטיין: "הדבר החשוב ביותר הוא לא להפסיק לשאול".
אמרו רבותינו ז"ל (במדרש איכה רבה פרשה ב סימן י"ג) "אם יאמר לך אדם יש חכמה בגוים - תאמן"
וכמו שהסקרנות היא המפתח ללמידה ולשגשוג במתמטיקה ושאר המדעים כך להבדיל אלפי הבדלות… היא המפתח לשקידה ולעמל בתורה הקדושה וממילא לגדילה ולצמיחה בתורה…
הרצון לחקור,
הרצון להעמיק
והרצון לדעת…
וכמו שפירש רבינו יונה גירונדי ז"ל בפירושו אמתניתין דאבות (פרק ד' משנה א') - "איזהו חכם הלומד מכל אדם" וזהו לשונו הנפלא:
"אמרו חכמי האומות, כי היודע כל החכמות אם אינו אוהב החכמה אינו חכם אלא טפש הוא אחר שאינו אוהב החכמה כי היא הדעת. אך האוהב אותה ומתאוה אליה אע"פ שאינו יודע כלום הרי זה נקרא חכם שעל כל פנים תשיג אל החכמה האמיתית ודעת אלהים תמצא.
ועל זה אמר בן זומא איזהו חכם הלומד מכל אדם שכל כך אוהב החכמה ומתאוה אליה ששואל לכל אדם ואף מי שאינו יודע כי אם דבר אחד ילמד ממנו ואז יצליח דרכו ואז ישכיל.
ועל זה נקרא חכם שנאמר מכל מלמדי השכלתי שכן אמר דוד ע"ה שלמד מכל אדם ולא היה אומר זה אינו יודע כמוני כי מכלם למד והשכיל. משל לאדם שהפסיד כלי קטן והלא מכל אדם מבקש אותו…" עכ"ל.
לינק לגיליון שיטס הכולל בדיקה האם מספר x הוא "מספר קפרקר" או לא - מצורף כאן.
הנושאים החמים