sortowanie babelkowe tekstu poprawa programu

0

Hejka, prosze o poprawienie blędow w programie albo chociaż ich pokazanie i wytlumaczenie w najprostszy mozliwy logiczny sposob,
zadanie: napisz program ktory posortuje tekst bąbelkowo wprowadzony przez uzytkownika z klawiatury
using namespace std;
void sort_babel( int tab[], string n )
{
int dl = n.size();
for( int i = 1; i < dl - 1; i++ )
{
for( int j = dl - 1; j >= 1; j-- )
{
if( tab[ j ] < tab[ j - 1 ] )
{
char pom;
pom = tab[ j - 1 ];
tab[ j - 1 ] = tab[ j ];
tab[ j ] = pom;
}
}
}
}
int main()
{
string n;

cout << "podaj ciag znakow";
cin >> n;
sort_babel( n );
cout << "posortowany zbior" << n << endl;

system( "pause" );
return 0;

}


błąd: http://scr.hu/3j5r/pf2yf
0

Nie przekazujesz funkcji tego czego ona oczekuje

0

W takim razie dwa pytania czy sama funkcja jest napisana poprawnie i co mam zmienic w mainie zeby dzialalo?

0

Nie, nie jest poprawna spójrz chociażby na warunki for( int i = 1; i < dl - 1; i++ ) ( pomyśl czy dl na pewno jest tu poprawne ? )
Poza tym, spartanPAGE napisał Ci co robisz źle.

0

Nie wiem o co chodzi petla bedzie sie wykonywac do ostatniego elementu dl

0

Nie, nie będzie.

#include <iostream>
#include <string>
int main()
{
	std::string x = "JAnusz Biznesu";
	size_t s_len = x.length();
	std::cout << "len:" << s_len << '\n';
	for(size_t i=1;i<s_len-1;++i)
		std::cout << x[i];
}

 
0
int main()
{
		size_t s_len = x.length();
	 
}

 
</quote>

Wytlumaczysz ta linie ? Jestem poczatkujacy i nie bardzo lapie o co tu chodzi to dziala jak x.size ()?

0

Tak, metoda lenght() działa jak size(), natomiast typ size_t to po prostu unsigned int.

1 użytkowników online, w tym zalogowanych: 0, gości: 1