Jump to content

Ayuda con Java


Kyasser
 Share

Recommended Posts

Buenas,

 

Estoy haciendo un curso de programación de sistemas Android con la Universidad Politécnica de Madrid y Master-D y lo primero que nos mandan a hacer es una unidad de Java, empezamos dando pseudocódigo y diagramas de flujo y eso lo entiendo, pero cuando llegamos a Java, me mandan a hacer ejercicios y hay cosas que no entiendo.

 

Tengo profesores, pero tienen horario de Lunes a Jueves, dependiendo del día y la hora y para poder seguir avanzando este fin de semana quiero saber si alguno de aquí puede ayudarme con este ejercicio.

 

Les pondré un ejercicio, la solución hecha por el profesor / los profesores y las preguntas sobre lo que no entiendo ya que he dado la teoría pero no he visto que me hayan dicho por qué se pone tal cosa, por lo cual, al hacer un ejercicio no lo pongo.

 

Aquí la imagen del ejercicio (viene en pdf, pero les dejo una imagen):

 

jDMIjUT.png

 

Aquí la imagen de la solución (viene en pdf, pero les dejo una imagen):

 

zod0CFv.png

 

Lo que no entiendo es el uso de int, double, etc... también se me explicaba en la teoría cómo se convertía de una unidad a otra, pero no me quedó claro con el ejemplo y, sobretodo, lo que más me cuesta es comenzar a hacer el ejercicio, ya que no sé cómo empezar.

 

Lo de public static void main(String[] args) {, me han dado, si no recuerdo mal, la cláusula " main ", también lo de " public, private, etc... " pero no recuerdo haber visto nada de " static void ", ni tampoco sé qué es " (String[] args) ".

 

Para mí es una putada porque quiero hacer los ejercicios pero me veo obligado a repasar de nuevo los contenidos del curso y aún así no despejo las dudas.

 

P.D: System.out.printIn es para mostrar en pantalla lo que vamos a poner a continuación, pero no sé si existe System.out.printOut y en caso de que exista, para qué se utiliza (?)

 

Un saludo y gracias por tu tiempo.

Link to comment
Share on other sites

Hola.

 

No se de Java, pero se parece a C++.

Existen diferentes data-types en programación, cada uno puede almacenar una cantidad diferente de memoria.

 

int es un numero entero (0 - 2M)

double es un numero decimal, al igual que float, pero con la diferencia de que, tal como su nombre indica, puede almacenar el doble. Mientras float puede almacenar un numero decimal de 7 dígitos, double lo hace con 15.

 

La palabra static se puede utilizar para una variable, una función, o una clase. Una vez que declares una variable estática, esta permanecerá en la memoria y aunque la inicies varias veces, su valor no cambiará, por que ya la iniciaste una vez. Ejemplo:

 

 

for (int i = 0; i < 5; i++){
  static int c = 0;
  c++;
}

 

En este for-loop, dentro de el se declara la variable estática c (que es un integer) y se le suma siempre 1. Cuando i == 0, se guardará esa variable en la memoria y se le sumará 1, quedará c == 1. El caso es que cuando i > 0, esta variable seguirá teniendo el mismo valor, y no se reiniciará. No sé si me explico bien.

 

Sobre los void. Son un tipo de función que no devuelven nada. Mientras un int tiene que devolver un int, y un long un long, void no tiene ningún tipo de return.

 

String[] args, son los argumentos que la función main() puede tomar, todos ellos guardados en un array de tipo string.

Si utilizas esto, tu función main() podrá tener todos los argumentos que quieras, y los llamas mediante el array args y el index del argumento. Como por ejemplo:

 

 

main("Primer Argumento", "Segundo Argumento");
 
----
int main(String[] args){
  System.out.printIn(args[0]); // Primer Argumento
  System.out.printin(args[1]); // Segundo Argumento
  return 0;
}

 

La ultima pregunta no te la puedo responder porque no se, pero creo que con una búsqueda rápida encontraras tu respuesta.

Link to comment
Share on other sites

En java hay dos tipos de datos primitivos(se encriben en minusculas) y objetos (La primera letra se escribe en mayuscula)

 

Tipos Primitivos:

  • byte
  • short
  • int
  • long
  • float
  • double
  • char
  • boolean

Tipos Objetos:

  • String (cadenas)
  • ArrayList
  • TreeSet
  • Scaner
  • Arrays
  • Objetos creados por el usuario
  • ...

Public,Private,Protected son modificadores de acceso que determina quién puede acceder a las clases o propiedades y métodos de una clase.

 

public static void main(String[] args) define una función, o método, pública y estática denominada main(). La palabra reservada static se utiliza para definir las propiedades o los métodos que pertenecen a una clase. El tipo de dato void se usa para indicar a la función, o método, que no devuelva parámetros. Todo programa en Java necesita una función, o método, denominada main() para establecer el inicio del programa. El contenido de dicha función, String[] args, define un vector de cadenas de caracteres donde recogerá los argumentos pasados en la ejecución de tu programa.

 

Si a un método,clase o constructor no le añades nigun modificador de acceso lo contara como public

 

System.out.println es tal cual dices en la postdata te muestra la salida por la consola

 

Pd: Si quieres aprenderte bien toda la teoria te recomiendo que te bajes el siguiente libro en pdf: Programación orientada a objetos con Java usando BlueJ

 

Link to comment
Share on other sites

En java hay dos tipos de datos primitivos(se encriben en minusculas) y objetos (La primera letra se escribe en mayuscula)

 

Tipos Primitivos:

  • byte
  • short
  • int
  • long
  • float
  • double
  • char
  • boolean

Tipos Objetos:

  • String (cadenas)
  • ArrayList
  • TreeSet
  • Scaner
  • Arrays
  • Objetos creados por el usuario
  • ...

Public,Private,Protected son modificadores de acceso que determina quién puede acceder a las clases o propiedades y métodos de una clase.

 

public static void main(String[] args) define una función, o método, pública y estática denominada main(). La palabra reservada static se utiliza para definir las propiedades o los métodos que pertenecen a una clase. El tipo de dato void se usa para indicar a la función, o método, que no devuelva parámetros. Todo programa en Java necesita una función, o método, denominada main() para establecer el inicio del programa. El contenido de dicha función, String[] args, define un vector de cadenas de caracteres donde recogerá los argumentos pasados en la ejecución de tu programa.

 

Si a un método,clase o constructor no le añades nigun modificador de acceso lo contara como public

 

System.out.println es tal cual dices en la postdata te muestra la salida por la consola

 

Pd: Si quieres aprenderte bien toda la teoria te recomiendo que te bajes el siguiente libro en pdf: Programación orientada a objetos con Java usando BlueJ

 

 

 

Gracias Élite.

 

La teoría la llevo al dedillo y justo la siguiente unidad que debo dar es la de programación orientada a objetos, pero el problema son los ejercicios de este tipo, siempre me trabo al empezar y me salto cosas, hay otras cosas que si no me equivoco no me han dicho por qué se ponen y no pueden pretender que escriba un " programa " de este tipo si no sé por qué debo poner eso, ni para qué sirve eso.

 

Gracias de nuevo a ambos por toda la explicación, toca repasar y echarle ganas.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...