Программа для проверки конгруэнтности двух треугольников
Даны четыре массива по 3 числа в каждом, которые представляют стороны и углы двух треугольников. Задача - проверить, совпадают ли два треугольника. Также выведите теорему, по которой они конгруэнтны.
Примечание. Все стороны и углы, указанные в качестве входных данных, относятся к допустимым треугольникам.
Примеры:
Ввод: сторона1 = [3, 4, 5] угол1 = [90, 60, 30].
сторона2 = [4, 3, 5] угол2 = [60, 30, 90]
Результат: Треугольники совпадают по SSS SAS ASA AAS HL.
Ввод: сторона1 = [3, 5, 6] угол1 = [80, 50, 50]
сторона2 = [1, 1, 1] угол2 = [60, 60, 60]
Вывод: треугольники не совпадают.
Рекомендуется: сначала попробуйте свой подход в {IDE}, прежде чем переходить к решению.
Конгруэнтные треугольники - это два или более треугольника, у которых все соответствующие стороны равны, или пара сторон и между углами равны, или пара углов и стороны между ними равны, или пара угла и другая сторона равны, или гипотенуза и одна сторона. равны.

Конгруэнтность треугольников доказывается следующими теоремами:
- Критерии конгруэнтности сторона-сторона-сторона (SSS): если все стороны треугольника равны сторонам другого треугольника, то треугольники называются конгруэнтными по свойству « сторона-сторона-сторона» (SSS).
В приведенном выше треугольнике ABC и A'B'C ', если AB = A'B' и BC = B'C 'и CA = C'A', тогда треугольники конгруэнтны. - Боковой угол-сторона (SAS) Конгруэнтные критерии: если две стороны двух треугольников равны и угол между ними одинаков в обоих треугольниках, то треугольники считаются конгруэнтными по свойству Side-Angle-Side (SAS) . В приведенном выше треугольнике ABC и A'B'C ', если AB = A'B' и BC = B'C 'и
знак равно
треугольники конгруэнтны. - Угол-сторона-угол (ASA) Конгруэнтные критерии: если два угла двух треугольников равны и длина стороны между ними одинакова в обоих треугольниках, то говорят, что треугольники конгруэнтны по свойству Angle-Side-Angle ( ASA). В приведенном выше треугольнике ABC и A'B'C ', если
знак равно
а также
знак равно
и BC = B'C ', тогда треугольники конгруэнтны. - Угол-угол-сторона (AAS) Конгруэнтные критерии: если два угла двух треугольников равны, а длина другой стороны одинакова в обоих треугольниках, то треугольники считаются конгруэнтными по свойству Angle-Angle-Side (AAS ). В приведенном выше треугольнике ABC и A'B'C ', если,
знак равно
а также
знак равно
и CA = C'A ', тогда треугольники конгруэнтны. - Критерии конгруэнтности гипотенузы (HL):
Если гипотенуза двух треугольников равна и длина любой другой стороны одинакова в обоих треугольниках, то треугольники называются конгруэнтными по свойству гипотенузы-ноги (HL).
Below is the implementation of the above theorems.
# Python program to check # similarity between two triangles. # Function for SAS congruencydef cong_sas(s1, s2, a1, a2): s1 = [float(i) for i in s1] s2 = [float(i) for i in s2] a1 = [float(i) for i in a1] a2 = [float(i) for i in a2] s1.sort() s2.sort() a1.sort() a2.sort() # Check for SAS # angle b / w two smallest sides is largest. if s1[0] == s2[0] and s1[1] == s2[1]: # since we take angle b / w the sides. if a1[2] == a2[2]: return 1 if s1[1] == s2[1] and s1[2] == s2[2]: if a1[0] == a2[0]: return 1 if s1[2] == s2[2] and s1[0] == s2[0]: if a1[1] == a2[1]: return 1 return 0 # Function for ASA congruencydef cong_asa(s1, s2, a1, a2): s1 = [float(i) for i in s1] s2 = [float(i) for i in s2] a1 = [float(i) for i in a1] a2 = [float(i) for i in a2] s1.sort() s2.sort() a1.sort() a2.sort() # Check for ASA # side b / w two smallest angle is largest. if a1[0] == a2[0] and a1[1] == a2[1]: # since we take side b / w the angle. if s1[2] == s2[2]: return 1 if a1[1] == a2[1] and a1[2] == a2[2]: if s1[0] == s2[0]: return 1 if a1[2] == a2[2] and a1[0] == a2[0]: if s1[1] == s2[1]: return 1 return 0 # Function for AAS congruencydef cong_aas(s1, s2, a1, a2): s1 = [float(i) for i in s1] s2 = [float(i) for i in s2] a1 = [float(i) for i in a1] a2 = [float(i) for i in a2] s1.sort() s2.sort() a1.sort() a2.sort() # Check for AAS # side other two smallest angle is smallest or 2nd smallest. if a1[0] == a2[0] and a1[1] == a2[1]: # since we take side other than angles. if s1[0] == s2[0] or s1[1] == s2[1]: return 1 if a1[1] == a2[1] and a1[2] == a2[2]: if s1[1] == s2[1] or s1[2] == s2[2]: return 1 if a1[2] == a2[2] and a1[0] == a2[0]: if s1[0] == s2[0] or s1[2] == s2[2]: return 1 return 0 # Function for HL congruencydef cong_hl(s1, s2): s1 = [float(i) for i in s1] s2 = [float(i) for i in s2] s1.sort() s2.sort() # Check for HL if s1[2] == s2[2]: if s1[1] == s2[1] or s1[0] == s2[0]: return 1 return 0 # Function for SSS congruencydef cong_sss(s1, s2): s1 = [float(i) for i in s1] s2 = [float(i) for i in s2] s1.sort() s2.sort() # Check for SSS if(s1[0] == s2[0] and s1[1] == s2[1] and s1[2] == s2[2]): return 1 return 0 # Driver Code s1 = [3, 4, 5]s2 = [4, 3, 5] a1 = [90, 60, 30]a2 = [60, 30, 90] # function call for SSS congruencysss = cong_sss(s1, s2) # function call for SAS congruency sas = cong_sas(s1, s2, a1, a2) # function call for ASA congruency asa = cong_asa(s1, s2, a1, a2) # function call for AAS congruencyaas = cong_aas(s1, s2, a1, a2) # function call for HL congruencyhl = cong_hl(s1, s2, ) # Check if triangles are congruent or not if sss or sas or asa or aas or hl : print "Triangles are congruent by", if sss: print "SSS", if sas: print "SAS", if asa: print "ASA", if aas: print "AAS", if hl: print "HL",else: print "Triangles are not congruent" |
Triangles are congruent by SSS SAS ASA AAS HL
Вниманию читателя! Не прекращайте учиться сейчас. Освойте все важные концепции DSA с помощью самостоятельного курса DSA по приемлемой для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию .
Если вы хотите посещать живые занятия с отраслевыми экспертами, пожалуйста, обращайтесь к Geeks Classes Live и Geeks Classes Live USA.