Autor Tema: Una función no puede tener retorno void Ejercicio CU00630B Java desde cero  (Leído 3424 veces)

MarckyMarck

  • Sin experiencia
  • *
  • Mensajes: 15
    • Ver Perfil
Hola, este es mi ejercicio CU00630B:

    public void DuracionCancion (int numeroCancion)/*función*/
    public void setDuracionCancion (float valorDuracionCancion)/*procedimiento*/
    public float getDuracionDisco ()/*función*/
    public void addCancion (String valorTitulo, float duracion)/*procedimiento*/

De antemano gracias por sus observaciones :)
« Última modificación: 03 de Septiembre 2015, 08:56 por Alex Rodríguez »

Lorenzo31

  • Avanzado
  • ****
  • APR2.COM
  • Mensajes: 381
    • Ver Perfil
Re:Ejercicio CU00630B Java desde cero
« Respuesta #1 en: 02 de Septiembre 2015, 11:42 »
Buenas Marck,

Pequeñas deficiencias,

En la 1, dices que es una función, sin embargo retornas un void (vacío), si es una función que nos retorna?

El resto todo correcto :)

Un saludo.

MarckyMarck

  • Sin experiencia
  • *
  • Mensajes: 15
    • Ver Perfil
Re:Una función no puede tener retorno void Ejercicio CU00630B Java desde cero
« Respuesta #2 en: 04 de Septiembre 2015, 00:28 »
Entonces debe quedar así? Con float porque float es el tipo de datos que voy a recibir, cierto?

public float DuracionCancion (int numeroCancion)/*función*/

Una duda. Por qué cuando se busca obtener un dato sin ingresar ningún dato al programa escribimos"public float getDuracionDisco ()"

y cuando vamos a ingresar un dato ponemos "public void DuracionCancion (int numeroCancion)"?

Gracias y saludos! :)

MarckyMarck

  • Sin experiencia
  • *
  • Mensajes: 15
    • Ver Perfil
Re:Una función no puede tener retorno void Ejercicio CU00630B Java desde cero
« Respuesta #3 en: 04 de Septiembre 2015, 00:41 »


Creo que ya lo entendí. El primer dato en la signatura (ignorando el "public") es el tipo de datos que nos va a retornar el método, ¿cierto?. Escribimos void cuando sólo es tipo procedimiento, ya que no nos va a retornar ningún valor.

En el caso de este ejercicio:

Obtener la duración de una canción expresada como un número decimal en minutos (por ejemplo podría ser 3,22 minutos) recibiendo como dato el número de canción dentro del disco.

Como lo realicé, es un método que sería función y procedimiento a la vez, pero según lo que he leído en este foro se recomendaría en este caso hacer un método para obtener la duración de la canción, y otro método para ingresar el número de canción. ¿Estoy en lo correcto? Muchas gracias!

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Una función no puede tener retorno void Ejercicio CU00630B Java desde cero
« Respuesta #4 en: 05 de Septiembre 2015, 14:02 »
Hola MarckyMarck supón este ejemplo

public float dimeDuracionCancion ( int valorNumeroCancion )

Es una función ya que se indica que el tipo devuelto es float. Si en vez de un tipo se indica void es un procedimiento.

El nombre de la función en este caso es dimeDuracionCancion

La función requiere recibir como dato un número entero (int) al que se ha denominado valorNumeroCancion.

En resumen, se trata de una función que recibe el número de la canción y devolverá un valor decimal (un float) que es la duración de la canción.

Mira https://www.aprenderaprogramar.com/foros/index.php?topic=956 para aclarar las ideas

Saludos

 

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".