Stuck on paint costs | Sololearn: Learn to code for FREE!

+1

Stuck on paint costs

Not sure whats wrong with my code, outputs a number in the 10000s paint = int(input() * 5) total = paint + 40 tax = int(total / 10) trueTotal = int(tax + total) print(trueTotal)

6/29/2022 6:29:48 PM

Datboi

11 Answers

New Answer

+2

int(input() * 5) converts to integer a 5 times concatenation of the input string. So, if you enter "1", paint will become 11111.

+1

Is it in python that you need // to divide properly?

+1

Ausgrindtube It depends on what "properly" means in each context. // is "floor division".

+1

Emerson Prado , I fixed that part with int(input()) * 5, which gave me correct for most test cases, but it still fails on 3 & 4

+1

Datboi Let us see your actual code, instead of a copy and changes scattered among amswers. Pls edit your question description and include a link to your code in Code Playground - use "+" button. This way, everyone can debug, it's always updated, and easy to find.

+1

Datboi Get used to the idea of linking the code in the question description, instead of in answers. Some more answers and this will get lost among the others. That said, two questions: 1. What is the task? 2. Why do you convert to int several times?

+1

Datboi OK. Try removing all integer conversions and roundings, and see the results. We'll be in a clean state, at least.

+1

Emerson Prado , Thanks for the help, I managed to solve it by using the math.ceil function Import math math.ceil()

0

Ausgrindtube , making it total // 10 doesn’t help either

0

Emerson Prado https://code.sololearn.com/cwQRW4aWD7Zf/?ref=app

0

Emerson Prado, the task is to take the number of paint colours, multiply by 5 for price, add 40 for the canvas and add 10% of paint and canvas for the tax. And the reason I converted to int multiple times was because I was trying to fix the problem I had earlier