Написать программу, реализующую на языке ФОРТРАН вычисление площади треугольника, минимального угла треугольника и его косинус (Лабораторная работа № 1)

Страницы работы

Содержание работы

Кафедра прикладной математики

Лабораторная работа № 1

по дисциплине

 «Программирование вычислений»

Факультет: ПМИ

Группа: ПМ-43

Студенты: Маховикова Е.С.

                             Наумик Е.В.

                   Полева М.С.

          Преподаватели: Токарева М.Г.

                                    Рояк С.Е.

Новосибирск

2006г

Цель работы: ознакомление с основными операторами языка ФОРТРАН, отслеживание возможностей переполнения и исчезновения порядка при вычислениях, знакомство с погрешностью вычислений.

Задание: Написать программу, реализующую на языке ФОРТРАН вычисление заданного набора геометрических характеристик треугольников с использованием меню.

Анализ задачи.

Входные данные:Сторона треугольника и два прилежащих угла.

Выходные данные:Площадь треугольника, минимальный угол треугольника, косинус минимального угла треугольника, либо сообщение об ошибке на русском языке.

Анализ формул:

Для нахождения площади треугольника более оптимальным вариантом является следующая формула:

S=1/2(b*c*sinA)

          Для высчитывания площади по этой формуле мы проводим минимальное количество действий. Нам необходимо найти вторую сторону, для чего мы используем теорему синусов:

sinA/a=sinB/b=sinC/c

C=180-A-B

Нам известны сторона с, углы А и В, теперь выразим сторону b:

b=(sinB*c)/sinC

Теперь подставим найденное значение в исходную формулу:

S=1/2*((sinB*c)/sinC)*c*sinA)

Существует еще 4 формулы для нахождения площади треугольника:

S=  p(p-a)(p-b)(p-c)  - 3 неизвестных величины(периметр и 2 стороны);

S=1/2aha   - для нахождения высоты требуется найти еще одну сторону и тригонометрическую функцию угла;

S=pr  - для нахождения периметра требуется найти еще 2 стороны + нахождение радиуса;

S=(abc)/(4R)  - требуется найти еще 2 стороны + радиус.

Для нахождения минимального угла мы будем использовать операции сравнения: сначала мы из первых двух углов найдем минимальный, а потом сравним его с оставшимся углом(сравнение не строгое). Так же в операции сравнения входит проверка, что углы, вводимые больше нуля и их сумма меньше 180(строгое сравнение).

Косинус угла мы будем находить с помощью формулы приведения:

cosx=sin(90-x)

          Так как нам необходимо найти косинус минимального угла, то в качестве х мы будем брать минимальный угол.

Все углы мы будем переводить из градусов в радианы, для этого мы угол должны поделить на 180 градусов и умножить на П.

Для того что бы программа выполнялась верно нам необходимо вначале сделать проверку,

что А и B>0, и их сумма строго меньше 180, а так же, что заданная сторона больше 0.

Тесты:

1.  A=45 B=60 c=2

Результат: S=1.26, minx=45, cosx=0.7//показывает правильность выполнения нашей программы.

2.  A=0 B=68 c=63

     Результат: Ошибка! Неверные данные!//при неверно заданном параметре, выдает ошибку.

3.  A=34 B=78 c=0

     Результат: Ошибка! Неверные данные!// при неверно заданном параметре, выдает ошибку.

4.  A=120 B=89 c=457

     Результат: Ошибка! Неверные данные!//при проверке суммы углов, выдает ошибку.

5.  A=-145 B=30 c=-23

     Результат: Ошибка! Неверные данные!// при неверно заданном параметре, выдает ошибку.

Исследование №1.

Длинна стороны

площадь

1

10

43.30127

2

102

4330.127

3

103

433012.7

4

104

4.3301272E+07

5

105

4.3301268E+09

6

106

4.3301270E+11

7

107

4.3301269E+13

8

108

4.3301267E+15

9

109

4.3301269E+17

10

1010

4.3301270E+19

11

1011

4.3301266E+21

12

1012

4.3301271E+23

13

1013

4.3301269E+25

14

1014

4.3301270E+27

15

1015

4.3301271E+29

16

1016

4.3301271E+31

17

1017

4.3301270E+33

18

1018

4.3301269E+35

19

1019

4.3301271E+37

20

1020

infinity

Длинна стороны

Площадь

1

10-1

4.3301270E-03

2

10-2

4.3301268E-05

3

10-3

4.3301273E-07

4

10-4

4.3301269E-09

5

10-5

4.3301269E-11

6

10-6

4.3301268E-13

7

10-7

4.3301273E-15

8

10-8

4.3301271E-17

9

10-9

4.3301266E-19

10

10-10

4.3301273E-21

11

10-11

4.3301269E-23

12

10-12

4.3301270E-25

13

10-13

4.3301268E-27

14

10-14

4.3301270E-29

15

10-15

4.3301272E-31

16

10-16

4.3301274E-33

17

10-17

4.3301266E-35

18

10-18

4.3301275E-37

19

10-19

4.3301272E-39

20

10-20

4.330152E-41

21

10-21

4.3300123E-43

22

10-22

4.2038954E-45

23

10-23

0.0000000E+00

Похожие материалы

Информация о работе