Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
4 Replies
6595 Tampilan

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

Avatar
Buang
Jawaban Terbai

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
Avatar
Buang
Jawaban Terbai

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.

Avatar
Buang
Jawaban Terbai

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

Avatar
Buang
Penulis Jawaban Terbai

Still not working


Avatar
Buang