|
|
|
© 1998 by Bobby Griggs.
// Program name: Bubble sort
// Purpose: To sort an array of integers in to ascending order.
// Win32 console application
#pragma hdrstop
#include < iostream.h >
#include < fstream.h >
#include < assert.h >
#include < iomanip.h >
#include < conio.h >
#define FILENAME "integers.dat"
#define MAX 25
void Read_from_file(ifstream &integers_file,int numbers[MAX]);
void Bubble_sort(int numbers[MAX]);
void Display_sorted_array(int numbers[MAX]);
void main()
{
ifstream integers_file;
int numbers[MAX];
Read_from_file(integers_file,numbers);
Bubble_sort(numbers);
Display_sorted_array(numbers);
return;
}
void Read_from_file(ifstream &integers_file,int numbers[MAX])
{
int count = 0;
integers_file.open(FILENAME);
assert(!integers_file.fail());
while ((!integers_file.eof()) && (count < MAX))
{
integers_file >> numbers[count];
count++;
}
return;
}
void Bubble_sort(int numbers[MAX])
{
int count1,count2,swap;
for (count1 = 0;count1 < MAX - 1;count1++)
for (count2 = count1 + 1;count2 < MAX;count2++)
{
if (numbers[count1] > numbers[count2])
{
swap = numbers[count1];
numbers[count1] = numbers[count2];
numbers[count2] = swap;
}
}
return;
}
void Display_sorted_array(int numbers[MAX])
{
int count;
cout << setiosflags(ios::right);
for (count = 0;count < MAX;count++)
{
cout << setw(2) << numbers[count] << " ";
if ((count + 1) % 5 == 0)
cout << endl << endl;
}
cout << endl << endl;
cout << "Press any key to continue ... " << endl;
getche();
return;
}
|