Найти - Пользователи
Полная версия: Помогите с решением простейшей задачи по Python (чайнику).
Начало » Python для новичков » Помогите с решением простейшей задачи по Python (чайнику).
1
Dikinz
Написать функцию arithmetic, принимающую 3 аргумента: первые 2 - числа, третий - операция, которая должна быть произведена над ними. Если третий аргумент +, сложить их; если —, то вычесть; * — умножить; / — разделить (первое на второе). В остальных случаях вернуть строку “Неизвестная операция”.


Видел множество вариантов решения, но ни один из не предусматривал использование самой функции “def arithmetic”. По этому обращаюсь за помощью к знающим и ведающим специалистам и любителям python . )

Все чего я достиг в этом деле, предоставляю:
def arithmetic (x, y, z):
x = int(input(“Введите первое число : ”))
y = int(input(“Введите второе чиcло : ”))
z = input(“Введите знак (+, - ) : ”)
if z == “ + ” :
return (x + y)
elif z == “ - ”:
return (x - y)
elif z == “ * ”:
return (x * y)
elif z == “ / ”:
return (x / y)
else :
return (“Invalid operation”)

print (arithmetic(x, y, z))

Буду рад любым советам и комментариям. Заранее спасибо.
PEHDOM
Dikinz
x = int(input(“Введите первое число : ”))
y = int(input(“Введите второе чиcло : ”))
z = input(“Введите знак (+, - ) : ”)
в самой функции лишние, оно должно работать както так:
 def arithmetic (x, y, z):
	if z == "+" :
		return (x + y)
	elif z == "-":
		return (x - y)
	elif z == "*":
		return (x * y)
	elif z == "/":
		return (x / y)
	else :
		return ("Invalid operation")
print (arithmetic(2, 3, '+'))
print (arithmetic(2, 2, '*'))
print (arithmetic(4, 2, '-'))
print (arithmetic(4, 2, '/'))
print (arithmetic(4, 2, 0))
>>> 
5
4
2
2.0
Invalid operation
>>> 
Dikinz
PEHDOM
Dikinz
Спасибо большое за помощь. Не думал что данные чисел придётся вводить заранее.
PEHDOM
Dikinz
Не думал что данные чисел придётся вводить заранее.
это только пример, дальше можешь организовать ввод с клавиатуры, можешь из спинбокса, а можешь еще както, тоесть все эти input-ы долны быть вне функции,
например так
  def arithmetic (x, y, z):
    if z == "+" :
       ............
    else :
		return ("Invalid operation")
x = int(input('Введите первое число : '))
y = int(input('Введите второе чиcло : '))
z = input('Введите знак (+, - ) : ')
print (arithmetic(x, y, z))

иначе какой смысл передавать в функцию агрументы?
Dikinz
PEHDOM
Понял, с этой задачей разобрался. Так хотя бы понятнее как все это выглядит. Насчёт аргументов буду знать ибо не всегда все можно черпнуть из теоретического материала. Благодарен, за помощь!
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