Программа для проверки конгруэнтности двух треугольников
Даны четыре массива по 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 congruency def 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 congruency def 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 congruency def 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 congruency def 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 congruency def 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 congruency sss = 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 congruency aas = cong_aas(s1, s2, a1, a2) # function call for HL congruency hl = 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.