package obtenirparaulesatzar;
import java.util.Arrays;
import java.util.HashSet;
import java.util.LinkedHashSet;
import java.util.Random;
public class ObtenirParaulesAtzar {
public static void main(String[] args) {
ObtenirParaulesAtzar programa = new ObtenirParaulesAtzar ();
programa.diccionario();
}
void diccionario(){
int Totalpalabras = Total();
String[] diccionario = diccionarioFinal();
String[] palabrasNuevas = RandomPalabras(diccionario , Totalpalabras);
probar (palabrasNuevas);
}
public String[] diccionarioFinal(){
System.out.println("Programa que devuelve palabras al azar ") ;
String[] diccionario = {
"a","abadessa","abandonat","abarnegat","abat","abatussat","abissal","abnegat",
"abrainat","abruptesa","abscissa","absolut","abstreure","acabar","acampar",
"accent","acer","acerat","acid","aclamar","aclarir","aclarit","acrata",
"acrobacia","adagi","adaptar","adeptes","adequar","adequat","adeu","adherir",
"admetre","adonar","adormir","adscriure","adust","advers","advocat","afanar",
"afany","afavorir","afavorit","afebleix","afeblit","afectat","afectiu","afectuos",
"afegir","afer","afilar","afinar","afi","afligir","afligit","aflorar","afluent",
"afluixar","agafar","agalla","agata","agencia","agrair","agrait","agrari","agre",
"agregar","agror","aguila","ah","ahir","aigua","aiguat","aire","aixada","aixafar",
"aixecar","aixeta","aixella","aixi","aixo","aixovar","ajeure","ajornar",
"ajudar","ajupir","ajustar","ala","albada","albi","ale","alenar",
"alevi","alga","algid","algu","alie","alla","alli","allo","alma","alpi",
"altivesa","amagar","amanida","amanir","ambre","amorf","ample","ampliar",
"anar","anca","angoixa","anis","ansa","apagar","apagat","apercebre",
"apostata","arbre","aristòcrata","atreure","audiofon","autocrata",
"baixa","bali","bandol","barata","barbar","barrera","bassal","bata",
"benveure","benviure","bestraure","bobila","bossarrera","bravata","bufor",
"cabre","caixa","calabre","calibre","canelobre","cantata","carabassal","carrera",
"casal","caure","causa","celebre","censal","centaure","cercavila","circumscriure",
"clamar","clar","cloure","codol","colossal","columnata","comensal","commoure",
"complaure","concloure","condol","contramarc","contrapès","contreure",
"convilatà","conviure","corbata","correra","coure","creure","cuixa","culata",
"data","decaure","de","decebre","deixa","descloure","descriure","desfilar",
"deslliurat","desviure","detreure","deure","distreure","egagropila","embeure",
"emfasi","empes","entreploure","entreveure","errata","es","escandol","escarlata",
"escata","escaure","espes","excloure","extasi","extreure","fe","febre","fetge",
"fila","fluixa","fragata","frenopata","funebre","gaiata","gebre","glabre",
"gramofon","heretgia","hipotesi","homofon","horabaixa","i","idol","incloure",
"inscriure","jeure","licorera","lleure","llibre","lliure","lugubre","magnetofon",
"malveure","manobre","marbre","membre","microfon","minotaure","moure","nombre",
"o","olla","onda","onada","or","orca","orfebre","pagar","pagat","paper","paraula",
"pebre","piga","plaure","plorar","ploure","pobre","postdata","prescriure","preveure",
"promoure","prorrompre","proscriure","public","pulcre","pupitre","que","queixa","readmetre",
"recloure","regata","reixa","remoure","retreure","rivetaire","romandre","sabata","sabre",
"safata","salubre","serenata","sobreviure","sostreure","subscriure","tabac","tabal","tacar",
"tacat","tacit","tacte","tactica","tactil","talar","tall","talla","tallar","talos",
"talp","tambe","tampo","tanca","tanc","tapar","tapat","tapia","tarda","tasca",
"tassa","taula","tauro","taxa","tebia","tecla","telefon","timbre","vaca","vacu",
"vaga","vago","vall","vampir","vandal","vanova","vapor","vaquer","variar",
"variat","vector","vedell","vegada","vei","veinal","veinat","vel","velada",
"veler","vell","vena","vencer","vençut","venda","vendre","venial","venjar",
"venjat","venosa","vent","ventar","ventre","verb","verd","veri","vers","veto",
"veu","viure","vorera"
};
return diccionario;
}
public int Total(){
int Totalpalabras=30;
return Totalpalabras;
}
public String[] RandomPalabras(String[] diccionario , int Totalpalabras){
Random random = new Random();
String[] palabrasNuevas = new String[10];
int total = diccionario.length;
int indice = 0;
int longitudCaracteres = 0;
int longitudPalabraActual = 0;
int intentos = 0;
int i = 0;
boolean insertar;
while(longitudCaracteres < 30 && intentos <= 40){
int numero = random.nextInt(total);
longitudPalabraActual = diccionario[numero].length();
if (longitudCaracteres < 30 && longitudPalabraActual + longitudCaracteres <= 30) {insertar = true;} else {insertar=false;}
if (insertar) {
palabrasNuevas[indice] = diccionario[numero];
System.out.println ("Añadida: "+diccionario[numero] + " con una longitud "+longitudPalabraActual);
longitudCaracteres += diccionario[numero].length();
indice++;
} else {System.out.println ("Rechazada: "+diccionario[numero]); }
System.out.println ("Cuenta: "+longitudCaracteres);
intentos++;
}
return palabrasNuevas;
}
public void probar(String [] palabrasNuevas){
System.out.println() ;
System.out.println("---------------------------------------------------");
System.out.println("El resultado es: ");
System.out.println(Arrays.toString(palabrasNuevas));
System.out.println("---------------------------------------------------");
System.out.println();
}
}