C
/* bubble.cppGanze Zahlen in einen Vektor einlesen,
aufsteigend sortieren und wieder ausgeben */
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <stdio.h>
#define MAX 100 // Maximale Anzahl
long zahl [MAX];
int main()
{
int i, anz; // Index, Anzahl
std::cout << "\n Ganze Zahlen sortieren\n"
<< std::endl;
// Zahlen einlesen
std::cout << "Bis zu 100 ganze Zahlen eingeben\n"
<< "(Abbruch mit einem Buchstaben):" << std::endl;
for( i = 0; i < MAX && std::cin >> zahl[i]; ++i)
;
anz = i;
// Zahlen sortieren
bool sortiert = false; // Noch nicht sortiert.
long hilf; // Zum Tauschen.
int ende = anz; // Ende eines Durchlaufs.
while( !sortiert) //Solange noch nicht sortiert
{
sortiert = true;
--ende;
for( i = 0; i < ende; ++i) // Benachbarte Zahlen vergleichen
{
if( zahl[i] > zahl[i+1])
{
sortiert = false;
hilf = zahl[i];
zahl[i] = zahl[i+1];
zahl[i+1] = hilf;
}
}
}
// Zahlen ausgeben
std::cout << "Die sortierten Zahlen:\n" << std::endl;
for( i = 0; i < anz; ++i)
std::cout << std::setw(10) << zahl[i];
std::cout << std::endl;
system("PAUSE");
return 0;
}
Alles anzeigen
Da ich das noch auf meiner alten Festplatte gefunden habe dachte ich mir das ich es mal hier veröffentliche.
Das ist der Bubblesort Algorithmus der die Zahlen vom kleinsten bis zum größten sortiert. Da im Code alles kommentiert ist sollte es da keine großen Probleme geben es zu verstehen.