Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Кафедра ЕОМ

Інформація про роботу

Рік:
2015
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
ТБВ

Частина тексту файла (без зображень, графіків і формул):

Міністрество освіти і науки, молоді та спорту України Національний університет «Львівська політехніка» Кафедра ЕОМ Звіт про виконання лабораторної роботи №5 Львів 2015 //main.cpp #include <iostream> #include "GasStation.h" using namespace std; int main(){ CGasStation lukoil(10000, 5674, 15000, 6783, 9000, 4536, 11000, 8976, 15), ukrnafta(lukoil); lukoil.fnArrInit(); while (true){ cout << "\n===================\nget - 1\nadd - 2\nref - 3\nchange - 4\n\+ - 5\nval++ - 6\n++val - 7\n!= - 8\n[] - 9\n===================\n"; int a; cin >> a; if ((a != 1) && (a != 2) && (a != 3) && (a != 4) && (a != 5) && (a != 6) && (a != 7) && (a != 8) && (a != 9)) break; switch (a){ case 1: lukoil.fnGet(); break; case 2: lukoil.fnAddPatrol(); break; case 3:lukoil.fnRefuel(); break; case 4: lukoil.fnChangeTheVolume(); break; case 5: lukoil + ukrnafta; lukoil.fnGet(); break; case 6: (lukoil--).fnGet(); break; case 7: (--lukoil).fnGet(); break; case 8: if (lukoil != ukrnafta){ cout << "false" << endl; } else{ cout << "true" << endl; } break; case 9: int a; cout << "Vvedit nomer skhovishcha: "; cin >> a; cout << lukoil[a-1]<<endl; default: break; } } } //gasstation.h #pragma once class CGasStation { public: CGasStation(CGasStation & gas); //копіювання CGasStation(int iVolume1, int iVolumeOfStocks1, int iVolume2, int iVolumeOfStocks2, int iVolume3, int iVolumeOfStocks3, int iVolume4, int iVolumeOfStocks4, int iCapacity); //ручна ініціалізація ~CGasStation(); void fnGet(); //вивід void fnAddPatrol(); //додаю паливо в сховище void fnRefuel(); //заправка void fnChangeTheVolume(); //змінюю об'єм сховища void fnArrInit(); //елементам масиву присвоююю початкові значення залишків палива у сховищі void operator+(CGasStation & gas); //перевантажую + CGasStation operator--(int); //перевантажую постфіксний декремент CGasStation & operator--(); //перевантажую префіксний декремент bool operator!=(CGasStation & gas); int & operator[](int index); int *arr = new int[4]; private: int m_iVolume1, m_iVolume2, m_iVolume3, m_iVolume4, m_iVolumeOfStocks1, m_iVolumeOfStocks2, m_iVolumeOfStocks3, m_iVolumeOfStocks4, m_iCapacity; }; //gasstation.cpp #include "GasStation.h" #include "iostream" using namespace std; CGasStation::CGasStation(CGasStation & gas){ m_iVolume1 = gas.m_iVolume1; m_iVolume2 = gas.m_iVolume2; m_iVolume3 = gas.m_iVolume3; m_iVolume4 = gas.m_iVolume4; m_iVolumeOfStocks1 = gas.m_iVolumeOfStocks1; m_iVolumeOfStocks2 = gas.m_iVolumeOfStocks2; m_iVolumeOfStocks3 = gas.m_iVolumeOfStocks3; m_iVolumeOfStocks4 = gas.m_iVolumeOfStocks4; m_iCapacity = gas.m_iCapacity; } CGasStation::CGasStation(int iVolume1, int iVolumeOfStocks1, int iVolume2, int iVolumeOfStocks2, int iVolume3, int iVolumeOfStocks3, int iVolume4, int iVolumeOfStocks4, int iCapacity){ m_iVolume1 = iVolume1; m_iVolume2 = iVolume2; m_iVolume3 = iVolume3; m_iVolume4 = iVolume4; m_iVolumeOfStocks1 = iVolumeOfStocks1; m_iVolumeOfStocks2 = iVolumeOfStocks2; m_iVolumeOfStocks3 = iVolumeOfStocks3; m_iVolumeOfStocks4 = iVolumeOfStocks4; m_iCapacity = iCapacity; } CGasStation::~CGasStation(){ delete[] arr; } void CGasStation::fnGet(){ cout << "Type 1: " << "Volume = " << m_iVolume1 << "; VolumeOfStocks = " << m_iVolumeOfStocks1 << ";\n"; cout << "Type 2: " << "Volume = " << m_iVolume2 << "; VolumeOfStocks = " << m_iVolumeOfStocks2 << ";\n"; cout << "Type 3: " << "Volume = " << m_iVolume3 << "; VolumeOfStocks = " << m_iVolumeOfStocks3 << ";\n"; cout << "Type 4: " << "Volume = " << m_iVolume4 << "; VolumeOfStocks = " << m_iVolumeOfStocks4 << ";\n"; cout << "Capacity = " << m_iCapacity << ";\n"; } void CGasStation::fnAddPatrol(){ int iType; int iVolume; cout << "Vvedu tup skhovushcha(1,2,3 abo 4): "; cin >> iType; cout << "\nVVedu ob'em paluva: "; cin >> iVolume; switch (iType){ case 1: m_iVolumeOfStocks1 += iVolume; if (m_iVolumeOfStocks1 > m_iVolume1){ m_iVolumeOfStocks1 = m_iVolume1; } break; case 2: m_iVolumeOfStocks2 += iVolume; if (m_iVolumeOfStocks2 > m_iVolume2){ m_iVolumeOfStocks2 = m_iVolume2; } break; case 3: m_iVolumeOfStocks3 += iVolume; if (m_iVolumeOfStocks3 > m_iVolume3){ m_iVolumeOfStocks3 = m_iVolume3; } break; case 4: m_iVolumeOfStocks4 += iVolume; if (m_iVolumeOfStocks4 > m_iVolume4){ m_iVolumeOfStocks4 = m_iVolume4; } break; default: break; } } void CGasStation::fnRefuel(){ int iType; int iVolume; cout << "Vvedu tup paluva(1,2,3 abo 4): "; cin >> iType; cout << "\nVVedu ob'em paluva: "; cin >> iVolume; switch (iType){ case 1: if (m_iVolumeOfStocks1 < iVolume){ cout << "Nedostatnio paluva\n\n"; break; } m_iVolumeOfStocks1 -= iVolume; cout << "time: " << (int)(iVolume / m_iCapacity) << "khv\n"; break; case 2: if (m_iVolumeOfStocks2 < iVolume){ cout << "Nedostatnio paluva\n\n"; break; } m_iVolumeOfStocks2 -= iVolume; cout << "time: " << (int)(iVolume / m_iCapacity) << "khv\n"; break; case 3: if (m_iVolumeOfStocks3 < iVolume){ cout << "Nedostatnio paluva\n\n"; break; } m_iVolumeOfStocks3 -= iVolume; cout << "time: " << (int)(iVolume / m_iCapacity) << "khv\n"; break; case 4: if (m_iVolumeOfStocks4 < iVolume){ cout << "Nedostatnio paluva\n\n"; break; } m_iVolumeOfStocks4 -= iVolume; cout << "time: " << (int)(iVolume / m_iCapacity) << "khv\n"; break; default: break; } } void CGasStation::fnChangeTheVolume(){ int iType; int iVolume; cout << "Vvedu tup skhovushcha(1,2,3 abo 4): "; cin >> iType; cout << "\nVVedu ob'em: "; cin >> iVolume; switch (iType){ case 1: m_iVolume1 = iVolume; if (m_iVolumeOfStocks1 > iVolume){ m_iVolumeOfStocks1 = iVolume; } break; case 2: m_iVolume2 = iVolume; if (m_iVolumeOfStocks2 > iVolume){ m_iVolumeOfStocks2 = iVolume; } break; case 3: m_iVolume3 = iVolume; if (m_iVolumeOfStocks3 > iVolume){ m_iVolumeOfStocks3 = iVolume; } break; case 4: m_iVolume4 = iVolume; if (m_iVolumeOfStocks4 > iVolume){ m_iVolumeOfStocks4 = iVolume; } break; default: break; } } void CGasStation::fnArrInit(){ arr[0] = m_iVolumeOfStocks1; arr[1] = m_iVolumeOfStocks2; arr[2] = m_iVolumeOfStocks3; arr[3] = m_iVolumeOfStocks4; } void CGasStation::operator+(CGasStation & gas ){ m_iVolume1 += gas.m_iVolume1; m_iVolume2 += gas.m_iVolume2; m_iVolume3 += gas.m_iVolume3; m_iVolume4 += gas.m_iVolume4; m_iVolumeOfStocks1 += gas.m_iVolumeOfStocks1; m_iVolumeOfStocks2 += gas.m_iVolumeOfStocks2; m_iVolumeOfStocks3 += gas.m_iVolumeOfStocks3; m_iVolumeOfStocks4 += gas.m_iVolumeOfStocks4; m_iCapacity += gas.m_iCapacity; } CGasStation CGasStation::operator--(int){ CGasStation temp(*this); m_iVolume1--; m_iVolume2 --; m_iVolume3 --; m_iVolume4 --; m_iVolumeOfStocks1 --; m_iVolumeOfStocks2 --; m_iVolumeOfStocks3 --; m_iVolumeOfStocks4 --; m_iCapacity --; return temp; } CGasStation & CGasStation::operator--(){ m_iVolume1--; m_iVolume2--; m_iVolume3--; m_iVolume4--; m_iVolumeOfStocks1--; m_iVolumeOfStocks2--; m_iVolumeOfStocks3--; m_iVolumeOfStocks4--; m_iCapacity--; return *this; } bool CGasStation::operator!=(CGasStation & gas){ if ((m_iVolume1 != gas.m_iVolume1) && (m_iVolume2 != gas.m_iVolume2) && (m_iVolume3 != gas.m_iVolume3) && (m_iVolume4 != gas.m_iVolume4) && (m_iVolumeOfStocks1 != gas.m_iVolumeOfStocks1) && (m_iVolumeOfStocks2 != gas.m_iVolumeOfStocks2) && (m_iVolumeOfStocks3 != gas.m_iVolumeOfStocks3) && (m_iVolumeOfStocks4 != gas.m_iVolumeOfStocks4) && (m_iCapacity != gas.m_iCapacity)) return true; else return false; } int & CGasStation::operator[](int index){ return arr[index]; }
Антиботан аватар за замовчуванням

15.11.2015 03:09

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!