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

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

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

מתוזמן נעוץ נעול הועבר עזרה הדדית - Python
6 פוסטים 3 כותבים 294 צפיות 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

              • התחברות

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

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