Double Pm, Amn, Cmn, Pn

Pm= fact(m); Pm= fact(n); //виклик функції

cout<<”\n\nПерестановки: Pm=”<<Pm<<” Pn=”<<Pn;

Cmn= fact(m)/ fact(n)/ fact(m-n); //увага: Cm0=1

cout<<”\nСполучень: Cmn=”<< Cmn;

Amn= Pm/fact(m-n); //увага: Amm=m!

cout<<”\nРозміщень: Amn=”<<Amn;

cout<<”\nПеревірка: Amn=Cmn*Pn: ”;

double k=(Amn-Cmn*Pn)/Amn*100;

cout<<”Помилка=”<<k<<”%”;

cout<<\n кінець задачі “;

return 0;}

РЕЗУЛЬТАТ ВИКОНАНННЯ ПРОГРАМИ

Змінні m та n у програмі не обов’язкові, тому що застосовані глобальні оголошення в roll.h. Змінна k оголошена як double для того, щоб після розрахунку розміщень оцінити відносну помилку: k=(Amn-Cmn*Pn)/Amn*100

Застосування k – цілої змінної привело б до автоматичного округлення шляхом відкидання дробової частини числа.

Аргумент функції може бути задані арифметичним виразом (див. виклик fact(m-n))

Результат помилки (k=0%) – на рівні точності чисел типу double.

У будь-який програмі ділення на 0 заборонено, тому що зупиняється виконання програми і комп’ютер вказує на цю помилку.

У нашому випадку ділення на 0 виключається, тому що функція fact ніколи не повертає 0.

Оформимо аналогічно й програму grad – вивід на екран значення кута. Ця функція здійснює дію, але нічого не повертає, тому їй присвоюється тип void (порожній). Аргументи функції: кут (double) та мітка (char).

Таким чином, прототип має вигляд: void grad (double, char);

Виклик функції: grad (а, ‘g’);

Для переводу рад. у град. У функції grad застосована глобальна константа С_ із roll.h. Функція записана у файлі SUBPROG\ grad.cpp, прототип та опис включені в SUBPROG\roll.h.

// файл PART1\1_24.cpp

//Приклад виклику бібл.. функції grad

#include “c:\CPP\SUBPROG\\roll.h”

main() {

cout<<”\nПриклад виклику бібл.. функції grad”;

double a=-6.5;; cout<<”\n”<<a<<” рад. \n”;

grad(a, ‘g’); cout<<” град. \n”;

grad(a, ‘c’); cout<<” сек. \n”;

grad(a, ‘3’); cout<<” період, град., мин., сек. ”;

cout<<”\n кінець задачі ”;

return 0;}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: