2016-11-24 17 views
0

プログラミングに慣れていないため、コードを書いたかったので、これは次のようになりました。(btw、bsn numberは私の国の登録番号です。ランダムbsn番号を確認してください)ユーザーの入力を受けて数値を確認する

check_digits = [9, 8, 7, 6, 5, 4, 3, 2, -1] 
bsn = input('Which bsn number do you want to check?') 
total = 0 

def has_valid_bsn_length(bsn): 
    len(bsn) == 9 
    if len(bsn) != 9: 
     print('Not a valid bsn number') 
    else: 
     return bsn 


def has_valid_check_digit(bsn): 
    for i in range(0, 9): 
     digit = int(bsn[i]) 
     result = digit * check_digits[i] 
     total = result 

if total % 11 ==0: 
    print('Valid bsn') 
else: 
    print('Not a valid bsn number') 

このコードを試しても、答えは表示されません。あなたがコードをどのように変更して正しく動作するか知っている人はいますか?

+1

コードが実行されていますか?あなたがそれを見逃した場合、あなたは 'has_valid_bsn_length'関数と' has_valid_check_digit'関数を呼び出すことはありません –

+0

私はこれらの2つをメソッドにする必要があります。私は正しく行ったと思っています。 –

答えて

0

6行目に構文エラーがあります。len(bsn) == 9 また、関数を呼び出す必要があります。今のところ、それらを定義したばかりです。 このような呼び出しを追加します。result = has_valid_check_digit(bsn)

2番目の関数は値を返しません。

+0

OPが出力されないと答えているかもしれないが、構文エラーは出ない – vks

関連する問題