Проверить могут ли числа представлять собой значения длин сторон треугольника - QBasic
Формулировка задачи:
Доброе время суток!
Возникли проблемы с написанием программы!!
Условие задачи:
Ввести 10-12 троек чисел АВС. Проверить могут ли эти числа представлять собой значения длин сторон треугольника. Если да -- то вычислить плошать....
вот собственно мой код=(
кто может пожалуйста укажите на ошибку или если есть более простой вариант подскажите!!
Заранее спасибо!)
Листинг программы
- fun: p = 0
- s = 0
- p = (d + f + g) / 2
- s = SQR(p * (p - d) * (p - f) * (p - g))
- RETURN
- REM labs9
- CLS
- PRINT "Vvesti 10-12 troek chisel ABC"
- INPUT "Vvesti kol-vo vvodimux tochek ", n
- DIM a(n)
- PRINT "Vvodite tochki: "
- FOR i = 1 TO n
- PRINT "a("; i; ")": INPUT "", a(i)
- NEXT
- FOR i = 1 TO 3 * n
- a = a(i): b = a(i + 1): c = a(i + 2)
- IF a + b > c THEN
- d = a: f = b: g = c
- GOSUB fun
- v1 = s
- ELSE
- IF a + c > b THEN
- d = a: f = b: g = c
- GOSUB fun
- v2 = s
- ELSE
- IF b + c > a THEN
- d = a: f = b: g = c
- GOSUB fun
- v3 = s
- ELSE
- PRINT "Chisla A="; a; "B="; b; "C="; c; " ne mogut but zhacheniyami storon"
- END IF
- END IF
- END IF
- PRINT "Esli a+b>c to S="; v1
- PRINT "Esli a+c>b to S="; v2
- PRINT "Esli b+c>a to S="; v3
- NEXT
- END
не ужели некто не знает???
Решение задачи: «Проверить могут ли числа представлять собой значения длин сторон треугольника»
textual
Листинг программы
- PRINT "Vvesti 10-12 troek chisel ABC"
- INPUT "Vvesti kol-vo troek vvodimux tochek: ", n
- DIM a(n, 3)
- PRINT "Vvodite tochki: "
- FOR i = 1 TO n
- FOR j = 1 TO 3
- PRINT "a("; i; ","; j; ")";
- INPUT ": ", a(i, j)
- NEXT
- NEXT
- FOR i = 1 TO n
- d = a(i, 1)
- f = a(i, 2)
- g = a(i, 3)
- Uslovie = 0
- IF d + f > g AND d + g > f AND f + g > d THEN Uslovie = 1
- IF Uslovie = 1 THEN
- GOSUB fun
- PRINT "Esli a+b>c AND a+c>b AND b+c>a to S="; s
- ELSE
- PRINT "Chisla A="; d; "B="; f; "C="; g; " ne mogut but zhacheniyami storon"
- END IF
- NEXT
- END
- fun:
- p = (d + f + g) / 2
- s = SQR(p * (p - d) * (p - f) * (p - g))
- RETURN
Объяснение кода листинга программы
- Ввод количества треугольников (n).
- Создание массива a(n, 3) для хранения координат вершин треугольников.
- Ввод координат вершин треугольников.
- Проверка, являются ли длины сторон треугольника удовлетворительными (условие из задачи).
- Если условие выполняется, то выполняется подпрограмма fun, иначе выводится сообщение, что числа не могут быть длинами сторон треугольника.
- В подпрограмме fun находится полупериметр треугольника (p), затем вычисляется площадь треугольника по формуле Герона (s).
- Возврат в основную программу и вывод сообщения с площадью треугольника (s).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д