Решение уравнения на отрезке программа

Решение уравнения на отрезке программа

Составить программу на языке программирования С++ и блок-схему для решения следующей задачи: уточнить приближенное значение корня нелинейного уравнения f(x) = 0 на заданном отрезке [a,b] методом половинного деления (дихотомии) с точностью ε = 0.001.

Уравнение имеет вид: x 3 — 9x 2 + 20x – 11=0

Отрезок, на котором осуществляется поиск корня: [0; 1]

Блок-схема алгоритма поиска корня уравнения методом половинного деления (дихотомии)

Разработаем алгоритм программы поика решения уравнения на заданном отрезке в виде блок-схемы:

Текст программы решения задачи на С++

В среде программирования Borland C++ 7.0 вводим текст программы на Си ++:

#include
#include
// функция для вычисления f(х)
float f(float z)
<
return pow(z,3)+6*pow(z,2)+6*z-7;//возвращаемое значение
>

// главная функция
void main()
<
float a=-3.0, b=2.0, e=0.001, x;// объявление переменных
while (fabs(a-b)>=e) // цикл
<
// проверка на разные знаки по концам отрезка
if((f(a)>0&&f((a+b)/2) 0))
b=(a+b)/2;
else
if ((f((a+b)/2)>0&&f(b) 0))
a=(a+b)/2;
else
<
printf(«! Net kornej !»);
return;
getch();
>
>

x=(a+b)/2;// вычисление х после завершения цикла
printf(«x=%f F(x)=%f |a-b|=%f»,x,f(x),fabs(a-b)); // вывод результатов
getch();
>

Нажимаем клавиши CTRL+F9 для компиляции и запуска на выполнение программы. Получаем корень уравнения x≈0,834 :

Программа начинается с директив препроцессора, начинающихся с символа #, которые дают указание препроцессору подключить к программе заголовочные файлы с описанием тех или иных библиотечных функций. В данном случае подключается заголовочный файл stdio.h с описанием функций ввода-вывода, заголовочный файл math.h с описанием математических функций и заголовочный файл conio.h с описанием функции ожидания нажатия клавиши getch().

Программа состоит из двух функций: пользовательской функции f(x) и обязательной функции main(). Функция main() не возвращает никаких значений и поэтому она объявляется с ключевым словом void. В отличие от функции main(), функция f(x) возвращает вещественное значение и объявляется с ключевым словом float. Тела функций являются блоками и поэтому ограничены фигурными скобками.

В теле функции main() объявляются вещественные переменные a, b, e, х.
Далее используется оператор цикла while, в котором применяются условные операторы:
if (выражение) оператор 1; else оператор 2; которые позволяют проверить разные ли знаки у концов отрезка.
Использование вышеуказанной библиотечной функции printf() дает возможность вывести на стандартное устройство вывода (монитор) сообщение об отсутствии корней или сообщение с значением корня, значением функции в этой точке и модуль разности концов отрезка.
Тело функции main() зак¬рывается фигурной скобкой. На этом программа заканчивается.

Метод итераций

Правила ввода функции

  1. Примеры
    ≡ x^2/(1+x)
    cos 2 (2x+π) ≡ (cos(2*x+pi))^2
    ≡ x+(x-1)^(2/3)

На рис.1а, 1б в окрестности корня |φ′(x)| 1, то процесс итерации может быть расходящимся (см. рис.2).

Достаточные условия сходимости метода итерации

Процесс нахождения нулей функции методом итераций состоит из следующих этапов:

  1. Получить шаблон с омощью этого сервиса.
  2. Уточнить интервалы в ячейках B2 , B3 .
  3. Копировать строки итераций до требуемой точности (столбец D ).

Примечание: столбец A — номер итерации, столбец B — корень уравнения X , столбец C — значение функции F(X) , столбец D — точность eps .

Решение задач по математике онлайн

//mailru,yandex,google,vkontakte,odnoklassniki,instagram,wargaming,facebook,twitter,liveid,steam,soundcloud,lastfm, // echo( ‘

Калькулятор онлайн.
Решение тригонометрических уравнений.

Этот математический калькулятор онлайн поможет вам решить тригонометрическое уравнение. Программа для решения тригонометрического уравнения не просто даёт ответ задачи, она приводит подробное решение с пояснениями, т.е. отображает процесс получения ответа.

Данная программа может быть полезна учащимся старших классов общеобразовательных школ при подготовке к контрольным работам и экзаменам, при проверке знаний перед ЕГЭ, родителям для контроля решения многих задач по математике и алгебре. А может быть вам слишком накладно нанимать репетитора или покупать новые учебники? Или вы просто хотите как можно быстрее сделать домашнее задание по математике или алгебре? В этом случае вы также можете воспользоваться нашими программами с подробным решением.

Таким образом вы можете проводить своё собственное обучение и/или обучение своих младших братьев или сестёр, при этом уровень образования в области решаемых задач повышается.

Обязательно ознакомьтесь с правилами ввода функций. Это сэкономит ваше время и нервы.
Правила ввода функций >> Почему решение на английском языке? >>
С 9 января 2019 года вводится новый порядок получения подробного решения некоторых задач. Ознакомтесь с новыми правилами >> —> Введите тригонометрическое уравнение
Решить уравнение

Немного теории.

Тригонометрические уравнения

Уравнение cos(х) = а

Из определения косинуса следует, что \( -1 \leqslant \cos \alpha \leqslant 1 \). Поэтому если |a| > 1, то уравнение cos x = a не имеет корней. Например, уравнение cos х = -1,5 не имеет корней.

Уравнение cos x = а, где \( |a| \leqslant 1 \), имеет на отрезке \( 0 \leqslant x \leqslant \pi \) только один корень. Если \( a \geqslant 0 \), то корень заключён в промежутке \( \left[ 0; \; \frac<\pi> <2>\right] \); если a

