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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.07.2011, 15:13   #11
xXSilentXx
 
Регистрация: 21.07.2011
Сообщений: 7
По умолчанию

нашёл я как найти остальные координаты 2-ух вершин
Код:
xc = (x1 + x2)/2.0
yc = (y1 + y2)/2.0
dx = (x2 - x1)/2.0
dy = (y2 - y1)/2.0
x3 = xc + dy
y3 = yc - dx
x4 = xc - dy
y4 = yc + dx
Помогите пожалуйста написать код программы на Си. Я понял что надо сначало найти координаты 2-ух остальных точек, потом через уравнение (x-x1)/(x2-x1)=(y-y1)/(y2-y1) задать 4 стороны квадрата и прямую, затем проверить пересекают ли стороны квадрата прямую.Еще следует проверить параллельность этих отрезков при помощи угловых коэффициентов.

Последний раз редактировалось Stilet; 26.07.2011 в 14:11.
xXSilentXx вне форума Ответить с цитированием
Старый 26.07.2011, 13:57   #12
Вирт
Заблокирован
 
Регистрация: 05.05.2011
Сообщений: 6
По умолчанию

извни но написать с нуля это не в этот раздел сообщение. Викладывай свои соображения, а там посмотрим.
Вирт вне форума Ответить с цитированием
Старый 26.07.2011, 13:59   #13
xXSilentXx
 
Регистрация: 21.07.2011
Сообщений: 7
По умолчанию

Теоретически я высказал, но как написать на Си это всё ни как не пойму
xXSilentXx вне форума Ответить с цитированием
Старый 26.07.2011, 14:21   #14
xXSilentXx
 
Регистрация: 21.07.2011
Сообщений: 7
По умолчанию

Код:
#include <stdio.h>

 
int main()
{
        unt x1,x2,x3,x4,y1,y2,y3,y4,xc,yc,dx,dy;
        printf("\n Vvedite koordinaty kvadrata\r\n");
        printf("x1 = ");scanf("%g",&x1);
        printf("y1 = ");scanf("%g",&y1);
        printf("x2 = ");scanf("%g",&x2);
        printf("y2 = ");scanf("%g",&y2);
        printf("\n vvedite koordinaty pryamoi\r\n");
        printf("x3 = ");scanf("%g",&x3);
        printf("y3 = ");scanf("%g",&y3);
        printf("x4 = ");scanf("%g",&x4);
        printf("y4 = ");scanf("%g",&y4);

        /*теперь нахожу координаты 2-ух остальных вершин квадрата*/
    xc = (x1 + x2)/2.0
    yc = (y1 + y2)/2.0
    dx = (x2 - x1)/2.0
    dy = (y2 - y1)/2.0
    x5 = xc + dy
    y5 = yc - dx
    x6 = xc - dy
    y6 = yc + dx
Вот после этого не пойму как написать уравнения сторон квадрата и прямой, и затем проверить пересекаются они или нет. Помогите пожалуйста
xXSilentXx вне форума Ответить с цитированием
Старый 26.07.2011, 19:24   #15
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

x от x1 до x2
(у-у1)/(у2-у1)=(х-х1)/(х2-х1) - выражайте отсюда и все

повторить для остальных
p51x вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
кординатна прямая (pascal) Besidnuk Помощь студентам 4 09.12.2010 19:34
Прямая и Окружность Ukeeler Помощь студентам 5 02.11.2010 17:50
Прямая VirusOfLove Помощь студентам 8 05.12.2009 09:37
Прямая линия serres Общие вопросы Delphi 1 04.11.2007 18:33
Прямая в пространстве Neuros1s Общие вопросы Delphi 12 29.06.2007 00:06