Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Проверка работоспособности программы

Поиск
Для каждого отдельного пункта и подпункта меню было выполнено несколько раз испытание на правильное функционирование. В ходе испытаний ошибок или сбоев найдено не было.

 

5 Руководство оператора

В данной программе реализованы следующие возможности:

- отчет о продаже растений;

- список имеющихся растений;

- список имеющихся семян;

- список имеющихся семян;

- сообщение о характеристиках выбранных растений;

- сообщение о технологии посадки выбранных растений;

- указания по выращиванию выбранных растений;

- дата выведения сорта выбранного растения;

- цена выбранного растения;

- морозоустойчиво ли выбранное растение;

 

Для выбора нужной функции необходимо следовать подсказкам главного и побочных меню. Например, если нам надо добавить покупку, то необходимо зайти в программу, затем ввести клавишу «1» и нажать клавишу «Enter». У нас на экране появится сообщение о необходимости ввести название файла, который мы хотим занести в вектор (например, buy.txt). Нажимаем «Enter» и возвращаемся в основное меню. В программе можно работать, опираясь на ее подсказки.

При запуске программы вызывается функция glav_meny() и происходит загрузка информации из файлов (buy.txt, rastenie.txt, sort.txt) в вектора(buy, rastenie, sort). И у нас на экране появляется главное меню программы:

 

(Главное меню программы)

 

Далее у пользователя программы появляется возможность выбора любого из возможных пунктов меню. При выборе 1 пункта главного меню, появляется возможность внести из любого файла в вектор buy.

 

(Функция 1 - Добавление файла в вектор)

 

 

Аналогичным образом ведут себя Функции 5 и 9. За исключением того, что при нажатии Функции 5 мы записываем в вектор rastenie, а при нажатии Функции 9 в вектор sort.

После чего мы возвращаемся в главное меню.

При выборе 2 пункта главного меню вызывается функция Записи из вектора в файл. и на экране появляется:

 

(Функция 2 – Запись из вектора в файл)

 

Аналогичным образом ведут себя Функции 6 и 10. За исключением того, что при нажатии Функции 6, мы записываем из вектора rastenie в файл rastenie.txt, а при нажатии Функции 10 из вектора sort в файл sort.txt.

После чего мы возвращаемся в главное меню.

При выборе 3 пункта главного меню вызывается функцию Вывод содержимого вектора buy на экран:

(Функция 3 – Вывод на экран содержимого вектора)

Аналогичным образом ведут себя Функции 7 и 11. За исключением того, что при нажатии Функции 7, мы выводим на экран из вектора rastenie, а при нажатии Функции 11 из вектора sort.

При выборе 4 пункта главного меню вызывается функция Записи в вектор buy с новым содержимым:

Вводим новую покупку. После чего появляется подменю с тремя функциями.

1. Ввести новое растение

2. Выбрать растение из списка имеющихся.

0. Вернуться в главное меню

 

При выборе 1 пункта подменю программа выводится ___________просьба ввести новое __________растение.

________При выборе 2 ____________пункта подменю программа выводится просьба ввести номер имеющегося растения (нумерация начинается с нуля).

При выборе 0 пункта подменю программа возвращает нас в главное меню.

При выборе 8 пункта главного меню вызывается функция Записи в вектор rastenie с новым содержимым:

Вводим новое растение.

Аналогичным образом ведет себя Функции 12. За исключением того, что при нажатии Функции 12, мы вводим новый сорт.

 

При выборе 0 пункта главного меню программа заканчивает свою работу.

Заключение

В ходе данного курсового проекта я получила основные знания и некоторые навыки в составлении алгоритмов и написании программ на языке программирования C++. В этой работе было выполнено техническое задание на языке программирования C++. Я проверила приобретенные навыки и умения самостоятельного составления программ на языке программирования C++ для выполнения программного обеспечения института селекции растений. Я считаю, что язык программирования C++ - это простое, достаточно удобное и мощное средство разработки самых разных приложений – от создания простых программ, предназначенных для решения несложных вычислительных задач, до разработки сложнейших реляционных систем управления базами данных - обладающее весьма широким спектром возможностей.

 

 

Список литературы:

1. Лекции по курсу Программирование на ЯВУ С++

