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

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

Войти
Регистрация
Восстановить пароль
 
Ириска5
0 / 0 / 0
Регистрация: 08.05.2011
Сообщений: 40
#1

Ошибка - перегруженность pow(int,int) неосуществима. Как исправить? - C++

13.05.2011, 19:25. Просмотров 701. Ответов 4
Метки нет (Все метки)

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
#include <iostream>
#include <cmath>
using namespace std;
struct point
{
    int x,y,z;
};
double dlina(point a,point b)
{
    return sqrt(pow(a.x-b.x,2)+pow(a.y-b.y,2)+pow(a.z-b.z,2));    (1)
}
double triangle(double d,double e,double f,double p,double max)
{
    if ((d+e>f) && (d+f>e) && (f+e>d))
        if (p>max) max=p;
    return max;
}
 
int main()
{
    point a[10];
    double d,e,f,p,max=0;
    int n;
    cout<<"введ колич точек";
    cin>>n;
    for(int i=1;i<=n;++i)
    {
        cout<<"введите координаты";
        cin>>a[i].x>>a[i].y>>a[i].z;
    }
    for(int i=1;i<=n-2;++i)
        for(int j=i+1;j<=n-1;++j)
            for(int k=j+1;k<=n;++k)
            {
                d=dlina(a[i],a[j]);
                e=dlina(a[j],a[k]);
                f=dlina(a[k],a[i]);
                p=d+e+f;
                triangle(d,e,f,p,max);
            }
    return 0;
}

подскажи пжл,в (1) пишет ошибку - перегруженность pow(int,int) неосуществима-не пойму как исправить
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.05.2011, 19:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка - перегруженность pow(int,int) неосуществима. Как исправить? (C++):

Ошибка при компиляции error: cannot convert ‘int (*)[5]’ to ‘int**’ for argument ‘1’ to ‘void Replase(int**)' - C++
#include &lt;iostream&gt; #include &lt;ctime&gt; #include &lt;iomanip&gt; #include &lt;cstdlib&gt; #define row 5 #define col 5 using namespace...

Error LNK2019: unresolved external symbol "public: __thiscall Vector<int>::Vector<int>(int,int,int)" (?0?$Vec - C++
Вот есть заголовочный файл // Заголовочный файл Vector.h #ifndef VECTOR_H #define VECTOR_H #include &lt;iostream&gt; using...

ОШИБКА [Error] cannot convert 'int*' to 'float*' for argument '1' to 'void Syma(float*,int*,int) - C++
Какая то проблема с указателями,незнаю,не хочет щитать суму парних чисел в второй подпрограме.Извиниет за ошибки.Не владею руским.Помогите...

Хочу написать функцию pow(), ошибка: (5,27):Too few parameters in call to 'step(float,int)' - C++
Хочу написать функцию pow(), ошибка: (5,27):Too few parameters in call to 'step(float,int)' float step(float x,int n) { if(n&gt;=3)...

Как понять int a(int x,int y, int z)? - C++
какое значение будет у переменной а?

В каком случае надо начинать с int main() или с int _tmain( int argc, _TCHAR* argv[] ) и т.д.? - C++
Не понимаю, с чего начинать. Заранее спс.

4
ValeryLaptev
Эксперт С++
1041 / 820 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
13.05.2011, 19:29 #2
1. Массивы нумеруются с 0!!!
2.
C++
1
2
3
4
double dlina(point a,point b)
{
        return sqrt((a.x-b.x)*(a.x-b.x,2)+(a.y-b.y)*(a.y-b.y)+(a.z-b.z)*(a.z-b.z));    (1)
}
0
mimicria
return (true);
1958 / 1095 / 91
Регистрация: 19.04.2011
Сообщений: 2,345
13.05.2011, 19:29 #3
C++
1
pow(a.x-b.x,2)+pow(a.y-b.y,2)+pow(a.z-b.z,2)
Видимо вместо точек надо использовать индексы массива типа pow(a[x]-b[x],2)
0
ValeryLaptev
Эксперт С++
1041 / 820 / 48
Регистрация: 30.04.2011
Сообщений: 1,659
13.05.2011, 19:35 #4
Цитата Сообщение от mimicria Посмотреть сообщение
C++
1
pow(a.x-b.x,2)+pow(a.y-b.y,2)+pow(a.z-b.z,2)
Видимо вместо точек надо использовать индексы массива типа pow(a[x]-b[x],2)
Нет! У него же две point в параметрах!
Ошибка в pow() потому, что в point - целые. Компилятор не знает, какую из функций pow() вызывать: то ли с параметрами floatб ттс параметрами double.
Решений, кроме моего показанного - два:
1. Объявить в структуре не целые, а дробные.
2. Указать преобразование типа первого аргумента в pow()
2
mimicria
return (true);
1958 / 1095 / 91
Регистрация: 19.04.2011
Сообщений: 2,345
13.05.2011, 19:37 #5
Виноват, структуру не заметил, а внизу зацепил массив a[], думал точки в массивах
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2011, 19:37
Привет! Вот еще темы с ответами:

Как считать данные в vector<pair<int, pair<int, int>>> arr(m) ? - C++
Здравствуйте! Помогите, как считать данные данные в массив такого типа? vector&lt;pair&lt;int, pair&lt;int, int&gt;&gt;&gt; arr(m) Пытался вот так...

Ошибка error: invalid types 'int[int]' for array subscript - C++
Дана строка,содержащая английский текст.Найти количество слов,начинающихся с буквы b. Выдает ошибку в 29 строке:error: invalid types...

Ошибка error C2440: инициализация: невозможно преобразовать 'int' в 'int []' - C++
// ConsoleApplication9.cpp: определяет точку входа для консольного приложения. // #include &quot;stdafx.h&quot; #include &lt;iostream&gt; ...

[Linker error] undefined reference to `sterling(int, int, int)' - C++
#include &lt;iostream&gt; using namespace std; int sterling(int,int,int); int sterling(int,int); int sterling(int); int main() { ...


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

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

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