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

Найти наибольшее расстояние (массив) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Поменять местами элементы в массиве http://www.cyberforum.ru/cpp-beginners/thread637390.html
Даны действительные числа х1, …, хn (все числа попарно различны). Поменять местами наибольший и наименьший элементы.
C++ Выбрать наибольший и наименьший элементы в матрице Помогите пожалуйста!!!! Дана вещественная матрица размером m x n. все элементы которой различны. В каждой строке выберите элемент с наименьшим значением, затем среди этих чисел выберите наибольшее. Укажите индексы найденного элемента. http://www.cyberforum.ru/cpp-beginners/thread637382.html
Получить цвет фона экрана консольного окна (можно и методами WinAPI) C++
Привет. Как получить цвет (фона экрана) консольного окна? Можно и методами WinAPI. С меня печенька :)
Определить, является ли целая квадратная матрица порядка n симметричной (относительно главной диагонали) C++
Помогите пожалуйста, срочно нужно
C++ Транспонировать данную вещественную квадратную матрицу порядка n http://www.cyberforum.ru/cpp-beginners/thread637344.html
Помогите срочно нужно, пожалуйста!
C++ Остановка действий Можно ли как нибудь остановить выполнения программы на некоторое время? подробнее

Показать сообщение отдельно
arthurfok
0 / 0 / 0
Регистрация: 07.09.2011
Сообщений: 42
14.08.2012, 10:31     Найти наибольшее расстояние (массив)
ну, тапорный вариант:
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
#include "stdafx.h"
#include "math.h"
#include <iostream>
using namespace std;
int RasstoyanieMejduDvumyaTochkami(int X1,int Y1,int X2,int Y2)
{
   // Эта функция считывает расстояния между двумя точками  (X1,Y1) и (X2,Y2) 
   double d=sqrt((double)((X2-X1)*(X2-X1) + (Y2-Y1)*(Y2-Y1)));
   return (int)d;
}
void main()
{
    setlocale(LC_ALL,"Russian"); //это для того, что бы в консоле печатались русские букви (а не кваказабры) 
    int n=5;                 //   изменить эти значения как вам нужно
    int X[5]={1,2,3,4,5};    //   изменить эти значения как вам нужно
    int Y[5]={1,2,3,4,5};    //   изменить эти значения как вам нужно
 
   int max=0;
   int i_max;
   int k_max;
  for(int i=0;i<n-1;i++)
  {
     for(int k=i+1;k<n;k++)
     {
         int d=RasstoyanieMejduDvumyaTochkami(X[i],Y[i],X[k],Y[k]);
         if(d>max)
         {
           max=d;
           i_max = i;
           k_max=k;
         }
     }      
  }
 
  //
  // где i_max это индекс первой точки, а k_max  - индекс второй точки.
 // 
  cout<<"Наиболее расстояние имеется  у этих 2 точек: (X["<<i_max<<"],Y["<<i_max<<"]) и (X["<<k_max<<"],Y["<<k_max<<"])"<<endl;
 
}
 
Текущее время: 01:54. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru