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

Ошибка C2668: sqrt: неоднозначный вызов перегруженной функции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ В массиве, состоящем из п вещественных элементов, вычислить http://www.cyberforum.ru/cpp-beginners/thread359080.html
помогите написать прогу в С++ В массиве, состоящем из п вещественных элементов, вычислить: - номер минимального по модулю элемента массива (если таких элементов несколько, найти первый); - сумму модулей элементов массива, расположенных после первого отрицательного элемента. Сжать массив, удалив из него все элементы, равные заданному числу Р. Освободившиеся в конце массива элементы заполнить...
C++ "вставка" с "заменой" текста в файле. Здравствуйте. Решил для обретения бесценного опыта написать свой простенький парсер конфигов. Вообщем читает вполне себе читает конфиг.. пишет его... но вот столкнулся с вопросом, который вновинку и ума не приложу как это реализовать. Надо мне сделать так, что если в конфиг пишутся две одинаковые строки, то одна другую "затирает". Как это реализовать? емнип в классе fstream нету что то... http://www.cyberforum.ru/cpp-beginners/thread359073.html
Case C++
Можно ли как то в конструкции switch case задавать условие например case n<0:и выполнить действие
Поместить в массив с[m] коэффициенты произведения двух многочленов. C++
В массивах a и b хранятся коэффициенты двух многочленов степеней k и l. Поместить в массив с коэффициенты их произведения. (Числа k, l, m - натуральные, m = k + 1; элементы массива с индексом i содержит коэффициенты при x в степени i)
C++ Как запустить программу с параметрами? http://www.cyberforum.ru/cpp-beginners/thread359055.html
Как запустить программу: srcds.exe ( путь D:\csserver\server) С параметрами: -console -game cstrike -port 27015 +maxplayers 24 +map de_dust2 +sv_lan 0 + log on -32bit -tickrate 66 . В консольном режиме! ______________ И ещё,возможно ли сделай смешанную программу: консоль над которой есть меню с несколькими пунктами?
C++ Массив объектов Создать массив объектов разного типа невозможно. Но, наверное, можно создать массив объектов, поле которых, будет содержать указатель на объекты разных типов. Такое можно реализовать через шаблоны? Набросайте код кто нибудь если не сложно) подробнее

Показать сообщение отдельно
Alex Z
27 / 1 / 0
Регистрация: 29.06.2011
Сообщений: 136
01.10.2011, 19:19     Ошибка C2668: sqrt: неоднозначный вызов перегруженной функции
Добрый вечер.
Это опять я, чайник. Решаю такую задачу: "Вывести на экран N-ое число из ряда Фибоначчи".
Использую формулу Бине
Написал код:
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
#include <iostream> 
#include <conio.h>
#include <math.h>
using namespace std;
void Fibonacci(int); //Прототип функции
int Number;
int main() 
{       
    int N;
    cout<<"Vvedite nomer chisla iz riada Fibonacci"<<endl<<"N=";
    cin>>N;
    Fibonacci(N); //Вызывет функцию, которая определяет
                       //N-ое число Фибоначчи
    cout<<Number; //Выводит N-ое число Фибоначчи            
    cout<<endl; 
    getch();  
    return 0;
}
void Fibonacci(int K) //Описание функции
{
    double x, y, F, G;
    int i;
    F=(1+sqrt(5))/2;
    G=(1-sqrt(5))/2;
    x=1;
    y=1;
    for (i=1; i<=K; i++)
    {
        x*=F;
        y*=G;
    }
    Number=(x-y)/(sqrt(5));
}
Выводит при компиляции следующее:
"1>------ Построение начато: проект: 17_Fibonacci_Numbers, Конфигурация: Debug Win32 ------
1>Компиляция...
1>17_Fibonacci_Numbers.cpp
1>d:\my documents\программирование_информатика\c++\17_fibonacci_numbers\17_fibonacci_numbers.cpp(32) : warning C4996: 'getch': The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _getch. See online help for details.
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\conio.h(145): см. объявление 'getch'
1>d:\my documents\программирование_информатика\c++\17_fibonacci_numbers\17_fibonacci_numbers.cpp(39) : error C2668: sqrt: неоднозначный вызов перегруженной функции
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(581): может быть 'long double sqrt(long double)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(533): или 'float sqrt(float)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(128): или 'double sqrt(double)'
1> при попытке сопоставить список аргументов '(int)'
1>d:\my documents\программирование_информатика\c++\17_fibonacci_numbers\17_fibonacci_numbers.cpp(40) : error C2668: sqrt: неоднозначный вызов перегруженной функции
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(581): может быть 'long double sqrt(long double)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(533): или 'float sqrt(float)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(128): или 'double sqrt(double)'
1> при попытке сопоставить список аргументов '(int)'
1>d:\my documents\программирование_информатика\c++\17_fibonacci_numbers\17_fibonacci_numbers.cpp(48) : error C2668: sqrt: неоднозначный вызов перегруженной функции
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(581): может быть 'long double sqrt(long double)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(533): или 'float sqrt(float)'
1> c:\program files (x86)\microsoft visual studio 9.0\vc\include\math.h(128): или 'double sqrt(double)'
1> при попытке сопоставить список аргументов '(int)'
1>Журнал построения был сохранен в "file://d:\My documents\Программирование_Информатика\C++\17_Fibonacci_Numbers\Debug\BuildLog.htm"
1>17_Fibonacci_Numbers - ошибок 3, предупреждений 1
========== Построение: успешно: 0, с ошибками: 1, без изменений: 0, пропущено: 0 =========="

В итоге одна и та же ошибка 3 раза встречается:
error C2668: sqrt: неоднозначный вызов перегруженной функции

У меня 2 вопроса:
1) Что эта ошибка вообще означает? Не понимаю, что ему не нравится. Проблема с корнем из 5 sqrt(5)?
2) Как исправить?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:22. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru