Вычислить площадь четырехугольника - QBasic
Формулировка задачи:
Задано случайное количество точек. Вычислить площадь четырехугольника, вершины которого составляют правый верхний угол экрана и три наиболее близкие к нему точки из заданного множества
Решение задачи: «Вычислить площадь четырехугольника»
textual
Листинг программы
CLS 10 INPUT "Wedit kilkist tochok N="; N IF N < 4 OR N > 100 THEN 10 IF N <> INT(N) THEN 10 Xmin = 0 Xmax = 1000 Ymin = 0 Ymax = 1000 DIM X(1 TO N) DIM Y(1 TO N) RANDOMIZE TIMER SCREEN 12 VIEW (20, 20)-(460, 460), , 2 WINDOW (Xmin, Ymin)-(Xmax, Ymax) FOR i = 1 TO N X(i) = INT(Xmin + RND * (Xmax - Xmin)) Y(i) = INT(Ymin + RND * (Ymax - Ymin)) PSET (X(i), Y(i)), 3 NEXT FOR i = 1 TO N FOR j = 1 TO N A = SQR((Xmax - X(i)) ^ 2 + (Ymax - Y(i)) ^ 2) B = SQR((Xmax - X(j)) ^ 2 + (Ymax - Y(j)) ^ 2) IF A < B THEN SWAP X(i), X(j): SWAP Y(i), Y(j) NEXT j NEXT i FOR i = 1 TO 3 FOR j = 1 TO 3 ugol1 = (Ymax - Y(i)) / (Xmax - X(i)) ugol2 = (Ymax - Y(j)) / (Xmax - X(j)) IF ugol1 < ugol2 THEN SWAP X(i), X(j): SWAP Y(i), Y(j) NEXT NEXT LINE (Xmax, Ymax)-(X(1), Y(1)), 1 LINE (X(1), Y(1))-(X(2), Y(2)), 2 LINE (X(2), Y(2))-(X(3), Y(3)), 3 LINE (X(3), Y(3))-(Xmax, Ymax), 4 L1a = SQR((X(1) - X(2)) ^ 2 + (Y(1) - Y(2)) ^ 2) L2a = SQR((X(2) - Xmax) ^ 2 + (Y(2) - Ymax) ^ 2) L3a = SQR((Xmax - X(1)) ^ 2 + (Ymax - Y(1)) ^ 2) Pa = (L1a + L2a + L3a) / 2 PloschaA = SQR(Pa * (Pa - L1a) * (Pa - L2a) * (Pa - L3a)) L1b = SQR((X(3) - X(2)) ^ 2 + (Y(3) - Y(2)) ^ 2) L2b = SQR((X(2) - Xmax) ^ 2 + (Y(2) - Ymax) ^ 2) L3b = SQR((Xmax - X(3)) ^ 2 + (Ymax - Y(3)) ^ 2) Pb = (L1b + L2b + L3b) / 2 PloschaB = SQR(Pb * (Pb - L1b) * (Pb - L2b) * (Pb - L3b)) PRINT "Ploscha = "; PloschaA + PloschaB END
Объяснение кода листинга программы
Вот что делает код:
- Считывает число N, которое представляет собой количество вершин четырехугольника.
- Проверяет, что N находится в допустимом диапазоне (от 4 до 100).
- Генерирует случайные координаты для каждой вершины четырехугольника.
- Рисовает четырехугольник на экране.
- Проводит три диагонали для четырехугольника и вычисляет длины этих диагоналей.
- Вычисляет площадь четырехугольника, используя формулу площади четырехугольника по длинам его диагоналей.
- Выводит общую площадь четырехугольника.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д