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

Переписать, чтобы значения стали аргументами функции - C++

Восстановить пароль Регистрация
 
Flashik66
15 / 7 / 7
Регистрация: 05.11.2012
Сообщений: 119
25.03.2013, 15:22     Переписать, чтобы значения стали аргументами функции #1
Добрый всем. Вот у меня есть программка но немного не правильный код. Значит вот условие:
Написать функцию, находящую корни уравнения методом хорд. Аргументы этой функции:
· указатель на функцию, задающую уравнение;
· интервал [a,b];
· точность ε.
Найти корни следующих уравнений:
3*x2-150*sin(x)=0
ex/2-x3+50=0
x3-x2-50=0
3x-x2=0
Интервал, на котором функция монотонна и имеет корень [1.5;4.5]. Точность примите равной 0.0001

Вот мой код:
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
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream.h>
#include <math.h>
double f1(double x);
double f2(double x);
double f3(double x);
double f4(double x);
double corni(double a,double b,double e,double (*pf)(double));
void main ()
{
    double (*farr[4])(double)={f1,f2,f3,f4};
    double a1=1.5,b1=4.5,e1=0.0001;
    cout<<"Uravnenia: "<<endl;
    cout<<"1. 3*x^2-150*sin(x)=0"<<endl;
    cout<<"2. e^(x/2)-x^3+50=0"<<endl;
    cout<<"3. x^3-x^2-50=0 "<<endl;
    cout<<"4. 3*x-x^2=0"<<endl;
    cout<<endl;
    for (int i=0;i<4;i++)
    {    
        cout<<"Koren "<<i+1<<" uravnenia:  ";
        cout<<corni(a1,b1,e1,farr[i])<<endl;
    }
}
double f1(double x)
{
    return 3*x*x-150*sin(x);
}
double f2(double x)
{
     double e=2.7182;
     return pow(e,x/2)-pow(x,3)+50;
}
double f3(double x)
{
     return pow(x,3)-pow(x,2)-50;
}
double f4(double x)
{
    return 3*x-x*x;
}
double corni(double a,double b,double e,double (*pf)(double))
{
    while(fabs(b-a)>e)
    {
        a=b-(b-a)*pf(b)/(pf(b)-pf(a));
        b=a-(a-b)*pf(a)/(pf(a)-pf(b));
    }
    return b;
}
 
}
Вот и собственно мои значения:
double a1=1.5,b1=4.5,e1=0.0001;
не являются аргументами функции. Я пробовал переписать но у меня что-то не то выходит. Прошу помощи. Надо просто переписать чтобы значения double a1=1.5,b1=4.5,e1=0.0001; стали аргументами функции..
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.03.2013, 15:22     Переписать, чтобы значения стали аргументами функции
Посмотрите здесь:

C++ Объявить прототип функции f1 с 2 аргументами-строками и возвращаемым результатом в виде литерного массива
C++ Матрица.Переписать в одномерный массив эл-ты четных столбцов значения которых меньше 1. Оформить в виде Функции
Непонимание работы с аргументами для функции main C++
Заданы две строки. Можно ли переставить буквы в одном из слов так, чтобы слова стали одинаковыми? C++
C++ Какой заголовочный файл нужно подключить чтобы стали доступны int32_t size_t ?
Преобразуйте массив так, чтобы все положительные элементы массива стали отрицательными и наоборот C++
C++ Непонятки с аргументами функции
Вычислить значения функции F на интервале от начального значения до конечного значения C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
yoghurt92
373 / 344 / 22
Регистрация: 17.05.2012
Сообщений: 1,049
25.03.2013, 19:30     Переписать, чтобы значения стали аргументами функции #2
Flashik66, аргументами какой функции?
Yandex
Объявления
25.03.2013, 19:30     Переписать, чтобы значения стали аргументами функции
Ответ Создать тему
Опции темы

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