דילוג לתוכן
  • חוקי הפורום
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • 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. להורדה | סקריפט python שבודק תקינות מספרי ת"ז וכרטיסי אשראי לפי ספרת ביקורת

להורדה | סקריפט python שבודק תקינות מספרי ת"ז וכרטיסי אשראי לפי ספרת ביקורת

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

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

    Corquet = "מספר תקין"
    unCorquet = "מספר לא תקין"
    
    def luhn_algorithm(num):
        number = int(num[-1]) #חלץ ספרת ביקורת
        for i in num[-2::-2]: #הכפלה ב2 לכל ספרה שניה
            i = int(i)*2
            if i > 9:
                i -=9
            number+=i
        for i in num[-3::-2]:
            number+=int(i)
        if number %10 == 0:
            print (Corquet)
        else:
            print (unCorquet)
            
    def id_number(num):
        if len(num) != 9:
            print (unCorquet)
        else:
            luhn_algorithm(num)
            
    def cradit_card(num): #פונקציה זו לא עובדת בכרטיסי אשראי של ישראכרט
        compeny = input("הזן את שם חברת האשראי באנגלית לעקיפה על שלב זה הקש אנטר\n")
        compeny_dic = {"visa":16, "mastercard" :16 ,"americanexpress":15, "diners":14}
        len_compeny = compeny_dic.get(compeny.lower())
        if compeny.lower() in compeny_dic and len(num) == len_compeny or compeny == "" and 19 > len(num) > 7:
            luhn_algorithm(num)
        elif compeny.lower() == "isracard":
            print("סקריפט זה אינו בודק כרטיסי אשראי של ישראכרט")
        elif compeny.lower() not in compeny_dic and 19 > len(num) > 7:
            not_in_dic = print("חברה זו לא נמצאת במילון, לא נוכל לבדוק לפי מספר הספרות")
            luhn_algorithm(num)
        else:
            print(unCorquet)
        
            
    def bank_acunt(num):
        pass
            
    def main(num): 
        type_of_num = input("לתעודת זהות הקש 1, לכרטיס אשראי הקש 2, לחשבון בנק הקש 3\n")
        if type_of_num == "1":
            id_number(num)
        elif type_of_num == "2":
            cradit_card(num)
        elif type_of_num == "3":
            bank_acunt(num)
        else:
            print("בחר באחת מהאפשרויות המוצעות")
            main(num)
    
    def input_number():
        while True:
            num = input("הזן מספר תעודת זהות, כרטיס אשראי או חשבון בנק\n")
            if num.isnumeric():
                main(num)
            elif num.lower() == "exit":
                break
            else:
                print("הזן ספרות בלבד")
    
    input_number()
    

    אשמח לשמוע הערות והארות

    יום_שמחי יוסי מחשביםי FSHLOMOF 3 תגובות תגובה אחרונה
    8
    • יום_שמחי מנותק
      יום_שמחי מנותק
      יום_שמח
      השיב להאדם החושב ב נערך לאחרונה על ידי
      #2

      @האדם-החושב מה זה אומר?
      1dac468d-301a-42ab-bbf3-9c2892ca2032-image.png

      אהבת תן לייק

      Y 2 תגובות תגובה אחרונה
      0
      • Y מנותק
        Y מנותק
        Yehuda 1
        השיב ליום_שמח ב נערך לאחרונה על ידי
        #3
        פוסט זה נמחק!
        תגובה 1 תגובה אחרונה
        0
        • Y מנותק
          Y מנותק
          Yehuda 1
          השיב ליום_שמח ב נערך לאחרונה על ידי
          #4

          @יום_שמח @יום_שמח הקוד נראה תקין בהחלט בשורה 33, תריץ באתר אחר, זה לא נראה מקצועי (שים לב לכותרת למעלה באתר)

          יום_שמחי תגובה 1 תגובה אחרונה
          0
          • יום_שמחי מנותק
            יום_שמחי מנותק
            יום_שמח
            השיב לYehuda 1 ב נערך לאחרונה על ידי
            #5

            @Yehuda-1 איזה אתר למשל?

            אהבת תן לייק

            Y תגובה 1 תגובה אחרונה
            0
            • Y מנותק
              Y מנותק
              Yehuda 1
              השיב ליום_שמח ב נערך לאחרונה על ידי
              #6

              @יום_שמח
              https://www.online-python.com
              https://www.programiz.com/python-programming/online-compiler/
              https://www.onlinegdb.com/online_python_compiler
              https://www.w3schools.com/python/python_compiler.asp

              יש עוד מלא, חיפוש פשוט בגוגל

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

                @האדם-החושב קובץ אקסל לחישוב ספרת ביקורת:
                תעודת זהות-ספרת ביקורת.xlsx

                תגובה 1 תגובה אחרונה
                2
                • FSHLOMOF מנותק
                  FSHLOMOF מנותק
                  FSHLOMO
                  השיב להאדם החושב ב נערך לאחרונה על ידי
                  #8

                  @האדם-החושב כתב בלהורדה | סקריפט python שבודק תקינות מספרי ת"ז וכרטיסי אשראי לפי ספרת ביקורת:

                  Corquet = "מספר תקין"
                  unCorquet = "מספר לא תקין"

                  def luhn_algorithm(num):
                  number = int(num[-1]) #חלץ ספרת ביקורת
                  for i in num[-2::-2]: #הכפלה ב2 לכל ספרה שניה
                  i = int(i)*2
                  if i > 9:
                  i -=9
                  number+=i
                  for i in num[-3::-2]:
                  number+=int(i)
                  if number %10 == 0:
                  print (Corquet)
                  else:
                  print (unCorquet)

                  def id_number(num):
                  if len(num) != 9:
                  print (unCorquet)
                  else:
                  luhn_algorithm(num)

                  def cradit_card(num): #פונקציה זו לא עובדת בכרטיסי אשראי של ישראכרט
                  compeny = input("הזן את שם חברת האשראי באנגלית לעקיפה על שלב זה הקש אנטר\n")
                  compeny_dic = {"visa":16, "mastercard" :16 ,"americanexpress":15, "diners":14}
                  len_compeny = compeny_dic.get(compeny.lower())
                  if compeny.lower() in compeny_dic and len(num) == len_compeny or compeny == "" and 19 > len(num) > 7:
                  luhn_algorithm(num)
                  elif compeny.lower() == "isracard":
                  print("סקריפט זה אינו בודק כרטיסי אשראי של ישראכרט")
                  elif compeny.lower() not in compeny_dic and 19 > len(num) > 7:
                  not_in_dic = print("חברה זו לא נמצאת במילון, לא נוכל לבדוק לפי מספר הספרות")
                  luhn_algorithm(num)
                  else:
                  print(unCorquet)

                  def bank_acunt(num):
                  pass

                  def main(num):
                  type_of_num = input("לתעודת זהות הקש 1, לכרטיס אשראי הקש 2, לחשבון בנק הקש 3\n")
                  if type_of_num == "1":
                  id_number(num)
                  elif type_of_num == "2":
                  cradit_card(num)
                  elif type_of_num == "3":
                  bank_acunt(num)
                  else:
                  print("בחר באחת מהאפשרויות המוצעות")
                  main(num)

                  def input_number():
                  while True:
                  num = input("הזן מספר תעודת זהות, כרטיס אשראי או חשבון בנק\n")
                  if num.isnumeric():
                  main(num)
                  elif num.lower() == "exit":
                  break
                  else:
                  print("הזן ספרות בלבד")

                  input_number()
                  אשמח לשמוע הערות והארות

                  380bd7ea-27f5-40f7-a1e6-9cb43250e899-image.png

                  tisotbzol@gmail.com

                  Y תגובה 1 תגובה אחרונה
                  0
                  • Y מנותק
                    Y מנותק
                    Yehuda 1
                    השיב לFSHLOMO ב נערך לאחרונה על ידי Yehuda 1
                    #9

                    @FSHLOMO הרצת את זה כולל השורה "אשמח לשמוע הערות והארות", תעתיק רק את הקוד ותנסה שוב
                    490e7faa-a297-4905-9602-b9b167b0b251-image.png

                    תגובה 1 תגובה אחרונה
                    0

                    • התחברות

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

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