Mai intai trebuie sa te autentifici.
Cod sursa(job #1868197)
Utilizator | Data | 4 februarie 2017 17:54:18 | |
---|---|---|---|
Problema | Sortare prin comparare | Scor | 20 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.98 kb |
#include <cstdio>
using namespace std;
FILE *g=fopen("algsort.out","w");
struct vector
{
unsigned n;
unsigned v[100];
};
vector citire_vector(char nume_fisier[20])
{
vector a;
int i;
FILE *f;
f=fopen(nume_fisier,"r");
fscanf(f,"%d",&a.n);
for(i=0;i<a.n;i++)
fscanf(f,"%d",&a.v[i]);
fclose(f);
return a;
}
void afisare_vector(vector a)
{
unsigned i;
for(i=0;i<a.n;i++)
fprintf(g,"%d ",a.v[i]);
fprintf(g,"\n");
fclose(g);
}
vector sort_prin_comp(vector a)
{
int i,j,pozmin;
double aux;
for(i=0;i<a.n-1;i++)
{
pozmin=i;
for(j=i+1;j<a.n;j++)
if(a.v[j]<a.v[pozmin])
pozmin=j;
aux=a.v[pozmin];
a.v[pozmin]=a.v[i];
a.v[i]=aux;
}
return a;
}
int main()
{
vector a;
a=citire_vector("algsort.in");
a=sort_prin_comp(a);
afisare_vector(a);
return 0;
}