- •Лабораторна робота №1
- •Теоретичні відомості
- •Завдання для виконання
- •Int main()
- •Int main()
- •Лабораторна робота №2
- •Теоретичні відомості
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Int k,m; //опис змінних
- •Void main()
- •Завдання для виконання
- •Лабораторна робота №3
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main()
- •Void main()
- •Int main()
- •Завдання для виконання
- •Лабораторна робота №4
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main ( )
- •Void main ( )
- •Завдання для виконання
- •Лабораторна робота №5
- •Теоретичні відомості
- •Void main()
- •Void main()
- •Приклади виконання завдання
- •Void main ( )
- •Void main ( )
- •Завдання для виконання
- •Лабораторна робота №6
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main ( )
- •Void main ( )
- •Void main ( )
- •Завдання для виконання
- •Лабораторна робота №7
- •Теоретичні відомості
- •Void fact(int k);
- •Void fact(k);
- •Int *I; //Вказівник - змінна на дані типу int
- •Int k, *vk; //Опис змінної - вказівника *vk
- •Приклади виконання завдання лабораторної роботи
- •Int fact(int n)// Функція, що обчислює n!
- •Void dryk(int Cnm) /* Функція, що виводить на екран значення Cnm */
- •Void main ( )
- •Int Factorial(int n) /*Рекурсивна функція,що обчислює n! */
- •Void main()
- •Void Vs(double &V, double &s, double r)
- •Void main ( )
- •Void Vs(double *V, double *s, double r)
- •Void main ( )
- •Void main()
- •Завдання для виконання
- •Лабораторна робота №8
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main()
- •Void main()
- •Void main()
- •Завдання для виконання
- •Лабораторна робота №9
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void main()
- •If (!feof(f1))
- •Void main()
- •Void main()
- •Void main()
- •Void main ()
- •Void main ()
- •Ifstream in( "vvid" );
- •In.Close();
- •Завдання для виконання
- •Лабораторна робота №10
- •Теоретичні відомості
- •Char st[40]
- •Char st3[100]
- •Char str4[100]
- •Приклади виконання завдання
- •Void main()
- •Void insert (char *str, int p, char c)
- •Void main()
- •Insert(s,n,c);
- •Void main()
- •Завдання для виконання
- •Лабораторна робота 11
- •Теоретичні відомості
- •If(!strcmp(ms[I].Ngr,"m21"))
- •Завдання для виконання
- •Приклади виконання завдання
- •Void main()
- •Лабораторна робота 12
- •Теоретичні відомості
- •Void show_complex() /*вивід комплекснеого числа на екран */
- •Void show_complex();
- •Void complex::show_complex()
- •Void main()
- •Приклади виконання завдання
- •Завдання для виконання
- •Лабораторна робота 13
- •Теоретичні відомості
- •Приклади виконання завдання
- •Void operator --();
- •Void operator --(int);
- •Void show_complex();
- •Завдання для виконання
- •Завдання для самостійного виконання
- •Додаток №2. Базові типи даних
- •Додаток №3. Основні специфікатори формату функції printf
- •Додаток №5. Основні математичні функції бібліотеки math.H
- •Додаток №6.
- •Додаток №7. Можливі специфікатори аргументу mode
- •Додаток №8. Основні функції для роботи із рядковими змінними бібліотеки string.H
- •Додаток №9. Основні функції для роботи із символами бібліотеки ctype.H
- •Література
- •Ткачук Валерій Михайлович
- •Лабораторний практикум
- •76000, М. Івано-Франківськ, вул. С. Бандери, 1
Int fact(int n)// Функція, що обчислює n!
{
int p=1;
for (int i=1;i<=n;i++)
p=p*i;
return p;
}
Void dryk(int Cnm) /* Функція, що виводить на екран значення Cnm */
{
cout << "\nCnm= " << Cnm;
cout << "\n ";
}
Void main ( )
{
int n,m;
int Cnm;
SetConsoleOutputCP(1251);
SetConsoleCP(1251);
cout << "\nВведіть n та m \n";
cin >>n;
cin >>m;
// Обчислення Cnm
Cnm=fact(n)/(fact(m)*fact(n-m));
dryk(Cnm);
}
Результат роботи програми:
В
ведено
значення n=5
та
m=3
Примітка: зверніть увагу, що для виводу результату обчислення описана окрема функція dryk.
Приклад №2 (рекурсивне використання функції)
Програма
знаходження
з використанням рекурсії.
#include <iostream>
#include <windows.h>
#include<stdio.h>
using namespace std;
Int Factorial(int n) /*Рекурсивна функція,що обчислює n! */
{
int F;
if (N<=1) F=1; else F=Factorial(N-1)*N; /*Перевірка умови завершення рекурсивного процесу*/
return F;
}
Void main()
{
int k;
SetConsoleOutputCP(1251);
printf(" Введіть N \n" );
cin >>k;
printf("Факторіал(%i)=%i\n",k,Factorial(k));
}
Приклад №3 (використання адресації змінних та вказівників для повернення із функції значення двох змінних)
Програма знаходження за введеним із клавіатури радіусом об’єму кулі та площі її поверхні.
#include <iostream>
#include <math.h>
#include <windows.h>
using namespace std;
Void Vs(double &V, double &s, double r)
{
double Pi=3.1415;
V=4./3.*Pi*pow(r,3);
s=4.*Pi*pow(r,2);
}
Void main ( )
{ double v,s;
double r;
SetConsoleOutputCP(1251);
SetConsoleCP(1251);
cout << "\nВведіть радіус \n";
cin >>r;
v=0;
s=0;
Vs(v,s,r);
cout << "\n Обєм=" << v<<"\t"<<"Площа поверхні="<<s;
cout << "\n ";
}
Результат роботи програми:
Введено значення r=2.0
Приклад №4 (використання вказівників для повернення із функції значення двох змінних)
Програма знаходження за введеним із клавіатури радіусом об’єму кулі та площі її поверхні.
#include <iostream>
#include <math.h>
#include <windows.h>
using namespace std;
Void Vs(double *V, double *s, double r)
{
double Pi=3.1415;
*v=4./3.*Pi*pow(r,3);
*s=4.*Pi*pow(r,2);
}
Void main ( )
{
double v,s;
double r;
SetConsoleOutputCP(1251);
SetConsoleCP(1251);
cout << "\nВведіть радіус \n";
cin >>r;
v=0;
s=0;
Vs(&v,&s,r);
cout << "\n Обєм=" << v<<"\t"<<"Площа поверхні="<<s;
cout << "\n ";
}
Приклад №5 (використання перевантажених функцій та формальних параметрів по замовчуванню)
Обчислення
степені дійсного числа a.
Ціла степінь числа обчислюється
за допомогою рекурсії. Дійсна степінь
числа (степінь задається у вигляді
дробу k/m
) обчислюється за формулою
#include <iostream>
#include <math.h>
#include <windows.h>
using namespace std;
/*Обчислення цілої степені числа а за допомогою рекурсії*/
/* По замовчуванню число підноситься до другого степеня */
double stepin(float a, int n=2)
{
if (n==0) return(1.);
else
if (n<0) return(1./stepin(a,-n));
else
return(a*stepin(a,n-1));
}
//Обчислення значення числа а в степені k/m
float stepin( float a, int k, int m)
// степінь k/m.
{
if (a==0) return (0);
else
if (k==0) return(1);
else
if (a>0)
return(exp(float(k)/float(m)*log(a)));
else
if (m%2!=0)
return (-(exp(float(k)/float(m)*log(-a))));
if (m%2==0) cout<<"обчислити неможливо\n";
}
