דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • בהיר
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • כהה
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. קטגוריות בהרצה
  3. תכנות
  4. Python
  5. עזרה הדדית - Python
  6. סקריפט פייתון שפותר חידה בפחות מ 10 שניות

סקריפט פייתון שפותר חידה בפחות מ 10 שניות

מתוזמן נעוץ נעול הועבר עזרה הדדית - Python
6 פוסטים 3 כותבים 435 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • א מנותק
    א מנותק
    איסתרק השלישי
    כתב ב נערך לאחרונה על ידי
    #1

    לפני תקופה התפרסמה במייל חידה כדלהלן: (קרדיט - פיצוחים)
    66704162-4977-4e98-adf4-fb92f2c2dff6-image.png

    קצת קשה לפתור את זה בראש... אבל בשביל זה יש מחשב שעושה מליוני חישובים בשניה, כתבתי את הסקריפט הבא שהביא את הפתרון בתוך פחות מ 10 שניות, לאחר לא פחות מ 948,941 נסיונות:

    import itertools
    num_list = itertools.permutations(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'])
    test = 0
    for t in num_list:
        test += 1
        try:
            a1 = eval(t[4] + t[3] + t[2] + t[1] + t[1])
            a2 = eval(t[3] + t[6] + t[5] + t[3] + t[1])
            a3 = eval(t[2] + t[7])
            a4 = eval(t[3] + t[6] + t[0] + t[9] + t[8] + t[4])
        except:
            pass
        if a1 + a2 + a3 == a4:
            print(f'הפתרון נמצא לאחר {test} נסיונות')
            print(a1, a2, a3, a4)
    

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

    צדיק תמיםצ פ 3 תגובות תגובה אחרונה
    1
    • א איסתרק השלישי

      לפני תקופה התפרסמה במייל חידה כדלהלן: (קרדיט - פיצוחים)
      66704162-4977-4e98-adf4-fb92f2c2dff6-image.png

      קצת קשה לפתור את זה בראש... אבל בשביל זה יש מחשב שעושה מליוני חישובים בשניה, כתבתי את הסקריפט הבא שהביא את הפתרון בתוך פחות מ 10 שניות, לאחר לא פחות מ 948,941 נסיונות:

      import itertools
      num_list = itertools.permutations(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'])
      test = 0
      for t in num_list:
          test += 1
          try:
              a1 = eval(t[4] + t[3] + t[2] + t[1] + t[1])
              a2 = eval(t[3] + t[6] + t[5] + t[3] + t[1])
              a3 = eval(t[2] + t[7])
              a4 = eval(t[3] + t[6] + t[0] + t[9] + t[8] + t[4])
          except:
              pass
          if a1 + a2 + a3 == a4:
              print(f'הפתרון נמצא לאחר {test} נסיונות')
              print(a1, a2, a3, a4)
      

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

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

      @איסתרק-השלישי לא הבנתי, איך זה פותר את החידה? למה "אל" שווה 57? לפי איזה חישוב?
      ומה זה אומר "ספרותיו התחלפו באותיות"? גימטריה?

      רוצה לזכור קריאת שמע בזמן? לחץ כאן! || אתר שכולו מדריכים

      א תגובה 1 תגובה אחרונה
      0
      • צדיק תמיםצ צדיק תמים

        @איסתרק-השלישי לא הבנתי, איך זה פותר את החידה? למה "אל" שווה 57? לפי איזה חישוב?
        ומה זה אומר "ספרותיו התחלפו באותיות"? גימטריה?

        א מנותק
        א מנותק
        איסתרק השלישי
        כתב ב נערך לאחרונה על ידי
        #3

        @צדיק-תמים אוי לא... זה מביא תוצאה שונה לחלוטין...
        ספרותיו התחלפו באותיות הכוונה שכל אות מרמזת לספרה, כאשר אין שתי אותיות מרמזות לאותו מספר. זאת אומרת שאם לצורך הענין 'כ' שווה 1 אז 'ל' לא יהיה שווה 1.
        דו"ק...

        תגובה 1 תגובה אחרונה
        1
        • א איסתרק השלישי

          לפני תקופה התפרסמה במייל חידה כדלהלן: (קרדיט - פיצוחים)
          66704162-4977-4e98-adf4-fb92f2c2dff6-image.png

          קצת קשה לפתור את זה בראש... אבל בשביל זה יש מחשב שעושה מליוני חישובים בשניה, כתבתי את הסקריפט הבא שהביא את הפתרון בתוך פחות מ 10 שניות, לאחר לא פחות מ 948,941 נסיונות:

          import itertools
          num_list = itertools.permutations(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'])
          test = 0
          for t in num_list:
              test += 1
              try:
                  a1 = eval(t[4] + t[3] + t[2] + t[1] + t[1])
                  a2 = eval(t[3] + t[6] + t[5] + t[3] + t[1])
                  a3 = eval(t[2] + t[7])
                  a4 = eval(t[3] + t[6] + t[0] + t[9] + t[8] + t[4])
              except:
                  pass
              if a1 + a2 + a3 == a4:
                  print(f'הפתרון נמצא לאחר {test} נסיונות')
                  print(a1, a2, a3, a4)
          

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

          פ מנותק
          פ מנותק
          פייתוניסט
          כתב ב נערך לאחרונה על ידי
          #4

          @איסתרק-השלישי יפה מאוד! אבל למה אתה צריך את ה try except למה שיהיו חריגות
          קוד מקצועי!!

          תגובה 1 תגובה אחרונה
          0
          • א איסתרק השלישי

            לפני תקופה התפרסמה במייל חידה כדלהלן: (קרדיט - פיצוחים)
            66704162-4977-4e98-adf4-fb92f2c2dff6-image.png

            קצת קשה לפתור את זה בראש... אבל בשביל זה יש מחשב שעושה מליוני חישובים בשניה, כתבתי את הסקריפט הבא שהביא את הפתרון בתוך פחות מ 10 שניות, לאחר לא פחות מ 948,941 נסיונות:

            import itertools
            num_list = itertools.permutations(['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'])
            test = 0
            for t in num_list:
                test += 1
                try:
                    a1 = eval(t[4] + t[3] + t[2] + t[1] + t[1])
                    a2 = eval(t[3] + t[6] + t[5] + t[3] + t[1])
                    a3 = eval(t[2] + t[7])
                    a4 = eval(t[3] + t[6] + t[0] + t[9] + t[8] + t[4])
                except:
                    pass
                if a1 + a2 + a3 == a4:
                    print(f'הפתרון נמצא לאחר {test} נסיונות')
                    print(a1, a2, a3, a4)
            

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

            פ מנותק
            פ מנותק
            פייתוניסט
            כתב ב נערך לאחרונה על ידי פייתוניסט
            #5

            @איסתרק-השלישי כתב בסקריפט פייתון שפותר חידה בפחות מ 10 שניות:

            לאחר לא פחות מ 948,941 נסיונות

            מתוך 3,628,800 אפשרויות!!!

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

              אם כבר מדברים על פתרון חידות בפייתון הנה סקריפט שפותר את החידה הבאה:

              קיים מספר בעל 5 ספרות אשר אם תכתבו 1 מימינו הוא יהיה גדול פי 3 מאשר אם תכתבו את המספר בתוספת 1 לשמאלו, מהו המספר?

              קוד:

              for i in range(10000,100000):
                  if  ((i * 10) + 1) == (i + 100000) * 3:
                      print(i)
                      break
              
              תגובה 1 תגובה אחרונה
              1

              שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

              נמאס לכם לגלול בין אותם הפוסטים בכל ביקור? כשנרשמים לחשבון, תמיד תחזרו בדיוק למקום שבו הייתם קודם, ותוכלו לבחור לקבל התראות על תגובות חדשות (בין אם במייל, ובין אם בהתראת פוש). תוכלו גם לשמור סימניות ולפרגן ב-upvote לפוסטים כדי להביע הערכה לחברי קהילה אחרים.

              בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

              הרשמה התחברות

              • התחברות

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

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