Форум программистов, компьютерный форум, киберфорум
Haskell
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.52/29: Рейтинг темы: голосов - 29, средняя оценка - 4.52
0 / 0 / 0
Регистрация: 19.10.2011
Сообщений: 43
1

Составить уравнение прямой, проходящей через две заданные точки

26.05.2013, 20:25. Показов 5648. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Составить уравнение прямой, проходящей через 2 заданные точки.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.05.2013, 20:25
Ответы с готовыми решениями:

Составить уравнение прямой, проходящей через две точки.
составить уравнение прямой проходящей через точки A(3;1) и B(3;5)

Написать программу, определяющую наклон прямой, проходящей через две заданные точки
пожалуйста помогите с составлением кода 5.Напишите программу, которая после получения значений...

Составьте уравнение прямой, проходящей через две точки
Составьте уравнение прямой проходящей через точки k(3 -2) и p(5 2) напишите пожалуйста

Написать уравнение прямой, проходящей через две точки
Написать уравнение прямой, проходящей через две точки а) A(2;-4) и B(-5;6); б). A(-8;-2) и...

11
Модератор
Эксперт функциональных языков программированияЭксперт Python
36601 / 20330 / 4220
Регистрация: 12.02.2012
Сообщений: 33,640
Записей в блоге: 13
26.05.2013, 20:40 2
(y-y1)/(y2-y1)=(x-x1)/(x2-x1)

Но при чем здесь Haskell?
0
0 / 0 / 0
Регистрация: 19.10.2011
Сообщений: 43
27.05.2013, 10:21  [ТС] 3
Нужно написать программу на этом языке.
0
144 / 134 / 8
Регистрация: 19.07.2011
Сообщений: 184
27.05.2013, 10:32 4
Haskell
1
main = putStrLn "Hello, World!"
Но при чем здесь уравнение прямой?
1
Модератор
Эксперт функциональных языков программированияЭксперт Python
36601 / 20330 / 4220
Регистрация: 12.02.2012
Сообщений: 33,640
Записей в блоге: 13
27.05.2013, 11:02 5
Цитата Сообщение от Krotik Посмотреть сообщение
Нужно написать программу на этом языке.
- программа обычно берет на вход какие-то данные, обрабатывает их, и возвращает результаты (числа, текст, графику - одним словом - данные).
Что должна вернуть твоя программа?
0
0 / 0 / 0
Регистрация: 19.10.2011
Сообщений: 43
27.05.2013, 11:37  [ТС] 6
Нужно написать программу на этом языке.
Про входные и выходные данные ничего не сказано...
Но скорее всего не входе: 2 точки; на выходе: уравнение прямой.
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
36601 / 20330 / 4220
Регистрация: 12.02.2012
Сообщений: 33,640
Записей в блоге: 13
27.05.2013, 11:51 7
Цитата Сообщение от Krotik Посмотреть сообщение
на выходе: уравнение прямой.
- это, мягко говоря, непонятно. Давай так:
на входе: x1 y1 x2 y2 x y
на выходе: True если (x y) лежит на прямой и False в противном случае

Haskell
1
2
3
4
5
6
7
checkLine ::  (Float,Float) -> (Float,Float) -> (Float,Float) -> Bool                     
checkLine (x1,y1) (x2,y2) (x,y) = abs ((x-x1)/(x2-x1) - (y-y1)/(y2-y1)) < 1.0E-6
 
Main> checkLine (1,1) (2,2) (5,5)
True
Main> checkLine (1,1) (2,2) (5,6)
False
0
Эксперт функциональных языков программированияЭксперт Java
4486 / 2721 / 485
Регистрация: 28.04.2012
Сообщений: 8,590
27.05.2013, 13:34 8
Оно?

Добавлено через 8 минут
Или оно?
0
Модератор
Эксперт функциональных языков программированияЭксперт Python
36601 / 20330 / 4220
Регистрация: 12.02.2012
Сообщений: 33,640
Записей в блоге: 13
27.05.2013, 14:02 9
korvin_, а что за ссылки? У меня они не открываются. что там?
0
Эксперт функциональных языков программированияЭксперт Java
4486 / 2721 / 485
Регистрация: 28.04.2012
Сообщений: 8,590
27.05.2013, 15:35 10
Странно, у меня открывает. Впрочем, на ideone как-то недавно висело объявление, что они куда-то там переезжают, возможно проблемы в связи с переездом =).

По первой ссылке:
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
linefun :: (Double, Double) -> (Double, Double) -> String
linefun (x1, y1) (x2, y2) = "y = " ++ show k ++ " * x + " ++ show b where
    k = dy / dx
    b = y1 - k * x1
    dx = x2 - x1
    dy = y2 - y1
 
main = putStrLn $ linefun (0, 1) (1, 3)
 
{- Output:
y = 2.0 * x + 1.0
-}
По второй:
Haskell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
linefun :: (Double, Double) -> (Double, Double) -> Double -> Double
linefun (x1, y1) (x2, y2) =
    let dx = x2 - x1
        dy = y2 - y1
        k = dy / dx
        b = y1 - k * x1 in
    \x -> k*x + b
 
printf f x = putStrLn $ "f( " ++ show x ++ " ) = " ++ show (f x)
 
main = mapM_ (printf $ linefun (0, 1) (1, 3)) [0..4]
 
{- Output:
f( 0.0 ) = 1.0
f( 1.0 ) = 3.0
f( 2.0 ) = 5.0
f( 3.0 ) = 7.0
f( 4.0 ) = 9.0
-}
1
4527 / 3521 / 358
Регистрация: 12.03.2013
Сообщений: 6,038
27.05.2013, 16:45 11
Хе, решение со строкой глючит при отрицательном b.

Вот чтобы найти коэффициенты уравнения ax + by + c = 0. Работает и для вертикальных прямых и даже для совпадающих точек.
Haskell
1
2
3
4
5
lineCoeff :: (Num a) => (a, a) -> (a, a) -> (a, a, a)
lineCoeff (x1, y1) (x2, y2) = (a, b, c)
    where a = y2 - y1
          b = x1 - x2
          c = - x1 * y2 + x1 * y1 + x2 * y1 - x1 * y1
1
0 / 0 / 0
Регистрация: 19.10.2011
Сообщений: 43
27.05.2013, 19:59  [ТС] 12
Оказывается, что в этой программе нужно ещё организовать виды рекурсий:
повторная, удаленная, взаимная, каскадная
0
27.05.2013, 19:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.05.2013, 19:59
Помогаю со студенческими работами здесь

Уравнение плоскости, проходящей через две точки и параллельно прямой
Уравнение плоскости,проходящей через две точки,параллельная прямой ,заданной формулой пересечения...

Составить уравнение прямой, проходящей через точки
Составить уравнение прямой, проходящей через т.A(1;1) параллельно прямой 2*x+y-8=0 Сделать график

Составить уравнение прямой, проходящей через точки
Составить уравнения прямой, проходящей через {M}_{1}(1;1;-1) и {M}_{2}(2;-1;3)и указать какая из т....

Составить уравнение плоскости, проходящей через две точки параллельно оси Oz
Составить уравнение плоскости, проходящей через точки M1 (1,3, -2) и M2 (2,2,0) параллельно оси Oz


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru