Форум программистов, компьютерный форум CyberForum.ru

найти все корни уравнения на заданном интервале [a;b] с заданной точностью - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 26, средняя оценка - 4.81
ruslannos
10 / 10 / 0
Регистрация: 17.11.2011
Сообщений: 84
06.12.2011, 14:46     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #1
Закрепление практических навыков по работе с функциями.
В ходе выполнения работы необходимо создать программу, которая находит все корни уравнения на заданном интервале [a;b] с заданной точностью (задается пользователем). Программа должна выводить список корней (при этом корни не должны повторяться) либо выводить соответствующее сообщение, если корней нет.

5*x^2*sin(1/(3ƖxƖ+2))+1=0

Добавлено через 1 час 35 минут
нету даже идей
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.12.2011, 14:46     найти все корни уравнения на заданном интервале [a;b] с заданной точностью
Посмотрите здесь:

Найти корни квадратного уравнения с высокой точностью C++
C++ Найти все корни уравнения на заданном интервале
Использование стандартных функций (найти все корни уравнения на заданном интервале [a;b] с заданной точностью) C++
C++ Найти корень уравнения на заданном интервале методом Ньютона
Отыскать все корни нелинейного уравнения f(x) = 0 с точностью до 10^-3 C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
-=ЮрА=-
Заблокирован
Автор FAQ
06.12.2011, 15:17     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #2
Цитата Сообщение от ruslannos Посмотреть сообщение
нету даже идей
- методом простых итераций к примеру...
Mиxaил
 Аватар для Mиxaил
530 / 435 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
07.12.2011, 17:00     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #3
Копай в сторону метода половинного деления, например...
ruslannos
10 / 10 / 0
Регистрация: 17.11.2011
Сообщений: 84
08.12.2011, 16:09  [ТС]     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #4
Ладно,буду пробовать,думал тут помоготут. . .

Добавлено через 2 часа 35 минут
Поднимаю
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
08.12.2011, 18:40     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #5
Цитата Сообщение от ruslannos Посмотреть сообщение
Ладно,буду пробовать,думал тут помоготут. . .
вам уже дали две подсказки, писать вам за "красивый ник" никто не будет
ruslannos
10 / 10 / 0
Регистрация: 17.11.2011
Сообщений: 84
14.12.2011, 01:52  [ТС]     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #6
Вот прога,если может кому пригодится.Пользуйтесь токо за красивый ник!
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
// лаба 4(1).cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
#include <clocale>
using namespace std;
 
 
 
int _tmain(int argc, _TCHAR* argv[])
 
{ 
setlocale(LC_CTYPE, "rus");
double i,x,a,b,y,q,e1,e2,e3,w;
cout << "Введите a,b; e1 как шаг и e2 для определения правильности решения" << endl;
cin >>a>>b>>e1>>e2;
w=0;
e3=0-e2;
for (i=a; i<=b;i=i+e1)
 {
  x=i;
 q =5*x*x*sin(1/(3*x+2))+ 1;
 if (q<e2||q>e3) 
   {
   cout << " Ответ:  " << x << "  Результат:  " << q << endl;
   w=1;
   }
 }
if (w==0) 
 {
 cout << "Ответов нет";
 }
 _getch();
}
Вот токо спросить хотел: как поставить в выражении (3*x+2) х по модулю
amor1k
Студент
 Аватар для amor1k
147 / 147 / 24
Регистрация: 18.01.2011
Сообщений: 469
14.12.2011, 01:53     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #7
fabs(x)
ruslannos
10 / 10 / 0
Регистрация: 17.11.2011
Сообщений: 84
15.12.2011, 12:26  [ТС]     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #8
искожается результат,я присваиваю значение y=fabs(x) , и q =5*x*x*sin(1/(3*у+2))+ 1, мне пишет не правильный ответ

Добавлено через 37 секунд
все результаты ровны 1

Добавлено через 1 минуту
все,понял, вот так q =5*x*x*sin(1/(3*fabs(x)+2))+ 1;

Добавлено через 3 минуты
делал по шаблону, обясните что значит w=0; w=1; x=i;w==0

