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.


Mensajes - César Krall

Páginas: 1 ... 40 41 42 43 44 [45] 46 47 48 49 50 ... 68
881
Hola, como primer paso haz una copia de seguridad de los archivos personales de tu computador por si tuvieras algún problema poder recuperarlos. Tal y como indicas que tienes los directorios tienes instalado java 7 y java 8. Lo más normal es que te quedes con java 8 y desinstales java 7. Para desinstalar vete a panel de control,  programas, desinstalar un programa, elige java se 7 update 60 y pulsa desinstalar. No elimines nada relacionado con java 8. Una vez desinstalado java 7, reinicia el computador.

Una vez reiniciado sigue las instrucciones hasta llegar a la variable path y establece lo siguiente:


Nombre de la variable: Path
Valor de la variable: OT%\System32\WindowsPowerShell\v1.0\;%JAVA_HOME%\bin

Es decir, sitúate al final del contenido que tuvieras en la variable Path (comprueba que estés al final y que no borras nada, simplemente añadir al final de lo que hubiera ;%JAVA_HOME%\bin)

Una vez hayas hecho esto, sigue los pasos del curso. Saludos,

882
Aprender a programar desde cero / Re:EJERCICIO CU00658B
« en: 06 de Julio 2014, 23:21 »
Has captado la idea, ahora mucho mejor  ;)

883
Gracias por tus comentarios, moderar los foros es un trabajo un tanto sufrido y está bien sonreir y recibir halagos de vez en cuando  8)

Aquí coincidimos un grupo variado de personas, pero casi todos tenemos en común que nos gusta la programación y no sabemos hasta donde llegaremos.

No estoy de acuerdo con "Qué te voy a decir, que tú no sepas". Yo posiblemente tenga más tiempo en esto que tú, pero sigo estudiando y aprendiendo, entre otras cosas se aprende revisando código hecho por otras personas y valorándolo y discutiendo posibles alternativas. Siempre se aprende algo...

884
Aprender a programar desde cero / Re:EJERCICIO CU00658B
« en: 06 de Julio 2014, 16:38 »
Hola, el programa está bien planteado y cumple el objetivo propuesto. Pero puedo plantearte algo que es mejorable: al ver el código he visto una cierta proliferación de variables y me he preguntado si eran realmente necesarias tantas variables (además con unos nombres no demasiado claros).

He tardado unos minutos en replantear el código eliminando las siguientes variables:    cero1, uno1 , numCaracter1, cero2, uno2, numCaracter2.

Para prescindir de estas variables simplemente me he apoyado en que el contador de un bucle puede ser utilizado dentro del bucle para obtener valores relacionados con él. Por ejemplo el contador i del bucle va tomando valores 0, 1, 2, 3, ... por tanto no me hace falta una variable para ir llevando la cuenta 0, 1, 2, 3, ....  ya que puedo usar el propio contador del bucle.

Además el contador del bucle puede usarse para llevar otras cuentas. Por ejemplo si en el bucle quiero contar 1, 2, 3, 4... puedo usar (i+1) en cada pasada del bucle.

Te animo a que replantees el código eliminando esas variables, de esa forma tendrás un código más limpio y mejor diseñado (y te servirá para tenerlo en cuenta en el código que generes en el futuro).

Saludos


885
Hola Toni, una vez más te felicito pues se ve un gran trabajo y progreso en el código y en el diseño del código.

Voy a dejar aquí el link al código anterior para que otras personas puedan comparar un diseño y otro: https://www.aprenderaprogramar.com/foros/index.php?topic=998.0

Creo que te puedes dar por satisfecho, por el momento. Muchas personas con un buen nivel de programación cometen errores graves en el diseño del código por haber supuesto que era algo poco importante, pero es algo muy importante.

Aquí te dejo mis comentarios y cosas que veo mejorables no queriéndote decir que haya nada malo en el código planteado, sino para que tengas una opinión que te sirva para enfocar y mejorar tu aprendizaje como programador.


COMENTARIOS POR CLASES