2. Методические указания к выполнению курсовой работы по дисциплине “Программирование на языке высокого уровня” для студентов второго курса специальности 071900 ”Информационные системы в технике”, — М.: Редакционно-издательский отдел РГАСХМ, 2004.

3. Павловская Т.А., С++ Практикум, — М.: Питер, 2002.

4. Технология разработки программного обеспечения: Учебник /С.Орлов — СПб.: Питер, 2002.

5. Халперн П. Стандартная библиотека C++ на примерах. — М.: Издательский дом “Вильямс”, 2001.

 

 

Приложение 1. Техническое задание

1. ВВЕДЕНИЕ

Наименование — прикладное программное обеспечение деятельности института селекции растений.

Краткая характеристика — прикладное программное обеспечение института селекции растений с информационной базой об имеющихся растениях.

2. ОСНОВАНИЕ ДЛЯ РАЗРАБОТКИ

Учебный план специальности 230201 и задание преподавателя для выполнения курсовой работы.

3. НАЗНАЧЕНИЕ РАЗРАБОТКИ

Прикладное программное обеспечение деятельности института селекции растений предназначено для сбора и хранения информации о различных сортах семян имеющихся в институте.

4.ТРЕБОВАНИЯ К ПРОГРАММЕ

4.1. Требования к функциональным характеристикам

4.1.1. Программное обеспечение должно обеспечить ввод информации о:

- покупках:

- номер покупки растения

- цену покупки растения

- отдел покупки растения

-растениях:

- название растения

- тип растения

- срок хранения семян

- технологии посадки

- сортах:

- названия сорта

- характеристика сорта

- морозоустойчивость

- дата выведения сорта

4.1.1. По требованию пользователя система должна обеспечить хранение информации о:

- покупках:

- номер покупки растения

- цену покупки растения

- отдел покупки растения

-растениях:

- название растения

- тип растения

- срок хранения семян

- технологии посадки

- сортах:

- названия сорта

- характеристика сорта

- морозоустойчивость

- дата выведения сорта

4.1.2. По требованию пользователя система должна обеспечить выдачу:

- отчет о продаже растений;

- список имеющихся растений;

- список имеющихся семян;

- список имеющихся семян;

- сообщение о характеристиках выбранных растений;

- сообщение о технологии посадки выбранных растений;

- указания по выращиванию выбранных растений;

- дата выведения сорта выбранного растения;

- цена выбранного растения;

- морозоустойчиво ли выбранное растение;

4.1.3. Программное обеспечение должно работать в консольном режиме и поддерживать работу с клавиатуры.

4.1.4. Собранная информация может быть сохранена на внешнем носителе в выходном файле автоматически и по требованию пользователя.

4.1.5. Структура выходного файла должна быть разработана с учетом сохранения всех первичных параметров и моментов их изменений.

4.1.6. Программное обеспечение при запуске может использовать в качестве входной информации файл с ранее записанными данными.

4.1.7. Системное время и дата поддерживаются встроенными часами.

4.2. Требования к надежности

4.2.1. Программа должна обрабатывать ошибочные действия пользователя и сообщать ему об этом.

4.2.2. Программа должна учитывать отсутствие данных за требуемый период в связи с возникшим сбоем.

4.3. Условия эксплуатации

4.3.1. Температура окружающего воздуха должна находится в пределах от 10 до 30 градусов по Цельсию.

4.3.2. Относительная влажность воздуха должна находиться в пределах 30-60%.

4.3.3. Данным программным обеспечение может управлять любой квалифицированный сотрудник.

4.4. Требования к составу и параметрам технических средств

4.4.1. Программное обеспечение разрабатывается для персонального компьютера IBM PC с процессором не ниже Pentium-120 со следующими характеристиками:

- объем ОЗУ не менее 16 Mb;

- графический адаптер SVGA;

- манипулятор типа "мышь".

4.4.2. ЭВМ должна работать под управлением операционной системы не ниже WINDOWS 98.

4.5. Требования к информационной и программной совместимости

4.5.1. Требование информационной совместимости должно быть обеспечено работой с файлами сбора информации о мониторинге определенной структуры в качестве входной и выходной информации.

5. ТРЕБОВАНИЯ К ПРОГРАММНОЙ ДОКУМЕНТАЦИИ

