Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - System.out.println(User);

Páginas: [1]
1
Hola. Actualmente estoy usando el compilador DrJava a la hora de programar en este lenguaje. Ya me habían dicho que no es el mejor de entre todas las opciones disponibles, pero al profesor le gusta, y prefiere que lo usemos en la mayor medida de lo posible.

Sin embargo, no sé por qué, no me deja importar ciertas librerías. Una de ellas es java.util.Arrays.

Me aparece el siguiente mensaje en el compilador: Error: The import java.util.Arrays cannot be resolved.

Creo que tengo la versión más reciente del compilador DrJava, así como del JDK. Preguntar si alguien sabría dónde podría estar el problema. En caso de que no funcionase, si me podríais recomendar algún otro compilador. Gracias de antemano. Un saludo.

2
Muy buenas. El otro día se me pidió un ejercicio, en el que debía realizar un método que devolviese el número más pequeño dentro de un array, llamando a dicha función desde el bloque main y pudiendo emplear la función Math.min. Además, tenía que hacerlo mediante recursión de cola (tail recursion).

Entrego a la profesora dicho código:

Código: [Seleccionar]
static int minArrayRecursiva1 (int[] arr)
{
   return minArrayAux1 (arr, 0);
}
 
static int minArrayAux1 (int[] arr, int ind)
{
   if (ind == arr.length - 1)
   {
      return arr[ind];
   }
   else
   {
      return Math.min (arr[ind], minArrayAux1 (arr, ind + 1));
   }
}

Pero, mi sorpresa fue cuando me dijo que el código era correcto, pero la recursión empleada era sin cola. Y me enseña su versión del código:

Código: [Seleccionar]
static int minArrayRecursiva2 (int[] arr)
{
   return minArrayAux2 (arr, 1, arr[0]);
}
 
static int minArrayAux2 (int[] arr, int ind, int min)
{
   if (ind == arr.length)
   {
      return min;
   }
   else
   {
      return minArrayAux2 (arr, ind + 1, Math.min (min, arr[ind]));
   }
}

Dado esto, claramente no he comprendido muy bien el concepto de recursión de cola y sin cola. Me lo explicaron con el "clásico" ejemplo de calcular el factorial de un número, pero aplicado a este método, no lo veo muy claro.
Yo tenía entendido que una recursión es de cola si se emplea un método auxiliar o mediante 'wrapping', para que la última llamada del método "principal" sea a sí misma.

Agradecería si alguien me pudiese aclarar este concepto y su aplicación.
¡Gracias!

Un saludo  :)

3
Comunidad / Presentación
« en: 06 de Noviembre 2020, 23:02 »
¡Hola!

Soy una de las innumerables personas a las que la informática y la programación ha ido "atrapando en sus encantos". Debido a ello, soy un estudiante novel en este ámbito, pero haciéndolo con mucho afán e ilusión.
Espero aprender mucho de vosotros, y ojalá algún día, cuando adquiera más nociones al respecto, poder ayudar igualmente a otros.

Saludos.

P.D.: Hasta mi nombre de usuario es un guiño a Java :-)

Páginas: [1]

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".