ManejadorDeVocales: estás usando la invocación de métodos desde otros métodos, lo cual es indicador de que vas empezando a tener cierta soltura en el manejo de la programación. Aquí sí diría que has hecho un buen diseño de los métodos cuentaLetras() como método especializado en un proceso de "cálculo", mientras que estadisticaLetras sería un método especializado en presentar resultados.


EntradaDeTeclado: nada que comentar.


ComparadorLetraALetra:

has definido la clase con atributos. Otra opción hubiera sido definirla sin atributos, de modo que actuara como clase "manejadora" de información externa. En ocasiones nos interesará que una clase tenga atributos, y en otras ocasiones no.

El método resultadoDeLaComparacion es un método poco cohesivo: esto es una debilidad en el código que has planteado. Un método normalmente no realiza procesos como mostrar mensajes por pantalla y al mismo tiempo comparaciones, implementación de bucles, etc. Si un método se encarga de todo, estás incurriendo en el mismo defecto que usar el método main para meter ahí todo el código. Igual que cada clase se especializa en algo, cada método también debe especializarse en algo (principio de cohesión).

Es más "limpio" definir un método que se encargue de realizar algo concreto como la comparación entre dos letras y para mostrar la información llama a otro método que es el encargado de mostrar la información. Es decir, no mezclar cálculos con presentación de los resultados de los cálculos por pantalla. Se pueden usar tantos métodos como sea necesario y cada método debe tener una tarea clara y definida.


Test2Texto: creo que has captado bien la idea de lo que debe ser un método main en un programa. El main debe ser quien organiza y reparte juego, pero el peso del programa lo llevan los objetos. Todavía le veo un exceso de peso al main, pero se nota la clara mejoría.

Respecto a la ejecución del programa lo veo todo correcto. A modo de sugerencia, dado que estás considerando los espacios, te recomendaría que en vez de poner Total = xx letras pusieras Total = xx caracteres, ya que es más común hablar del carácter espacio que de la letra espacio.

Saludos,

886
Aprender a programar desde cero / Re:Curso de java básico
« en: 04 de Julio 2014, 16:41 »
Coincido contigo...

887
Puedes intentar obtener coeficientes así:

selecciona los datos, por ejemplo de aquí tomaríamos los datos (sólo los numéricos)

NAMINO   
x                    f(x)
14,4929   1933781
25,1152   2302609
37,5177   2662270
51,784   3047270
68,0168   3439220
86,1872   3834070
106,4145   4266705
128,6559   4663158


Supongamos que los datos van de la celda B4 a C11

Escribe ahora en una celda (por ejemplo en G4):

=ESTIMACION.LINEAL(C4:C11;B4:B11^{1;2;3;4};1;1)


Donde C4:C11 son los valores de f(x)

B4:B11 son los valores de x

El símbolo "^" es el que dice a la función que vamos a hacer un ajuste polinómico. Entre corchetes "{}" se dicen los grados que

se van a ajustar. En este caso, el polinomio contiene coeficientes para el segundo grado, primer grado y término independiente.

{1;2;3;4} indica que vamos a ajustar 4 grados

1;1 indica que se tome en cuenta el término independiente y cálculo de errores

Ahora sitúate sobre la celda G4, donde habrá aparecido el valor -0,0081372 que corresponde al coeficiente de x^4 de la curva de

regresión y expande la selección a las celdas H4, I4, J4, y K4 (que estarán vacías).

Pulsa F2 y a continuación CTRL + Shift + Enter

Una vez hecho esto en H4 tienes el coeficiente de x^3 que será 2,673047477, en la celda I4 el coeficiente de x^2 que será -363,7578248, en la celda J2 el coeficiente de x y en K4 el término independiente.

Estos coeficientes son los mismos que aparecen si se hace por el método del gráfico indicado antes.

Adjunto archivo excel con ejemplo.

888
Aprender a programar desde cero / Re:Ejercicio CU00832B
« en: 03 de Julio 2014, 21:50 »
Hola, indica el nombre del archivo, pulsa el botón # del editor del foro y pega el código de un archivo entre las etiquetas [ code ] ... [ / code] que te aparecerán.

