if ( vector [ j ] -> getPopulation ( ) > vector [ j + 1 ] -> getPopulation ( ) ){
//Выполняем перестановку элементов массива
city* tmp = vector [ j ];
vector [ j ] = vector [ j + 1 ];
vector [ j + 1] = tmp;
}
break;
case 2:
//Организуем внещний цикл для прохода по массиву
for ( int i = 0; i < count - 1; i++)
//Организуем внутренний цикл для прохода по массиву
for ( int j = 0; j < count - 1; j++ )
//Если название текущей улицы БОЛЬШЕ названия следующей улицы
if ( strcmp ( vector [ j ] -> getName ( ), vector [ j + 1 ] -> getName ( ) ) > 0 ){
//Выполняем перестановку элементов массива
city* tmp = vector [ j ];
vector [ j ] = vector [ j + 1 ];
vector [ j + 1] = tmp;
}
break;
case 3:
//Организуем внещний цикл для прохода по массиву
for ( int i = 0; i < count - 1; i++)
//Организуем внутренний цикл для прохода по массиву
for ( int j = 0; j < count - 1; j++ )
//Если главная достопримечательность текущего города БОЛЬШЕ достопримечательности следующего города
if ( strcmp ( vector [ j ] -> getAttraction ( ), vector [ j + 1 ] -> getAttraction ( ) ) > 0 ){
//Выполняем перестановку элементов массива
city* tmp = vector [ j ];
vector [ j ] = vector [ j + 1 ];
vector [ j + 1] = tmp;
}
break;
}
system ( "cls" );
//Выводим сообщение об успешной сортировке массива
cout << "Sorted" << endl;
system ( "pause" );
showAll ( );
}
//Функция вывода групповых результатов
void variety::groupResult ( ){
//Инициализация вспомогательных переменных
float amount = 0.0;
unsigned int capital = 0, region = 0, district = 0, village = 0;
float minPopulation = vector [ 0 ] -> getPopulation ( );
float maxPopulation = vector [ 0 ] -> getPopulation ( );
//Проходя по всем элементам массива
for ( int i = 0; i < count; i++ ){
//Высчитываем сумму популяций городов
amount += vector [ i ] -> getPopulation ( );
//Ищем минимальную популяцию
if ( vector [ i ] -> getPopulation ( ) < minPopulation )
minPopulation = vector [ i ] -> getPopulation ( );
//Ищем максимальную протяженность улицы
if ( vector [ i ] -> getPopulation ( ) > maxPopulation )
maxPopulation = vector [ i ] -> getPopulation ( );
//Считаем количество столиц
if ( vector [ i ] -> getIntLevel ( ) == 1 )
capital++;
//Считаем количество областей
else if ( vector [ i ] -> getIntLevel ( ) == 2 )
region++;
//Считаем количество районов
else if ( vector [ i ] -> getIntLevel ( ) == 3 )
district++;
//Считаем количество больших деревень
else if ( vector [ i ] -> getIntLevel ( ) == 4 )
village++;
}
//Вывод различной информации по массиву данных
cout << "Total cities recorded in the balance: " << count << endl;
cout << "The total population of all cities: " << amount << endl;
cout << "The average population of all cities: " << amount / count << "thousand people" << endl;
cout << "The minimum population of the city: " << minPopulation << "thousand people" << endl;
cout << "The maximum population of the city: " << maxPopulation << "thousand people" << endl;
cout << "The number of capitals: " << capital << endl;
cout << "Number of regional centers: " << region << endl;
cout << "Number of regional centers: " << district << endl;
cout << "The number of large villages: " << village << endl;
system("pause");
}
//Инициализация деструктора
variety::~variety ( ){
//Для всех элементов массива
for ( int i = 0; i < NUMBER; i++)
//Выполнить удаление текущего элемента из памяти
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.