Два треугольника заданы координатами своих вершин. Определить, площадь какого из них больше - C#
Формулировка задачи:
Здравствуйте, помогите пожалуйста сделать эту задачу: Два треугольника заданы координатами своих вершин. Определить, площадь какого из них больше. Реализовав при этом 3 разных способа передачи параметров:
а) с использованием ключевого слова return
б) с использованием ключевого слова out
в) с использованием ключевого слова ref
Три этих способа (метода) можно реализовать в отдельных программах, а можно – в одной.
Решение задачи: «Два треугольника заданы координатами своих вершин. Определить, площадь какого из них больше»
textual
Листинг программы
public int tr(int ax1,int ay1,int ax2,int ay2,int ax3,int ay3,int bx1,int by1,int bx2,int by2,int bx3,int by3) { int s1 = Math.Abs((ax2 - ax1) * (ay3 - ay1) - (ax3 - ax1) * (ay2 - ay1)) / 2; int s2 = Math.Abs((bx2 - bx1) * (by3 - by1) - (bx3 - bx1) * (by2 - by1)) / 2; if (s1 > s2) return 1; else if (s2 > s1) return 2; else return 0; } public void tro(int ax1, int ay1, int ax2, int ay2, int ax3, int ay3, int bx1, int by1, int bx2, int by2, int bx3, int by3,out int i) { int s1 = Math.Abs((ax2 - ax1) * (ay3 - ay1) - (ax3 - ax1) * (ay2 - ay1)) / 2; int s2 = Math.Abs((bx2 - bx1) * (by3 - by1) - (bx3 - bx1) * (by2 - by1)) / 2; if (s1 > s2) i=1; else if (s2 > s1) i=2; else i=0; } public void trr(int ax1, int ay1, int ax2, int ay2, int ax3, int ay3, int bx1, int by1, int bx2, int by2, int bx3, int by3, ref int i) { int s1 = Math.Abs((ax2 - ax1) * (ay3 - ay1) - (ax3 - ax1) * (ay2 - ay1)) / 2; int s2 = Math.Abs((bx2 - bx1) * (by3 - by1) - (bx3 - bx1) * (by2 - by1)) / 2; if (s1 > s2) i = 1; else if (s2 > s1) i = 2; else i = 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д