Форум программистов, компьютерный форум, киберфорум
Наши страницы
C для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
1

Массив указателей на функции

18.11.2016, 00:54. Просмотров 977. Ответов 18
Метки c# (Все метки)

Здравствуйте! Подскажите пожалуйста, где ошибка в программе. Не могу разобраться с массивом указателей на функции.
В строчках " x0=Newton(a, b, maxIteration, h, mas[funcNum], *Derivative, *secondDerivative); " показывает ошибку.
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#include <stdio.h>
#include <cmath>
#include <conio.h>
#include <stdlib.h>
int i;
int getch (); //Объявление прототипов функций
double Derivative(double, double, double(*func)(double x) )  ;
double secondDerivative(double x, double h, double(*Derivative)(double x) ) ;
double Newton(double, double, int, double, double (*func)(double x), double (*Derivative)(double, double, double(*func)(double x)), double (*secondDerivative)(double, double, double (*Derivative)(double, double, double(*func)(double x))));
double func1(double), func2(double), func3(double), func4(double), func5(double), func6(double), func7(double), func8(double);
void func()
{
int maxIteration, i, funcNum;
double x0,xn;// вычисляемые приближения для корня
double a, b, c, h, eps, func;// границы отрезка и необходимая точность
//Объявление массива ссылок на функции
double (*mas[8])(double) = {func1, func2, func3, func4, func5, func6, func7, func8};
printf( " Vvedite h " ); 
scanf( "%lf", &h ); // вводим шаг
printf( "  Vvedite eps " );
scanf( "%lf", &eps ); // вводим нужную точность вычислений
printf( "  Vvedite maximum number of iteration: " );
scanf( "%lf", &maxIteration );// вводим кол-во итераций
for(funcNum = 0; funcNum < 8; funcNum++)
{ 
printf("%d\n", funcNum);
if (mas[funcNum](a)*secondDerivative(a,h,mas[funcNum])>0) x0 = a; // для выбора начальной точки проверяем f(x0)*p2f(x0)>0 ?
else x0 = b;
c=(a+b)/2; 
if (mas[funcNum](c)*mas[funcNum](a)<0)
b=c;
if (mas[funcNum](c)*mas[funcNum](b)<0)
a=c;
x0=Newton(a, b, maxIteration, h, mas[funcNum], *Derivative, *secondDerivative);
xn = x0-mas[funcNum](x0)/Derivative(x0, h, mas[funcNum]); // считаем первое приближение
while (fabs(x0-xn)>eps)
{
x0=Newton(a, b, maxIteration, h, mas[funcNum], *Derivative, *secondDerivative);
x0=xn;
xn = x0-mas[funcNum](x0)/Derivative(x0,h,mas[funcNum]); // непосредственно формула Ньютона
} 
while( xn < 0 ) // пока не достигнем необходимой точности, будет продолжать вычислять
{
x0=Newton(a, b, maxIteration, h, mas[funcNum], *Derivative, *secondDerivative);
x0+=h;
xn = x0-mas[funcNum](x0)/Derivative(x0,h,mas[funcNum]); // непосредственно формула Ньютона
while (fabs(x0-xn)>eps)
{
x0=Newton(a, b, maxIteration, h, mas[funcNum], *Derivative, *secondDerivative);
x0=xn;
 
xn = x0-mas[funcNum](x0)/Derivative(x0,h,mas[funcNum]); // непосредственно формула Ньютона
}
printf("xn = %.9f\n",xn); 
printf("f(x0) = %.9f\n",mas[funcNum](x0)); 
printf("Number of iteration = %d\n\n",i);
} 
printf( "  Exit?=> " );
scanf( "%lf", &exit );
}
getch();
}
 
//Функции-уравнения, решаемые в задаче
double func1(double x) { return exp(-x) + pow(x, 2) + 2; }
double func2(double x) { return -pow((x-2), 2); }
double func3(double x) { return exp(x)-2*x-2; }
double func4(double x) { return sin(x) + x - 1; }
double func5(double x) { return exp(-pow(x,2));}
double func6(double x) { return 2*exp(-3*x) - x +1; }
double func7(double x) { return log(x) - x + 1; }
double func8(double x) { return log(x) - pow((x-1), 2); }
//Первая производная функции
double Derivative(double x, double h, double(*func)(double x))
{
double Derivative = ((func(x + h) - func(x - h))/(2*h));
return Derivative;
}
//Вторая производная функции
 