Luego haz lo mismo para el otro archivo: nombre de archivo y luego pega el código.

Luego pulsa previsualizar y si sale bien dale a publicar.

Intentaré revisarlo viendo el código, saludos

889
Pues suerte y al lío... Por aquí estaremos para ayudar en lo que sea posible. Saludos :)


890
Hola, es complejo porque tienes que ir analizando paso a paso qué es lo que hace la hoja de cálculo y si no lo has hecho tú puede resultar difícil.

Veo que usan caracteres comodín como #, hay varios caracteres comodín:

1 - Cierre interrogación (?): representa cualquier carácter único.
2 - Asterísco (*): puede indicar cero o más caracteres (indeterminados).
3 - Almohadilla (#): Cualquier dígito único
4 - Cadena entre corchetes ([lista de caracteres]): Cualquier carácter único en la lista dada de caracteres.
Esta 'lista de caracteres' puede especificar un rango de caracteres mediante el uso de un guión (-) para separar los límites superiores e inferiores del rango, pero deben aparecer en orden de clasificación ascendente (por ejemplo, A-Z ó 0-100).


La gráfica parece estar creada usando la herramienta de gráficos de Excel, que te crea automáticamente la línea de ajuste según el criterio que tú le indiques.

Por ejemplo, supón que tienes estos datos:


NAMINO      
x   f(x)   g(x)
14,4929   1933781   0,023650685
25,1152   2302609   0,034420102
37,5177   2662270   0,044471299
51,784   3047270   0,053626613
68,0168   3439220   0,062409679
86,1872   3834070   0,070937919
106,4145   4266705   0,078705286
128,6559   4663158   0,087065337





Ahora seleccionas en la ficha Insertar de Excel, opción Gráficos:

XY dispersión -- > Dispersión sólo con marcadores

Ahora en la ficha diseño (teniendo seleccionado el gráfico) eliges "Seleccionar datos" y seleccionas las columnas x , f(x) y g(x) pulsas "Aceptar"

Para que se vea con detalle pulsa sobre el eje y escoge "Dar formato a eje" y selecciona: unidades de visualización: 10000



Ahora pulsas sobre la línea del gráfico y eliges "Agregar línea de tendencia". Elige la opción "Polinómica" y en ordenación elige: 4 (para que sea un polinomio de grado 4).

En la parte inferior, activa "Presentar ecuación en el gráfico" y "Presentar el valor R cuadrado en el gráfico", elige color de línea y estilo de línea y pulsa aceptar.

En la parte inferior selecciona la otra serie de datos y haz lo mismo.

Te aparecerán los coeficientes de los polinomios de ajuste.

Adjunto archivo con el ejemplo que he hecho. Saludos.

891
Hola, creo que aquí tienes una respuesta bastante clara: http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=702:ique-es-y-que-estudiar-para-ser-programador-web-itinerario-de-formacion-plan-de-estudios-o-de-carrera&catid=39:orientacion-academica&Itemid=189

Y después de leer esto, también estaría claro por dónde empezar: por HTML, http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=69&Itemid=192

Debes tener en cuenta que convertirse en programador o programadora web es una tarea de largo plazo, puede requerir bastantes meses o incluso años. Si simplemente quieres crear una web usando herramientas ya existentes te puede interesar usar un CMS como Joomla: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=38&Itemid=152

Hay muchas posibilidades, tienes que pensar de qué tiempo dispones y cuáles son tus objetivos y a partir de ahí decidir. Saludos

892
Hola, he visto el código y te puedo felicitar, pues se ve que estás progresando y manejando correctamente los conceptos, creo que puedes estar satisfecho. No hay gran cosa que objetar al código. Lo único que te voy a plantear es un pequeño reto: has creado dos "programas" denominados AparicionDeVocales y ComparaLetraPorLetra (código en https://www.aprenderaprogramar.com/foros/index.php?topic=1292). El código no tiene ningún problema, pero sí te diría que te falta por interiorizar la filosofía de la orientación a objetos (cosa que no te creas que resulta sencilla, tómatelo con calma). En la programación orientada a objetos, casi todo deben ser objetos. El reto que te planteo es que modifiques el código para que existan tres clases que definan objetos: una clase "ManejadorDeVocales" que se corresponde con tu clase AparicionDeVocales, pero que no lleve método main. Simplemente debe proveer métodos para realizar tareas. Otra clase "ComparadorLetraALetra" que se corresponde con tu clase ComparaLetraPorLetra, pero que no lleve método main. Simplemente debe proveer métodos para realizar tareas.

Finalmente, en el método main debes tener algo de código que use los objetos y los métodos, pero no el grueso del código. En esa clase deben crearse objetos y permitir ver su funcionalidad a modo de ejemplos.

Ahí queda la idea. Saludos.

893
Aprender a programar desde cero / Re:Ejercicio! entrega CU00649B
« en: 02 de Julio 2014, 16:38 »
Hola Sniper, nada que destacar, todo correcto y según pedía el ejercicio. Saludos


894
Aprender a programar desde cero / Re:Regresión Polinómica
« en: 02 de Julio 2014, 13:56 »
¿Pero no eres tú quien ha creado los cálculos y procedimientos?

895
Aprender a programar desde cero / Re:PHP no se ejecuta
« en: 02 de Julio 2014, 13:52 »
Hola, cuando tengas nuevas dudas abre un nuevo tema del foro indicando el tema de que se trata, por ejemplo "duda formulario php no responde método get"... De ese modo se crea un tema para cada duda, si no parece un tema que ya estaba cerrado y posiblemente no obtengas respuesta. Saludos,

896
Hola, el código está bien pero te hago estas recomendaciones:

- Los nombres de atributos escríbelos empezando con una letra minúscula. Por ejemplo tipo en vez de Tipo (reserva nombres que empiecen por mayúsculas para nombres de clases). No es obligatorio, pero es la norma que siguen la mayoría de los programadores.

- En los métodos get y set no se incluyen normalmente mensajes por consola (excepto si te lo pide el ejercicio). Por tanto no deben salirte mensajes de consola con los métodos set (excepto si tú los incluyes).


Saludos

897
Aprender a programar desde cero / Re:Ejercicio! entrega CU00647B
« en: 30 de Junio 2014, 20:16 »
Hola está correcto, pero ten en cuenta que raíz va con z, si lo escribes con s más de uno se llevará las manos a la cabeza...  ::)


898
Aprender a programar desde cero / Re:una pequeña duda ayuda =)
« en: 30 de Junio 2014, 20:12 »
La opción de encapsulate fields es para indicar que se generen los getters y setters, no deberías preocuparte por eso. Si estás aprendiendo Java te recomiendo que sigas este curso pues está explicado paso a paso: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

Saludos!

899
Aprender a programar desde cero / Re:Ejercicio! entrega CU00644B
« en: 30 de Junio 2014, 20:07 »
Tienes razón  :o La respuesta a por qué no está devolviendo el resultado correcto está relacionado con la forma de representar los valores numéricos decimales que tienen los computadores. Nosotros pensamos que usan números como nosotros pero internamente no es así.

En este caso te has encontrado con un problema que se presenta con cierta frecuencia: la precisión cuando se trabaja con decimales.

Es algo que llevaría tiempo conocer en profundidad, por ello lo que te recomiendo es que apliques una solución conocida, como usar:

return Math.round(base * resultado * 100000) / 100000;

De este modo obtienes el resultado correcto, al menos en las pruebas que he podido hacer sí me lo devuelve correctamente.

Saludos!

900
Aprender a programar desde cero / Re:Regresión Polinómica
« en: 30 de Junio 2014, 19:44 »
Hola, ¿tienes una descripción de la metodología? ¿qué problema es el que se te presenta? Saludos

Páginas: 1 ... 40 41 42 43 44 [45] 46 47 48 49 50 ... 68

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