Смекни!
smekni.com

Стандартные библиотечные функции С++ (стр. 4 из 4)

6. Список используемой литературы

1. М.И. Болски. Язык программирования Си. 1988г.

2. Б.И. Березин. Начальный курс С и С++. М.,2001г.

3. Интернет ресурсы (www.citforum.ru)

Приложение 1

Листинг основной программы (kurs).

#include <iostream.h>

#include <conio.h>

#include <c:&bsol;matfac.cpp>

#include<math.h>

//#include<stdio.h>

void f1(char menu [9][30])// Площадь круга

{

float r;

gotoxy(15,10);

cout<<menu[1]<<endl;

cout<<"Введите радиус &bsol;n";cin>>r;

cout<< menu[1]<<"="<<Sokr(r);

getch();

}

void f2(char menu [9][30])// Объём цилиндра

{

float r,h;

gotoxy(15,10);

cout<<menu[2]<<endl;

cout<<"Введите радиус &bsol;n";cin>>r;

cout<<"Введите высоту &bsol;n";cin>>h;

cout<< menu[2]<<"="<<VCil(r,h);

getch();

}

void f3(char menu [9][30])// Площадь цилиндра

{

float r,h;

gotoxy(15,10);

cout<<menu[3]<<endl;

cout<<"Введите радиус &bsol;n";cin>>r;

cout<<"Введите высоту &bsol;n";cin>>h;

cout<< menu[3]<<"="<<SCil(r,h);

getch();

}

void f4(char menu [9][30])// Площадь трапеции

{

float a,b,h;

gotoxy(15,10);

cout<<menu[4]<<endl;

cout<<"Введите сторону a &bsol;n";cin>>a;

cout<<"Введите сторону b &bsol;n";cin>>b;

cout<<"Введите высоту h &bsol;n";cin>>h;

cout<< menu[4]<<"="<<STrap(a,b,h);

getch();

}

void f5(char menu [9][30])// Объём пирамиды

{

float a,b,h;

gotoxy(15,10);

cout<<menu[5]<<endl;

cout<<"Введите a &bsol;n";cin>>a;

cout<<"Введите b &bsol;n";cin>>b;

cout<<"Введите h &bsol;n";cin>>h;

cout<< menu[5]<<"="<<VPir(a,b,h);

getch();

}

void f6(char menu [9][30])// Объём шара

{

float r;

gotoxy(15,10);

cout<<menu[6]<<endl;

cout<<"Введите радиус &bsol;n";cin>>r;

cout<< menu[6]<<"="<<VSfer(r);

getch();

}

void f7(char menu [9][30])// Площадь сферы

{float r;

gotoxy(15,10);

cout<<menu[7]<<endl;

cout<<"Введите радиус r&bsol;n";cin>>r;

cout<< menu[7]<<"="<<SSfer(r);

getch();

}

void f8(char menu [9][30])// Факториал

{float r;

gotoxy(15,10);

cout<<menu[8]<<endl;

cout<<"Введите число &bsol;n";cin>>r;

cout<< menu[8]<<"="<< fac(r);

getch();

}

short sw(short k,char menu[9][30])//вызов функций

{

short kod=1;

switch (k)

{

case(1):f1(menu);break;

case(2):f2(menu);break;

case(3):f3(menu);break;

case(4):f4(menu);break;

case(5):f5(menu);break;

case(6):f6(menu);break;

case(7):f7(menu);break;

case(8):f8(menu);break;

case(9):cout<<menu[9]<<endl;kod=27; getch();return kod; // Выход

}

}

void mn (short k, char menu [9][30])//меню

{

clrscr();

textattr(7);

for(int i=1;i<10;i++)

{

gotoxy(15,i+5);

if (k==i) {

textattr(2);

cprintf(menu[i]);

textattr(7);

} else cprintf (menu[i]);

}

}

void main ()

{

clrscr();

char menu [9][30];//массив строк

strcpy (menu[1],"Площадь круга");

strcpy (menu[2],"Объём цилиндра");

strcpy (menu[3],"Площадь цилиндра");

strcpy (menu[4],"Площадь трапеции");

strcpy (menu[5],"Объём пирамиды");

strcpy (menu[6],"Объём шара");

strcpy (menu[7],"Площадь сферы");

strcpy (menu[8],"Факториал");

strcpy (menu[9],"Выход");

short k=1, kod=1;

mn (k, menu);

do

{

kod=getch();

switch (kod)//определить нажатые клавиши

{

// case (27):{ return;};break;//ESC

case (80):{k++;if (k>9) k=9; mn(k, menu);};break;//стрелка вверх

case (72):{k--;if (k<1) k=1; mn(k, menu);};break;// стрелка вниз

case (13): clrscr();kod=sw(k,menu);mn(k,menu);break;//enter

}

} while (kod!=27); //ESC

}

Приложение 2

Листинг модуля “matfac.cpp”.

#include <math.h>

#define M_PI 3.14159265358979323846

float fac (float n) //factorial_1

{

float f=0;

if (n!=0)

{

f=1;

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

{

f*=i;

}

} else f=0;

return f;

}

float Sokr (float r) //площадь груга_2

{

return (M_PI*r*r);

}

float VCil (float r,float h) //объём цилиндра_3

{

return (M_PI*r*r*h);

}

float SCil (float r,float h) //площадь цилиндра_4

{

return (M_PI*2*r*(r+h));

}

float STrap (float a,float b,float h) //площадь трапеции_5

{

return ((a+b)/(2*h));

}

float VPir (float a,float b,float h) //объём пирамиды_6

{

return ((a*b*h)/3);

}

float VSfer (float r) //объём шара_7

{

return (4*M_PI*r*r)/3;

}

float SSfer (float r) //площадь сферы_8

{

return (4*M_PI*r*r);

}