Функции. Примеры кодов программ из заданий контрольных.


1. Функции вычисления факториала

#include <iostream>

using namespace std;

long int factorial(int n)

{        if (n<=1) return n;        else              return n*factorial(n-1); }

int main() {        int i;        long int f;        cout<<«i=»;        cin>>i;        f=factorial(i);        cout<<i<<«!=»<<f<<endl;        return 0; }

  1. Функция float stepen(float a, int n) предназначена для возведения числа a в целую степень n. #include <iostream>

using namespace std;

float stepen(float a, int n) {        if (n==0) return(1);

else

if (n<0) return(1/stepen(a,-n));

else

return(a*stepen(a,n-1)); }

int main() {        int i;

float s,b;

long int f;

cout<<«b=»;

cin>>b;

cout<<«i=»;

cin>>i;

s=stepen(b,i);

cout<<«s=»<<s<<endl;

return 0;  }

  1. Функция long int fibonachi(int n) предназначена для вычисления n-го числа Фибоначчи.

Если  нулевой  элемент  последовательности  равен  0,  первый    1, а  каждый  последующий

равен сумме двух предыдущих, то это последовательность чисел Фибоначчи (0, 1, 1, 2, 3, 5, 8,

13, 21, 34, … ).

#include <iostream>

using namespace std;

long int fibonachi(unsigned int n)  {        if ((n==0)||(n==1)) return(n);        else  return(fibonachi(n-1)+fibonachi(n-2));  }

int main(int argc, char* argv[])  {        int i;        long int f;        cout<<«i=»;        cin>>i;        f=fibonachi(i);        cout<<«f=»<<f<<endl;        return 0;  }