Проинициализировать два массива, которые задают n точек координатами (X, Y) в двумерном пространстве.Описать функцию, которая найдет расстояния между всеми точками и выведет их на экран в виде таблицы.
Считает расстояние только между двумя точками. Что не так в коде?
float alldist(int *x, int *y);
int main()
{
int *x=new int [5] {1, 4, 6, 2, 1};
int *y=new int [5] {6, 7, 8, 9, 10};
cout << "Расстояние между всеми точками:" << alldist(x, y) << endl;
}
float alldist(int *x, int *y)
{
float d;
for (int i = 0; i < 4; i++)
{
for (int j = 0; j < 4; i++)
{
d = sqrt(pow((x[i+1] - x[i]), 2) + pow((y[j+1] - y[j]), 2));
return d;
}
}
}
Что-то вроде такого:
void alldist(int *x, int *y, int n)
{
float d;
for (int i = 0; i < n-1; i++)
{
for (int j = i + 1; j < n; j++)
{
d = sqrt(pow((x[j] - x[i]), 2) + pow((y[j] - y[i]), 2));
cout <<"dist "<< i << ":" << j << " " << d << " ";
}
cout << endl;
}
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
В Qt, с помощью QChart реализуется простой графикВ ходе работы возникла необходимость масштабирования по оси X, было решено реализовывать с помощью...
Ошибка:error: no match for 'operator+' (operand types are 'std::_List_iterator<double>' and 'int')
Описать функцию, которая в новом массиве получит только положительные значения элементов исходного массиваИспользовать механизм указателей