Top.Mail.Ru
Ответы

Помогите решить ! Иррациональное уравнение

пожалуйста!

По дате
По рейтингу
Аватар пользователя
Новичок

0.

2x² - 4x + 1 => 0
(x² - 1)/(x - 2) => 0

Итого:

- 1 <= x <= (2 - √2)/2 U x > 2

1.

7x⁴ - 48x³ + 102x² - 80x + 15 = 0
7x⁴ - 20x³ + 15x² - 28x³ + 80x² - 60x + 7x² - 20x + 15 = 0
x²(7x² - 20x + 15) - 4x(7x² - 20x + 15) + (7x² - 20x + 15) = 0
(7x² - 20x + 15)(x² - 4x + 1) = 0

7х² - 20х + 15 = 0
х² - 4х + 1 = 0

(х - (7/10))² = - (√(5)/7)² Невозможно в действительных числах
(х - 2)² = (√3)²

х - 2 = √3
х - 2 = - √3

х = 2 + √3
х = 2 - √3

Ответ: х = 2 - √3 ; х = 2 + √3

Аватар пользователя
Гений

Два корня: 2±√3

Аватар пользователя
Гений

UPD: Понял, что сам дурак, но выкидывать написанное решение жалко, пусть будет))

_______
Хочется умножить на (x - 2) и поднять в квадрат. Но выходит уродливое уравнение 4-й степени... не вижу других вариантов, кроме как отдельно рисовать два графика и смотреть где они пересекаются.

12
 f(x) = 2√(2x² - 4x + 1)
g(x) = (x² - 1) / (x - 2) 

Красное f(x), синее g(x), решений два (пересекаются в двух точках).
(Коорд-поле от -20 до 20)


x1 = 0.2679491924311227;
x2 = 3.73205080756887;

Использовал тупой перебор, через несколько итераций - нашел.

*Ага, нигде не написано, что программирование запрещено =) Перебирал руками, можно написать доп-цикл, который сам найдет решение. Лень)

(JavaScript)

1234567891011121314151617181920212223242526272829303132333435363738394041
 function f(x) { 
    return 2 * Math.sqrt(2 * x**2 - 4 * x + 1);
} 
function g(x) { 
    return (x**2 - 1) / (x - 2);
}

let min_d = 1000; 
let x = { f: 0, g: 0 };

/***/
let FROM = 3.732; 
let TO   = 3.733; 
let step = 0.0001;
// После каждого перебора уменьшал шаг step, сужал FROM / TO
 
if (step == 0) step = 1; 

for (let i = FROM; i <= TO; i += step) { 
    let fi = f(i); 
 
    for (let k = FROM; k < TO; k += step) { 
        let gk = g(k); 
 
        let d = Math.hypot(Math.abs(k - i), Math.abs(fi - gk));
        /* Расстояние между двумя точками.
        Ищем минимальное */
             
        if (d <= min_d) { 
            min_d = d;

            /* Запоминаем, при каких `x` был достигнут минимум. */
            x.f = i;
            x.g = k;
        }
    } 
} 
 
console.log(min_d, x.f, x.g) 
console.log(`f(${x.f}) =`, f(x.f)) 
console.log(`g(${x.g}) =`, g(x.g)) 
Аватар пользователя
Мастер

12