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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.05.2014, 14:37   #1
referent
Пользователь
 
Регистрация: 31.01.2012
Сообщений: 49
По умолчанию C++ структуры данных

Дали задание, красноречивее которого я не встречал:
Цитата:
Для 10 сотрудников отдела: выполнить сортировку по убыванию номеров телефонов
Как это сделать? О_о
referent вне форума Ответить с цитированием
Старый 10.05.2014, 14:46   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Легко:
http://www.programmersforum.ru/showthread.php?t=117063
http://www.programmersforum.ru/showthread.php?t=68535
http://www.programmersforum.ru/showthread.php?t=244749
http://www.programmersforum.ru/showthread.php?t=248314
Это только парочка из многочисленных примеров.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 10.05.2014, 15:26   #3
referent
Пользователь
 
Регистрация: 31.01.2012
Сообщений: 49
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Легко:
Код:
#define N 10

#include <iostream>
#include <ctime>
#include <string>
#include <ctime>
#include <vector>
#include <algorithm>

using namespace std;

struct NOTE {
	string surname;
	string name;
	int phone;
	bool compare_by_number (const NOTE& a) const{
		return phone < a.phone;
	}
};

int main()
{
	srand(time(0));
	vector<NOTE> workers;
	for (int i = 0; i < N; i++) {
		workers.push_back(NOTE());
		workers[i].name = to_string(i) + "name";
		workers[i].surname = to_string(i) + "surname";
		workers[i].phone = rand() % 10000000 + rand() % 800000 + 10000;
		cout << workers[i].phone << endl;
	}

	std::sort(workers.begin(), workers.end(), NOTE().compare_by_number);

	for (int i = 0; i < N; i++) {
		cout << "Worker №" << i << " name: " << workers[i].name
			<< " surname: " << workers[i].surname << " phone: " 
			<< workers[i].phone << endl;
	}

	system("pause");
	return 0;
}
Выдает ошибки:
Код:
Warning 1   warning C4244: 'argument' : conversion from 'time_t' to 'unsigned int', possible loss of data   e:\my documents\dropbox\studying\учёба\3 курс\системное программирование\контрольная\task5\task5\task5.cpp  23  1   Task5
Error   2   error C3867: 'NOTE::compare_by_number': function call missing argument list; use '&NOTE::compare_by_number' to create a pointer to member   e:\my documents\dropbox\studying\учёба\3 курс\системное программирование\контрольная\task5\task5\task5.cpp  33  1   Task5
Error   3   error C2780: 'void std::sort(_RanIt,_RanIt)' : expects 2 arguments - 3 provided e:\my documents\dropbox\studying\учёба\3 курс\системное программирование\контрольная\task5\task5\task5.cpp  33  1   Task5
referent вне форума Ответить с цитированием
Старый 10.05.2014, 15:38   #4
referent
Пользователь
 
Регистрация: 31.01.2012
Сообщений: 49
По умолчанию

Код:
#define N 10

#include <iostream>
#include <ctime>
#include <string>
#include <ctime>
#include <vector>
#include <algorithm>

using namespace std;

struct NOTE {
	string surname;
	string name;
	int phone;
	bool operator () (const NOTE& a, const NOTE &b){
		return a.phone < b.phone;
	}
};

int main()
{
	srand(time(0));
	vector<NOTE> workers;
	for (int i = 0; i < N; i++) {
		workers.push_back(NOTE());
		workers[i].name = "Name" + to_string(i);
		workers[i].surname = "Surname" + to_string(i);
		workers[i].phone = rand() % 10000000 + rand() % 800000 + 10000;
		//cout << workers[i].phone << endl;
	}

	std::sort(workers.begin(), workers.end(), NOTE());

	for (int i = 0; i < N; i++) {
		cout << "Worker #" << i + 1 << "  name:  " << workers[i].name
			<< "  surname:  " << workers[i].surname << "  phone:  "
			<< workers[i].phone << endl;
	}

	system("pause");
	return 0;
}
ВОТ ТАК.
referent вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Динамические структуры данных, списковые структуры (надо разобраться что делает программа) _4Alex4_ Помощь студентам 1 14.11.2012 07:39
Структуры данных LimPIK49 Паскаль, Turbo Pascal, PascalABC.NET 6 17.03.2012 00:07
Структуры данных alex-soft Паскаль, Turbo Pascal, PascalABC.NET 0 17.01.2012 19:10
Структуры данных Shadow94 Общие вопросы C/C++ 8 22.04.2011 11:50
Структуры данных LeNus'Ka Помощь студентам 4 23.11.2010 17:43