Estoy tratando de probar algo para mi clase de estadística AP donde necesito seleccionar al azar cinco palabras de la letra de una canción y calcular la longitud promedio de esas cadenas. Esto es lo que tengo hasta ahora: (Hay 297 letras pero no quiero escribirlas todas si no funciona)
String n001 = "I"; String n002 = "look"; String n003 = "and"; String n004 = "stare"; String n005 = "so"; Random bob = new Random(); String num_1 = String.format("%03d", bob.nextInt(298)); System.out.println(num_1); String num_2 = String.format("%03d", bob.nextInt(298)); System.out.println(num_2); String num_3 = String.format("%03d", bob.nextInt(298)); System.out.println(num_3); String num_4 = String.format("%03d", bob.nextInt(298)); System.out.println(num_4); String num_5 = String.format("%03d", bob.nextInt(298)); System.out.println(num_5); String num1 = "n" + num_1;Lo que no puedo entender es cómo tomar el valor en num1 para seleccionar una de las cadenas con el mismo nombre. Necesito hacer eso para los cinco números aleatorios seleccionados.
Estoy seguro de que hay una manera de hacer esto, pero es mi primer año en una clase de CS y parece que no puedo encontrar la respuesta en ninguna parte.
Aquí hay una sugerencia.
List<String> = new ArrayList<>() )Collections.shuffle para mezclar la lista.Hacer lo anterior garantizará que no repetirá ninguna palabra a menos que haya duplicados en la lista.
Averiguar cómo promediar las longitudes depende de usted.
package RandomLyric; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class RandomLyric { public static void main(String[] args) { List<String>bob = new ArrayList<>(); bob.add("I"); bob.add("look"); bob.add("and"); bob.add("stare"); bob.add("so"); bob.add("deep"); bob.add("in"); bob.add("your"); bob.add("eyes"); bob.add("I"); bob.add("touch"); bob.add("on"); bob.add("you"); bob.add("more"); bob.add("and"); bob.add("more"); bob.add("every"); bob.add("time"); bob.add("when"); bob.add("you"); bob.add("leave"); bob.add("I'm"); bob.add("begging"); bob.add("you"); bob.add("not"); bob.add("to"); bob.add("go"); bob.add("call"); bob.add("your"); bob.add("two"); bob.add("or"); bob.add("three"); bob.add("times"); bob.add("in"); bob.add("a"); bob.add("row"); bob.add("Such"); bob.add("a"); bob.add("funny"); bob.add("thing"); bob.add("for"); bob.add("me"); bob.add("to"); bob.add("try"); bob.add("to"); bob.add("explain"); bob.add("how"); bob.add("I'm"); bob.add("feeling"); Collections.shuffle(bob); java.util.Iterator<String> itr=bob.iterator(); String num1_ = itr.next(); double num1 = num1_.length(); System.out.printf( num1_ + ": %.0f",+ num1); System.out.println(""); String num2_ = itr.next(); double num2 = num2_.length(); System.out.printf( num2_ + ": %.0f",+ num2); System.out.println(""); String num3_ = itr.next(); double num3 = num1_.length(); System.out.printf( num3_ + ": %.0f",+ num3); System.out.println(""); String num4_ = itr.next(); double num4 = num4_.length(); System.out.printf( num4_ + ": %.0f",+ num4); System.out.println(""); String num5_ = itr.next(); double num5 = num5_.length(); System.out.printf( num5_ + ": %.0f",+ num5); System.out.println(""); double avg = (num1 + num2 + num3 + num4 + num5)/5; System.out.println("The length of the five randomly selected strings is: " + avg); } }¡¡¡¡Gracias!!!! ¡Lo tengo todo junto ahora!