Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.04.2014, 17:55   #1
Exkeeza
Новичок
Джуниор
 
Регистрация: 09.04.2014
Сообщений: 1
По умолчанию Конструирование класса (С++)

Здравствуйте уважаемые программисты.Вынужден просить у вас помощи потому,что сам в языке программирования очень туговат.Стараюсь разобраться,никак не получается.Предмет не основной,поэтому такая ситуация.Дано задание,нужно его реализовать.Прилагаю его в картинке ниже,очень надеюсь на вашу помощь и заранее благодарю за любые отклики
Изображения
Тип файла: jpg IMG_0803.jpg (124.4 Кб, 135 просмотров)
Exkeeza вне форума Ответить с цитированием
Старый 10.04.2014, 13:31   #2
Krok27
Форумчанин
 
Аватар для Krok27
 
Регистрация: 08.07.2010
Сообщений: 505
По умолчанию

class Train
{
private:
int _NumberTrain;
string _Station_of_destination;
double(тип_дата_время) _Travel_Time;
double(тип_деньги) _Price_Ticket;
public:
Train();
Train(int aNemberTrain, string& aStstionDestination, double aTravelTime, double aPriceTicket);
~Train();
Train (const Train& aTrain);
Train& operator = (const Train& aTrain) ;
int getNumberTrain() const;
void setNumberTrain(int aNumberTrain) ;

...........
остальные методы доступа к членам класса
и реализация на тебе.
};


А вообще было бы не плохо хоть язык указать. Телепаты ушли гадать.
Знающий не говорит, говорящий не знает (С) Лао Цзы
Krok27 вне форума Ответить с цитированием
Старый 10.04.2014, 14:06   #3
Glaciuse
Пользователь
 
Регистрация: 22.05.2011
Сообщений: 44
По умолчанию

То, что не хватает на тебе.
Train.h:
Код:
#pragma once
#include <string>

using namespace std;

class Train
{
public:
	//Конструктор без параметров
	Train()
	{
		__train_id = -1;
		__destination = "none";
		__travel_time = 0;
		__ticket_price = 0;
	}

	//Конструктор с параметрами
	Train(int train_id, string destination, unsigned int travel_time, unsigned int ticket_price)
	{
		__train_id = train_id;
		__destination = destination;
		__travel_time = travel_time;
		__ticket_price = ticket_price;
	}

	int get_train_id()
	{
		return __train_id;
	}

	string get_destination()
	{
		return __destination;
	}

	unsigned int get_travel_time()
	{
		return __travel_time;
	}

	unsigned int get_ticket_price()
	{
		return __ticket_price;
	}

private:
	int 		__train_id;	// Номер поезда
	string		__destination;	// Станция назначения
	unsigned int 	__travel_time;	// Вермя в пути
	unsigned int	__ticket_price;	// Цена билета
};
main.cpp:
Код:
#include <iostream>
#include <string>
#include <vector>
#include <string.h>
#include "Train.h"

using namespace std;

int main(int argc, char* argv[])
{
	string choice;

	//Вектор поездов. 
	//Cюда будут добавляться указатели на поезда
	vector<Train*> trains;

	do
	{
		cout << "Выберите действие:\n";
		cout << "1. Создать объект с помощью конструктора по умолчанию\n";
		cout << "2. Создать объект с помощью конструктора с параметрами\n";
		cout << "3. Отобразить имеющиеся поезда.\n";
		cout << "4. Удалить поезд\n";
		cout << "0. Выход\n\n";
		cout << "> ";

		cin >> choice;
		
		if(strcmp(choice.c_str(), "1") == 0)
		{
			trains.push_back(new Train());
			cout << "Новый поезд успешно добавлен!\n";
			continue;
		}
		if(strcmp(choice.c_str(), "2") == 0)
		{
			int 		temp_train_id;
			string		temp_destination;
			unsigned int 	temp_travel_time;
			unsigned int	temp_ticket_price;
			
			cout << "Введите номер поезда: ";
			cin >> temp_train_id;
			cout << "Введите пункт назначения: ";
			cin >> temp_destination;
			cout << "Введите время в пути: ";
			cin >> temp_travel_time;
			cout << "Введите цену билета: ";
			cin >> temp_ticket_price;

			trains.push_back(new Train(temp_train_id, temp_destination, temp_travel_time, temp_ticket_price));
			cout << "Новый поезд успешно добавлен!\n";
			continue;
		}

		if(strcmp(choice.c_str(), "3") == 0)
		{
			cout << "Имеющиеся поезда:\n";
			for(unsigned int i = 0 ; i < trains.size() ; i++)
			{
				cout << i + 1 << ". id: " << trains[i]->get_train_id() << "  ";
				cout << i + 1 << ". destination: " << trains[i]->get_destination() << "  ";
				cout << i + 1 << ". travel_time: " << trains[i]->get_travel_time() << "  ";
				cout << i + 1 << ". ticket_price: " << trains[i]->get_ticket_price() << "\n";
			}
			cout << "\n";
			continue;
		}

		if(strcmp(choice.c_str(), "4") == 0)
		{
			int train_id_to_del;
			cout << "Имеющиеся поезда:\n";
			for(unsigned int i = 0 ; i < trains.size() ; i++)
			{
				cout << i + 1 << ". id: " << trains[i]->get_train_id() << "  ";
				cout << i + 1 << ". destination: " << trains[i]->get_destination() << "  ";
				cout << i + 1 << ". travel_time: " << trains[i]->get_travel_time() << "  ";
				cout << i + 1 << ". ticket_price: " << trains[i]->get_ticket_price() << "\n";
			}
			cout << "\n";
			cout << "Введите порядковый номер поезда, который нужно удалить: ";
			cin >> train_id_to_del;

			delete trains[train_id_to_del - 1];
			trains.erase(trains.begin() + train_id_to_del - 1);
			cout << "Поезд успешно удален!\n";
		}

		if(strcmp(choice.c_str(), "0") == 0)
		{
			cout << "Пока!\n";
			break;
		}
	}while(true);
	return 0;
}
Glaciuse вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
конструирование баз данных Кирби Помощь студентам 10 17.07.2013 19:15
Конструирование enum class 220Volt Общие вопросы C/C++ 1 01.04.2013 06:11
Конструирование простейшего класса! ksushaboo Помощь студентам 0 04.10.2012 23:39
Конструирование ПО Ksy Свободное общение 1 12.05.2011 03:07
Геометрическое конструирование viskas2011 Помощь студентам 4 22.04.2011 10:04