![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 21.09.2011
Сообщений: 2
|
![]()
привет! у меня проблема. я никак не могу дописать программку. незнаю почему, но у меня выводится 1 ошибка. вот моя программка:
// модуль Marsh.h #include<windows.h> // библиотека для кириллицы с кодировкой UNICOD #include<string> // библиотека для работы со строками типа string #include<iomanip> // библиотека манипуляторов вывода данных на дисплей #include<fstream> // библиотека файлового ввода/вывода #include<iostream> // библиотека потокового ввода/вывода using namespace std; // Прототип функции для русификации char *Rus(const char*text); // Описание суперкласса Marsh(“Маршрут”) class Marsh { private: // закрытые поля класса (по умолчанию) string init_point; // название начального пункта маршрута string term_point; // название конечного пункта маршрута int num_mar; // номер маршрута public: // открытые поля класса // конструктор со значениями по умолчанию Marsh(string init_point = " ", string term_point = " ", int num_mar = 0) { this-> init_point = init_point; this-> term_point = term_point; this-> num_mar = num_mar; }; //of Marsh //прототипы функций (процедур) (методов доступа и методов класса) string Get Init_point(); void Set Init_point(string); string Get Term_point(); void Set Term_point(string); int Get Num_mar(); void Set Num_mar(int); void Inp(); void Out(); void OutFile(int, const char name[]); bool operator ==(Marsh &); }; //of class Marsh // Описание подкласса Spisok(“Список”) суперкласса Marsh class Spisok : public Marsh { private: // закрытые поля подкласса(по умолчанию private) static const int len = 22; // длина полного имени файла(статическая константа целого типа) char name [len]; // полное имя файла данных: Диск:\Папка\Имя_файла.расширение int n; // кол-во маршрутов Marsh*spisok; //описание (динамического массива) экземпляров spisok суперкласса Marsh public: //открытые поля подкласса //прототипы конструктора, деструктора, функций(процедур) (методов класса) Spisok(); ~Spisok(); void PrintResult(); }; // of subclass Spisok Модуль Marsh.cpp #include ”Marsh.h” //подключение модуля Marsh //процедура (метод доступа - чтение), возвращающая начальный пункт маршрута string Marsh::Get Init_point() { return this-> init_point; }; //процедура (метод доступа - запись), изменяющая начальный пункт маршрута void Marsh::Set Init_point(string init_point) { this-> init_point = init_point; }; // процедура (метод доступа - чтение), возвращающая конечный пункт маршрута string Marsh::Get Term_point() { return this-> term_point; }; // процедура(метод доступа - запись), изменяющая конечный пункт маршрута void Marsh::Set Term_point(string term_point) { this-> term_point = term point; }; //функция (метод доступа - чтение), возвращающая номер маршрута int Marsh::Get Num_mar() { return this-> num_mar; }; // процедура (метод доступа - запись), изменяющая номер маршрута void Marsh::Set Num_mar(int num_mar) { this-> num_mar = num_mar; }; // процедура (метод класса) ввода данных элементов класса void Marsh::Inp() { cin.get(); cout << Rus("Название начального пункта маршрута:"); getline(cin, init_point, '\n'); cout << Rus("Название конечного пункта маршрута:"); getline(cin, term_point, '\n'); cout << Rus("Номер маршрута:"); cin >> num_mar; cout << endl << endl; }; //of Inp //процедура (метод класса) вывода данных элементов класса void Marsh::Out() { cout << Rus("Начальный пункт маршрута:") << init_point << endl; cout << Rus("Конечный пункт маршрута:") << term_point << endl; cout << Rus("Номер маршрута:"); if (num_mar <= 9) cout <<”00”; else If (num_mar <= 99) cout << “0”; cout << num_mar; cout << endl <<endl; }; // of Out |
![]() |
![]() |
![]() |
#2 |
Новичок
Джуниор
Регистрация: 21.09.2011
Сообщений: 2
|
![]()
//процедура (метод класса) вывода сообщения в файл данных с именем name
void Marsh::OutFile(int k, const char name []) { ofstream fout (name, ios::app); //описание файла для записи с именем name в режиме добавления fout << setw(2) << k << "."; fout << Rus("Начальный пункт маршрута:") << init_point << endl; fout << Rus("Конечный пункт маршрута:") << term_point << endl; fout << Rus("Номер маршрута:") ; if (num_mar <= 9) fout <<”00”; else If (num_mar <= 99) fout << “0”; fout << num_mar; fout << endl <<endl; fout << endl << endl; }; //of OutFile //перегружаемый оператор сравнения == bool Marsh: ![]() { return init_point == a.init_point && term_point == a.term_point && num_mar == a.num.mar; }; // of operator == // конструктор для инициализации (динамического массива) экземпляров spisok класса Marsh и его вывода Spisok::Spisok() { cout << Rus("Введите полное имя файла результата: "); cin.get(name,len).get(); cout << endl << endl; ofstream fout(name); //описание файла для записи с именем name cout << Rus("Введите количество маршрутов класса Marsh: "); cin >> n; cout << endl << endl; //Выделение памяти для n маршрутов (динамического массива ) экземпляров spisok класса Marsh spisok = new Marsh[n]; int i; //Ввод данных в динамический массив экземпляров spisok класса Marsh for(i = 0; i < n; i++) { cout << Rus("Маршрут") << i+1 << ":" << endl; spisok[i].Inp(); } // Вывод данных из динамического массива экземпляров spisok класса Marsh на консоль и в файл данных cout << endl << Rus("Список маршрутов:"); cout << endl << endl; fout << Rus ("Список маршрутов:"); fout << endl << endl; for(i=0; i<n; i++) { cout << setw(2) << i+1 << "."; spisok[i].Out(); spisok[i].OutFile(i+1, name); } }; // of Spisok // Деструктор (освобождение памяти для экземпляров spisok класса Marsh) ~Spisok:: Spisok() { delete[] spisok; cout << Rus("Освобождение памяти.Pазрушение объектов!!!"); cout << endl; }; //of ~Spisok //функция (метод класса) обработки данных класса Marsh и печать результата void Spisok::PrintResult() { ofstream fout(name, ios::app); //описание файла для записи с именем name в режиме добавления string route; //название маршрута для поиска cin.get(); cout << Rus("Введите название маршрута для поиска:"); getline(cin, route, '\n'); cout << endl << endl; fout << Rus("Введите название маршрута для поиска:") << route; fout << endl << endl; cout << Rus("Данные по маршрутам:"); cout << endl << endl; fout << Rus("Данные по маршрутам:"); fout << endl << endl; int k=0; boll tt=false; for(int i=0; i<n; i++) { if(spisok[i].Get Init_point () == route || spisok[i].Get Term_point() == route) { tt=true; k++; //вывод на консоль cout << setw(2) <<k << spisok[i].Out(); // вывод в файл данных spisok[i].OutFile(k, name); } } if(!tt) { cout << Rus("Таких маршрутов нет!!!"); fout << Rus("Таких маршрутов нет!!!"); } cout << endl << endl; //закрытие файла name записи данных fout. close(); cout << Rus("Результат смотри в файле:") << name; cout << endl << endl; }; // of Print Resulte #include"Marsh.h" //подключение модуля Marsh.h ////////////////////////////////////////// char bufRus[256]; char *Rus(const char *text) { CharToOem(text , bufRus); return bufRus; } ////////////////////////////////////////// void main() { //описание экземпляра route класса Spisok Spisok route; //вызов метода PrintResult() для экземпляра route класса Spisok route.Print Result(); } |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,821
|
![]()
какая ошибка?
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не могу дописать на С | pro100roma | Помощь студентам | 2 | 08.12.2010 20:32 |
Не могу дописать программу | IROKEZ | Общие вопросы C/C++ | 1 | 19.04.2010 19:41 |
не могу прогу дописать! | ATJ | Общие вопросы C/C++ | 0 | 18.04.2010 19:45 |
С++ не могу дописать | kolashik | Помощь студентам | 1 | 31.10.2009 17:40 |
Помогите дописать программу на Delphi 7 не могу понять что здесь не так | matrix8325 | Помощь студентам | 1 | 30.04.2009 23:34 |