Программная документация должна содержать пояснительную записку к курсовой работе и графическую часть.

6. ТЕХНИКО-ЭКОНОМИЧЕСКИЕ ПОКАЗАТЕЛИ

В результате внедрения разработанного ПО предполагается увеличить информационность института.

7. СТАДИИ И ЭТАПЫ РАЗРАБОТКИ

7.1. Стадия аналитической разработки:

- ознакомление с теоретическим материалом;

- аналитическая обработка теоретической информации.

- объектно-ориентированный анализ;

- разработка диаграммы объектов;

- разработка диаграммы последовательности;

- объектно-ориентированное проектирование;

- разработка диаграммы классов.

7.2. Стадия программной разработки:

- разработка классов и отдельных модулей программы;

- отладка полученных классов и модулей;

- объединение структур и формирование единой программы;

- тестирование и получение результатов работы программы.

7.3. Стадия аналитического анализа:

- анализ данных, полученных в результате работы программы;

- выработка рекомендаций по увеличению эффективности использования объекта моделирования.

8. ПОРЯДОК КОНТРОЛЯ И ПРИЕМКИ

8.1. При сдаче работы производится демонстрация разработанной программы на контрольном примере.

8.2. Копии всех документов включают:

- исходный текст программы;

- загрузочные модули (скомпилированная программа и файлы с входными данными);

- текстовую и графическую документацию.

Копии передаются на магнитном носителе преподавателю не позднее, чем за 3 дня до защиты.

 

Приложение 2. Листинг программы


CBuy.h

#include <fstream>

#include <vector>

#include "CRastenie.h"

 

class CBuy

{

private:

int Number;

int Sum;

char * Otdel;

std::vector <CRastenie *> vr;

public:

int get_Number(void);

void set_Number(int ANumber);

int get_Sum(void);

void set_Sum(int ASum);

char * get_Otdel(void);

void set_Otdel(char * AOtdel);

 

CBuy();

CBuy(CBuy & As);

CBuy(int ANumber,int ASum,char * AOtdel);

~CBuy ();

void Read();

void Write();

void ReadF(std::ifstream &f);

void WriteF(std::ofstream &f);

void WriteV();

void WriteFV(std::ofstream &f);

void ReadFV(std::ifstream &f);

void AddRastenieInBuy(CRastenie * r);

int CountRastenieInBuy ();

};

 

CRastenie.h

#ifndef __CRastenie__

#define __CRastenie__

#include <fstream>

class CRastenie

{

private:

char Name [30];

char Tip [50];

char Tehnologi [120];

public:

char * get_Name(void);

void set_Name(char * AName);

char * get_Tip(void);

void set_Tip(char * ATip);

char * get_Tehnologi(void);

void set_Tehnologi(char * ATehnologi);

CRastenie();

CRastenie(CRastenie & As);

CRastenie(char * AName,char * ATip,char * ATehnologi);

void Read();

void Write();

void ReadF(std::ifstream &f);

void WriteF(std::ofstream &f);

};

#endif

 

 

CSort.h

#include <fstream>

#include "CRastenie.h"

 

class CSort:public CRastenie

{

private:

char NameSort[50];

char Description[300];

char Frost[3];

int Year;

public:

char * get_NameSort(void);

void set_NameSort(char * AnewNameSort);

char * get_Description(void);

void set_Description(char * AnewDescription);

char * get_Frost(void);

void set_Frost(char * AnewFrost);

int get_Year(void);

void set_Year(int AnewYear);

CSort();

CSort(char * AName,char * ATip,char * ATehnologi,char * ANameSort,char * ADescription,char * AFrost,int AYear);

~CSort();

void Write();

void Read();

void WriteF(std::ofstream & f);

void ReadF(std::ifstream & f);

};



B.cpp


#include "stdafx.h"

#include <string.h>

#include "CBuy.h"

#include <iostream.h>

 

extern std::vector <CBuy *> v;

extern std::vector <CRastenie *> w;

 

int CBuy::get_Number(void)

{ return Number;}

void CBuy::set_Number(int ANumber)

{ Number = ANumber;}

int CBuy::get_Sum(void)

{ return Sum;}

void CBuy::set_Sum(int ASum)

{ Sum = ASum;}

char * CBuy::get_Otdel(void)

