Avatar billede siul Nybegynder
14. april 2002 - 12:28 Der er 1 løsning

indexed bubble sort funktion

Hej allesammen,

Jeg skal aendre nedenstaaende prgram og lave en indexed bubble sort funktion.
Det skal aendres ved hjaelp af foelgende data:

void indexedbubblesort (float valuearray [], int indexarray[], int n)
valuearray - indeholder input til array
index- indeholder indices til value array
int n- indeholder antal elementer i arrays

Er der en der kan se hvordan de kan aendres og opfylde ovenstaaende betingelser?
Paa forhaand tak!

#include "iostream.h"
#include "time.h"
#include "stdlib.h"
#include "stdio.h"

// function prototypes
void bubbleSort(float valuearray[], int n) ;

void main()
{
    // randomize by time
    srand( (unsigned)time( NULL ) );
   
    // vars used
    int i, n = 10;
    float *array;

    // alloc vars
    array = new float[n];

    // test alloc
    if( array == 0 )
    {
        cout << "alloc failed" << endl;
        return;
    }

    // generate number between 0.0 and 100.0
    for( i = 0; i<n; i++ )
    {
        array[i] = (rand()%1000)*0.1f;
    }

    // cout unsorted
    cout << "Unsorted numbers:" << endl<< endl;
    for( i = 0; i<n; i++ )
    {
        cout << array[i] << " ";
    }
    //function call
    bubbleSort(array, n);

    // cout sorted
    cout <<endl<<endl<< "Sorted numbers:" <<endl<<endl;
    for( i = 0; i<n; i++ )
    {
        cout << array[i] << " ";
    }

    cout << endl;
}

void bubbleSort(float valuearray[], int n)
{
    bool exchanges;
    do {
      exchanges = false;  // assume no exchanges
      for (int i=0; i<n-1; i++)
      {
          if (valuearray[i] > valuearray[i+1])
          {
            float temp = valuearray[i];
            valuearray[i] = valuearray[i+1];
            valuearray[i+1] = temp;
            exchanges = true;  // after exchange, must look again
          }
      }
    } while (exchanges);
}
Avatar billede siul Nybegynder
01. juni 2002 - 13:03 #1
rr
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester