Студопедия

КАТЕГОРИИ:

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

Текст программы с комментариями и пояснениями




 

#include <cmath>     // #include "math.h" - математические операции

#include "stdafx.h"   // Библиотека ввода вывода

 

int main()                      // Начало главной функции

{

       // Обьявление первичных констант

 

       const float Hx = 0.1,              // Шаг цикла

                              A = -0.9,              // Нижняя грань

                              B = 0.9,               // Верхняя грань

E = 0.000001; // Нижний проходной уровень для

// элемента последовательности

 

int b_count = 0;                       // Счётчик элементов

// последовательности при Х = В

       double x, y, sum, ch, n;         /*

у = arctg(х); A <= x <= B;

sum - сумма элементгов                                            последовательности;

                                                             ch - элемент последовательности;

n - вспомогательный член последовательноси;

*/

       for (x = A; x <= B + E; x += Hx) {

                       

y = atan(x);        // у = arctg(х);

ch = x;                  // Присваиваем первому элементу //последовательноси и сумме //последовательноси 

                   sum = ch;           //начального значения – Х

                                                          

 

                   for (n = 1; fabs(ch) > E; n += 2) {

 

// Альтернативная формула

                              // ch = ch * ( ( pow(x, 2) * (-n) ) / (n + 2) );        

 

// Вычисление следующего члена геометрической

// последовательноси

                              ch = ch * (( -x * x * n) / (n + 2));                               

 

// Суммирование членов геометрической

// последовательноси

sum += ch;                                                                                  

 

// Если Х = В - то считаем количество суммированых

// членов

                              if (x > (B - Hx)) b_count++;

                   }

// Выводим результаты вычислений

printf (" x = %f --> arctg(x) = %f --> sum = %f \n\n", x, y, sum);

       }

 

 

// Выводим количество просумированых членов

// последовательноси при Х =В

       printf (" b_count = %i \n\n", b_count);    

 

// Выходим из главной функции оповещая о её удачном

// выполнении

getchar();

       return 0;                                                                                  

}

 

Результаты работы программы и их анализ

Результат программы при табличных значениях и вывод результатов вычислений. И аналогичные вычисления их и вывод на альтернативном сервисе .

             

Вычисления начались при начальном значении х = -0,9которое с каждой итерацией цикла увеличивалось на шаг hx и вычисление значений переменной sum по формуле последовательности заданной в условии.  Повторения цикла будут совершатся до тех пор пока следующий член последовательности будет больше значения , и х не станет равно 0,9.

Результаты с учётом погрешности хранения данных типа floatидентичны.

 

Выводы

 

Мы с целью изучения изучение структур повторений и приобретения навыков написания и приобретения практических навыков программной реализации циклических вычислительных процессов составили алгоритмическое решение задач заданных в условии и составили их простейшую реализацию на языке программирования С++. По сему мы полностью достигли цели данной лабораторной работы.










Последнее изменение этой страницы: 2018-05-31; просмотров: 176.

stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда...