Learn How to Work with Numbers and Strings by Implementing the Luhn Algorithm - Step 32

Tell us what’s happening: my code does not work. The task I have to fulfill: Return the result of comparing 0 to total modulo 10

Your code so far

def verify_card_number(card_number):
    sum_of_odd_digits = 0
    card_number_reversed = card_number[::-1]
    odd_digits = card_number_reversed[::2]

    for digit in odd_digits:
        sum_of_odd_digits += int(digit)

    sum_of_even_digits = 0
    even_digits = card_number_reversed[1::2]
    for digit in even_digits:
        number = int(digit) * 2
        if number >= 10:
            number = (number // 10) + (number % 10)
        sum_of_even_digits += number

# User Editable Region

    total = sum_of_odd_digits + sum_of_even_digits
    print(total)
result 0 == total % 10

# User Editable Region

def main():
    card_number = '4111-1111-4555-1142'
    card_translation = str.maketrans({'-': '', ' ': ''})
    translated_card_number = card_number.translate(card_translation)

    verify_card_number(translated_card_number)

main()

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Safari/537.36

Challenge Information:

Learn How to Work with Numbers and Strings by Implementing the Luhn Algorithm - Step 32

you need to use the return keyword, result is not a valid keyword to use. Also you need to indent the line correctly so that it is inside the function

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.