1. нет; 2. 1) общего вида 2) общего вида 3) общего вида 3. 1) -1; 3 2) 1; -3 4) -1
Объяснение:
1. Если функция нечетная то произведение f(3)f(-3) не будет положительным.
2.
1)
Это функция общего вида
2)
Это функция общего вида
3)
Это функция общего вида
3.
1)
Значит
2)
Значит
4.
Это биквадратное уравнение. Делаем подстановку
Уравнение будет иметь один корень, когда дискриминант равен 0
Но, поскольку х=±√у, то при любом положительном у мы получим два различных значения х. Одно значение х мы получим лишь в случае у=0. Тогда х=√0=0. Следовательно
Делаем проверку:
1) а=-1
Имеется одно решение (т.к выражение в скобках никогда не будет равно 0)
2) а=3
Здесь появляется второй корень. Значит, это значение не подходит.
У меня есть координаты точки pos = (x, y), и мне нужно проверить, является ли она частью прямой, проходящей через две точки p1 = (x1, y1), p2 = (x2, y2). Формула, которую я использую, Y-y1 = ((x-x1)/(x2 - x1)) * (y2-y1), а код:
Пока я тестировал его, я заметил, что прямая линия наклона противоположна. image
Я получил это, проверив каждую точку холста (используя tkinter):
p1 = (313, 215)
p2 = (92, 44)
for x in range(0, 400):
for y in range(0, 300):
if y - p1[1] - 5 <= ((x - p1[0]) / (p2[0] - p1[0])) * (p2[1] - p1[1]) <= y - p1[1] + 5:
canvas.create_oval(x, y, x, y)
Самая большая из них-это линия, которая представлена приведенным выше уравнением, нарисованная от руки-это то, что я хочу.
Я пытался также протестировать его на geogebra, но там все работает properly...what я missimg?
Источник
Matteo Secco
3 ответа
Ваша математика, кажется, верна, поскольку проблема заключается в интерпретации.
Во-первых, вы могли бы немного упростить математику:
x1,y1 = p1
x2,y2 = p2
m = (y2-y1)/(x2-x1)
def f(x): return y1 + m*(x-x1)
def test(x,y,tol = 10):
return abs(y-f(x)) <= tol
А потом просто используйте test(x,y) или test(*pol) .
Проблема в том, что в координатах холста увеличение y фактически перемещает вас вниз по холсту. В вашем примере данных линия нарисована правильно в том смысле, что отрезок линии, соединяющий точки холста (313, 215) и (92,44) , является убывающей линией.
Возможно, вы хотите построить точки как (x,300-y) , а не (x,y) .
John Coleman
сравните наклон любых соседних точек, имеющих одинаковый наклон. это может быть достигнуто путем сравнения наклона каждой пары последовательных точек
1. нет; 2. 1) общего вида 2) общего вида 3) общего вида 3. 1) -1; 3 2) 1; -3 4) -1
Объяснение:
1. Если функция нечетная то произведение f(3)f(-3) не будет положительным.
2.
1)
Это функция общего вида
2)
Это функция общего вида
3)
Это функция общего вида
3.
1)
Значит
2)
Значит
4.
Это биквадратное уравнение. Делаем подстановку
Уравнение будет иметь один корень, когда дискриминант равен 0
Но, поскольку х=±√у, то при любом положительном у мы получим два различных значения х. Одно значение х мы получим лишь в случае у=0. Тогда х=√0=0. Следовательно
Делаем проверку:
1) а=-1
Имеется одно решение (т.к выражение в скобках никогда не будет равно 0)
2) а=3
Здесь появляется второй корень. Значит, это значение не подходит.
Окончательно получаем решение: а=-1
У меня есть координаты точки pos = (x, y), и мне нужно проверить, является ли она частью прямой, проходящей через две точки p1 = (x1, y1), p2 = (x2, y2). Формула, которую я использую, Y-y1 = ((x-x1)/(x2 - x1)) * (y2-y1), а код:
if pos[1] - p1[1] - 10 <= ((pos[0] - p1[0]) / (p2[0] - p1[0])) * (p2[1] - p1[1]) <= pos[1] - p1[1] + 10:
return True
Пока я тестировал его, я заметил, что прямая линия наклона противоположна. image
Я получил это, проверив каждую точку холста (используя tkinter):
p1 = (313, 215)
p2 = (92, 44)
for x in range(0, 400):
for y in range(0, 300):
if y - p1[1] - 5 <= ((x - p1[0]) / (p2[0] - p1[0])) * (p2[1] - p1[1]) <= y - p1[1] + 5:
canvas.create_oval(x, y, x, y)
Самая большая из них-это линия, которая представлена приведенным выше уравнением, нарисованная от руки-это то, что я хочу.
Я пытался также протестировать его на geogebra, но там все работает properly...what я missimg?
Источник
Matteo Secco
3 ответа
Ваша математика, кажется, верна, поскольку проблема заключается в интерпретации.
Во-первых, вы могли бы немного упростить математику:
x1,y1 = p1
x2,y2 = p2
m = (y2-y1)/(x2-x1)
def f(x): return y1 + m*(x-x1)
def test(x,y,tol = 10):
return abs(y-f(x)) <= tol
А потом просто используйте test(x,y) или test(*pol) .
Проблема в том, что в координатах холста увеличение y фактически перемещает вас вниз по холсту. В вашем примере данных линия нарисована правильно в том смысле, что отрезок линии, соединяющий точки холста (313, 215) и (92,44) , является убывающей линией.
Возможно, вы хотите построить точки как (x,300-y) , а не (x,y) .
John Coleman
сравните наклон любых соседних точек, имеющих одинаковый наклон. это может быть достигнуто путем сравнения наклона каждой пары последовательных точек
если есть три точки (x1, y1)(x2, y2)(x3,y3)
(y2-y1) (x3-x2) = (y3-y2) (x2-x1)
продолжайте по всем пунктам до завершения