Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

การตรวจสอบความไม่เท่าเทียมกันของสามเหลี่ยมในรายการของรายการใน Python


ผลบวกของสองด้านของสามเหลี่ยมจะมากกว่าด้านที่สามเสมอ นี่เรียกว่าอสมการสามเหลี่ยม รายชื่อ Python ของรายการ เราจะระบุรายการย่อยที่อสมการสามเหลี่ยมยังคงดีอยู่

ด้วย for และ>

ก่อนอื่นเราจะจัดเรียงรายการย่อยทั้งหมด จากนั้นสำหรับแต่ละรายการย่อย เราจะตรวจสอบว่าผลรวมของสององค์ประกอบแรกมากกว่าองค์ประกอบที่สามหรือไม่

ตัวอย่าง

Alist = [[3, 8, 3], [9, 8, 6]]
# Sorting sublist of list of list
for x in Alist:
   x.sort()
# Check for triangular inequality
for e in Alist:
   if e[0] + e[1] > e[2]:
      print("The sublist showing triangular inequality:",x)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

The sublist showing triangular inequality:
[6, 8, 9]

ด้วยความเข้าใจรายการ

ในวิธีนี้ เรายังเรียงลำดับรายการย่อยก่อน จากนั้นจึงใช้การทำความเข้าใจรายการเพื่อตรวจดูรายการย่อยแต่ละรายการเพื่อตรวจสอบว่ารายการใดตรงกับอสมการสามเหลี่ยม

ตัวอย่าง

Alist = [[3, 8, 3], [9, 8, 6]]
# Sorting sublist of list of list
for x in Alist:
   x.sort()
# Check for triangular inequality
   if[(x, y, z) for x, y, z in Alist if (x + y) >= z]:
      print("The sublist showing triangular inequality: \n",x)

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

The sublist showing triangular inequality:
[6, 8, 9]