{ return Otdel;}

CBuy::CBuy()

{

Number = 10;

Sum = 370;

Otdel= new char [8];

strcpy(Otdel,"Flowers");

}

 

CBuy::CBuy(CBuy & As)

{

Number = As.Number;

Sum = As.Sum;

Otdel= new char [strlen(As.Otdel)+1];

strcpy(Otdel, As.Otdel);

}

CBuy::CBuy(int ANumber, int ASum, char * AOtdel)

{

Number = ANumber;

Sum = ASum;

Otdel= new char [strlen(AOtdel)+1];

strcpy(Otdel, AOtdel);

}

 

CBuy::~CBuy()

{

delete [ ] Otdel;

}

void CBuy::set_Otdel(char * AOtdel)

{

if (Otdel!=0)

delete[] Otdel;

Otdel = new char[strlen(AOtdel)+1];

strcpy(Otdel, AOtdel);

}

 

void CBuy::Read(void)

{

cout << "vvedite informazhiy o pokupke" << endl;

cout << "vvedite Number" << endl;

cin >> Number;

cout << "vvedite Sum" << endl;

cin >> Sum;

cout << "vvedite Otdel" << endl;

char s[1000];

cin >> s;

Otdel = new char [strlen(s)+1];

strcpy(Otdel, s);

int i;

int command = 4;

CRastenie * Temp100;

while (command!= 0)

{ cout << "Please enter operation..." << endl;

cout << "1. Add new Rastenie in Buy" << endl;

cout << "2. Add Rastenie in Buy" << endl;

cout << "0. Exit from this menu" << endl;

cin >> command;

if (command==1)

{ Temp100=new CRastenie();

Temp100->Read();

w.push_back(Temp100);

AddRastenieInBuy(Temp100);

}

else if (command==2)

{

cout << "Vvedite nomer rastenija v glob-spiske";

cin >> i;

AddRastenieInBuy (w[i]);

}

else

{cout << "Invalid command" << endl;

}

}

}

 

void CBuy::ReadF(std::ifstream &f)

{

char s[1000];

f >> Number >> Sum >> s;

Otdel= new char [strlen(s)+1];

strcpy(Otdel, s);

ReadFV(f);

}

void CBuy::Write(void)

{

cout << "informazhiy o pokupke" << endl;

cout << "Number: " << Number <<endl;

cout << "Sum: " << Sum << endl;

cout << "Otdel: " << Otdel << endl;

}

 

void CBuy::WriteF(std::ofstream &f)

{

f << Number << std::endl << Sum << std::endl << Otdel << std::endl;

WriteFV(f);

}

 

void CBuy::AddRastenieInBuy(CRastenie * r)

{ vr.push_back(r);

}

void CBuy::WriteV()

{cout << "Kolichestvo rasteni: " <<

CountRastenieInBuy() << endl;

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

{vr[i]->Write();

}

}

void CBuy::WriteFV(std::ofstream &f)

{ f << CountRastenieInBuy () << std::endl;

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

{for(int n = 0; n<w.size(); n++)

{ if(w[n] == vr[i]) break;

}

f << n << std::endl;

}

}

void CBuy::ReadFV(std::ifstream & f)

{ int N2, n2;

f >> N2;

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

{

f >> n2;

vr.push_back(w[n2]);

}

}

int CBuy::CountRastenieInBuy ()

{ return vr.size();

}


Cr.cpp


#include "stdafx.h"

#include <string.h>

#include "CBuy.h"

#include <iostream.h>

 

char * CRastenie::get_Name (void)

{ return Name;}

void CRastenie::set_Name (char * AName)

{ strcpy (Name,AName);}

char * CRastenie::get_Tip (void)

{ return Tip;}

void CRastenie::set_Tip (char * ATip)

{ strcpy(Tip,ATip);}

char * CRastenie::get_Tehnologi(void)

{ return Tehnologi;}

void CRastenie::set_Tehnologi (char * ATehnologi)

{ strcpy (Tehnologi,ATehnologi);}

 

CRastenie::CRastenie()

{ strcpy(Name,"Tomato");

strcpy(Tip,"Seeds");

strcpy(Tehnologi,"To_plant_in_the_earth_and_to_water");

}

CRastenie::CRastenie(CRastenie & As)

{ strcpy(Name, As.Name);

strcpy(Tip, As.Tip);

strcpy(Tehnologi, As.Tehnologi);

}

CRastenie::CRastenie(char * AName,char * ATip,char * ATehnologi)

{ strcpy(Name,AName);

strcpy(Tip,ATip);

strcpy(Tehnologi,ATehnologi);

}

 

void CRastenie::Read(void)

{

cout << "vvedite informazhiy o rastenie" << endl;

cout << "vvedite Name" << endl;

cin >> Name;

cout << "vvedite Tip" << endl;

cin >> Tip;

cout << "vvedite Tehnologi" << endl;

cin >> Tehnologi;

}

void CRastenie::ReadF(std::ifstream &f)

{

f >> Name >> Tip >> Tehnologi;

}

void CRastenie::Write(void)

{

cout << "informazhiy o rastenie" << endl;

cout << "Name: " << Name <<endl;

cout << "Tip: " << Tip << endl;

cout << "Tehnologi: " << Tehnologi << endl;

}

void CRastenie::WriteF(std::ofstream &f)

{ f << Name << std::endl << Tip << std::endl << Tehnologi << std::endl;

}


 

S.cpp


#include "stdafx.h"

#include <string.h>

#include "CSort.h"

#include "CRastenie.h"

#include <iostream.h>

 

char * CSort::get_NameSort(void)

{ return NameSort;}

void CSort::set_NameSort(char * ANameSort)

{ strcpy(NameSort,ANameSort);}

char * CSort::get_Description(void)

{ return Description;}

void CSort::set_Description(char * ADescription)

{ strcpy(Description,ADescription);}

char * CSort::get_Frost(void)

{ return Frost;}

void CSort::set_Frost(char * AFrost)

{ strcpy(Frost,AFrost);}

int CSort::get_Year(void)

{ return Year;}

void CSort::set_Year(int AYear)

{ Year = AYear;}

 

CSort::CSort():CRastenie()

{

strcpy(NameSort,"Kivi");

strcpy(Description,"Leaves_roundish,with_slightly_pointed_top,dark_green_colour,with_a_glossy_surface_and_the_rough_bottom_party.Fruits_large,weight_from_80_to_150,the_oval_form.");

strcpy(Frost,"yes");

Year = 2011;

}

 

CSort::CSort(char * AName,char * ATip,char * ATehnologi,char * ANameSort,char * ADescription,char * AFrost,int AYear):CRastenie(AName,ATip,ATehnologi)

{

strcpy(NameSort,ANameSort);

strcpy(Description,ADescription);

strcpy(Frost,AFrost);

Year = AYear;

}

 

CSort::~CSort()

{

}

 

void CSort::Read(void)

{

CRastenie::Read();

cout << "vvedite informazhiy o sorte" << endl;

cout << "vvedite NameSort" << endl;

cin >> NameSort;

cout << "vvedite Description" << endl;

cin >> Description;

cout << "vvedite Frost" << endl;

cin >> Frost;

cout << "vvedite Year"<< endl;

cin >> Year;

}

 

void CSort::ReadF(std::ifstream & f)

{

CRastenie::ReadF(f);

f >> NameSort >> Description >> Frost >> Year;

}

void CSort::Write(void)

{

cout << endl;

CRastenie::Write();

cout << "informazhiy o sorte" << endl;

cout << "NameSort: " << NameSort << endl;

cout << "Description: " << Description << endl;

cout << "Frost: " << Frost << endl;

cout << "Year: "<< Year << endl;

}

void CSort::WriteF(std::ofstream & f)

{

CRastenie::WriteF(f);

f << NameSort << std::endl << Description << std::endl << Frost << std::endl << Year << std::endl;

}


Buy.cpp


#include "stdafx.h"

#include <string.h>

#include "CBuy.h"

#include "CRastenie.h"

#include "CSort.h"

#include <iostream.h>

#include <fstream>

#include <vector>

 

void ReadFAllCBuy(char * fn, std::vector <CBuy *> & v)

{ std::ifstream f(fn);

int N;

f>>N;

CBuy *b;

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

{ b = new CBuy();

b->ReadF(f);

v.push_back(b);

}

f.close();

}

