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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Sveta1992
0 / 0 / 0
Регистрация: 27.11.2011
Сообщений: 10
#1

работа с функциями.что-то не так. - C++

11.02.2012, 17:11. Просмотров 541. Ответов 5
Метки нет (Все метки)

выдает ошибку: неоднозначный вызов перегруженной функции. в чем дело?


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
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <math.h>
 
using namespace std;
 
double tang (double);//радианы
int tang (int);//градусы
 
void main()
{
    setlocale(LC_ALL, "russian");
    for (int i=0;i<3;i++)
    {
    cout<<"введите аргумет"<<endl;
    double c;
    cin>>c;
    
    double x=tang(c);
        cout<<"тангенс аргумента"<<x<<endl;
    }
    _getch();
}
    
double tang (double k)
{
 double b = tan (k);
 return b;
}
 
int tang (int k)
{
 int b = tan (k);
 return b;
}
 Комментарий модератора 
Используйте теги форматирования кода!
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2012, 17:11
Здравствуйте! Я подобрал для вас темы с ответами на вопрос работа с функциями.что-то не так. (C++):

Расскажите что значат эти строчки (работа со строками и функциями) - C++
//какие библиотеки тут не используются???? // #include &lt;tchar.h&gt; #include &quot;stdafx.h&quot; #include &quot;stdlib.h&quot; #include &lt;string&gt; ...

Работа с указателями: подскажите что я не так делаю - C++
Добрый день Подскажите пожалуйста что в этой программе не так #include &lt;iostream&gt; using namespace std; void...

работа с функциями в С++ !! - C++
помогите сделать задачу !нужно найти найбольший общий делитель пятинатуральных чисел !))) очень прошу сделайте кто нибуть !!!! ...

Работа с функциями - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include&lt;CONIO.H&gt; #include&lt;STDIO.H&gt; #include &lt;time.h&gt; #include &lt;stdlib.h&gt; ...

Работа с функциями - C++
Здравствуйте. Есть задание: Напишите программу, которая использует 3 определяемых пользователем функции и генерирует вывод.....Одна...

Работа с функциями - C++
Помогите решить задачи пожалуйста 1) По введенному целому числу М распечатать все трехзначные десятичные числа, сумма цифр равна М. ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
retmas
Жарю без масла
859 / 741 / 164
Регистрация: 13.01.2012
Сообщений: 1,694
11.02.2012, 17:18 #2
C++
1
2
3
4
5
int tang (int k)
{
    int b = tan(double(k));
    return b;
}
1
Sveta1992
0 / 0 / 0
Регистрация: 27.11.2011
Сообщений: 10
11.02.2012, 17:33  [ТС] #3
а почему так нужно было сделать? объясните пожалуйста.
0
retmas
Жарю без масла
859 / 741 / 164
Регистрация: 13.01.2012
Сообщений: 1,694
11.02.2012, 17:45 #4
в с++ для ф-ии tan есть 3 варианта перегрузки: для типов double, long double, и float. компилятору безразлично в какой из этих 3х типов ему перевести тип int. отсюда неоднозначность вызова ф-ии. записью tan(double(k)) мы конкретно указываем, какую из перегрузок использовать
1
-=ЮрА=-
Заблокирован
Автор FAQ
12.02.2012, 04:01 #5

Не по теме:

Sveta1992, здесь

Цитата Сообщение от retmas Посмотреть сообщение
int b = tan(double(k));
- можно было преобразовывать и неявным способом вот так int b = tan(1.0*k);



Добавлено через 7 минут
PS:
Цитата Сообщение от Sveta1992 Посмотреть сообщение
int tang (int);//градусы
- вам вдобавок ещё и неверно подсказали, чтобы данная функция воспринимала параметр в градусах и выдавала корректный ответ, я бы рекомендовал и даже буду настаивать чтобы вы сделали тело int tang (int) таким
C++
1
2
3
4
5
6
int tang (int k)
{
    double pi_2 = asin(1.0);
    int b = tan(pi_2*k/90.0);
    return b;
}
PS: retmas, ты забыл что tan принимает значение в радианах??!
http://www.cplusplus.com/reference/clibrary/cmath/tan/
Compute tangent
Returns the tangent of an angle of x radians.
In C++, this function is overloaded in <complex> and <valarray> (see complex tan and valarray tan).
Parameters
x
Floating point value representing an angle expressed in radians.
0
retmas
Жарю без масла
859 / 741 / 164
Регистрация: 13.01.2012
Сообщений: 1,694
12.02.2012, 08:34 #6
-=ЮрА=-, я ответил почему ошибки компиляции и показал идею, как избавится от нее, а градусы или радианы использует ТС я не вникал.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.02.2012, 08:34
Привет! Вот еще темы с ответами:

C++. Работа с функциями - C++
Функция для добавления элемента. Элемент добавляет, но записывает мусором void addComponent (int pos) { /*if (count &gt;= SIZE) ...

Работа с функциями - C++
Помогите пожалйста))) Очень нужно Задание: Вычислить Z = (X1 + Y1) / (Х2 - Y2), где Х1 и Х2 - корни уравнения 2x2 +x – 4=0; Y1 и Y2 –...

Работа с функциями - C++
Народ, объясните мне пожалуйста почему в функциях countX передаются вот такие данные vir1 = countX ( x1*x1, x2, M_PI_2); ...

работа с функциями - C++
у меня возникла проблема с такой задачкой : Даны натуральные числа k, n, m, действительные числа Х1,...,Xk, Y1, ...,Yn , Z1,...,Zm....


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.02.2012, 08:34
Ответ Создать тему
Опции темы

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