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

опять ошибка.на этот раз cannot convert `float (*)(float)' to `float' in argument passing - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ рекурсия в С++ http://www.cyberforum.ru/cpp-beginners/thread828419.html
Изучаю использование рекурсивной функции в С++. Правильно ли я понял: - что нет ограничений в max depth вызова рекурсии которые функция может сделать? (так как только один лимит в рекурсии - overflow памяти)? - в единичном implementation функции с вызовом рекурсии max число statements - не огранииченно? - может ли поиск значения в связанном списке быть хорошим кандидатом для использования...
C++ Добавить аргументы в массив и считать Здравствуйте. Как это реализовать? По сути мне нужен динамический массив. Теперь подробней в чем суть. Есть функция,где я получаю допустим такую структуру: WRITE_BYTE( 106 ); WRITE_COORD( 1493.943481 ); WRITE_COORD( -515.377319 ); http://www.cyberforum.ru/cpp-beginners/thread828411.html
C++ Вычисление функций разложением в ряд Тейлора
Добрый всем вечер. Помогите пожалуйста с задачкой, если не сложно. Вот условие: При некоторых заданных x, N и E, определяемых вводом, вычислить: a)сумму N слагаемых заданного вида; b)сумму тех слагаемых, которые по абсолютной величине больше Е. Для случая b выполнить суммирование для двух значений Е, отличающихся на порядок, и при этом определить количество слагаемых, включенных в сумму....
Вставить заданное число в массив целых чисел после первого отрицательного элемента C++
Вставить заданное число в массив целых чисел после первого отрицательного элемента с++ Добавлено через 14 минут #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <memory.h> #define N 10
C++ В массиве записана информация о стоимости каждого из 20 видов товара, продаваемых фирмой. С 1 января очередного года фирма прекращает продавать товар http://www.cyberforum.ru/cpp-beginners/thread828388.html
В массиве записана информация о стоимости каждого из 20 видов товара, продаваемых фирмой. С 1 января очередного года фирма прекращает продавать товар, стоимость которого записана в n- м элементе массива. Получит массив со стоимостью всех оставшихся видов товара с++
C++ Вычитание секунды Есть программа которая складывает и вычитает 1 секунду. Если со сложение оказалось все более-менее просто, то с вычитанием проблема! Вот что есть: #include <stdio.h> #include <conio.h> class time { int hour; int min; int sek; подробнее

Показать сообщение отдельно
Милашечка
0 / 0 / 0
Регистрация: 16.02.2013
Сообщений: 98
14.04.2013, 23:01  [ТС]     опять ошибка.на этот раз cannot convert `float (*)(float)' to `float' in argument passing
У меня в самой функции vibor неразбериха. Функция tochki возвращает результат через имя, а у меня самостоятельный оператор..Нужно передавать функцию присваиванием новому оператору-аргументу или как??

Запуталась в том как правильно функцию tochki передать в switch case.Очень сильно запуталасьКак правльно передавать?
И как функцию vibor правильно вызвать в основной функции программы,немного путаюсь уже.Если я понимаю правильно основная функция у меня - похожа больше на описание а не на вызов, но возможный как по моему вызов я написала,хотя при нем много новых ошибок возникает.
Объясните мои ошибки и помогите хоть немножечко с тем что не получается,пожалуйста
По исправляла ошибки,которые вы описали.
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<stdio.h>
#include<stdlib.h>
#include<math.h>
 
float f1(float x)/*vira*enie 1*/
 {return (x*cos(x))/(1+ pow(x,2));}
 
float f2 (float x) /*vira*enie 2*/
{return(exp(x)/x);}
 
float f3 (float x)/*vira*enie 3*/
{return (1/(3+2*cos(x)));}
 
float proizv1(float *f(float),float x)
/* pervaja proizvodnaja iz klassi4eskogo opredelenija eto f'(x)=(f(x0)-f(x))/(x-x0) */
/* opredelim proizvodnyjy s tochnost'jy h=x-x0=0.001 */
/* znachit x0=x-h */
/*polychaem znachenie dlja proizvodnoj (f(x-h)-f(x)/h */
{ float h;
h=0.001;
return((f(x-h)-f(x))/h);      
}
 
 
float proizv2(float *proizv1(float),float x)
/*vtoraja proizvodnaja iz klassi4eskogo opredelenija*/
/* f''(x)=(f'(x))' proizvodnaja ot proizvodnoj*/
{ float h;
h=0.001;
return((proizv1(x-h)-proizv1(x))/h);      
}
 
float tochki(float *proizv2(float),float xn,float xk,float dx)
{float x1,y; int i;
 printf("____________________________\n");
 printf("|___i____|___x___|_____y___|\n");
 i=0;
  for (x1=xn;x1<=xk;x1+=dx)
   {proizv2(x1);
    i++;
    printf("|___%d____|_%.1f_|_%.5f_|\n",i,x1,proizv2(x1));
   }
    for (x1=xn;x1<=xk;x1+=dx)
     {proizv2(x1);
      if (proizv2(x1)==0) printf("tochka peregiba=%.1f\n",x1);
      /*yslovie syshestvovanija tochki peregiba*/
      else printf("net tochek peregiba");
     }
} 
 
float vibor( float(*tochki)(float),float xn,float xk,float dx )
{int n;
printf("S kakoj fynkciej bydem rabotat'?\n");
printf("1.  x*cos(x))/(1+ pow(x,2)\n");
printf("2. exp(x)/x\n");
printf("3. 1/(3+2*cos(x))\n");
printf("0. Vihod\n"); 
  scanf("%d",&n);
   switch(n)
            {case 1: tochki(f1,-4,4,0.5); break;//dlja pervoj fynkcii na intervale -4 4
             case 2: tochki(f2,-6,1,0.5); break;//dlja vtoroj fynkcii na intervale -6 1
             case 3: tochki(f3,0,4,0.5); break;//dlja tret'ej fynkcii na intervale 0 4
             case 0: break;    
             default:printf("Nevernij re*im");  
             }
}          
 int main()
  { vibor( float(*tochki)(float),float xn,float xk,float dx);  //bydet li pravil'nim takoj vizov???pri nem pojavljajytsa novie oshibki//
   system("pause");
   return 0;
   }
 
Текущее время: 14:35. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru