Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВМИиП - Лабораторный практикум на Visual C++ 20...doc
Скачиваний:
2
Добавлен:
13.08.2019
Размер:
650.75 Кб
Скачать

Void dobzap(fstream &dobf)

{

int schet=vvod_nomer("Vvedite novyj nomer scheta: ");

dobf.seekg((schet-1)*sizeof(tip_client), ios::beg);

tip_client client;

dobf.read((char *) &client, sizeof(tip_client));

if(client.nomer==0)

{

cout<<"Vvedite familiju, imja, balance\n: ";

cin>>client.fam>>client.im>>client.balance;

client.nomer=schet;

dobf.seekp((schet-1)*sizeof(tip_client), ios::beg);

dobf.write((char *) &client, sizeof(tip_client));

}

else

cerr<<"Schet № "<<schet<<" imeetcja"<<endl;

}

void zamzap(fstream &zamf)

{

int schet=vvod_nomer("Vvedite nomer scheta zamenj: ");

zamf.seekg((schet-1)*sizeof(tip_client), ios::beg);

tip_client client;

zamf.read((char *) &client, sizeof(tip_client));

if(client.nomer!=0)

{

vyvod(cout, client);

cout<<"Vvedite rashod (+) ili doplatu (-): ";

float rasdop;

cin>>rasdop;

client.balance+=rasdop;

vyvod(cout, client);

zamf.seekp((schet-1)*sizeof(tip_client), ios::beg);

zamf.write((char *) &client, sizeof(tip_client));

}

else

cerr<<"Schet № "<<schet<<" ne imeet inf."<<endl;

}

void udzap(fstream &udf)

{

int schet=vvod_nomer("Vvedite nomer scheta udalenija: ");

udf.seekg((schet-1)*sizeof(tip_client), ios::beg);

tip_client client;

udf.read((char *) &client, sizeof(tip_client));

if(client.nomer!=0)

{

tip_client client0={0, "", "", 0.0};

udf.seekp((schet-1)*sizeof(tip_client), ios::beg);

udf.write((char *) &client0, sizeof(tip_client));

cout<<"Schet № "<<schet<<" udalen"<<endl;

}

else

cerr<<"Schet № "<<schet<<" pustoj"<<endl;

}

void vyvod(ostream &output, const tip_client &cl)

{

output<<setiosflags(ios::left)<<setw(10)

<<cl.nomer<<setw(16)<<cl.fam<<setw(11)

<<cl.im<<setw(10)<<setprecision(2)<<resetiosflags(ios::left)

<<setiosflags(ios::fixed | ios::showpoint)<<cl.balance<<endl;

}

int vvod_nomer(const char * const nom)

{

int schet;

do

{

cout<<nom<<" (1 - 100):";

cin>>schet;

}

while(schet<1 || schet>100);

return schet;

}

3. Блок лабораторных работ по теме «Объектно-ориентированный подход к проектированию и разработке программ»

lab1 «Классы, объекты, конструкторы»

Цель работы – создание определения класса, объявление объекта класса, инициализация членов-данных класса конструктором.

Условие задачи: имеются данные о таб. номерах и объемах работ рабочих; создать класс, объявить объект класса и проинициализировать его члены-данные значениями 1 и 100000.

Создание проекта консольного приложения

Необходимо выполнить следующие этапы:

- Запустить Visual Studio 2005. Появится стартовая страница Start Page.

- Щелкнуть на кнопке Create Project или выбрать команду File->New->Project. Появится диалоговое окно New Project.

- Выбрать в списке Project Types папку Visual C++ Project Win32, а в списке Templates – Console Application. Ввести имя проекта lab1 и проверить в поле Solution Name имя папки для хранения проекта (lab1).

- Щелкнуть на кнопке OK. Появляется диалоговое окно Win32 Application Wizard lab1. На вкладке Application Setting (параметры приложения) выбрать Console Application.

- Щелкнуть на кнопке Finish. Информация о проекте выводится в окне Solution Explorer. Создается исходный файл lab1.cpp, который будет содержать всего одну пустую функцию main():

int _tmain(int args, _TCHAR* argv[])

{return 0;}.

Создание и добавление исходных файлов в проект

Проект должен содержать файл заголовков lab1.h и файл кодов lab1.cpp. Для создания файла lab1.h выполнить следующие этапы:

- Выбрать команду Project->Add New Item. Появится диалоговое окно Add New Item lab1. В списке Categorie должно быть Visual C++ Code.

- Выбрать в списке Templates тип файла заголовков Header File (.h), ввести имя файла lab1.h и щелкнуть на кнопке Add. Появится пустое поле для ввода текста файла lab1.h.

- Ввести текст файла lab1.h и сохранить его.

//файл заголовков lab1.h

#include <iostream>

using std::cout;

class akt

{

public: