61 lines
903 B
C++
61 lines
903 B
C++
#include "wordproc.h"
|
|
|
|
int indexOf(vector<int> tab, int el){
|
|
for( int i = 0 ; i < tab.size() ; i++ )
|
|
if( tab[i] == el ) return i;
|
|
|
|
return -1;
|
|
}
|
|
|
|
|
|
string toUpperCase(string in){
|
|
// Valeur de sortie
|
|
string out(in);
|
|
|
|
for( int i = 0 ; i < in.length() ; i++ ){
|
|
char c = in.at(i);
|
|
|
|
if( c >= 'a' && c <= 'z' )
|
|
out[i] = (char) (c-'a'+'A');
|
|
}
|
|
|
|
|
|
return out;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
string shuffle(string in){
|
|
// Contiendra les index
|
|
vector<int> indexes;
|
|
// Contiendra les valeurs
|
|
string out;
|
|
|
|
/* [1] On prends une lettre tant qu'il en manque
|
|
=========================================================*/
|
|
srand(time(0));
|
|
int index(0);
|
|
|
|
while( indexes.size() < in.length() ){
|
|
|
|
// On prends un indice aleatoire
|
|
index = rand() % in.length();
|
|
|
|
// Si index non utilise, on le reference
|
|
if( indexOf(indexes, index) == -1 ){
|
|
indexes.push_back( index );
|
|
out += in[index];
|
|
}
|
|
|
|
}
|
|
|
|
return out;
|
|
}
|
|
|
|
|
|
|