Азы арифметических выражеий Python3
В тупике второй вечер из-за этого:
ЗадачаНа которую необходимо дать ответ.
Дополните программу, которая вычисляет значение переменной y по формуле:
y = (1-x**2+2,5x**3+x**4)**2
Значение переменной x целое и задается с клавиатуры.
Вывести вычисленное значение переменной y на экран
x =
y =
print(y) # редактировать эту строку нельзя
Задание брал с silvertests.ru, практика по арифметическим выражениям.Не школьник, просто учусь)
Ответы (2 шт):
Ошибка при переводе в код может возникнуть из-за того, что десятичные дроби указываются через точку. То есть: 2.5 - корректная запись числа «два с половиной». 2,5 - это два разных числа (кортеж, если угодно)
Также обратите внимание на то, что конструкция вида 2x некорректна с точки зрения кода. Необходимо четко прописывать знаки арифметических операций 2 * x. Полное решение задачи в вашем случае будет выглядеть так:
x = int(input())
y = (1-x**2+(2.5*x)**3+x**4)**2
print(y)
Думаю что программа должна принять следующий вид:
x = float(input())
y = ((1-x)**2+(2.5*x)**3+x**4)**2
print(y)
x = float(input()) - конструкция получения данных из консольного ввода, который преобразовывается в число с плавающей точкой, так же при необходимости значение можно задать сразу, к примеру x = 5.6
в данном случае конструкция (1-x**2+2,5x**3+x**4)**2 может читаться как:
((1-x)^2 + (2.5*x)^3 + x^4)^2, где символ ^ равен **, что равно возведению в степень. Запятая в конструкции 2,5x была заменена на точку т.к. это синтаксис записи числа с плавающей точкой принятый в Python.