double secondDerivative(double x, double h, double(*Derivative)(double x) )
{
double secondDerivative = ((Derivative(x + h) - Derivative(x - h))/(2*h));
return secondDerivative;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2016, 00:54
Ответы с готовыми решениями:

Объявить массив из N указателей на функции, возвращающих указатели на функции, возвращающие указатель на char
Задание: Объявить массив из N указателей на функции, возвращающих указатели на функции,...

Массив указателей на функции
Мне необходимо создать массив, состоящий из 10 элементов, который хранил бы указатели на функции....

Определить массив указателей на функции
Прощу помощи:) Написать программу, в которой необходимо определить массив указателей на функции....

Создать массив из указателей которые указывают на функции
Как можно создать массив из указателей которые указывают на функции?

Создать массив указателей на функции к функциям, которые имеют разное число и типы параметров?
Можно ли создать массив указателей на функции к функциям, которые имеют разное число и типы...

18
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
18.11.2016, 04:26 2
Как минимум, нет определения Newton().
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
19.11.2016, 21:09  [ТС] 3
shvyrevvg,

double Newton(double, double, int, double, double (*func)(double x), double (*Derivative)(double, double, double(*func)(double x)), double (*secondDerivative)(double, double, double (*Derivative)(double, double, double(*func)(double x))));

это не определение? а как написать определение тогда?
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 07:21 4
Nanana, откуда этот кусок? Что он делает?
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 12:37  [ТС] 5
shvyrevvg,
прототип функции. По крайней мере я старалась сделать именно его)
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 12:41 6
Nanana, ну вот у
Цитата Сообщение от Nanana Посмотреть сообщение
C
1
double Derivative(double, double, double(*func)(double x) );
есть
Цитата Сообщение от Nanana Посмотреть сообщение
C
1
2
3
4
5
double Derivative(double x, double h, double(*func)(double x)) 
{ 
    double Derivative = ((func(x + h) - func(x - h))/(2*h)); 
    return Derivative; 
}
А у Newton нет определения, что она должна делать?
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 12:48  [ТС] 7
shvyrevvg,
то есть, если она должна посчитать функцию по определенной формуле
я должна записать так?

C
1
2
3
4
5
double Newton(double, double, int, double, double (*func)(double x), double (*Derivative)(double x, double h, double(*func)(double x)), double (*secondDerivative)(double x, double h, double (*Derivative)(double x, double h, double(*func)(double x))));
{
double Newton = x0-mas[funcNum](x0)/Derivative(x0,h,mas[funcNum](x0)); ;
return Newton;
}
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 12:56 8
Nanana, да. Также у Вас void func() ничего не возвращает, а Вы используете ее в Derivative.
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 12:58  [ТС] 9
shvyrevvg,
такую ошибку выдает
0
Миниатюры
Массив указателей на функции  
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 13:02 10
Вы бы написать часть, которая бы нормально запускалась и можно было посмотреть результат. И потом добавляли остальные функции. Ну и текст задания неплохо было бы узнать.

Добавлено через 3 минуты
У Вас имена локальных переменных, аргументов смешаны с именами функций и т.д.
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 13:23  [ТС] 11
shvyrevvg,

надо найти первый положительный корень уравнений с точностью eps методом бисекции-Ньютона, выбрать неподвижный конец и начальное приближение на интервале локализации корня вычислением второй производной. И даны функции для вычисления производной.

я написала сначала программу
которая высчитывала просто значение одной функции
и она работала. а потом начала делать массив указателей

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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#include <math.h>
#include <cmath>
#include <stdio.h>
#include <conio.h>
#include <iostream>
#include <stdlib.h>
using namespace std;
 
 
double f(double x) //возвращает значение функции
{
       return exp(-x)+x*x-2;
}
 
double pf(float x) //возвращает значение производной
{
int h=1;
       return (f(x+h)-f(x-h)/(2*h));
}
double p2f(float x) // значение второй производной
{
int h=1;
       return (pf(x+h)-pf(x-h)/(2*h));
}
 
