Sort wyrazów
1. Alfabetyczne sortowanie wyrazów
1. Alfabetyczne sortowanie wyrazów
#include<iostream>
#include<string>
using namespace std;
void zamien(string slowa[], int i){
string slowo;
for(int w=0;w<i;w++){
slowo=slowa[w];
int rozmiar=slowo.size();
for(int k=0;k<=rozmiar;k++){
std::string literka=slowo.substr(k,1);
char litera=literka[0];
int asci=int(litera);
for(int j=65;j<=90;j++){
if(asci==j){
litera=char(asci+32);
slowo[k]=litera;
slowa[w]=slowo;
}
}
}
}
}
void sort_slow(string slowa[],int i)
{
string pom;
int w=0;
for(int j=0;j<i;j++){
for(int k=0;k<i-1;k++){
std::string wyraz(slowa[k].substr(w,1));
char litera=wyraz[0];
int asci=int(litera);
std::string wyraz2(slowa[k+1].substr(w,1));
char litera2=wyraz2[0];
int asci2=int(litera2);
if(asci>asci2){
pom=slowa[k];
slowa[k]=slowa[k+1];
slowa[k+1]=pom;
}
if(slowa[k]==slowa[k+1]){
continue;
}
if(asci==asci2){
w++;
k--;
continue;
}
w=0;
}
}
cout<<"Posortowane wyrazy: ";
for(int f=0;f<i;f++){
cout<<slowa[f]<<" ";
}
cout<<endl;
}
void slowa()
{
string slowa[100];
int i=0;
cout<<"Aby zakonczyc wpisywanie nacisnij 1"<<endl<<endl;
cout<<"Podaj slowa: "<<endl;
while(1){
cin>>slowa[i];
if(slowa[i]=="1")break;
else{i++; continue;}
}
zamien(slowa,i);
sort_slow(slowa,i);
}
int main()
{
slowa();
cin.ignore();
getchar();
return 0;
}
