Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2012, 20:44   #1
hottab1
Пользователь
 
Регистрация: 03.10.2012
Сообщений: 23
Восклицание Задача "квадрат"

На плоскости заданы координаты двух противоположных вершин квадрата все 4 числа целые и не превосходят по модулю 1000. Необходимо найти координаты двух остальных его вершин.
Нужно написать программу в паскаль, помогите пожалуйста.
hottab1 вне форума Ответить с цитированием
Старый 10.10.2012, 20:59   #2
VIK_aka_TOR
Участник клуба
 
Аватар для VIK_aka_TOR
 
Регистрация: 30.01.2011
Сообщений: 1,578
По умолчанию

окай... кидай твои наработки, домыслы... будем ПОМОГАТЬ ...
пишу код не только за печеньки
VIK_aka_TOR вне форума Ответить с цитированием
Старый 10.10.2012, 21:02   #3
hottab1
Пользователь
 
Регистрация: 03.10.2012
Сообщений: 23
По умолчанию

Ну если честно у меня даже идей нету поэтом и обратился к Вам)
Мне кажется здесь нужна какая то формула для нахождения
hottab1 вне форума Ответить с цитированием
Старый 10.10.2012, 21:02   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
var
x1,y1,x2,y2:integer;
x3,y3,x4,y4:integer;
begin
readln(x1,y1,x2,y2);
x3:= round((x1 + x2) / 2 - (y2 - y1) / 2);
y3:= round((y1 + y2) / 2 + (x2 - x1) / 2);
x4:= round((x1 + x2) / 2 + (y2 - y1) / 2);
y4:= round((y1 + y2) / 2 - (x2 - x1) / 2);
writeln(x3,',',y3);
writeln(x4,',',y4);
end.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 10.10.2012 в 21:12.
Mad_Cat вне форума Ответить с цитированием
Старый 10.10.2012, 21:06   #5
hottab1
Пользователь
 
Регистрация: 03.10.2012
Сообщений: 23
По умолчанию

Вводятся только 2 точки противоположные, и нужно найти по ним две другие точки
hottab1 вне форума Ответить с цитированием
Старый 10.10.2012, 21:08   #6
VIK_aka_TOR
Участник клуба
 
Аватар для VIK_aka_TOR
 
Регистрация: 30.01.2011
Сообщений: 1,578
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
при условии что стороны || осям
A(x1,y1)
D(x4,y4)

B(x4,y1)
C(x1,y4)
если... это хорошо...
правильнее наверное будет найти центр диагонали (данные виршины которые образуют) и воспользоваться матрицами поворота... на 90 градусов... относительно найденного центра.
пишу код не только за печеньки
VIK_aka_TOR вне форума Ответить с цитированием
Старый 10.10.2012, 21:10   #7
gaw4
Форумчанин
 
Регистрация: 31.05.2010
Сообщений: 407
По умолчанию

первое, о чем подумал, - это
длина стороны=длине диагонали/кор(2)
тогда получается 2 системы по 2 уравнения
напр для заданных точек а,с
точка b ищется из системы
(Xa-Xb)^2+(Ya-Yb)^2=d^2/2
(Xc-Xb)^2+(Yc-Yb)^2=d^2/2
icq 584 308 611
gaw4 вне форума Ответить с цитированием
Старый 10.10.2012, 21:11   #8
gaw4
Форумчанин
 
Регистрация: 31.05.2010
Сообщений: 407
По умолчанию

ой, блин, опоздал
icq 584 308 611
gaw4 вне форума Ответить с цитированием
Старый 10.10.2012, 21:16   #9
hottab1
Пользователь
 
Регистрация: 03.10.2012
Сообщений: 23
По умолчанию

Спасибо всем большое)
Очень приятно знать, что остались хорошие люди
hottab1 вне форума Ответить с цитированием
Старый 10.10.2012, 21:20   #10
hottab1
Пользователь
 
Регистрация: 03.10.2012
Сообщений: 23
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
Код:
var
x1,y1,x2,y2:integer;
x3,y3,x4,y4:integer;
begin
readln(x1,y1,x2,y2);
x3:= round((x1 + x2) / 2 - (y2 - y1) / 2);
y3:= round((y1 + y2) / 2 + (x2 - x1) / 2);
x4:= round((x1 + x2) / 2 + (y2 - y1) / 2);
y4:= round((y1 + y2) / 2 - (x2 - x1) / 2);
writeln(x3,',',y3);
writeln(x4,',',y4);
end.
Странно, программа всегда выдает 0, в чем может быть проблема?
hottab1 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
шифратор - "магический квадрат" ПрИуЭт Общие вопросы C/C++ 4 18.11.2013 22:11
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. воваава Помощь студентам 3 01.12.2011 12:50
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
"Латинский" квадрат. Паскаль SmartStas Помощь студентам 9 19.03.2009 16:37
"Транспортная задача", "Поиск решения" Perroman Microsoft Office Excel 3 12.12.2007 17:12