דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. קוד נגדי קצר

קוד נגדי קצר

מתוזמן נעוץ נעול הועבר תכנות
30 פוסטים 9 כותבים 825 צפיות 9 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ל לעזור לכולם

    אין לי פתרון סופי, אבל כיוון למחשבה,
    כל מספר טלפון(לכה"פ נייד) הוא בעצם מספר שהמינימום שלו הוא 500 מליון
    והמקסימום שלו הוא 589 מליון
    (ניכוי האפס בהתחלה, וההנחה שכל מספרים הניידים מתחילים ב 05)
    אם נחסר מהמספר, 500 מליון ומשהו (כמובן שזה יהיה תמיד מספר קבוע) נקבל בסוף מספר יותר קצר
    נ.ב. ניסיתי לעשות כמה ניסויים ולא הצלחתי, לכן אני מעלה רק כיוון ויתכן מאוד שאני תועה
    עוד נ.ב. כרגע פיתרון זה לא פותר מספרים נייחים ומספרים מחול ומספרים המתחיל ב 07
    מקווה שלא הטרחתי

    NH.LOCALN מנותק
    NH.LOCALN מנותק
    NH.LOCAL
    כתב ב נערך לאחרונה על ידי
    #8

    @לעזור-לכולם 500 מליון או 900 מליון זה חסר משמעות. מכיון שבסוף שתי הסכומים הם בעלי 8 אפסים, כך שבפועל המספר לא מקוצר כלל

    למעקב אחרי ההתפתחויות החשובות ביותר בתחום ה-AI
    https://nhlocal.github.io/AiTimeline
    (⭐ מעל 100 כוכבים בגיטהאב!)

    ל תגובה 1 תגובה אחרונה
    1
    • NH.LOCALN NH.LOCAL

      @לעזור-לכולם 500 מליון או 900 מליון זה חסר משמעות. מכיון שבסוף שתי הסכומים הם בעלי 8 אפסים, כך שבפועל המספר לא מקוצר כלל

      ל מנותק
      ל מנותק
      לעזור לכולם
      כתב ב נערך לאחרונה על ידי לעזור לכולם
      #9

      @NH-LOCAL כתב בקוד נגדי קצר:

      @לעזור-לכולם 500 מליון או 900 מליון זה חסר משמעות. מכיון שבסוף שתי הסכומים הם בעלי 8 אפסים, כך שבפועל המספר לא מקוצר כלל

      לא הבנתי, אם מחסירים ממספר הטלפון סכום מסויים (של 9 ספרות) אז בהכרח המספר מתקצר
      ומכיל מקסימום 7/8 ספרות
      איפה, אני טועה?

      תגובה 1 תגובה אחרונה
      1
      • קומפיונטק מנותק
        קומפיונטק מנותק
        קומפיונט
        כתב ב נערך לאחרונה על ידי קומפיונט
        #10

        @WWW במקרה שלך זה בלתי אפשרי לייצר מספר בן 10 ספרות ממספר בן 5 ספרות.

        הפתרון הוא שהקוד הנגדי יהיה באורך של 8 ספרות (זהה לאורך של מספר פלא' חוץ מהקידומת הקבועה 05, כמו שכתבו פה) ואז להפוך את המספר פלאפון איכשהו (xor לדוגמא) לקוד הנגדי, ובאותה דרך לשחזר למספר הפלאפון שהמשתמש הזין.

        תגובה 1 תגובה אחרונה
        1
        • חגיח מנותק
          חגיח מנותק
          חגי
          כתב ב נערך לאחרונה על ידי
          #11

          הקוד הנגדי חייב להיות מספרים?

          NH.LOCALN WWWW 2 תגובות תגובה אחרונה
          1
          • חגיח חגי

            הקוד הנגדי חייב להיות מספרים?

            NH.LOCALN מנותק
            NH.LOCALN מנותק
            NH.LOCAL
            כתב ב נערך לאחרונה על ידי NH.LOCAL
            #12

            @חגי כתב בקוד נגדי קצר:

            הקוד הנגדי חייב להיות מספרים?

            אם משתמשים בקודי ascii אפשר ליצור מ-8 ספרות קוד של 4 ספרות, ולהמיר אותם בחזרה למספר

            לדוגמה (בהנחה שמורידים את שתי הספרות הראשונות):

            rg`y = 27168934

            MF!r = 48416227

            (יש ברשותי את הקוד המלא אם יהיה בזה עניין למישהו)

            למעקב אחרי ההתפתחויות החשובות ביותר בתחום ה-AI
            https://nhlocal.github.io/AiTimeline
            (⭐ מעל 100 כוכבים בגיטהאב!)

            חגיח תגובה 1 תגובה אחרונה
            4
            • NH.LOCALN NH.LOCAL

              @חגי כתב בקוד נגדי קצר:

              הקוד הנגדי חייב להיות מספרים?

              אם משתמשים בקודי ascii אפשר ליצור מ-8 ספרות קוד של 4 ספרות, ולהמיר אותם בחזרה למספר

              לדוגמה (בהנחה שמורידים את שתי הספרות הראשונות):

              rg`y = 27168934

              MF!r = 48416227

              (יש ברשותי את הקוד המלא אם יהיה בזה עניין למישהו)

              חגיח מנותק
              חגיח מנותק
              חגי
              כתב ב נערך לאחרונה על ידי
              #13

              @NH-LOCAL כתב בקוד נגדי קצר:

              (יש ברשותי את הקוד המלא אם יהיה בזה עניין למישהו)

              תשתף, גם אם עכשיו לאף אחד אין עניין, אולי בעתיד למישהו יהיה.

              תגובה 1 תגובה אחרונה
              5
              • NH.LOCALN מנותק
                NH.LOCALN מנותק
                NH.LOCAL
                כתב ב נערך לאחרונה על ידי NH.LOCAL
                #14

                הרעיון די פשוט והוא עלה בדעתי תוך כדי הדיון כאן. הביצוע ברובו הוא צ'אט GPT. קוד פייתון כמובן.

                import string
                
                def create_dict():
                    # Initialize an empty dictionary
                    ascii_dict = {}
                
                    # Loop through numbers from 0 to 99
                    for num in range(100):
                        # Convert the number to a two-digit string
                        num_str = f"{num:02d}"
                        
                        # Get the corresponding ASCII character using the number as an index
                        ascii_char = string.printable[num]
                        
                        # Add the number and its corresponding ASCII character to the dictionary
                        ascii_dict[num_str] = ascii_char
                
                    return ascii_dict
                
                
                
                def hash_phone(phone_number):
                    # Ensure the input phone_number is a string of 8 digits
                    if not isinstance(phone_number, str) or len(phone_number) != 8 or not phone_number.isdigit():
                        raise ValueError("Invalid phone number. Please provide an 8-digit string of numbers.")
                
                    # Create the dictionary (you can use your 'create_dict' function here)
                    ascii_dict = create_dict()
                
                    # Initialize an empty string to store the resulting ASCII characters
                    ascii_result = ""
                
                    # Convert each pair of digits to corresponding ASCII characters
                    for i in range(0, len(phone_number), 2):
                        num_pair = phone_number[i:i + 2]
                        if num_pair in ascii_dict:
                            ascii_result += ascii_dict[num_pair]
                        else:
                            raise ValueError(f"No dictionary entry found for {num_pair}")
                
                    return ascii_result
                
                def unhash_phone(ascii_code):
                    # Ensure the input is a string of 4 ASCII characters
                    if not isinstance(ascii_code, str) or len(ascii_code) != 4:
                        raise ValueError("Invalid ASCII code. Please provide a string of 4 ASCII characters.")
                
                    # Create the dictionary (you can use your 'create_dict' function here)
                    ascii_dict = create_dict()
                
                    # Initialize an empty string to store the resulting number
                    phone_number = ""
                
                    # Convert each ASCII character back to the original number pair
                    for char in ascii_code:
                        found = False
                        for num_pair, ascii_char in ascii_dict.items():
                            if ascii_char == char:
                                phone_number += num_pair
                                found = True
                                break
                
                        if not found:
                            raise ValueError(f"No dictionary entry found for ASCII character: {char}")
                
                    # Convert the resulting string of number pairs back to an integer
                    return phone_number
                
                
                
                code = hash_phone('48416227')
                print(code)
                print(unhash_phone(code))
                

                המרת מספר טלפון לטבלת ASCII.py

                למעקב אחרי ההתפתחויות החשובות ביותר בתחום ה-AI
                https://nhlocal.github.io/AiTimeline
                (⭐ מעל 100 כוכבים בגיטהאב!)

                תגובה 1 תגובה אחרונה
                4
                • חגיח מנותק
                  חגיח מנותק
                  חגי
                  כתב ב נערך לאחרונה על ידי חגי
                  #15

                  הרעיון שלי היה לעשות המרת בסיסים, להמיר מבסיס 10 לבסיס 32 (בדקתי בגוגל, זה יוצא 6 ספרות.. אז זה לא מתאים, בבסיס 60 זה נראה טוב ובלי תווים מוזרים)
                  https://math.tools/calculator/base/10-60

                  תגובה 1 תגובה אחרונה
                  3
                  • dovidD מנותק
                    dovidD מנותק
                    dovid
                    ניהול
                    כתב ב נערך לאחרונה על ידי
                    #16

                    @חגי בסיס זה סה"כ שימוש באותיות כספרות נוספות, אז זה זהה למה שהציע @NH-LOCAL רק שהוא לא קרא לזה באותו שם. base64 זה בסיס נפוץ מאוד שיש בכל שפה פונקציה ישירה לייצר אותו ובבסיס הזה בחמש תווים יש די והותר.

                    כל ההסתעפות הזו היא ספקולציה למה הצורך של @WWW שלבטח רצה נטו ספרות ולא שום דבר אחר...

                    • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                    • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                    חגיח תגובה 1 תגובה אחרונה
                    2
                    • dovidD dovid

                      @חגי בסיס זה סה"כ שימוש באותיות כספרות נוספות, אז זה זהה למה שהציע @NH-LOCAL רק שהוא לא קרא לזה באותו שם. base64 זה בסיס נפוץ מאוד שיש בכל שפה פונקציה ישירה לייצר אותו ובבסיס הזה בחמש תווים יש די והותר.

                      כל ההסתעפות הזו היא ספקולציה למה הצורך של @WWW שלבטח רצה נטו ספרות ולא שום דבר אחר...

                      חגיח מנותק
                      חגיח מנותק
                      חגי
                      כתב ב נערך לאחרונה על ידי חגי
                      #17

                      @dovid כתב בקוד נגדי קצר:

                      @חגי בסיס זה סה"כ שימוש באותיות כספרות נוספות, אז זה זהה למה שהציע @NH-LOCAL רק שהוא לא קרא לזה באותו שם. base64 זה בסיס נפוץ מאוד שיש בכל שפה פונקציה ישירה לייצר אותו ובבסיס הזה בחמש תווים יש די והותר.

                      כל ההסתעפות הזו היא ספקולציה למה הצורך של @WWW שלבטח רצה נטו ספרות ולא שום דבר אחר...

                      בבסיס 64 (המובנה) יש לך ריפוד ב= וגם סימני +// שנראים פחות טוב. (וגם ההמרה המובנית היא בד"כ מbuffer\מחרוזת, ולא ממספר) סתם נראה לי שיותר קל לתת קוד נגדי בלי סלאש ("זה סלאש קדימה או אחורה? איזה כיוון זה סלאש אחורה? אהה.. זה איפה שהנקודה במקלדת.. רגע זה עשה לי נקודה, אהה.. אתה מתכוון איפה שהQ, אוקיי יש פה סלאש אחורה.. כלומר קדימה.. נו מה שאמרת..)
                      אם יש שם backtick\טילדה, אני מאחל הרבה הצלחה בהעברה בעל פה של התו 🙂
                      ("תעשה טילדה, זה שיפט + בקטיק, זה איפה שהנקודה פסיק כשאתה על עברית, אל תשכח שיפט!!! אוקיי מה המייל שלך אני אעביר לך את הקוד נגדי במייל")

                      (בעיקרון גם base62 יעשה את העבודה, זה הכי גבוה שאפשר בלי תווים שאינם אותיות ומספרים)

                      dovidD תגובה 1 תגובה אחרונה
                      3
                      • חגיח חגי

                        הקוד הנגדי חייב להיות מספרים?

                        WWWW מנותק
                        WWWW מנותק
                        WWW
                        כתב ב נערך לאחרונה על ידי WWW
                        #18

                        @חגי כתב בקוד נגדי קצר:

                        הקוד הנגדי חייב להיות מספרים?

                        כן.

                        WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                        תגובה 1 תגובה אחרונה
                        0
                        • dovidD מנותק
                          dovidD מנותק
                          dovid
                          ניהול
                          כתב ב נערך לאחרונה על ידי
                          #19

                          @WWW אם כבר חזרת, האם הקוד הקצר הוא ווידוא שלא טעו בטלפון, או שהוא חיסכון בנתינת המספר הארוך של הטלפון?

                          • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                          • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                          WWWW תגובה 1 תגובה אחרונה
                          0
                          • dovidD dovid

                            @WWW אם כבר חזרת, האם הקוד הקצר הוא ווידוא שלא טעו בטלפון, או שהוא חיסכון בנתינת המספר הארוך של הטלפון?

                            WWWW מנותק
                            WWWW מנותק
                            WWW
                            כתב ב נערך לאחרונה על ידי
                            #20

                            @dovid כתב בקוד נגדי קצר:

                            @WWW אם כבר חזרת, האם הקוד הקצר הוא ווידוא שלא טעו בטלפון, או שהוא חיסכון בנתינת המספר הארוך של הטלפון?

                            2 ציפורים במכה אחת...

                            WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                            dovidD תגובה 1 תגובה אחרונה
                            0
                            • חגיח חגי

                              @dovid כתב בקוד נגדי קצר:

                              @חגי בסיס זה סה"כ שימוש באותיות כספרות נוספות, אז זה זהה למה שהציע @NH-LOCAL רק שהוא לא קרא לזה באותו שם. base64 זה בסיס נפוץ מאוד שיש בכל שפה פונקציה ישירה לייצר אותו ובבסיס הזה בחמש תווים יש די והותר.

                              כל ההסתעפות הזו היא ספקולציה למה הצורך של @WWW שלבטח רצה נטו ספרות ולא שום דבר אחר...

                              בבסיס 64 (המובנה) יש לך ריפוד ב= וגם סימני +// שנראים פחות טוב. (וגם ההמרה המובנית היא בד"כ מbuffer\מחרוזת, ולא ממספר) סתם נראה לי שיותר קל לתת קוד נגדי בלי סלאש ("זה סלאש קדימה או אחורה? איזה כיוון זה סלאש אחורה? אהה.. זה איפה שהנקודה במקלדת.. רגע זה עשה לי נקודה, אהה.. אתה מתכוון איפה שהQ, אוקיי יש פה סלאש אחורה.. כלומר קדימה.. נו מה שאמרת..)
                              אם יש שם backtick\טילדה, אני מאחל הרבה הצלחה בהעברה בעל פה של התו 🙂
                              ("תעשה טילדה, זה שיפט + בקטיק, זה איפה שהנקודה פסיק כשאתה על עברית, אל תשכח שיפט!!! אוקיי מה המייל שלך אני אעביר לך את הקוד נגדי במייל")

                              (בעיקרון גם base62 יעשה את העבודה, זה הכי גבוה שאפשר בלי תווים שאינם אותיות ומספרים)

                              dovidD מנותק
                              dovidD מנותק
                              dovid
                              ניהול
                              כתב ב נערך לאחרונה על ידי
                              #21

                              @חגי הלכת רחוק. די בכך שיש גם את האות O וגם ספרת 0 וגם האות i גדולה ואות L קטנה והמצב אבוד.
                              זה בהחלט לא עשוי בשביל נוחות תקשורת.

                              • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                              • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                              תגובה 1 תגובה אחרונה
                              1
                              • WWWW WWW

                                @dovid כתב בקוד נגדי קצר:

                                @WWW אם כבר חזרת, האם הקוד הקצר הוא ווידוא שלא טעו בטלפון, או שהוא חיסכון בנתינת המספר הארוך של הטלפון?

                                2 ציפורים במכה אחת...

                                dovidD מנותק
                                dovidD מנותק
                                dovid
                                ניהול
                                כתב ב נערך לאחרונה על ידי
                                #22

                                @WWW כתב בקוד נגדי קצר:

                                @dovid כתב בקוד נגדי קצר:

                                @WWW אם כבר חזרת, האם הקוד הקצר הוא ווידוא שלא טעו בטלפון, או שהוא חיסכון בנתינת המספר הארוך של הטלפון?

                                2 ציפורים במכה אחת...

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

                                • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                WWWW תגובה 1 תגובה אחרונה
                                1
                                • dovidD dovid

                                  @WWW כתב בקוד נגדי קצר:

                                  @dovid כתב בקוד נגדי קצר:

                                  @WWW אם כבר חזרת, האם הקוד הקצר הוא ווידוא שלא טעו בטלפון, או שהוא חיסכון בנתינת המספר הארוך של הטלפון?

                                  2 ציפורים במכה אחת...

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

                                  WWWW מנותק
                                  WWWW מנותק
                                  WWW
                                  כתב ב נערך לאחרונה על ידי
                                  #23

                                  @dovid כתב בקוד נגדי קצר:

                                  אם זה לחסוך, חבל על הזמן, זה לא אפשרי.

                                  אין מנוס מלהשתמש ב DB.

                                  WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                                  A תגובה 1 תגובה אחרונה
                                  0
                                  • WWWW WWW

                                    @dovid כתב בקוד נגדי קצר:

                                    אם זה לחסוך, חבל על הזמן, זה לא אפשרי.

                                    אין מנוס מלהשתמש ב DB.

                                    A מנותק
                                    A מנותק
                                    avi rz
                                    כתב ב נערך לאחרונה על ידי
                                    #24

                                    @WWW כתב בקוד נגדי קצר:

                                    אין מנוס מלהשתמש ב DB.

                                    אם מפחיד אותך מאוד להשתמש ב db,
                                    תכניס ב json ותשמור אותו בשרת
                                    תקרא אותו ותעדכן אותו לפי הצורך.

                                    nigunN WWWW 2 תגובות תגובה אחרונה
                                    0
                                    • A avi rz

                                      @WWW כתב בקוד נגדי קצר:

                                      אין מנוס מלהשתמש ב DB.

                                      אם מפחיד אותך מאוד להשתמש ב db,
                                      תכניס ב json ותשמור אותו בשרת
                                      תקרא אותו ותעדכן אותו לפי הצורך.

                                      nigunN מנותק
                                      nigunN מנותק
                                      nigun
                                      כתב ב נערך לאחרונה על ידי
                                      #25

                                      @avi-rz כתב בקוד נגדי קצר:

                                      @WWW כתב בקוד נגדי קצר:

                                      אין מנוס מלהשתמש ב DB.

                                      אם מפחיד אותך מאוד להשתמש ב db,
                                      תכניס ב json ותשמור אותו בשרת
                                      תקרא אותו ותעדכן אותו לפי הצורך.

                                      אם כבר SQLite

                                      מייל: nigun@duck.com

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • A avi rz

                                        @WWW כתב בקוד נגדי קצר:

                                        אין מנוס מלהשתמש ב DB.

                                        אם מפחיד אותך מאוד להשתמש ב db,
                                        תכניס ב json ותשמור אותו בשרת
                                        תקרא אותו ותעדכן אותו לפי הצורך.

                                        WWWW מנותק
                                        WWWW מנותק
                                        WWW
                                        כתב ב נערך לאחרונה על ידי
                                        #26

                                        @avi-rz כתב בקוד נגדי קצר:

                                        אם מפחיד אותך מאוד להשתמש ב db,

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

                                        WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                                        dovidD תגובה 1 תגובה אחרונה
                                        2
                                        • WWWW WWW

                                          @avi-rz כתב בקוד נגדי קצר:

                                          אם מפחיד אותך מאוד להשתמש ב db,

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

                                          dovidD מנותק
                                          dovidD מנותק
                                          dovid
                                          ניהול
                                          כתב ב נערך לאחרונה על ידי dovid
                                          #27

                                          @WWW כתב בקוד נגדי קצר:

                                          עוד שדה של קוד רנדומלי + ספרת ביקורת

                                          ראשית אתה לא צריך את שניהם, אם אתה עושה קוד רנדומלי, אתה יכול לכלול בו עצמו ספרת ביקורת.
                                          שנית אתה לא צריך בשום מצב לשמור ספרת ביקורת כי היא ניתנת לחישוב,
                                          לכן למשל אתה יכול להשתמש עם הID שיש גם ככה בכל טבלה, אבל להוסיף לזה ספרת ביקורת, למשל שורה מס 13 תהיה 135 לפי אלגוריתם luhn, וכשהלקוח מביא לך אתה בודק אם 13 מתאים עם 5, וא"כ שולף לפי הID 13.

                                          • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
                                          • בכל נושא אפשר ליצור קשר dovid@tchumim.com
                                          WWWW תגובה 1 תגובה אחרונה
                                          2
                                          תגובה
                                          • תגובה כנושא
                                          התחברו כדי לפרסם תגובה
                                          • מהישן לחדש
                                          • מהחדש לישן
                                          • הכי הרבה הצבעות


                                          • 1
                                          • 2
                                          בא תתחבר לדף היומי!
                                          • התחברות

                                          • אין לך חשבון עדיין? הרשמה

                                          • התחברו או הירשמו כדי לחפש.
                                          • פוסט ראשון
                                            פוסט אחרון
                                          0
                                          • דף הבית
                                          • קטגוריות
                                          • פוסטים אחרונים
                                          • משתמשים
                                          • חיפוש
                                          • חוקי הפורום