Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.92/25: Рейтинг темы: голосов - 25, средняя оценка - 4.92
101 / 42 / 9
Регистрация: 09.12.2012
Сообщений: 596
1

Не работают функции <math.h> в методе (функции-члене)

09.07.2013, 18:11. Показов 5099. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Сделал программу которая решает по формуле задачу. Все работает, но стоило вынести нахождение y в функцию, как компилятор стал писать ошибки! код, ошибки и скриншот
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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
 
using namespace std;
 
double yCacl(int x){
 
 double s = 0;  // это y в данном случае!
 int a = 1;     // это n в данном случае!
 int af = 20;
 
 for (a = 1; a <= af; a++)
 s+=pow(x, a-1)/sin(a*x);
 return s;
}
 
int _tmain(int argc, _TCHAR* argv[])
{
    setlocale( LC_ALL,"Russian" );
 
 double x = 0.1;
 double xf = 1.2;
 double h = 0.1;
 double y = 0;
 
 
 
 for (x = 0.1; x <= xf; x += h){
 y = yCacl(x);
 cout <<"y( "<< x << ") = " << y << endl; 
 y = 0; // обнуляем как y
 }
 cout << endl; 
 
 system("pause");
 return 0;
}
Ошибки:
Ошибка 1 error C2668: pow: неоднозначный вызов перегруженной функции
Ошибка 2 error C2668: sin: неоднозначный вызов перегруженной функции
3 IntelliSense: существует более одного экземпляра перегруженная функция "pow", соответствующего списку аргументов
4 IntelliSense: существует более одного экземпляра перегруженная функция "sin", соответствующего списку аргументов
Миниатюры
Не работают функции <math.h> в методе (функции-члене)  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.07.2013, 18:11
Ответы с готовыми решениями:

Как передать аргументу в функции-члене значение переменной
Здравствуйте! Хочу передать в аргументы функции-члена значение переменной, которая имеет...

Локальное лямбда-выражение не допускается в функции-члене класса управляемый
Здравствуйте, мне хотелось бы распараллелить алгоритм с помощью parallel_invoke, чтобы ускорить...

Как в функции-члене int Queue::get() реализовать оповещение пользователя о том, что очередь заполнена?
Ребята, делаю пример из книги, в котором необходимо создать очередь. Вот код: Queue.h #pragma...

Математические функции Math
Как за кодить arcsin, arccos, arctg, arcctg?

5
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
09.07.2013, 18:39 2
pow() и sin() для int нет.
0
101 / 42 / 9
Регистрация: 09.12.2012
Сообщений: 596
09.07.2013, 18:41  [ТС] 3
так в main работало, а в yCalc нет! ну хорошо попробую тип изменить и опишусь
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
09.07.2013, 18:44 4
Добавлено через 1 минуту
Цитата Сообщение от beats Посмотреть сообщение
так в main работало
В main() у вас x double, а в функции int.

Добавлено через 1 минуту
C++
1
2
double yCacl(double x)
{}
0
101 / 42 / 9
Регистрация: 09.12.2012
Сообщений: 596
09.07.2013, 18:53  [ТС] 5
я понял. Спасибо, изменил на доубл и действительно заработало! спс
0
101 / 42 / 9
Регистрация: 09.12.2012
Сообщений: 596
09.07.2013, 19:06  [ТС] 6
да и если кто-то будет код использовать то вот условие задачи (фот) и плюс там есть шаг, по коду понятно какой)
Изображения
 
0
09.07.2013, 19:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
09.07.2013, 19:06
Помогаю со студенческими работами здесь

Математические функции math.h
Не работают стандартные функции библиотеки &lt;math.h&gt; Ну, например: #include &lt;cmath&gt; #include...

math.h тригонометрические функции
Приветствую. Ребят, такой вопрос возник..работал, работал..потом решил проверить..и смотрю, что...

Оптимизация функции Math.pow
Добрый день уважаемые знатоки. Хотел спросить, можна ли как то оптимизировать функцию math.pow....

Калькулятор без функции Math
Уважаемые форумчане, я начинающий, как вы поняли, юзер. Поэтому помогите, если не трудно. Тз...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru