Вычисление координат центра описанной окружности - QBasic

Узнай цену своей работы

Формулировка задачи:

Задан треугольник координатами своих вершин Требуется определить координаты центра описанной окружности Сначала я аналитически решил эту задачу. Потом написал программу. Она не только вычисляет координаты центра описанной окружности. Но и вычисляет расстояние от центра до каждой вершины. Все результаты выдаёт на экран. Совпадение трёх последних чисел означает, что координаты вычисленного центра соответствуют действительности, ведь такая точка только одна!! (программа проверена)
Удачи вам!

Решение задачи: «Вычисление координат центра описанной окружности»

textual
Листинг программы
DECLARE SUB pr0(r1, r2)
DECLARE SUB pr1(x, y)
DIM x(1 TO 2, t TO 3)
DATA 1, 3, 1, 1, 3, 1
FOR i=1 TO 3
    READ x(1, i), x(2, i)
NEXT
k11=x(1, 1)-x(1, 2)
k12=x(2, 2)-x(2, 1)
k21=x(1, 3)-x(1, 2)
k22=x(2, 2)-x(2, 3)
b11=k12*(x(2, 1)+x(2, 2))-k11*(x(1, 1)+x(1, 2))
b12=k12*2
b21=k22*(x(2, 2)+x(2, 3))-k21*(x(1, 2)+x(1, 3))
b22=k22*2
r1=(b12*b21-b11*b22)*k12*k22
r2=(k11*k22-k12*k21)*b12*b22
IF r1=0 AND r2=0 THEN
    FOR i=1 TO 3
        IF x(1, i)<min OR i=1 THEN min=x(1, i)
        IF x(1, i)>max OR i=1 THEN max=x(1, i)
    NEXT
    r1=max+min
    r2=2
EndIf
IF k12>0 THEN
    r3=r1*k11*b12+r2*k12*b11
    r4=r2*k12*b12
ELSE
    r3=r1*k21*b22+r2*k22*b21
    r4=r2*k22*b22
EndIf
PRINT "x:"
CALL pr1(r1, r2)
CALL pr0(r1, r2)
PRINT "y:"
CALL pr1(r3, r4)
CALL pr0(r3, r4)
SLEEP
 
SUB pr0(r1, r2)
rr1$=STR$(r1)
rr2$=STR$(r2)
IF LEN(rr1$)>LEN(rr2$) THEN i=LEN(rr1$) ELSE i=LEN(rr2$)
PRINT SPACE$((i-LEN(rr1$))/2)&rr1$
PRINT STRING$(i, CHR$(196))
PRINT SPACE$((i-LEN(rr2$))/2)&rr2$
END SUB
 
SUB pr1(x, y)
    i=2
    DO WHILE i<x
        IF x MOD i = 0 THEN 
            IF y MOD i = 0 THEN x=x/i: y=y/i: i=i-1
        EndIf
        i=i+1
    LOOP
END SUB

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.833 из 5
Похожие ответы