int main()
{
 
   int exit = 0, i=0;// переменные для выхода и цикла
   double x0,xn;// вычисляемые приближения для корня
   double a, b, c, h, eps, func;// границы отрезка и необходимая точность
     do
      {
       i=0;
         cout<<"\nVvedite eps\n=>";
         cin>>eps; // вводим нужную точность вычислений
         cout<<"\nVvedite h\n=>";
         cin>>h;
 
       if (f(a)*p2f(a)>0) x0  = a; // для выбора начальной точки проверяем f(x0)*p2f(x0)>0 ?
       else x0 = b;
           c=(a+b)/2;
       if (f(c)*f(a)<0)
           b=c;
       if (f(c)*f(b)<0)
           a=c;
          xn = x0-f(x0)/pf(x0); // считаем первое приближение
       while (fabs(x0-xn)>eps)
       {
          x0=xn;
          xn = x0-f(x0)/pf(x0); // непосредственно формула Ньютона
       }
       while( xn < 0 ) // пока не достигнем необходимой точности, будет продолжать вычислять
       {
          x0+=h;
          xn = x0-f(x0)/pf(x0); // непосредственно формула Ньютона
       while (fabs(x0-xn)>eps)
       {
          x0=xn;
          xn = x0-f(x0)/pf(x0); // непосредственно формула Ньютона
                                            }
            cout<<"\nkoren = "<<xn; // вывод вычисленного корня
              }
             func=exp(-xn)+xn*xn-2;
            cout<<"\nProverka kornya = exp(-x)+x*x-2 = "<<func;
            cout<<"\nExit?=>";
            cin>>exit;
            }
       while (exit!=1); // пока пользователь не ввел exit = 1
       return 0;
}
Добавлено через 18 минут
shvyrevvg,
вот он в C, предыдущее сообщение в C++ было
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
#include <math.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
 
double f(double x) //возвращает значение функции
{
       return exp(-x)+x*x-2;
}
 
double pf(float x) //возвращает значение производной
{
int h=1;
       return (f(x+h)-f(x-h)/(2*h));
}
double p2f(float x) // значение второй производной
{
int h=1;
       return (pf(x+h)-pf(x-h)/(2*h));
}
 
int main()
{
 
   int exit = 0, i=0;// переменные для выхода и цикла
   double x0,xn;// вычисляемые приближения для корня
   double a, b, c, h, eps, func;// границы отрезка и необходимая точность
     do
      {
       i=0;
       printf( " Vvedite h " );
       scanf( "%lf", &h ); // вводим шаг
       printf( "  Vvedite eps " );
       scanf( "%lf", &eps ); // вводим нужную точность вычислений
       if (f(a)*p2f(a)>0) x0  = a; // для выбора начальной точки проверяем f(x0)*p2f(x0)>0 ?
       else x0 = b;
           c=(a+b)/2;
       if (f(c)*f(a)<0)
           b=c;
       if (f(c)*f(b)<0)
           a=c;
          xn = x0-f(x0)/pf(x0); // считаем первое приближение
       while (fabs(x0-xn)>eps)
       {
          x0=xn;
          xn = x0-f(x0)/pf(x0); // непосредственно формула Ньютона
       }
       while( xn < 0 ) // пока не достигнем необходимой точности, будет продолжать вычислять
       {
          x0+=h;
          xn = x0-f(x0)/pf(x0); // непосредственно формула Ньютона
       while (fabs(x0-xn)>eps)
       {
          x0=xn;
          xn = x0-f(x0)/pf(x0); // непосредственно формула Ньютона
                                            }
 
            printf("koren = %.9f\n",xn); // вывод вычисленного корня
              }
             func=exp(-xn)+xn*xn-2;
            printf("proverka kornya = exp(-x)+x*x-2 %.9f\n",exit);
             printf("Exit?=> %.9f\n",func);
            }
       while (exit!=1); // пока пользователь не ввел exit = 1
       return 0;
}
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 14:04 12
Цитата Сообщение от Nanana Посмотреть сообщение
вот он в C, предыдущее сообщение в C++ было
Ага, там от ++ cout с cin Сейчас посмотрю.

Добавлено через 31 минуту
Цитата Сообщение от Nanana Посмотреть сообщение
if (f(a)*p2f(a)>0) x0 = a; // для выбора начальной точки проверяем f(x0)*p2f(x0)>0 ?
Чему равно a в этой строке?
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 14:13  [ТС] 13
shvyrevvg,
берутся любые произвольные числa a и b
такие, что бы знаки на концах отрезка были разные
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 14:20 14
Цитата Сообщение от Nanana Посмотреть сообщение
берется любое произвольное число a и b
такие, что бы знаки на концах отрезка были разные
Я имею ввиду в программе, не вижу что бы a или b были инициализированы(где a = чему-либо и b = чему-либо).

