1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
const int MAX_NUMBERS = 25;
// function protoypes go here
int main()
{
int x[MAX_NUMBERS];
string file1, file2;
getUserInput(file1, file2);
downloadArray(file1,x);
bubbleSort(x);
outputArray(file1, file2,x);
system("pause");
return 0;
}
void getUserInput( string &inputfile, string &outputfile )
{
cout << "Enter input file name: ";
cin >> inputfile;
cout << endl;
cout << "Enter output file name: ";
cin >> outputfile;
}
void downloadArray ( string &inputfile, int array[MAX_NUMBERS])
{
ifstream input;
input.open(inputfile.c_str() );
while(input >> array[MAX_NUMBERS])
{
cout << array[MAX_NUMBERS] << " ";
}
input.close();
}
int bubbleSort(int array[MAX_NUMBERS])
{
int i, j;
swapNumbers(array);
for(i = 0; i <= (MAX_NUMBERS - 1); i++ )
{
for(j = i+1; j <= MAX_NUMBERS; j++ )
{
int temp;
if(array[i] > array[j])
{
temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
for(i = 0; i <= MAX_NUMBERS; i++ )
{
cout << array[i] << endl;
}
return i;
}
int swapNumbers(int array[MAX_NUMBERS])
{
int i;
for(i = 0; i <= MAX_NUMBERS; i++ )
{
cout << "Enter a number: ";
cin >> array[i];
}
return i;
}
void outputArray( string &inputfile, string &outputfile, int array[MAX_NUMBERS] )
{
ifstream input;
ofstream output;
int index,y;
input.open(inputfile.c_str() );
output.open(outputfile.c_str() );
index = 0;
while(input >> array[index++])
{
}
int arrayLength = index - 1;
for (int i = 0; i < arrayLength; ++i)
{
output << bubbleSort(array[i]) << " ";
if( y >= 10)
{
output << "/n" << endl;
y = 0;
}
y++;
}
output.close();
}
|