PDA

Visualizza versione completa : dev c++ ordinamento bubble sort


LastRider
23-01-2008, 18.40.27
ho copiato questo programma da un libro , ma dopo aver inserito il numero di valori del vettore e i valori nel vettore non restitiusce pił niente come si bloccasse! potete aiutarmi?

// Programma ordinamento bubble sort (gorgogliamento).

#include <iostream>
using namespace std;
#include<stdlib.h>
//Prototipi di funzioni

void input_vettore(int &n,float v[]);
void output_vettore(int k,float vett[]);
void bubble_sort(float vet[],int riemp);
void swap(float &x,float &y);

int main ()
{
int riemp;
float v[100];

input_vettore(riemp,v);
bubble_sort(v,riemp);
output_vettore(riemp,v);

cout<<"\n\n";
system("PAUSE");
return 0;
}

// Funzione di input

void input_vettore(int &n,float v[])
{
int i;
cout<<"Assegna valore int al numero N di elementi del vettore \t";
cin>> n;

cout<<" Assegna "<<n<<" valori float al vettore \n";

for (i=0;i<n;i++)
cin>>v[i];

}

// Funzione di output

void output_vettore(int k,float vett[])

{
int i;
cout<<"\n Il Riempimento del vettore ordinato e\'"<<k;
cout<<"\n I valori degli elementi del vettore sono :\n";

for(i=0;i<k;i++)
cout<<vett[i]<<"\t";
}

// Funzione di Scambio

void swap(float &x,float &y)
{
float temp;
temp=x;
x=y;
y=temp;
}

//Funzione ordinamento

void bubble_sort(float vet[],int riemp)
{
int i,j;
bool scambiato;

i=0;
scambiato=true;

while(i<riemp-1 && scambiato)
{
scambiato=false;
for (j=riemp-1;j>i;j--)
{
if(vet[j]<vet[j-1]);
scambiato=true;
}

}
i++;
}

LoryOne
23-01-2008, 20.20.10
//Funzione ordinamento

void bubble_sort(float vet[],int riemp){
int i,j;
bool scambiato;

i=0;
scambiato=true;

while(i<riemp-1 && scambiato){
scambiato=false;
for (j=riemp-1;j>i;j--){
if(vet[j]<vet[j-1]){
swap(vet[j-1],vet[j]);
scambiato=true;
}
}
}
i++;
}