«Мистер Телевокс» — один из первых американских роботов
Вот уже несколько сотен лет подряд человечество хочет максимально облегчить себе жизнь, переложив выполнение сложных задач на плечи роботов. И это у нас весьма хорошо получается, потому что уже сегодня любой желающий может купить робота-пылесоса за не такие уж и большие деньги и забыть о мытье полов. В больницах некоторых стран стран частью персонала являются роботы, предназначенные для ухаживания за пациентами. А на заводах производственные механизмы в автоматическом режиме собирают электронику и даже огромные автомобили. Но когда человечество вообще задумалось о разработке роботов и когда изобретателям удалось их создать? Многие скажут, что первого робота в мире создал всем известный Леонардо да Винчи — ведь неспроста среди его документов имелась схема сборки человекоподобного механизма? Но, на самом деле, первые роботы были созданы задолго до рождения итальянского художника и ученого.
Первая ошибка, переменная названа как встроенная функция в Python, так делать не нужно.
Вторая ошибка, забыл ограничить if, из-за которого не будет выполняться elif. Меняем его на:
if (sum>=500) and (sum<1000)
Третья ошибка, расчет финальной цены неверный, если использовать вариант, который дан сейчас, то мы найдем процент от этой суммы, а не сумму с начисленными процентами. Меняем на:
final_sum = sums * (1+first_sale)
final_sum = sums * (1+second_sale)
Четвертая ошибка, почему у нас вывод финальной суммы через else? Получается, что если выполняются условия выше, то не выводится сумма. Этот вывод мы можем опустить ниже, а в else написать, что ввели неверные данные (если конечно подразумевается, что пользователь не должен вводить число меньшее 500), либо в elif засунуть эту строку, полной задачи у меня нет, поэтому сам с этим разберешься.
Пятая ошибка, мы не можем сложить строку с числом, нам нужно преобразовать нашу переменную к строке с str().
«Мистер Телевокс» — один из первых американских роботов
Вот уже несколько сотен лет подряд человечество хочет максимально облегчить себе жизнь, переложив выполнение сложных задач на плечи роботов. И это у нас весьма хорошо получается, потому что уже сегодня любой желающий может купить робота-пылесоса за не такие уж и большие деньги и забыть о мытье полов. В больницах некоторых стран стран частью персонала являются роботы, предназначенные для ухаживания за пациентами. А на заводах производственные механизмы в автоматическом режиме собирают электронику и даже огромные автомобили. Но когда человечество вообще задумалось о разработке роботов и когда изобретателям удалось их создать? Многие скажут, что первого робота в мире создал всем известный Леонардо да Винчи — ведь неспроста среди его документов имелась схема сборки человекоподобного механизма? Но, на самом деле, первые роботы были созданы задолго до рождения итальянского художника и ученого.
Объяснение:
Ошибок тут достаточно, по всем пройдемся.
Первая ошибка, переменная названа как встроенная функция в Python, так делать не нужно.
Вторая ошибка, забыл ограничить if, из-за которого не будет выполняться elif. Меняем его на:
if (sum>=500) and (sum<1000)
Третья ошибка, расчет финальной цены неверный, если использовать вариант, который дан сейчас, то мы найдем процент от этой суммы, а не сумму с начисленными процентами. Меняем на:
final_sum = sums * (1+first_sale)
final_sum = sums * (1+second_sale)
Четвертая ошибка, почему у нас вывод финальной суммы через else? Получается, что если выполняются условия выше, то не выводится сумма. Этот вывод мы можем опустить ниже, а в else написать, что ввели неверные данные (если конечно подразумевается, что пользователь не должен вводить число меньшее 500), либо в elif засунуть эту строку, полной задачи у меня нет, поэтому сам с этим разберешься.
Пятая ошибка, мы не можем сложить строку с числом, нам нужно преобразовать нашу переменную к строке с str().
Исправленный код:
sums = int(input("Введите сумму покупки:"))
first_sale = 0.03
second_sale = 0.05
if sums >= 500 and sums < 1000:
final_sum = sums * (1+first_sale)
print("Финальная сумма равна: " + str(final_sum))
elif sums >= 1000:
final_sum = sums * (1+second_sale)
print("Финальная сумма равна: " + str(final_sum))
else:
print("Введены неверные данные")