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

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

Войти
Регистрация
Восстановить пароль
 
Elizabeth7
2 / 2 / 0
Регистрация: 26.03.2013
Сообщений: 24
#1

Определить наибольшую диагональ прямоугольника - C++

15.04.2013, 14:31. Просмотров 599. Ответов 2
Метки нет (Все метки)

Определить наибольшую диагональ прямоугольника. В массиве заданы координаты противоположных вершин прямоугольников: (a[0], a[1])-координаты первой вершины первого прямоугольника, (a[2], a[3])-координаты второй вершины первого прямоугольника, (a[4], a[5])-координаты первой вершины второго прямоугольника, (a[6], a[7])-координаты второй вершины второго прямоугольника и т.д. Использовать функцию определения расстояния между двумя точками.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2013, 14:31
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определить наибольшую диагональ прямоугольника (C++):

Как найти в двумерном массиве наибольшую диагональ/горизонталь/вертикаль? - C++
как найти в двумерном массиве наибольшую диагональ/горизонталь/вертикаль?? подскажите пожалуйста

Определить наибольшую последовательность отличных от пробелов символов - C++
Помоги если рубишь на си Помогите после завтра олимпиада по программированию у меня олимпиада а я не как не могу решить эти две...

Определить наибольшую площадь треугольника, заданного длинами сторон в массиве - C++
Задача такая:1. Определить наибольшую площадь треугольника, зданного длинами сторон в массиве: (а,а,а) - длины сторон первого...

Определить точки пересечения круга и прямоугольника - C++
Помогите, пожалуйста!( Даны вещественные числа x1, y1, r, x2, y2, x3, y3. Определите, существуют ли общие точки у круга с центром в точке...

Определить, пересекаются ли контур прямоугольника и окружность - C++
Задача такова есть координаты прямоугольника и круга. необходимо выяснить пересекаются они или нет.???? #include <iostream> ...

Определить координаты четвертой вершины прямоугольника - C++
Пусть даны координаты трех вершин прямоугольника. Определите координаты четвертой вершины.#include<stdio.h> #include<conio.h> int...

2
Tulosba
:)
Эксперт С++
4397 / 3233 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
15.04.2013, 14:58 #2
Цитата Сообщение от Elizabeth7 Посмотреть сообщение
Определить наибольшую диагональ прямоугольника.
Любая диагональ прямоугольника - наибольшая

Добавлено через 14 минут
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 <iostream>
#include <cmath>
 
using namespace std;
 
double diag( int x1, int y1, int x2, int y2 )
{
   return sqrt( pow(x1-x2,2) + pow(y1-y2,2));
}
 
int main() {
   
   int points[] = {1,2,3,4,5,6,7,9};
   
   const int len = sizeof(points)/sizeof(*points);
   const int rects = len / 4;
   
   double maxDiag = 0;
   int num = -1;
   for( int i=0; i<rects; ++i )
   {
      double d = diag( points[i*4], points[i*4+1], points[i*4+2], points[i*4+3] );
      if( maxDiag < d )
      {
         maxDiag = d;
         num = i;
      }
   }
   
   if( num != -1 )
   {
      cout << "Максимальная диагональ = " << maxDiag << " у прямоугольника с индексом " << num << endl;
   }
   
   return 0;
}
1
Xfaider
11 / 11 / 1
Регистрация: 27.10.2012
Сообщений: 26
15.04.2013, 15:44 #3
Если я все правильно понял:
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
#include <iostream>
#include <math.h>
#include <locale.h>
 
using namespace std;
double lenght(int x1, int y1, int x2, int y2)
{
   double res;
   res=sqrt(pow(x2-x1,2)+pow(y2-y1,2));
   return res;
}
int main(void){
    setlocale(LC_ALL,"rus");
    int n,k(1),num(0); double max_lenght=0;
    cout<<"Введите колличество прямоугольников\n";
    cin>>n;
    int *a=new int[n*4];
    for (int i=0;i<=n*4-4;i=i+4)
    {
      cout<<"Введите координаты противоположных вершин(х1,у1) и (х2,у2) "<<k<<" прямоугольника\n";
      cin>>a[i]>>a[i+1]>>a[i+2]>>a[i+3];
      if(lenght(a[i],a[i+1],a[i+2],a[i+3])>max_lenght) 
      {
         max_lenght=lenght(a[i],a[i+1],a[i+2],a[i+3]);
         num=k;
      }
      k++;
    }
    cout<<"Максимальная длинна диагонали прямоугольника\n"<<num<<endl<<max_lenght;
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2013, 15:44
Привет! Вот еще темы с ответами:

Определить лежит ли точка внутри заданного прямоугольника - C++
Даны стороны прямоугольника a и b, Составить программу, определяющую лежит ли точка с координатами (x, y) внутри прямоугольника.

Определить в каком секторе прямоугольника расположена точка - C++
Приветствую всех, помогите решить задачу, с оператором - if !!! Пользователь вводит высоту и ширину одно прямоугольника, а так же...

Определить методы вычисления гипотенузы и площади прямоугольника - C++
Создать класс Pair (пара чисел); определить методы изменения полей и вычисления произведения чисел. Определить производный класс...

Определить номер четверти прямоугольника, в которую попала точка - C++
Не могу разобраться с условием. Буду благодарен запомощь. Есть задача. Ввести координаты точки (x, y) и координаты прямоугольника....


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

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