Build a Movie Ticket Booking Calculator - Step 20

Tell us what’s happening:

I followed instructions but still stuck on step 20- someone please assist

error reads: You should have print('Service charges:', service_charges) below your if...elif...else statement.

if age >= 21 or age >= 18 and (show_time != ‘Evening’ or is_member):
print(‘Ticket booking condition satisfied’)

service_charges = 0
if seat_type == 'Premium':
    service_charges = 5        
elif seat_type == 'Gold':
     service_charges = 3
else:
     service_charges = 0
     print('Service charges:', service_charges)    

else:
print(‘Ticket booking failed due to restrictions’)

Your code so far

base_price = 15
age = 21
seat_type = 'Gold'
show_time = 'Evening'

if age > 17:
    print('User is eligible to book a ticket')

if age >= 21:
    print('User is eligible for Evening shows')
else:
    print('User is not eligible for Evening shows')

is_member = False
is_weekend = False

discount = 0
if is_member and age >= 21:
    discount = 3
    print('User qualifies for membership discount')
else:
    print('User does not qualify for membership discount')
print('Discount:', discount)

extra_charges = 0
if is_weekend or show_time == 'Evening':
    extra_charges = 2
    print('Extra charges will be applied')
else:
    print('No extra charges will be applied')
print('Extra charges:', extra_charges)

if age >= 21 or age >= 18 and (show_time != 'Evening' or is_member):
    print('Ticket booking condition satisfied')

    service_charges = 0
    if seat_type == 'Premium':
        service_charges = 5        

# User Editable Region

    elif seat_type == 'Gold':
         service_charges = 3
    else:
         service_charges = 0
         print('Service charges:', service_charges)    

# User Editable Region

else:
    print('Ticket booking failed due to restrictions')


Your browser information:

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

Challenge Information:

Build a Movie Ticket Booking Calculator - Step 20

Hi @Pareshni , welcome to freeCodeCamp’s forum ! :waving_hand:

Here, you are asked, as you said, to

So that in every case, the print statement is used.

But here, since you have an indent before the print, it is included in the else! So now, your code does :

→ if condition1 : action1

→ if failed previous and condition2 : action2

→ if failed all : action3, print()

(Idk if this was clear)

do you think that the print is below or inside the else here? where were you asked to put it?

Thank you for the reply however I have tried both and none are working. I tried these before posting here: This one is directly below the if elif else:

the print there is correct, but check what you need to assign to service_charges instead inside the else (or reset the step, that assignment was written in a previous step)

I am sorry but this is not helping and not making sense to me. I did what was required. where exactly is the issue?

you changed the assignment of sevice_charges in the else, it should not be service_charges = 0, so now the tests do not recognise the position of the print I guess

if you reset the step, you get the correct assignment back

would you be able to show me a working script so I can compare? I followed the instructions carefully and the service charges = 0 was part of the instructions from the previous step. and If i reset the step it breaks- it would really be helpful if you send me working code to compare please- I also cannot remove the service charges = 0 as that would break the condition.

you can reset the step, it’s this button image, on the right of the Check your Code button

there is a service_charges = 0 above the if, there does not need to be one inside the else, inside the else there should be a different number assigned

I do know where reset is. however I am still stuck. would you mind posting the solution.

if you reset the step and use the same code you are going to pass, find the reset button where indicated with the arrow

I am now not sure if this reply is a joke? did you even read my issue? this is really not helpful.

I’m sorry, I wrongly read your post, I read it as you did not know where it was, sorry

you had the correct elif, and the print below the else, if you fixed the content of the else it should pass

what is your current code?