Добавлено через 11 часов 3 минуты
я не прошу написать мне програму, просто обясните по готовому что значит w=0; w=1; x=i;w==0?

Добавлено через 3 часа 46 минут
Как записать програму с помощью функций?

Добавлено через 19 часов 34 минуты
Как записать програму с помощью функций?
ruslannos
10 / 10 / 0
Регистрация: 17.11.2011
Сообщений: 84
19.12.2011, 23:35  [ТС]     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #9
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
// 123.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
#include <clocale>
using namespace std;
 
int f(double chislo){
double q =5*chislo*chislo*sin(1/(3*chislo+2))+ 1;
return q;
 
int main();
 
{ 
    setlocale(LC_CTYPE, "rus");
    double i,a,b,y,q,e1,e2,e3,w;
    cout << "Введите a,b; e1 как шаг и e2 для определения правильности решения" << endl;
    cin >>a>>b>>e1>>e2;
    w=0;
    e3=0-e2;
    for (i=a; i<=b;i=i+e1)
        {
        
        if (q<e2||q>e3) 
            {
            cout << " Ответ:  " << i << "  Результат:  " << f(a,b,e1,e2) << endl;//
            w=1;
            }
        }
    {
if (w==0);          
cout << "Ответов нет";
    }           
getch();
}
}
мне выдает такие ошибки:
documents\visual studio 2010\projects\123\123\123.cpp(12): warning C4244: 'return' : conversion from 'double' to 'int', possible loss of data
documents\visual studio 2010\projects\123\123\123.cpp(28): error C2660: 'f' : function does not take 4 arguments
documents\visual studio 2010\projects\123\123\123.cpp(34): warning C4390: ';' : empty controlled statement found; is this the intent?
как это исправить?

Добавлено через 18 минут
осталось исправить:
documents\visual studio 2010\projects\123\123\123.cpp(28): error C2660: 'f' : function does not take 4 arguments
остальное исправил

Добавлено через 33 минуты
поднимаю

Добавлено через 10 часов 10 минут
Поднимаю

Добавлено через 14 часов 33 минуты
дайте ответ
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.12.2011, 03:39     найти все корни уравнения на заданном интервале [a;b] с заданной точностью
Еще ссылки по теме:

C++ Найти значение корня на заданном интервале с заданной точностью
C++ Найти корень уравнения на интервале [a,b] с заданной пользователем точностью
C++ Найти корень уравнения с заданной точностью

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
ruslannos
10 / 10 / 0
Регистрация: 17.11.2011
Сообщений: 84
21.12.2011, 03:39  [ТС]     найти все корни уравнения на заданном интервале [a;b] с заданной точностью #10
Вот программа для задания: создать программу, которая находит все корни уравнения на заданном интервале [a;b] с заданной точностью (задается пользователем). Программа должна выводить список корней (при этом корни не должны повторяться) либо выводить соответствующее сообщение, если корней нет.С помощью функций.
5*x^2*sin(1/(3ƖxƖ+2))+1=0

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
// laba primer.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
#include <clocale>
using namespace std;
 
double nos (double a, double b, double e1,double e2)
{
    double e3,x,q,i;
    e3=0-e2;
    for (i=a; i<=b;i=i+e1)
    {
        x=i;
        q =5*x*x*sin(1/(3*x+2)) + 1;
        if (q<e2||q>e3)
        {
            cout << " Число:  " << x << "  Результат:  " << q << endl;
        }
    }
    return (0);
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale(LC_CTYPE, "rus");
    double a,b,e1,e2;
    cout << "Введите a,b; e1 как шаг и e2 для определения правильности решения" << endl;
    cin >>a>>b>>e1>>e2;
    nos (a,b,e1,e2);
    _getch();
    return (0);
}
Может кому пригодится,отдаю просто так.Спасибо.
Yandex
Объявления
21.12.2011, 03:39     найти все корни уравнения на заданном интервале [a;b] с заданной точностью
Ответ Создать тему
Опции темы

Текущее время: 23:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru