Помогите С Сортировкой Одномерного Массива

  • Автор темы Nexon007
  • Дата начала
N

Nexon007

Гость
#1
есть код,все считает отлично,только вылетает при сортировке,помогите разобраться.
код:
#include <iostream>

using namespace std;

void sort(float *m, int n, bool chet);
void main(){
int n_size;
cout << "Vvedite kolichestvo elementov: ";
cin >> n_size;
float *m = new float [n_size];

cout << "Vvedite elementi massiva:\r\n";
for(int i = 0; i < n_size; i++){
cin >> m;
}

float min = m[0];
float div = 1;
int tmp = 0;
for(int i = 0; i < n_size; i++){
if(m > 0) div *= m;
if(m < min){
min = m;
tmp = i;
}
}

float sum = 0;
for(int i = 0; i < tmp; i++){
sum += m;
}

cout << "Proizvedenie: " << div << endl << "Summa: " << sum << endl;

sort(m, n_size, true); //четные
sort(m, n_size, false); //нечетные
cout << "masiv: ";
for(int i = 0; i < n_size; i++)
cout << m << " ";

delete [] m;
}

void sort(float *m, int n, bool chet){
float a;
int i = chet? 1 : 0;

for(; i < n - 1; i+=2){
int imin = i;
for(int j = i; j < n; j+=2)
if(m[j] < m[imin]) imin = j;
a = m;
m = m[imin];
m[imin] = a;
}
cout << (char)cin.get();
cin.get();
return ;
}