void WriteFAllCBuy(char * fn, std::vector <CBuy *> v)

{ std::ofstream f(fn);

f<<v.size()<< std::endl;

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

{ v[i]->WriteF(f);

}

f.close();

}

void WriteAllCBuy(std::vector <CBuy *> v)

{ cout<<"kolich buy =" <<v.size()<< endl;

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

{ v[i]->Write();

}

}

void ReadFAllCRastenie(char * fn, std::vector < CRastenie *> & w)

{ std::ifstream f(fn);

int N;

f>>N;

CRastenie *m;

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

{ m = new CRastenie();

m->ReadF(f);

w.push_back(m);

}

f.close();

}

void WriteFAllCRastenie(char * fn, std::vector < CRastenie *> w)

{ std::ofstream f(fn);

f<<w.size()<< std::endl;

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

{ w[i]->WriteF(f);

}

f.close();

}

void WriteAllCRastenie(std::vector <CRastenie *> w)

{ cout<<"kolich rasteni =" <<w.size()<< endl;

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

{ w[i]->Write();

}

}

void ReadFAllCSort(char * fn, std::vector <CSort *> & vs)

{ std::ifstream f(fn);

int N;

f>>N;

CSort *o;

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

{ o = new CSort();

o->ReadF(f);

vs.push_back(o);

}

f.close();

}

void WriteFAllCSort(char * fn, std::vector <CSort *> vs)

{ std::ofstream f(fn);

f<<vs.size()<< std::endl;

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

{ vs[i]->WriteF(f);

}

f.close();

}

void WriteAllCSort(std::vector <CSort *> vs)

{ cout<<"kolich sort =" <<vs.size()<< endl;

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

{ vs[i]->Write();

}

}

std::vector <CBuy *> v;

std::vector <CRastenie *> w;

std::vector <CSort *> vs;

 

void main(void)

{

ReadFAllCBuy ("buy.txt", v);

ReadFAllCRastenie ("rastenie.txt", w);

ReadFAllCSort ("sort.txt", vs);

char fn[600];

int kod;

do{ cout << "1. Buy File -> vector" << endl;

cout << "2. Buy vector -> File" << endl;

cout << "3. Buy vector -> Display" << endl;

cout << "4. Add Buy to vector" << endl;

cout << "5. Rastenie File -> vector" << endl;

cout << "6. Rastenie vector -> File" << endl;

cout << "7. Rastenie vector -> Display" << endl;

cout << "8. Add Rastenie to vector" << endl;

cout << "9. Sort File -> vector" << endl;

cout << "10.Sort vector -> File" << endl;

cout << "11.Sort vector -> Display" << endl;

cout << "12.Add Sort to vector" << endl;

cout << "0. Exit" << endl;

cout << "Select: 1-12 or 0." << endl;

cin >> kod;

switch (kod)

{ case 1:

cout << "Input File name: " << endl;

cin >> fn;

ReadFAllCBuy(fn, v);

break;

case 2:

cout << "Input File name: " << endl;

cin >> fn;

WriteFAllCBuy(fn, v);

break;

case 3:

WriteAllCBuy(v);

break;

case 4:

CBuy * b;

b=new CBuy;

b->Read();

v.push_back(b);

break;

case 5:

cout << endl;

cout << "Input File name: " << endl;

cin >> fn;

ReadFAllCRastenie(fn, w);

break;

case 6:

cout << endl;

cout << "Input File name: " << endl;

cin >> fn;

WriteFAllCRastenie(fn, w);

break;

case 7:

WriteAllCRastenie(w);

break;

case 8:

CRastenie *a;

a=new CRastenie;

a->Read();

w.push_back(a);

break;

case 9:

cout << "Input File name: " << endl;

cin >> fn;

ReadFAllCSort(fn, vs);

break;

case 10:

cout << "Input File name: " << endl;

cin >> fn;

WriteFAllCSort(fn, vs);

break;

case 11:

WriteAllCSort(vs);

break;

case 12:

CSort * o;

o=new CSort;

o->Read();

vs.push_back(o);

break;

}

} while (kod > 0);

cout << "GOOD BYE"<< endl;

}


 



Поделиться:


Последнее изменение этой страницы: 2017-02-22; просмотров: 245; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.191.195.180 (0.007 с.)