OOP Sotierer (array)

avenger2099

Mitglied
Bs: Win 2k
Virsual C++ V 6.
C++ Konsolen Anwendung
OPP

HY ich Programmier gerade in OPP einen Zahlen sotierer.

// 10 Zahlen in einem array sortieren
Code:
#include<iostream>

using namespace std;

int i;
class sortierer
{
private:
	int zahlen[10];

public:
	sortierer();
	int Zahlen_einlesen();
	void zahlen_auslesen();
	void zahlen_sortieren();
};


sortierer::sortierer()
		  {
			  	  
			  zahlen[i]=0;
		  }

/*sortierer::sortierer(int zahlen[10])
{
	int j=0;
	do
	{
		zahlen[i]=0;
		i++;
	}while(i<10);
}*/

int sortierer::Zahlen_einlesen()
{
	int i=0;
	do
	{
		cout<<"Bitte geben sie die "<<i+1<<". zahl ein:\t";cin>>zahlen[i];
		i++;

}while(i<10);
	return zahlen[i];
}

void sortierer::zahlen_sortieren()
{
    for(i=0;i<10;i++)
	{
	
		

	}
	

}


void sortierer::zahlen_auslesen()
{
	int k=0;
	cout<<"Die "<<k+1<<". Zahl:\t"<<zahlen[k];
	k++;
}

void main()
{
	sortierer sort;
	cout<<"10 Zahlen Sortierer\n";
	sort.Zahlen_einlesen();
	sort.zahlen_sortieren();
}

Problem: Ich weiß nicht wie ich die Zahlen von Array sotieren soll.
 
Code:
for(int i=0;i<anz;i++)
{
     for(int j=1;j<anz;j++)
     {
            if(zahl[j]<zahl[i])               //je nach Kriterium
            {
                   int temp=zahl[i];
                   zahl[i]=zahl[j];
                   zahl[j]=temp;
            }
     }
}

müsste so gewesen sein...habs lange nicht mehr benutzt
 
ach und noch eine Anmerkung, weils mir gerade auffällt...warum nimmst du das int i was du vor der Klasse definierst nicht direkt in die Klasse rein, als ind anz für die Anzahl der Elemente?so könnte der Benutzer sogar angeben, wie viele Elemente er haben möchte...wenn du das ganze dann noch dynamisch machst und eine add() oder insert()funktion zum anhängen machst hast du doch eine super Klasse geschaffen...
 
Ich würde anstelle des int-Array als Member einen Standard-Vektor verwenden (std::vector<int>). Siehe Headerfile <vector>.

Zum Sortieren eignet sich std::sort() aus dem Headerfile <algorithm>. Das kann man auch mit Arrays verwenden:

Code:
#include <algorithm>

// ...

int zahlen[10];

// irgendwelche Zahlen reinschreiben...

std::sort( zahlen, zahlen + 10 ); // fettich!
 
Kachelator hat gesagt.:
Ich würde anstelle des int-Array als Member einen Standard-Vektor verwenden (std::vector<int>). Siehe Headerfile <vector>.

Zum Sortieren eignet sich std::sort() aus dem Headerfile <algorithm>. Das kann man auch mit Arrays verwenden:

Code:
#include <algorithm>

// ...

int zahlen[10];

// irgendwelche Zahlen reinschreiben...

std::sort( zahlen, zahlen + 10 ); // fettich!


cool man der fuzt voll geil danke....
 
Zurück