#include <stdio.h>
#include <assert.h>
#define MAX 100
void LeSequencia( double S[], int n );
void ImprimeSequencia( double S[], int n );
int IndiceDoMenor( double S[], int i, int n );
void Troca( double S[], int i, int j );
int main()
{
double Seq[MAX];
int n;
int i, imenor;
scanf( "%d", &n );
assert( n <= MAX );
LeSequencia( Seq, n ); /* LeSequencia( &Seq[0], n ) */
for (i = 0; i < n; i++) {
imenor = IndiceDoMenor( Seq, i, n);
Troca( Seq, i, imenor );
}
ImprimeSequencia( Seq, n );
return 0;
}
void LeSequencia( double S[], int n ) {
int i;
for ( i = 0; i < n; i++)
scanf("%lf", &S[i]);
return;
}
void ImprimeSequencia( double S[], int n ) {
int i;
for ( i = 0; i < n; i++)
printf( "%7.3f ", S[i] );
printf( "\n" );
return;
}
/* devolve indice do menor elto no intervalo de i a n-1 */
int IndiceDoMenor( double S[], int i, int n ) {
int j, m;
m = i;
/* m eh o indice do menor elemento de S[i..j-1] */
for ( j = i+1; j < n; j++ )
if ( S[j] < S[m] )
m = j;
return m;
}
void Troca( double S[], int i, int j ) {
double aux;
aux = S[i];
S[i] = S[j];
S[j] = aux;
return;
}