АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Вычисление площади треугольника

Читайте также:
  1. I. Вычисление и измерение индуктивности соленоидов
  2. R - коэффициент остекления, равный отношению площади оконных проемов к площади наружных стен.
  3. В 6 общий сбор на площади.
  4. Ветродром, или Танец на Храмовой площади
  5. Во время пешеходной экскурсии по Красной площади Вы окунетесь в многовековую историю столицы России.
  6. Выполнить сканирование по площади опорной площадки, ограниченной пределами перемещения, приведенными на рисунке 4.3, с шагом не более 6 мм.
  7. ВЫСОКО БЕЛЕЮЩИЕ СТРОКИ И СВИСТ ПЛОЩАДИ (1949)
  8. ВЫУЧИТЬ ТАНЕЦ «ТАНЦУЙ ДОБРО» НА САЙТ dobrodance.tv ИЛИ НА ФЕСТИВАЛЕ В 16.00 НА СЕННОЙ ПЛОЩАДИ ВМЕСТЕ СО ВСЕМИ УЧАСТИНКАМИ
  9. Вычисление волнового сопротивления
  10. Вычисление дирекционных углов и координат пунктов ходовой линии
  11. Вычисление и уплата страховых взносов
  12. Вычисление интеграла по известной формуле

 

Вычисление площади треугольника. Для определения площади треугольника по формуле Герона

 

 

достаточно задать длины его сторон А, В, С и, вычислив полупериметр р=(А+В+С)/2, вычислить значение площади по формуле. Однако для составления соответствующей программы необходима функция вычисления квадратного корня. Предположив, что такой функции в библиотеке стандартных математических функций нет, составим ее сами. В основу положим метод Ньютона:

 

 

где z - подкоренное выражение; х0 - начальное приближение.

Вычисления будем проводить с фиксированной относительной точностью e. Для простоты условием прекращения счета будет выполнение неравенства Для вычисления абсолютного значения введем еще одну функцию с именем abs() (хотя такая функция, так же как функция для вычисления квадратного корня, есть в стандартной библиотеке). Программа может быть такой:

 

 

 

В программе используются три функции. Основная функция main() вызывает функцию sqr(), прототип которой размещен выше вызова. Функция abs() не описана в основной программе, так как здесь к ней нет явных обращений. Функция abs() вызывается из функции sqr(), поэтому ее прототип помещен в тело функции sqr().

В процессе выполнения программы может возникнуть аварийная ситуация, когда введены такие значения переменных а, b, с, при которых они не могут быть длинами сторон одного треугольника. При обнаружении такой ситуации выдается предупреждающее сообщение "Треугольник построить нельзя!" и основная функция main() завершается оператором return. В функции sqr() также есть защита от неверных исходных данных. В случае отрицательного значения подкоренного выражения (х) нужно не только прервать вычисление значения корня, но и завершить выполнение программы с соответствующим предупреждающим сообщением. Оператор return для этого неудобен, так как позволяет выйти только из той функции, в которой он выполнен. Поэтому вместо return; при отрицательном значении х в функции sqr() вызывается стандартная библиотечная функция exit(), прекращающая выполнение программы. Прототип (описание) функции exit() находится в заголовочном

файле stdlib.h, который включается в начало текста программы препроцессорной директивой.

Пример результатов выполнения программы:

 

 


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.004 сек.)