Autor
|
Tema: Estructura repititiva while (Leído 8,070 veces)
|
rub'n
Desconectado
Mensajes: 1.217
(e -> λ("live now")); tatuar -> λ("α");
|
Hola Elektro, Al link que posteaste lo entendi que tengo que escribir Float en mayusculas. Al primer float lo puedo escribir en mayusculas. Pero al segundo no porque me larga el siguiente error: Tipo desajuste: No se puede convertir de int a Float. Gracias y saludos Hola rub'n, De alguna manera no puedo correr tu programa. Es por eso que tuve que modificar el codigo para que tuviera la posibilidad de correrlo. Porque cuando le daba en el boton para correr me corria otro proyecto. import java.util.Locale; import java.util.Scanner;
public class TestForo { public static void main(String[] ar) { private static final Scanner TECLADO = new Scanner(System.in); public TestForo() { int cantidad; TECLADO.useLocale(Locale.US); // Habilita la lectura del . System.out.print("Escriba la cantidad de alturas a ingresar: "); cantidad = TECLADO.nextInt(); int x = 1; float altura, promedio; float alturas = 0; while (x <= cantidad) { System.out.print("Altura: "); altura = TECLADO.nextFloat(); // alturas = alturas + altura; x++; //añadiendo contador con postIncremento } promedio = alturas / cantidad; System.out.print("La cantidad promedio de alturas de personas es: " + promedio); } } }
Y me larga los errores que se pueden ver en la imagen: Gracias y saludos Pues desde luego que te dará error hasta el final de los tiempos, sera que puedes mirar el código de nuevo ? lo mas impresionante de todo es esto tienes el contructor dentro del método entry point mas popular que existe main
|
|
|
En línea
|
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
|
|
|
TickTack
Desconectado
Mensajes: 434
CipherX
|
Hola rub'n, lo mas impresionante de todo es esto Por qué es esto lo mas impresionante de todo? tienes el contructor dentro del método entry point mas popular que existe main
Qué es el metodo entry point? Soy nuevo en Java. Recién Lo estoy aprendiendo. Gracias y saludos
|
|
|
En línea
|
|
|
|
rub'n
Desconectado
Mensajes: 1.217
(e -> λ("live now")); tatuar -> λ("α");
|
Hola rub'n,
Por qué es esto lo mas impresionante de todo?
Qué es el metodo entry point? Soy nuevo en Java. Recién Lo estoy aprendiendo.
Gracias y saludos
En serio estas dando cursos de C# :s , algo esta pasando que no sabes lo básico, tenemos que aprender primero bien las cosas para luego enseñar.
El es el método main principal, entrypoint por lo tanto la JVM es lo primero que llamara o invocara Si te fijas en el código anterior pues si corre, el contructor esta fuera del método main, no dentro como lo colocaste tu. algo muy pero muy Básico
|
|
« Última modificación: 7 Septiembre 2018, 15:32 pm por rub'n »
|
En línea
|
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
Qué es el metodo entry point? Soy nuevo en Java. Recién Lo estoy aprendiendo. No tiene que ver con Java, todo programa executable tiene una función de punto de entrada (entry-point), incluyendo executables de .NET/C#... Con respecto al constructor, esto tampoco tiene que ver con Java, el constructor de una clase se debe declarar a nivel de clase, no en el interior del bloque de un método (sea cual sea este). Un ejemplo en C#: Imaginate que en Visual Studio creas un nuevo proyecto de C#, una plantilla por defecto de aplicación de consola, bien, la IDE lo primero que hace es mostrarte la clase principal ( Program) con el método Main declarado. Las aplicaciones con interfaz gráfica de .NET también tienen este método, pero está "oculto" en la IDE.
Por qué es esto lo mas impresionante de todo?
Si en tu firma de usuario manifiestas que impartes cursos de C#, lenguaje con el que se puede generar executables de Windows, lo normal es esperar que al menos conozcas la estructura de dicho tipo de executable (por estructura no me refiero a las especificaciones del formato executable ni la cabecera PE), y también los conceptos básicos de la programación orientada a objetos (como una clase y los miembros que la componen, entre ellos un contructor de clase) cuya implementación generalmente no se ve alterada al aplicarlo en un lenguaje o en otro distinto, vamos, que con entender como se hacen las cosas en un lenguaje OOP, es mucho más facil hacerlo en otro, o entender la sintáctica y semántica del resto de lenguajes OOP, de hecho yo no se nada de Java, pero entiendo lo básico al leer una unidad de código por que he aprendido a hacer lo mismo en .NET. No pretendo entrometerme en los asuntos/negocios de nadie, pero poniendo un ejemplo algo similar al del entry-point, hay un método que todo executable de Windows con interfaz gráfica tiene: el método de ventana (window procedure, o acrónimo convencional de Microsoft: WndProc), bien, ¿si un alumno de C# te pregunta que le expliques lo que es eso del método de ventana, como funciona, y como usarlo, que narices le dirías?, nada, por que no sabrás las respuestas. Solo lo comento para que puedas entender los motivos por el cual todo esto pueda sorprendernos un poco al venir de alguien que da cursos de programación, de hecho sorprende bastante, incluso podría llegar a resultar molesto u ofensivo... sobre todo hacia profresores que ejerzan de profesión. Saludos!
|
|
« Última modificación: 9 Septiembre 2018, 17:47 pm por Eleкtro »
|
En línea
|
|
|
|
TickTack
Desconectado
Mensajes: 434
CipherX
|
Vaya... me han destrozado en los comentarios. Hola rub'n, En serio estas dando cursos de C# :s , algo esta pasando que no sabes lo básico, tenemos que aprender primero bien las cosas para luego enseñar.
Que tiene que ver Java con C#? Gracias por tu código. Me funciono. Gracias y saludos Hola Elektro, No tiene que ver con Java, todo programa executable tiene una función de punto de entrada (entry-point), incluyendo executables de .NET/C#...
Yo no sabía que todo programa executable tiene una función de punto de entrada. Es más: Ni siquiera sabía lo que era punto de entrada. Ahora si me dices que eso tiene que ver con main yo te diré: "Ahhh si. Ahora entiendo!!". cuya implementación generalmente no se ve alterada al aplicarlo en un lenguaje o en otro distinto, vamos, que con entender como se hacen las cosas en un lenguaje OOP, es mucho más facil hacerlo en otro, o entender la sintáctica y semántica del resto de lenguajes OOP
Pero de donde voy a saber yo eso? Si para mi, como dije, Java ero algo nuevo para mi. No me lo propuse a aprendermelo porque quizas sea similar a C#. Ahora que se que tienen cosas parecidas estos lenguajes quiero hacer comparaciones entre esos dos lenguajes antes de preguntar sobre Java. Pero Java seguramente como el español y el portugues no se podra comparar siempre con C#. hay un método que todo executable de Windows con interfaz gráfica tiene: el método de ventana (window procedure, o acrónimo convencional de Microsoft: WndProc), bien, ¿si un alumno de C# te pregunta que le expliques lo que es eso del método de ventana, como funciona, y como usarlo, que narices le dirías?, nada, por que no sabrás las respuestas.
Como es comprensible, no se puede saberlo todo. Lo básico se puede saber, por supuesto. Si un alumno me preguntara eso que mencionaste en el ejemplo le podría decir que mañana podríamos analizar eso. Y para mañana estaré informado sobre ese método. Pero si insistes en que debería saberlo casi todo entonces dime, por favor, como hacerlo y por donde empezar. Saludos
|
|
« Última modificación: 11 Septiembre 2018, 12:20 pm por TickTack »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
cuya implementación generalmente no se ve alterada al aplicarlo en un lenguaje o en otro distinto, vamos, que con entender como se hacen las cosas en un lenguaje OOP, es mucho más facil hacerlo en otro, o entender la sintáctica y semántica del resto de lenguajes OOP Pero de donde voy a saber yo eso?
De C#, logicamente, lenguaje (multiparadigma) con paradigma orientado aobjetos en el que das cursos, y esto implica que hipoteticamente aprendiste el concepto de 'Constructor de clase', entre otras muchas cosas más.
Pero Java seguramente como el español y el portugues no se podra comparar siempre con C#.
Depende de a que tipo de comparación te refieras. El significado de constructor de clase no cambia por que sea C# o Java.
window procedure Como es comprensible, no se puede saberlo todo. Lo básico se puede saber, por supuesto. En realidad era un ejemplo de conocimiento básico que se espera de alguien que pretenda dar cursos: la mensajería de ventanas.
si insistes en que debería saberlo casi todo entonces dime, por favor, como hacerlo y por donde empezar.
No insisto en nada, tampoco juzgo (aunque me parezca mal que alquien sea pintor solamente por saber como coger un pincel entre los dedos), solo doy mi opinión sobre el tema, en el comentario anterior solo intentaba aclararte, en profundidad, por que al usuario @rub'n le parecía "impresionante" lo que estabas diciendo. De todas formas aquí tienes unos enlaces de interés sobre los temas que he tratado, documentación sacada de MSDN y docs.mcirosoft.com como no podría ser de otra forma... Te recomiendo esas lecturas si quieres aprender algo nuevo que no sabías. Logicamente para aprender el uso de miembros específicos de la librería de clases de Java pues la MSDN de nada te va a servir (para eso tienes: https://docs.oracle.com/javase/7/docs/api/ ), pero para aprender programación para Windows y/o conceptos de programación comunes de la OOP pues considero que MSDN /docs.microsoft.com es muy buena fuente de aprendizaje, sino la mejor, siempre y cuando también lo acompañes de un poco de práctica (ensayo y error), y quizás video-cursos profesionales de pluralsight.com, por ejemplo. Saludos!
|
|
« Última modificación: 11 Septiembre 2018, 15:18 pm por Eleкtro »
|
En línea
|
|
|
|
TickTack
Desconectado
Mensajes: 434
CipherX
|
Hola Elektro, De C#, logicamente, lenguaje (multiparadigma) con paradigma orientado aobjetos en el que das cursos, y esto implica que hipoteticamente aprendiste el concepto de 'Constructor de clase', entre otras muchas cosas más.
Pero que tiene que ver eso con Java? Yo no sabía que Java también es un lenguaje de programación orientado en objetos. En realidad era un ejemplo de conocimiento básico que se espera de alguien que pretenda dar cursos: la mensajería de ventanas.
Sin mencionar que en un lenguaje de programación uno nunca termina de aprender, algo mas básico, para mi, que saber acerca de mensajerías de ventanas, son por ejemplo estructura de datos tipo vector, vectores paralelos, estructura de datos tipo matriz, herencia, estructuras dinámicas: listas tipo pila, estructuras dinámicas: listas tipo cola, sobrecarga de operadores, indizadores, clases genericas, métodos de extensión, etc. Saludos!
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Desconectado
Mensajes: 9.878
|
Pero que tiene que ver eso con Java? Yo no sabía que Java también es un lenguaje de programación orientado en objetos. Maldita sea, ¿pero eres consciente de la tremenda burrada que estás diciendo?, ¿de verdad se supone que deben explicártelo?, ¡mira y disecciona el código que has publicado para formular una duda en este hilo!. A un programador normal y corriente (léase: humilde) se le respondería y se le aclararía a este tipo de dudas amablemente, pero es que si para empezar tú eres el que tiene la arrogancia de dar cursos de POO sin tansiquiera comprender que es la POO, ni tampoco reconocer el paradigma cuando lo tienes delante de tus ojos y lo practicas, por que has usado Java para aplicar varios conceptos de POO, y además formulas preguntas y también problemas básicos de compilación cuyas respuestas y soluciones por lógica deberías conocer (¡o al menos intuir!) por ti mismo por el simple hecho de manifestar publicamente tu condición de profesor particular, pues... entiédeme, no puedo evitar darte este tipo de respuesta algo prepotente a la pregunta que me acabas de dirigir, lo siento, pero me supera lo que veo. Para colmo, me respondes a un comentario mio para decirme que para ti es más importante aprender sobre herencia de clases (POO), tipos genéricos (programación genérica), objetos (POO!!), y etc, etc, etc. De verdad, cuanto sin sentido encuentro en tus palabras, ¿de que te sirve aprender todo eso de forma individual si no entiendes y aprendes la relación con la POO?, ahí hay un agujero bien grande de incomprensión, y es como no aprender nada al final. Bueno, créeme si te digo que personálmente no me apetece seguir esta discusión, por que sé que no eres troll, ni tampoco me caes mal, eres un buen usuario y el trato que hemos tenido hasta el momento de esta discusión siempre fue cordial y agradable y por eso no quiero meterme con las cosas que dices, por que no quiero que eso cambie por culpa de esto, pero me empieza a resultar inevitable dirigirme hacia ti de esta forma si me haces alusiones en las que cada respuesta que me ofreces supera a la anterior en el sentido de ser demasiado alucinante, o "impresionante" como alguien dijo anteriormente, viniendo de alguien que da cursos, lo siento. Lo voy a dejar estar por mi parte, ya si alguien quiere explicarte en profundidad donde fallas, que lo haga, y si tu eres capaz de reconocer los fallos y dar la razón, pues adelante. Un saludo.
|
|
« Última modificación: 14 Septiembre 2018, 17:18 pm por Eleкtro »
|
En línea
|
|
|
|
rub'n
Desconectado
Mensajes: 1.217
(e -> λ("live now")); tatuar -> λ("α");
|
Hola,
@TickTack el tipo de dudas que dices tener con java de desconocimiento, también podrían ser las mismas que podrías tener con C# u otro lenguaje, se hace extraño que tu mismo no notes(Eso me parece), el problema no es el lenguaje sino, tu cuando te sientas en el teclado, cuando "NOS" sentamos frente a un teclado, me apunto también ahí, para que veas que no solamente eres tu quien le pasa, porque yo no soy experto en java, quisiera yo.
He igual con cualquier lenguaje debes tener disciplina mental para aprender, y ensayar muchas veces, esas cosas de que no sabias esto o lo otro o que C# etc, esas excusas no están nada bien para alguien que esta dando cursos, pareciera que deberías tomar mas practica para dar cursos.
Ya @Eleкtro y @NEBIRE te han escrito muchas cosas importantisimas, que no a cualquiera se le enseña, así que aprovéchalo, yo espero que les estés agradecido al menos
Otra cosa que también note para que veas que no somos tontos aquí, vi que copiaste el código que te puse, que apenas estaba con el constructor agregado, o sea, casi ni con cambios y pegaste o algo así como si nada, sin ver bien que estabas haciendo eso no es una buena practica en lo absoluto super BIZARRO Y a la misma vez pues, si ya el programa te corre, pues bien, de paso al menossss ya tenias código hecho y bien por esa, que esa es la idea, que tengas código al menos y no que te hagan la tarea.
|
|
« Última modificación: 14 Septiembre 2018, 19:00 pm por rub'n »
|
En línea
|
If you don't have time to read, you don't have the time (or the tools) to write, Simple as that. Stephen king
|
|
|
TickTack
Desconectado
Mensajes: 434
CipherX
|
Hola Elektro, Con respecto a la humildad: Yo no veo que en algún momento me haya creido superiores a ustedes. Y a diferencia de mi vieja personalidad no insulte ni amenaze a nadie. Mas bien quiero tratarlos a todos con respeto y dignidad. Cosa que no veo en ustedes. Y por esta razon y dado que a este foro lo lee mucha gente (como bien me escribieron en PM), me veo obligado a defender mi reputación. y además formulas preguntas y también problemas básicos de compilación cuyas respuestas y soluciones por lógica deberías conocer (¡o al menos intuir!) por ti mismo por el simple hecho de manifestar publicamente tu condición de profesor particular
De algún modo creo que no nos entendemos o que yo no sepa expresarme bien: Si a mi se me antoja aprender portugues simplemente porque me cae bien, de donde voy a saber yo que mis problemas para formar una oración los puedo solucionar empezando por saber que algunas estructuras gramaticales de los dos idiomas son similares? Y eso sin haber escuchado nunca el portugues. ¿de que te sirve aprender todo eso de forma individual si no entiendes y aprendes la relación con la POO?, ahí hay un agujero bien grande de incomprensión, y es como no aprender nada al final.
Si ves mi primeros posts con este nick (porque con el nick Noporfavor hize muchos mas) hice muchas preguntas acerca de C#. Ahora bien: Saber todo eso que ahora se me hizo posible a que solucione mis problemas sin la ayuda de ustedes. Y viendo el solucionar problemas por su propia cuenta como un exito... no se puede llegar a la conclusión de que tal persona es capaz de enseñar a otras? De todos modos ahora pueden estar felices de que retire mi firma. Otra cosa: la amenaza no hacia falta. Saludos! Hola rub'n, esas cosas de que no sabias esto o lo otro o que C# etc, esas excusas no están nada bien para alguien que esta dando cursos, pareciera que deberías tomar mas practica para dar cursos.
Es una excusa que un profesor de español que quiere aprender portugues diga que no sabia como se formulaba una determinada oración en portugues? Ya @Eleкtro y @NEBIRE te han escrito muchas cosas importantisimas, que no a cualquiera se le enseña, así que aprovéchalo, yo espero que les estés agradecido al menos
Si con "cosas importantisimas" te refieres a la programación, no viste lo que escribí al final de mis comentarios, a saber: Gracias y saludos? Otra cosa que también note para que veas que no somos tontos aquí, vi que copiaste el código que te puse, que apenas estaba con el constructor agregado, o sea, casi ni con cambios y pegaste o algo así como si nada, sin ver bien que estabas haciendo
No se exactamente de que estas hablando. Solo se que había un codigo tuyo que tuve que cambiarlo porque no podia ejecutarlo, cosa que solucione. Y no veo nada de bizarro ahí. Y a la misma vez pues, si ya el programa te corre, pues bien, de paso al menossss ya tenias código hecho y bien por esa, que esa es la idea, que tengas código al menos y no que te hagan la tarea.
Muchas gracias por el codigo. Saludos!
|
|
|
En línea
|
|
|
|
|
|