есть ли другой способ сделать это, или я что-то упускаю

#python

#python

Вопрос:

Вопрос

Учитывая два целых числа a и b, ваша задача — вычислить:

  • a b
  • a- b
  • a*b
  • a//b

Ввод

Задача пользователя: поскольку это будет функциональной проблемой, вам не нужно принимать входные данные. Вам просто нужно выполнить функцию operations(), которая принимает целые числа a и b в качестве параметров.

Ограничения:

  • 1 <= b <= a <= 1000

Примечание: Гарантируется, что a будет делиться на b.

Вывод

Выведите упомянутые операции каждую в новой строке.

Это мой код:

 def operations(X,Y):
  return X Y

def minus(X,Y):
  return X-Y

def multi(X,Y):
  return X*Y

def div(X,Y):
  return X/Y

X = 15
Y = 3

print(minus(X,Y))
print(operations(X,Y))
print(multi(X,Y))
print(div(X,Y))
 

Было бы огромной помощью, если бы кто-нибудь сказал мне, если в коде, который я делаю, что-то не так.

Комментарии:

1. в div // отсутствует

2. Я думаю, что вопрос хочет, чтобы — / * подпадали под операции и не должны быть отдельными функциями?

3. я внес изменения, пожалуйста, посмотрите еще раз

4. @LarrytheLlama то, что я хочу, это точный вывод, и можем ли мы выполнять все арифметические операторы в одной функции с предопределенным вводом

5. Заголовок вопроса должен достаточно хорошо описывать вашу проблему, чтобы читатели поняли, о чем идет речь. Смотрите: Как мне написать хороший заголовок?

Ответ №1:

Я не думаю, что проблема просит вас добавить функции minus , multi и div . Вам нужно только реализовать функцию operations и заставить печатать результат четырех операций каждая в одной строке. Что можно сделать следующим образом:

 def operations(a, b):
  print(a   b)
  print(a - b)
  print(a * b)
  print(a // b)
 

Обратите внимание, как я использовал двойную косую черту ( // ) для деления вместо одной косой черты ( / ). Потому что одна косая черта в python даст вам значение с плавающей запятой, даже если a и b являются целыми числами. т.е. 4 / 2 вернет 2.0 там, где проблема явно запрашивает целочисленные значения (см. Примечание), в данном случае 2

Ответ №2:

если вы используете (/) 11/3 в делении, то оно вернет значение с плавающей запятой (3,666666 …) если вы используете (//) 11 //3, это даст вам округленное значение int (3)