Уравнение sin(х) = а

Из определения синуса следует, что \( -1 \leqslant \sin \alpha \leqslant 1 \). Поэтому если |a| > 1, то уравнение sin x = а не имеет корней. Например, уравнение sin x = 2 не имеет корней.

Уравнение sin х = а, где \( |a| \leqslant 1 \), на отрезке \( \left[ -\frac<\pi><2>; \; \frac<\pi> <2>\right] \) имеет только один корень. Если \( a \geqslant 0 \), то корень заключён в промежутке \( \left[ 0; \; \frac<\pi> <2>\right] \); если а

Уравнение tg(х) = а

Из определения тангенса следует, что tg x может принимать любое действительное значение. Поэтому уравнение tg x = а имеет корни при любом значении а.

Уравнение tg x = а для любого a имеет на интервале \( \left( -\frac<\pi><2>; \; \frac<\pi> <2>\right) \) только один корень. Если \( |a| \geqslant 0 \), то корень заключён в промежутке \( \left[ 0; \; \frac<\pi> <2>\right) \); если а

Решение тригонометрических уравнений

Выше были выведены формулы корней простейших тригонометрических уравнений sin(x) = a, cos(x) = а, tg(x) = а. К этим уравнеииям сводятся другие тригонометрические уравнения. Для решения большинства таких уравнений требуется применение различных формул и преобразований тригонометрических выражений. Рассмотрим некоторые примеры решения тригонометрических уравнений.

Уравнения, сводящиеся к квадратным

Решить уравнение 2 cos 2 (х) — 5 sin(х) + 1 = 0

Заменяя cos 2 (х) на 1 — sin 2 (х), получаем
2 (1 — sin 2 (х)) — 5 sin(х) + 1 = 0, или
2 sin 2 (х) + 5 sin(х) — 3 = 0.
Обозначая sin(х) = у, получаем 2у 2 + 5y — 3 = 0, откуда y1 = -3, y2 = 0,5
1) sin(х) = — 3 — уравнение не имеет корней, так как |-3| > 1;
2) sin(х) = 0,5; \( x = (-1)^n \text(0,5) + \pi n = (-1)^n \frac<\pi> <6>+ \pi n, \; n \in \mathbb \)
Ответ \( x = (-1)^n \frac<\pi> <6>+ \pi n, \; n \in \mathbb \)

Решить уравнение 2 cos 2 (6х) + 8 sin(3х) cos(3x) — 4 = 0

Используя формулы
sin 2 (6x) + cos 2 (6x) = 1, sin(6х) = 2 sin(3x) cos(3x)
преобразуем уравнение:
3 (1 — sin 2 (6х)) + 4 sin(6х) — 4 = 0 => 3 sin 2 (6х) — 4 sin(6x) + 1 = 0
Обозначим sin 6x = y, получим уравнение
3y 2 — 4y +1 =0, откуда y1 = 1, y2 = 1/3

Уравнение вида a sin(x) + b cos(x) = c

Решить уравнение 2 sin(x) + cos(x) — 2 = 0

Используя формулы \( \sin(x) = 2\sin\frac <2>\cos\frac<2>, \; \cos(x) = \cos^2 \frac <2>-\sin^2 \frac <2>\) и записывая правую часть уравпения в виде \( 2 = 2 \cdot 1 = 2 \left( \sin^2 \frac <2>+ \cos^2 \frac <2>\right) \) получаем

Поделив это уравнение на \( \cos^2 \frac <2>\) получим равносильное уравнение \( 3 \text^2\frac <2>— 4 \text\frac <2>+1 = 0 \)
Обозначая \( \text\frac <2>= y \) получаем уравнение 3y 2 — 4y + 1 = 0, откуда y1=1, y1= 1/3

В общем случае уравнения вида a sin(x) + b cos(x) = c, при условиях \( a \neq 0, \; b \neq 0, \; c \neq 0, \; c^2 \leqslant b^2+c^2 \) можно решить методом введения вспомогательного угла.
Разделим обе части этого уравнения на \( \sqrt \):

Решить уравнение 4 sin(x) + 3 cos(x) = 5

Здесь a = 4, b = 3, \( \sqrt = 5 \). Поделим обе части уравнения на 5:

Уравнения, решаемые разложением левой части на множители

Многие тригонометрические уравнения, правая часть которых равна нулю, решаются разложением их левой части на множители.

Решить уравнение sin(2х) — sin(x) = 0
Используя формулу синуса двойного аргумента, запишем уравнепие в виде 2 sin(x) cos(x) — sin(x) = 0. Вынося общий множитель sin(x) за скобки, получаем sin(x) (2 cos x — 1) = 0

Решить уравнение cos(3х) cos(x) = cos(2x)
cos(2х) = cos (3х — х) = cos(3х) cos(x) + sin(3х) sin(x), поэтому уравнение примет вид sin(x) sin(3х) = 0

Решить уравнение 6 sin 2 (x) + 2 sin 2 (2x) = 5
Выразим sin 2 (x) через cos(2x)
Так как cos(2x) = cos 2 (x) — sin 2 (x), то
cos(2x) = 1 — sin 2 (x) — sin 2 (x), cos(2x) = 1 — 2 sin 2 (x), откуда
sin 2 (x) = 1/2 (1 — cos(2x))
Поэтому исходное уравнение можно записать так:
3(1 — cos(2x)) + 2 (1 — cos 2 (2х)) = 5
2 cos 2 (2х) + 3 cos(2х) = 0
cos(2х) (2 cos(2x) + 3) = 0


источники:

http://math.semestr.ru/optim/iteration_method.php

http://www.math-solution.ru/math-task/trigonometry-equality