Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
4 Trả lời
6675 Lượt xem

c = Taxable Income if c <= 170000:

    result = c

elif 170000<c<=360000:

      result = round(0.09 * (c - 170000))

elif 360000<c<=540000:

      result = round(17,100 + (0.2 * (c - 360000)))

elif 540000<c<=720000:

      result = round(53100 + (0.25 * (c - 540000)))

elif c>720000:

     result = round(98100 + (0.3 * (c - 720000)))

else:

       result = 0

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Yes, Python recognize code blocks by indentation. Niyas, you missed out the variable assignation..

c = [Taxable Income] -> this should be a value or a variable calculated in another rule.

if c <= 170000:
    c = Taxable_Income
    result = c
elif 170000 < c <= 360000:
    result = round(0.09 * (c - 170000))
elif 360000 < c <= 540000:
    result = round(17, 100 + 0.2 * (c - 360000))
elif 540000 < c <= 720000:
    result = round(53100 + 0.25 * (c - 540000))
elif c > 720000:
    result = round(98100 + 0.3 * (c - 720000))
else:
    result = 0
Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hey, Your code seems correct. May be you are doing mistake while write the same code in your rule. Just remind you Do not add any space before your statement in rule. in your case c =Taxable_income start with first column in rule.

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Try this,

# -*- coding: utf-8 -*-
if c <= 170000:
c = Taxable_Income
result = c elif 170000 < c <= 360000:
result = round(0.09 * (c - 170000))
elif 360000 < c <= 540000:
result = round(17, 100 + 0.2 * (c - 360000))
elif 540000 < c <= 720000:
result = round(53100 + 0.25 * (c - 540000))
elif c > 720000:
result = round(98100 + 0.3 * (c - 720000))
else:
result = 0

Just corrected the syntax and white spacing.

Thanks

Ảnh đại diện
Huỷ bỏ
Tác giả Câu trả lời hay nhất

Still not working


Ảnh đại diện
Huỷ bỏ