2016-07-05 95 views
-1

對於所有這些,我都非常陌生,需要學習一些基本信息以在Python中編寫代碼。通過教程是好的,但我傾向於有一些可能性和不相關的信息。笛卡爾座標分析的編碼基礎

我需要編寫的代碼必須能夠確定笛卡爾座標中三個隨機點的共線性。任何人都可以幫助我指導正確的方向,我應該努力學習如何去做的事情?

+1

嗨Justin T,歡迎來到StackOverflow!如果你對數學概念有很好的理解來確定共線性,並且可以在筆和紙上書寫,那麼首先寫出用僞代碼確定答案的步驟,那將是一個好的開始,然後將其轉換爲Python應該有點簡單,如果你發佈這些步驟或僞代碼,我們可以幫助把它放到Python中。但是如果你需要數學和計算方面的幫助,[Math](http://math.stackexchange.com)應該是一個更好的開始。 – davedwards

+0

當然,OP正在尋求建議來開始編碼,而不是要求直接的答案。但是,快速搜索會顯示許多相同的問題,以解決這個確切問題。例如:[確定(x,y)座標是否共線的腳本](http://stackoverflow.com/questions/9608148/python-script-to-determine-if-xy-coordinates-are-colinear-getting-some -e),[檢查3點是否在同一行上](http://stackoverflow.com/questions/3813681/checking-to-see-if-3-points-are-on-the-same- line) – davedwards

+0

嘿,大家非常感謝大家的反饋,我一定會在今天剩下的時間裏嘗試理解這類分析中涉及的過程。真的很高興知道這裏的社區如何支持和善良。真誠期待與這個社區分離。 –

回答

0

要做到這一點,你並不需要任何「工具」,可以這麼說。您可以通過確保創建的線條確認三個點是否在同一直線上:

Point A to Point B, 
Point B to Point C, 
Point A to Point C, 

具有相同的斜率。

要做到這一點,你需要採取

delta(y)/delta(x) 
所有三行

作爲演練:

您可以將每個點的座標存儲爲兩個變量。 (注意,python中的變量不需要類型) 然後,減去兩個點的Y個整數以找到delta(y),並對兩個點的X值執行相同操作以查找delta(x)。然後,用delta(x)除delta(y)得到上述三行中的一行的斜率。對所有三條線執行此操作,並將斜率存儲爲三個變量。要檢查它們是否相同,請使用if語句。

我希望這有助於!

+0

如果你有斜率(A-> B)==斜率(A-> C)或斜率(A-> B)!=斜率(A-> C),那麼你不需要斜率(B-> C) – Marichyasana