以上です。問題があります。 与えられた行のセット内にある三角形の数を調べるために、プログラムを作成します。私は、行の交差点でそれを計算したいと思います。python:問題は
私は線の交差点に問題があります。私の問題は、交差点が線分にあるかどうかを調べることです。ここに私のコードは次のとおりです。
def Schnittkorrekt (xs,ys,x1,x2,y1,y2):
global y
global x
global z
global w
global c
global x3
global y3
global z2
global w2
global x21
global x22
global y21
global y22
print (Schnittpunkt(x1,x2,y1,y2,x21,x22,y21,y22))
if (x1 <= xs) and (y1 <= ys) and (xs <= x2) and (ys <= y2):
return ('cool')
elif (x1 <= xs) and (y2 <= ys) and (xs <= x2) and (ys <= y1):
return ('cool')
elif (x2 <= xs) and (y1 <= ys) and (xs <= x1) and (ys <= y2):
return ('cool')
elif (x2 <= xs) and (y2 <= ys) and (xs <= x1) and (ys <= y1):
return ('cool')
else:
return ('uncool')
X1、X2、Y1、Y2はインクルードは
X21、X22、Y21、Y22最初のラインセグメントの先頭/エンドポイントですされているインクルードがの始まり/エンドポイントですされています第二線分
XS、YSが交差点
の座標であり、それは常に「格好悪い」アウト与えるテスト目的のために右
すべきではありません私は、これらの座標のXSとYSと
x1=4
x2=5
y1=4
y2=6
x21 = 8
x22 = 1
y21 = 1
y22 = 8
を選んだは、それはあなたがグローバル定数を参照される方法に起因する可能性があり、事前
入力した入力を 'xs = 4.33'と' ys = 4.66'で試してみましたが、これはあなたが意味するものです。それは正常に働いた。 [mcve]を投稿してください。 – khelwood
あなたのロジックはここにあります(私も「クール」になります)。しかし、 'retutn'を使うと関数を使うと思います。だからあなたの間違いは関数の使用が間違っているためです(おそらく変数の範囲を調べる必要があります) –