DevioLab CRYPTO TRADING AUTOMATION
LIVE
AUTOMATED CRYPTO TRADING • BINANCE
Автоматизуйте свій криптопортфель
Торгові боти DevioLab аналізують крипторинок, автоматично відкривають і закривають позиції та керують вашим портфелем на Binance 24/7.
CRYPTO 80 Bots
BINANCE Spot Trading
TRADING 24 / 7
Спробувати DevioLab
deviolab.com

Класи потокового вводу-виводу

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

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

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

Рік:
2015
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інші
Група:
КН

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

Міністерство освіти і науки України Національний університет „ Львівська політехніка “ Кафедра ІСМ  Звіт про виконання лабораторної роботи № 3 з курсу „Технологія проектування програмних систем” на тему: «Класи потокового вводу-виводу» Мета роботи: вивчення набору класів Borland C++ для керування введенням-виведенням даних різних типів. Порядок роботи 1. Ознайомитися з теоретичним матеріалом по організації потокового введення-виведення інформації. 2. Розробити програму „Робота з масивами даних” на мові С++ з використанням класів потокового та файлового вводу/виводу. 3. Оформити звіт по роботі. Програма та результати її виконання #include <vcl.h> #include <stdio.h> #include <conio.h> #include <iostream.h> #include <fstream.h> class Array { private: int *p; int num; //number of vector elements public: Array(int); Array (const Array&); ~Array(); Array& operator = (const Array&); friend ostream& operator <<(ostream&, Array&); friend istream& operator >>(istream&, Array&); friend ofstream& operator <<(ofstream&, Array&); friend ifstream& operator >>(ifstream&, Array&); int size(void); void read(void); void write(void); void sort(void); }; // constructor Array::Array(int num) { p = new int[num]; this->num = num; } // copy-constructor Array::Array(const Array& a) { p = new int[num]; for (int i=0; i<a.num; i++) p[i] = a.p[i]; } // destructor Array::~Array() { delete []p; } //overloaded operator =(oops...) Array& Array::operator = (const Array& a) { if (this!=&a) { delete []p; p=new int[num=a.num]; for (int i=0; i<a.num; i++) p[i] = a.p[i]; }; return *this; } // ostream overload for output ostream& operator <<(ostream& os, Array& ar) { for (int i=0; i<ar.num; i++) os << ar.p[i] << " "; os << endl; return os; } // istream overload for input istream& operator >>(istream& is, Array& ar) { for (int i=0; i<ar.num; i++) is >> ar.p[i]; return is; } // ofstream overload for file output ofstream& operator <<(ofstream& ofs, Array& ar) { for (int i=0; i<ar.num; i++) ofs << ar.p[i] << " "; ofs << endl; return ofs; } // ifstream overload for file input ifstream& operator >>(ifstream& ifs, Array& ar) { for (int i=0; i<ar.num; i++) ifs >> ar.p[i]; return ifs; } // get size of array int Array::size(void) { return num; } // console input void Array::read(void) { for (int i=0; i<num; i++) cin >> p[i]; } // console output void Array::write(void) { for (int i=0; i<num; i++) cout << p[i]; } // sorting void Array::sort(void) { int temp; for (int j=0; j<num-1; j++) for (int i=j; i<num; i++) { if (i==j) continue; if (p[i]<p[j]) { temp = p[j]; p[j] = p[i]; p[i] = temp; } } } void main(void) { int n; // create array cout << "Choose size of vector:\a " ; cin >> n; cout << "Program created array[" << n << "].\n\a"; Array A(n), B(n); cout <<"Please, input "<< n <<" elements of Vector. operator >> (input) worked:\n"; cin >> A; // sort cout << "Array::sort() worked.\n\a"; A.sort(); // cout overload cout <<"operator << (output) worked:\n"; cout << A; // read array from file cout <<"operator >> (file input) worked:\n"; ifstream ifs("1.txt"); B = A; ifs >> A; ifs.close(); // write array cout <<"Array from file:\n"; cout << A; // write array in file cout << "operator << (file output) worked:\n"; ofstream ofs("1.txt", ios::out); ofs << B; ofs.close(); getch(); }  Висновки Під час виконання лабораторної роботи я ознайомився з набором класів Borland C++ для керування введенням-виведенням даних різних типів. Для таких операцій у програму включені заголовні файли #include <iostream.h> та #include <fstream.h>
Антиботан аватар за замовчуванням

2015

Коментарі

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

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

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

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

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

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

Admin

26.02.2023 12:38

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