Найти - Пользователи
Полная версия: Прошу обьяснить почему код не верен.
Начало » Центр помощи » Прошу обьяснить почему код не верен.
1
Sous
Собственно решал задачку на циклы.
Условие
Вклад в банке составляет x рублей. Ежегодно он увеличивается на p процентов, после чего дробная часть копеек отбрасывается. Определите, через сколько лет вклад составит не менее y рублей.

Выражение «дробная часть копеек отбрасывается» означает, что если у вас оказалось 123.4567 рублей, т. е. 123 рубля и 45.67 копеек, то после округления у вас получится 123 рубля и 45 копеек, т.е. 123.45 рублей.

Программа получает на вход три натуральных числа: x, p, y и должна вывести одно целое число.

Проверка на сайте показало что верно но кроме значений 1,1,2 . Вместо 100 лет вышло 75 .
x=int(input())
p=int(input())
y=int(input())
year=0
while x<y:
year+=1
x+=round((x/100)*p,2)
print(year)
py.user.next
>>> 123.4567
123.4567
>>> int(123.4567 * 100) / 100
123.45
>>>
old_monty
Sous
Проверка на сайте показало что верно но кроме значений 1,1,2 . Вместо 100 лет вышло 75 .
Так ведь и должно выйти 75, разве нет?
Сложные проценты
Sous
На сайте ответ должен быть 100. У меня выходит 75,а все остальное верное. Получается это у них что то не так с ответом. Из 6 вариантов только один непроходит. Код изменил но результат тот же 75


x=int(input())
p=int(input())
y=int(input())
year=0
while x<y:
year+=1
x + = ( x/100 )*p
x = ( x*100 )/100
print(year)
Chaynik01
Sous, Вот так получается 100:
x=int(input())
p=int(input())
y=int(input())
year=0
while x<y:
year+=1
x+= ((x/100)*p)
x= (x*100)//1/100
print(year)

При твоем варианте не могу понять почему, но округление до сотых не происходит…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB