Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОПАМ.doc
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
327 Кб
Скачать
☆

Int main()

{

cout<<"Calculate lengths of triangle side"<<endl;

Init(); Solution(); Browse();

system("pause");

}

/* Обчислити довжини сторін трикутника. Демонстрація прототипів */

#include <iostream>

#include <math.h>

#include <conio.h>

using namespace std;

float x1,Y1,x2,y2,x3,y3;//координати вершин трикутника

float d1,d2,d3;//довжини сторін трикутника

//========================= прототипи функцій ==============================

float Distance(float,float,float,float);

void Init();//введення даних

void Solution(); //розрахунок довжин сторін трикутника

void Browse(); //виведення результатів

//========================== головна функція ===============================

Int main()

{

cout<<"Calculate lengths of triangle side"<<endl;

Init(); Solution(); Browse();

system("pause");

}

//=========================== визначення функцій ===========================

float Distance(float a1,float b1,float a2,float b2)

{ //a1,b1,a2,b2 - координати точок

return sqrt(pow((a1-a2),2)+pow((b1-b2),2));

}

void Init()

{

cout<<"Enter triangle apexes coordinates"<<endl;

cout<<"Coordinates x1,y1 "; cin>>x1>>Y1;

cout<<"Coordinates x2,y2 "; cin>>x2>>y2;

cout<<"Coordinates x3,y3 "; cin>>x3>>y3;

}

void Solution()

{

d1=Distance(x1,Y1,x2,y2);

d2=Distance(x2,y2,x3,y3);

d3=Distance(x1,Y1,x3,y3);

}

void Browse()

{

cout<<"length1="<<d1<<endl;

cout<<"length2="<<d2<<endl;

cout<<"length3="<<d3<<endl;

}

Приклад 4.4

/* Аргументи за замовчуванням */

#include <iostream>

using namespace std;

void writechar(char ='*',int=30); //прототип функції з аргументами за замовчуванням

Int main() //головна функція

{

cout<<"Default arguments"<<endl;

writechar(); //вивести рядок з 30-ти символів '*'

writechar('+'); //вивести рядок з 30-ти символів '+'

writechar('=',20); //вивести рядок з 20-ти символів '='

writechar(65); //вивести рядок з 30-ти символів, код яких 65

system("pause");

}

void writechar(char ch,int n) //визначення функції

{

for(int i=0;i<n;i++)

cout<<ch; //вивести рядок заданої кількості символів

cout <<endl;

}

Приклад 4.5

/* Демонстрація областей дії ідентифікаторів */

#include <iostream>

using namespace std;

int i;

//====================== функції ========================

void f2()

{

int i=2;

cout<<"from f2(): "<<i<<endl;

}

void f1()

{

i=1;

f2();

cout<<"from f1(): "<<i<<endl;

}

//================== основна програма =====================

Int main()

{

cout<<"Display scope variables"<<endl;

{

int i=3;

cout<<"From block of main(): "<<i<<endl;

}

i=0;

f1();

cout<<"From file ex4_4.cpp: "<<i<<endl;

system("pause");

}

Приклад 4.6

/* Демонстрація роботи стеку */

#include <iostream>

using namespace std;

int a,b; //глобальні змінні

int f(int x) //х-параметр-значення

{

x++;

return x;

}

int g(int x) //х-параметр-значення

{

x/=2;

return x;

}

Int main() //головна функція

{

a=12;

b=f(g(a)); //виклик функцій

cout<<" а="<<a<<" b="<<b<<endl;

system("pause");

}

Приклад 4.7

/* Демонстрація перевантаження функцій */

#include <iostream>

#include <math.h>

using namespace std;

int arg_int; //числа, квадрати яких розраховується

float arg_float;

//перевантажені функціїї відрізняються кількістю, типами параметрів

//та типом значення, що повертається

//================== визначення квадрата дійсного числа ==============

float sqr(float x)

{

return x*x;

}

//============== визначення квадрата чілого числа ===================

int sqr(int x, int exponent)

{

return (int)pow(x,(double)exponent);

}

//======================= головна функція =============================