-4

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

下面是函数的图片

功能

altfel被翻译成else这个练习。我知道您需要使用一堆if/else语句,但我无法理解它。

4

4 回答 4

4

只需使用一个if/else来确保x并且y位于域的正确部分:

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)
   ...:     
于 2013-10-07T14:50:03.993 回答
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)
于 2013-10-07T14:50:24.947 回答
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)
于 2013-10-07T14:50:38.063 回答
2

在 Python 中,您可以使用比较运算符的串联 froma < 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)

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

于 2013-10-07T15:32:20.543 回答