Добавлено через 1 минуту
Аа, что было в памяти, то и используете..

Добавлено через 1 минуту
Не уверен, что математически все верно, может открою книжку посмотрю позднее. Но компилится без ошибок.
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
 
typedef double(*func_t)(double);
 
int i;
double derivative(double, double, func_t)  ;
double second_derivative(double, double, func_t f) ;
double newton(double, double, func_t);
double func1(double), func2(double), func3(double), func4(double), func5(double), func6(double), func7(double), func8(double);
int main(void)
{
    int maxIteration, i, funcNum;
    double x0,xn;// вычисляемые приближения для корня
    double a, b, c, h, eps, func;// границы отрезка и необходимая точность
    //Объявление массива ссылок на функции
    double (*mas[8])(double) = {func1, func2, func3, func4, func5, func6, func7, func8};
    printf( " Vvedite h " ); 
    scanf( "%lf", &h ); // вводим шаг
    printf( "  Vvedite eps " );
    scanf( "%lf", &eps ); // вводим нужную точность вычислений
    printf( "  Vvedite maximum number of iteration: " );
    scanf( "%lf", &maxIteration );// вводим кол-во итераций
    for(funcNum = 0; funcNum < 8; funcNum++) { 
        printf("funcNum: %d\n", funcNum);
        if (mas[funcNum](a)*second_derivative(x0, h, mas[funcNum]) > 0) 
            x0 = a; // для выбора начальной точки проверяем f(x0)*p2f(x0)>0 ?
        else 
            x0 = b;
        c = (a + b) / 2; 
        if (mas[funcNum](c)*mas[funcNum](a) < 0)
            b=c;
        if (mas[funcNum](c)*mas[funcNum](b) < 0)
            a = c;
            xn = newton(x0, h, mas[funcNum]);
        while (fabs(x0-xn) > eps) {
            x0 = xn;
            xn = newton(x0, h, mas[funcNum]);
        } 
        while( xn < 0 ) {// пока не достигнем необходимой точности, будет продолжать вычислять
            x0+=h;
            xn = newton(x0, h, mas[funcNum]);
            while (fabs(x0-xn) > eps) {
                x0 = xn;
                xn = newton(x0, h, mas[funcNum]);
            }
            printf("xn = %.9f\n",xn); 
            printf("f(x0) = %.9f\n",mas[funcNum](x0)); 
            printf("Number of iteration = %d\n\n",i);
        } 
        printf( "  Exit?=> " );
        scanf( "%lf", &exit );
    }
    getchar();
}
 
//Функции-уравнения, решаемые в задаче
double func1(double x) { return exp(-x) + pow(x, 2) + 2; }
double func2(double x) { return -pow((x-2), 2); }
double func3(double x) { return exp(x)-2*x-2; }
double func4(double x) { return sin(x) + x - 1; }
double func5(double x) { return exp(-pow(x,2));}
double func6(double x) { return 2*exp(-3*x) - x +1; }
double func7(double x) { return log(x) - x + 1; }
double func8(double x) { return log(x) - pow((x-1), 2); }
 
//Первая производная функции
double derivative(double x, double h, func_t f)
{
    return (f(x + h) - f(x - h)/(2*h));
}
//Вторая производная функции
 
double second_derivative(double x, double h, func_t f)
{
    return (derivative(x, h, f) - derivative(x, h, f)/(2*h));
}
double newton(double x, double h, func_t f)
{
    return (x - f(x)/derivative(x, h, f));
}
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 14:30  [ТС] 15
shvyrevvg,
спасибо большое)

когда запускаю программу и ввожу данные
пишет overflow error
я что-то не то ввожу?)
или в самой программе ошибку надо поискать?
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 14:39 16
Цитата Сообщение от Nanana Посмотреть сообщение
когда запускаю программу и ввожу данные
пишет overflow error
я что-то не то ввожу?)
или в самой программе ошибку надо поискать?
Какие значения вводите?
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 16:24  [ТС] 17
shvyrevvg,
h=1
eps=0.001
Number of iteration =100

Добавлено через 1 час 42 минуты
shvyrevvg,

