Uploaded by vlad.buldakov.1994

Практическое занятие №5

advertisement
ОТЧЕТ О ВЫПОЛНЕНИИ
Практического занятия №5
по Численным методам
Выполнил: ст.гр. 2-ИСП9-33
Булдаков В. А.
Проверил: преподаватель Климова
Ю.В.
Москва
2024
Практическое занятие №5
Тема занятия: Решение алгебраических и трансцендентных уравнений методом
хорд(секущих)
Цель работы: овладеть практическими навыками численного нахождения локального
минимума функции одной переменной на заданном отрезке в среде электронных таблиц
Microsoft Excel и среде программирования MS VS.
Вариант 12 (f(x) = x*ln(x)+4sin(2x)-2)
Под логарифмом должно находиться положительное число. Поскольку значения при
вычислении в минус уходят, большей точности найти нельзя
Задание 1 (Решение в Excel)
Рисунок 1
Рисунок 2
Задание 2 (Решение в c#)
Console.WriteLine("Формула:f(x) = x*ln(x)+4sin(2x)-2 \n Введите x: ");
double x = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Введите диапозон поиска \n Введите a: ");
double a = Convert.ToDouble(Console.ReadLine());
Console.WriteLine("Введите b: ");
double b = Convert.ToDouble(Console.ReadLine());
double abs = 1;
double x2 = x;
double fa = a * Math.Log(a) + 4 * Math.Sin(2 * a) - 2;
double fb = b * Math.Log(b) + 4 * Math.Sin(2 * b) - 2;
double toch = 0.000001;
while (abs<toch || x2 > 0)
{
x = x2;
double cos2x = Math.Cos(2 * x);
double sin2x = Math.Sin(2 * x);
double fx = x * Math.Log(x) + 4 * Math.Sin(2 * x) - 2;
x2 = x-fx/(fb-fx)*(b-x);
abs = Math.Abs(x - x2);
Console.WriteLine(x2);
}
Console.WriteLine($"Ответ: {x2}");
Вывод в консоли:
Рисунок 3
Download