.


:




:

































 

 

 

 


: -

:

230100

7

 

 

:

2-

230100

613217

:

 

, 2015

 

.. 3

1 .. 4

2 UML .. 5

3 . 7

4 ... 11

.. 14

... 15

 

 

 


 

- ++, , - , , , .


 

Bill : , , , ), , , . Bill, ListPayer. ListPayer , , . ( Bill), , , . ; , ; . . Group (), , ListPayer. , , . unsigned int: , , . unsigned int: , , .


 

UML

(. Static Structure diagram) , , , . UML.

:

- ;

- , .

:

- , ;

- ;

- , ( - ).

 

 

2.1


MS Visual Studio 2010.

 

 

2.2 Class Diagram

 

Class Diagram, , , .


 

 

#include "stdafx.h"

#include <iostream>

#include <fstream>

#include <string>

#include <vector>

#include <string>

#include <locale>

using namespace std;

 

const int NotUsed = system("color 70");

 

const int N = 5;

 

class bill

{

std::string number, first_name, last_name;

 

public:

bill(std::string number, std::string first_name, std::string last_name)

{

this->number = number;

this->first_name = first_name;

this->last_name = last_name;

}

 

std::string getNumber()

{

return number;

}

 

std::string getFirst_name()

{

return first_name;

}

 

std::string getLast_name()

{

return last_name;

}

};

 

struct list_el

{

std::string number, first_name, last_name, date;

double time_call, tarif, discount, sum;

};

 

class listPlayer: bill

{

int n;

std::string date;

std::vector<list_el> list;

 

public:

listPlayer(std::string number, std::string first_name, std::string last_name, int n, int date): bill(number, first_name, last_name)

{

this->n = n;

this->date = date;

}

 

void addBill(bill el, std::string date, double time_call, double tarif, double discount, double sum)

{

list_el l;

 

l.number = el.getNumber();

l.first_name = el.getFirst_name();

l.last_name = el.getLast_name();

l.date = date;

l.time_call = time_call;

l.tarif = tarif;

l.discount = discount;

l.sum = sum;

 

list.push_back(l);

 

std::cout<< l.number<<" "<< l.first_name<<" "<< l.last_name<<" "<< l.date<<" "<< l.time_call<<" "<<l.tarif <<" "<< l.discount<<" "<< l.sum;

 

}

 

void delBill(int del_bill)

{

if (list.size() >= del_bill)

list.erase(list.begin() + del_bill);

std::cout<<" ";

}

 

void printBill()

{

for (int i = 0; i < list.size(); i++)

std::cout<<list[i].number<<" "<<list[i].first_name<<" "<<list[i].last_name<<" "<<list[i].date<<" "<<list[i].time_call<<" "<<list[i].tarif<<" "<<list[i].discount<<" "<<list[i].sum<<" ";

 

}

 

 

std::vector<list_el> findNumber(std::string number)

{

std::vector<list_el> v;

for (int i = 0; i < list.size(); i++)

if (list[i].number == number)

{

v.push_back(list[i]);

std::cout<<" !";

}

else

{

std::cout<<" !";

}

return v;

}

 

std::vector<list_el> findLastName(std::string last_name)

{

std::vector<list_el> v;

for (int i = 0; i < list.size(); i++)

if (list[i].last_name == last_name)

{

v.push_back(list[i]);

std::cout<<" !";

}

else

{

std::cout<<" !";

}

return v;

}

 

std::vector<list_el> findDate(std::string date)

{

std::vector<list_el> v;

for (int i = 0; i < list.size(); i++)

if (list[i].date == date)

{

v.push_back(list[i]);

std::cout<<" !";

}

else

{

std::cout<<" !";

}

return v;

}

 

int sum()

{

int t = 0;

 

for (int i = 0; i < list.size(); i++)

t += list[i].sum;

return t;

}

};

 

 

int main()

{setlocale(LC_ALL,"russian_russia");

listPlayer list(" ", " ", " ", 1, 0000);

std::string number, date, first_name, last_name,faml,numb,fnddate;

double time_call, tarif, sum, discount;

int choose;

while(1)

{

std::cout<<" ?\n";

std::cout<<" 1 \n";

std::cout<<" 2 \n";

std::cout<<" 3, \n";

std::cout<<" 4, \n";

std::cout<<" 5, \n";

std::cout<<" 6, \n";

std::cout<<" 7, \n";

std::cin>>choose;

switch (choose)

{

case 1:

 

std::cout<<" \n";

std::cin>>number;

 

std::cout<<" \n";

std::cin>>first_name;

 

std::cout<<" \n";

std::cin>>last_name;

 

std::cout<<" \n";

std::cin>>date;

 

std::cout<<" \n";

std::cin>>time_call;

 

std::cout<<" \n";

std::cin>>tarif;

 

std::cout<<" \n";

std::cin>>discount;

 

sum=(time_call*tarif)-((time_call*tarif)*(discount/100));

 

list.addBill(bill(number, first_name, last_name), date, time_call, tarif, discount,sum);

std::cout << std::endl;

 

break;

case 2:

int del_bill;

std::cout<<" , 0 \n";

std::cin>>del_bill;

list.delBill(del_bill);

std::cout << std::endl;

break;

case 3:

std::cout << " \n";

std::cout << list.sum();

std::cout << std::endl;

break;

case 4:

std::cout<<" \n";

std::cin>>faml;

list.findLastName(faml);

std::cout << std::endl;

break;

case 5:

std::cout<<" \n";

std::cin>>numb;

list.findNumber(numb);

std::cout << std::endl;

break;

case 6:

std::cout<<" \n";

std::cin>>fnddate;

list.findDate(fnddate);

std::cout << std::endl;

break;

case 7:

list.printBill();

std::cout << std::endl;

break;

}

 

getchar();

system("pause");

}

}


 

, , :

- , ;

- , , .

 

4.1

 

:

- 1 ;

- 2 ;

- 3, ;

- 4, ;

- 5, ;

- 4, ;

- 7, .

4.2

 

:

- ;

- ;

- ;

- ;

- ;

- ;

- .

.

 

4.3

 

0, . .


4.4

 

:

- ;

- ;

- .

(4-6) , .. / .

 

4.5

 

(3), , .

 


 

:

1. .

2. , .

3. .

5. , .

6. , , , .

 


 

1 , . . []: / . . , . . . - .: - -, 2006. - 432 c.

2 .. . : . . .: -, 2006.

3 .. /++. []: / . . . - .: , 2009. - 460 .

4 .. . , , /++ LAB, , : . .: -, 2006.

5 . / ../, : , 2005.

6 , . . - . []: / . . . - : -, 2005.

7 , . Windows Visual C/C++. Visual C++ []: . . / . , . . - .: ; .: , 2008. - 878.

8 , . . []: . / . . . - .: - , 2011. - 258 .

 

 



<== | ==>
( ) 31.12.2013 | ()
:


: 2015-11-23; !; : 663 |


:

:

.
==> ...

1390 - | 1367 -


© 2015-2024 lektsii.org - -

: 0.092 .