数学我只是无法翻译成代码

时间:2013-10-07 14:45:12

标签: python math

我有一个相对简单的功能,我不知道如何翻译成代码。我已经导入了math模块,因为我可以看到我需要使用sqrtcossin

以下是功能

的图像

Function

本练习将

altfel翻译为else。我知道您需要使用一堆if / else语句,但我无法理解它。

4 个答案:

答案 0 :(得分:4)

只需使用一个if/else即可确保xy位于域的正确部分:

In [1]: from math import sqrt, cos, sin
In [2]: def f(x, y):
   ...:     if (x < -1 or x > 3) and (y < -1 or y > 1):
   ...:         return sqrt(y)/(3 * x - 7)
   ...:     else:
   ...:         return cos(x) + sin(y)
   ...:     

答案 1 :(得分:2)

易:

from math import sqrt, cos, sin

def f(x, y):
    if (x < -1 or x > 3) and (y < -1 or y > 1):
        return sqrt(y) / (3 * x - 7)
    else:
        return cos(x) + sin(y)

答案 2 :(得分:2)

尝试

import math

def f(x, y):
    if (x < -1 or x > 3) and (y < -1 or y > 1): # these are the conditions for x and y
        return math.sqrt(y) / (3*x - 7)
    else:
        return math.cos(x) + math.sin(y)

答案 3 :(得分:2)

在Python中,您可以使用比较运算符a < b < c的连接来测试间隔,因此:

from math import sqrt, cos, sin

def f(x, y):
    if -1 <= x <= 3 and -1 <= y <= 1:
        return cos(x) + sin(y)
    else:
        return sqrt(y) / (3 * x - 7)

这对我来说似乎更具可读性。