я посмотрела, если шаг меньше вводить, то все хорошо считает
кроме алгоритма
пишет ошибка области
не подскажете, как это можно исправить?
0
shvyrevvg
737 / 549 / 275
Регистрация: 12.05.2016
Сообщений: 1,599
20.11.2016, 17:43 18
Nanana, посмотрел я про "метод бисекции-Ньютона" и не понял, нужен метод бисекции(деления пополам) или метод Ньютона(метод касательных)?

Добавлено через 8 минут
Или метод бисекции использовать в случае выхода xn за границу [a,b]? В гугле пишут что просто задается x0 и пока fabs(x0-xn) > eps выполнять поиск.

Добавлено через 10 минут
В общем уточните, что требуется. Пока такой вариант.
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
/* Найти первый положительный корень уравнений с точностью eps методом бисекции-Ньютона, 
 * выбрать неподвижный конец и начальное приближение на интервале локализации корня 
 * вычислением второй производной. И даны функции для вычисления производной.
*/
 
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
 
typedef double(*func_t)(double);
 
double derivative(double, double, func_t)  ;
double second_derivative(double, double, func_t f) ;
double newton(double, double, func_t);
double func1(double), func2(double), func3(double), func4(double), func5(double), 
 
func6(double), func7(double), func8(double);
 
int main(void)
{
    int maxIteration = 0, i = 0, funcNum = 0;
    double x0,xn;// вычисляемые приближения для корня
    double a = 0, b = 0, c = 0, h, eps;// границы отрезка и необходимая точность
    //Объявление массива ссылок на функции
    double (*functions[8])(double) = {func1, func2, func3, func4, func5, func6, 
 
func7, func8};
    for(funcNum = 0, i = 0; funcNum < 8; funcNum++) {
        printf("Vvedite h: "); 
        scanf("%lf", &h); // вводим шаг
        printf("Vvedite eps: ");
        scanf("%lf", &eps); // вводим нужную точность вычислений
        printf("Vvedite a b: ");
        scanf("%lf %lf", &a, &b);
        printf( "Vvedite maximum number of iteration: " );
        scanf( "%lf", &maxIteration );// вводим кол-во итераций
        if (functions[funcNum](a)*second_derivative(a, h, functions[funcNum]) > 0) 
            x0 = a; // для выбора начальной точки проверяем f(a)*p2f(a)>0 ?
        else 
            x0 = b;
        do
        {
            x0 = xn;
            xn = newton(x0, h, functions[funcNum]);
            i++;
        }
        while (fabs(x0-xn) > eps && i < maxIteration);
        printf("xn = %.9f\n",xn); 
        printf("f(x0) = %.9f\n",functions[funcNum](x0)); 
        printf("Number of iteration = %d\n\n",i);
    }
    getchar();
}
 
//Функции-уравнения, решаемые в задаче
//double func1(double x) { return exp(-x) + x*x - 2; }
double func2(double x) { return -pow((x-2), 2); }
double func3(double x) { return exp(x)-2*x-2; }
double func4(double x) { return sin(x) + x - 1; }
double func5(double x) { return exp(-pow(x,2));}
double func6(double x) { return 2*exp(-3*x) - x +1; }
double func7(double x) { return log(x) - x + 1; }
double func8(double x) { return log(x) - pow((x-1), 2); }
 
//Первая производная функции
double derivative(double x, double h, func_t f)
{
    return (f(x + h) - f(x - h))/(2*h);
}
//Вторая производная функции
 
double second_derivative(double x, double h, func_t f)
{
    return (derivative(x + h, h, f) - derivative(x + h, h, f))/(2*h);
}
double newton(double x, double h, func_t f)
{
    return (x - f(x)/derivative(x, h, f));
}
1
Nanana
0 / 0 / 0
Регистрация: 06.04.2016
Сообщений: 11
20.11.2016, 22:02  [ТС] 19
shvyrevvg,
должен быть как бы комбинированные метод из этих двух методов

Добавлено через 3 часа 59 минут
shvyrevvg,
с помощью метода бисекции находим отрезки
на которых ищем корень
а методом Ньютона считаем значение корня
0
20.11.2016, 22:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2016, 22:02

Запись указателей в массив указателей
Ребята, подскажите, пожалуйста, что не так сделано? Задача: без использования библиотек распарсить...

Объявить массив mb как массив литерных указателей без указания количества элементов
Помогите решить такую задачу: Объявить массив mb как массив литерных указателей без указания...

Массив указателей меняет сам массив
Здравствуйте! есть программа с массивом указателей, этот массив форматируется по алфавиту и...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru