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 - Alex Rodríguez

Páginas: 1 ... 63 64 65 66 67 [68] 69 70 71 72 73 ... 93
1341
Hola, sí que ayuda, nos puede servir de referencia a otras personas para consultar, poner un ejemplo o comentar, revisar... Gracias por subirlo!!!

1342
Hola, he visto los programas que has puesto en los post y sólo tengo que decirte que si los has hecho tú todos, enhorabuena. Como te digo, si los has hecho todos estarías reflejando ya un cierto dominio sobre la programación.

Te comento cómo vería yo la continuidad de tu formación: la programación es un campo de conocimiento muy amplio y tendrás que ir paso a paso rellenando tu formación con todos los apartados que requiere. Te voy a dar una orientación de posibles pasos a seguir:

a) Programación orientada a objetos: comprender qué es, cómo se trabaja con ella, conceptos principales, creación de código y diseños orientados a objetos, etc.

b) Programación con elementos de interfaz gráfica (no sólo consola)

c) Aprendizaje del trabajo con ficheros: escritura y lectura desde ficheros, diálogos con ficheros, etc.

d) Creación de programas de aspecto profesional incorporando menús, gestión de eventos, etc.

e) Conexión de programas con bases de datos

f) Si avanzas todo lo anterior... habrás avanzado mucho.

Saludos!!!!

1343
Comunidad / Re:Un saludo a toda la comunidad!
« en: 30 de Octubre 2014, 23:20 »
Hola, gracias por tus comentarios, nos alegra obtener "feedback" u opiniones de las personas que siguen la web y no todo el mundo se anima, y con esto no quiero decir que sólo queramos oir cosas positivas, también agradecemos que se digan aquellas cosas que sean mejorables, siempre hay que aspirar a mejorar ;) Nosotros nos ocupamos por principio de cuidar dos cosas: la calidad de los contenidos y la didáctica de los contenidos, es ahí donde tratamos de marcar la diferencia y supongo que a veces lo conseguimos (y otras veces no).

La programación aparte de una utilidad profesional tiene que gustar, por lo que entiendo aparte de gustarte no se te da mal, lo cual es un plus... A partir de ahí podrás llegar a donde quieras llegar en función del tiempo que le dediques y de la calidad de la formación que seas capaz de tomar, y también de que seas capaz de ponerte objetivos realistas y útiles.

La programación orientada a objetos no te extrañe que esté costando: es conceptualmente un tanto enrevesada tanto de entender como de explicar... Pero creo que has dado con el sitio que te va a llevar a comprender y manejar este tipo de programación, es decir, este sitio. Y el curso que te puede llevar a ese objetivo es el "Curso aprender programación Java desde cero".

Pero ya que estás siendo capaz de hacer las cosas bien, te diría que sigas en la línea que has comenzado. Mi recomendación sería la siguiente:

- Termina el curso Bases de la programación nivel II al mismo tiempo que haz el curso Visual Basic desde cero. Fíjate que te digo al mismo tiempo, no te digo uno primero y otro después. ¿Por qué? Porque con el curso de Visual Basic verás la aplicación de los conocimientos de los cursos de fundamentos.

- Una vez termines estos cursos, haz el de Java desde cero. Cuando termines este curso tendrás una buena base tanto en programación estructurada o imperativa como en programación orientada a objetos.

Realmente podrías plantearte ir directamente a por el curso Java, sería una opción, pero al menos desde nuestro punto de vista aquí es más importante la constancia que la velocidad.

Sobre Python y otros lenguajes que no abordamos en la web normalmente mantenmos una actitud distante o neutral, es decir, no opinamos (o mejor dicho esperamos algún día poder abordarlos), así que siento no darte una orientación con esto.

Esperamos contar contigo en los foros y que nos hagas llegar cualquier sugerencia o comentario sobre erratas que detectes o cualquier cosa que quieras comentar.

Saludos

1344
Hola, para ver un ejemplo de árbol binario puedes guiarte por este ejemplo: https://www.aprenderaprogramar.com/foros/index.php?topic=1367.msg7474#msg7474


Para operar con este tipo de árboles necesitas usar y comprender el concepto de recursividad: www.aprenderaprogramar.com/foros/index.php?topic=1493


Tienes que definir un método para "eliminar elementos repetidos" pero te recomiendo que antes de programarlo directamente hagas pasos preliminares para ir más seguro.

Te aconsejo que empieces por crear un método que permita comparar un árbol con otro árbol y que muestre por pantalla cuáles son los elementos repetidos.

Tienes que pensar cómo hacerlo. En esto influiría bastante si se tratara de árboles ordenados o no, pero para resolverlo para el caso más general voy a suponer que se trata de árboles no ordenados.

Habría que pensar cómo hacerlo. Se me están ocurriendo dos opciones.

El método supongamos que tiene la signatura siguiente:

public void detectarElementosDuplicados (Arbol elArbolQueQueremosComparar) {

}


Podríamos plantearlo de varias maneras:

a) Recorrer el árbol que representa la clase y meter los valores que almacenan sus nodos en un array (array1). Luego recorrer el árbol que se recibe por parámetro y meter los valores que almacenan sus nodos en un array (array2). Luego comparar ambos arrays para ver cuáles son los valores duplicados, que podemos meter en otro array de elementosDuplicados. Finalmente, recorrer el árbol original y cuando se compruebe que el valor en un nodo coincide con un valor en elementosDuplicados, mostrar el mensaje por pantalla.

Nota: la comparación de dos arrays para encontrar valores duplicados la haríamos así

Código: [Seleccionar]
int k=0;
for(int i = 0; i < array1.length; i++)
{
    for(int j = 0; j < array2.length; j++)
    {
        if(array1[i] == array2[j])
        {
            elementosDuplicados[k]= array1[i]; //AÑADIR el elemento al array de duplicados
    k=k+1;
        }
    }
}

Con esto habría que recorrer dos árboles, y luego comparar sus valores


b) Quizás resulte más interesante hacerlo de otra manera como esta: recorremos los valores contenidos en el árbol que recibimos por parámetro y los almacenamos en un array denominado array2.

Ahora comienzas el recorrido del árbol y para cada valor en ese árbol compruebas si existe en el array2. En caso de que exista, muestras un mensaje por pantalla, y en caso de que no exista, continúas el recorrido.


Intenta plantearlo y pega el código que vayas creando para tratar de ayudarte.

Saludos

1345
Hola Félix, la operación 4/3 se lee "cuatro dividido entre tres" y su resultado será 1.3333

En cambio 4%3 se lee "módulo o resto de dividir cuatro entre tres" y su valor se obtiene como el resto de la división. Al dividir 4 entre 3, el cociente es 1 (3x1=3) y el resto (lo que nos falta para llegar a 4) es 1. Por eso el resultado de 4%3 es 1.

Te recomiendo seguir este curso donde se aclaran estos conceptos -- > http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

Saludos

1346
Gracias por responder. Nuestra voluntad es ayudar, pero cuando menos esperamos que se responda, aunque sea para decir que la duda no ha podido ser resuelta, o si se ha podido, cómo. Aquí tratamos de colaborar entre todos, por eso te pido que respondas por lo menos, aquí veo otro mensaje sin responder:

www.aprenderaprogramar.com/foros/index.php?topic=1335

Y aquí otro:

www.aprenderaprogramar.com/foros/index.php?topic=1333

Y aquí otro:

https://www.aprenderaprogramar.com/foros/index.php?topic=1298

Espero que respondas algo a esos mensajes, no simplemente decir gracias, sino tratar de responder algo que ayude a las demás personas que puedan leer los mensajes, por ejemplo cómo solucionaste el problema, el código solución, lo que sea...

Me parece justo pedir un poco de colaboración a quien pide que colaboren con él, al menos ese es el espíritu con el que trabajamos los moderadores en estos foros.

Saludos

1347
Hola, la cuestión que comentas podríamos decir que es "validación de formularios". Hay varias formas de hacer validación de formularios, pero vamos a resumirlas en que puedes hacerlo del lado del cliente (en el computador del usuario, por ejemplo impidiendo que se envíe el formulario si no cumple con lo que debe cumplir), del lado del servidor (una vez enviado el formulario se comprobaría que datos se han enviado y si no son válidos se mostraría un mensaje de aviso de que se debe rellenar de nuevo el formulario), o bien de forma combinada entre cliente y servidor (en este caso harías una validación del lado del cliente y una verificación de lo que realmente llega al servidor).

Lo más normal sería que la validación de un formulario la plantees con JavaScript, que es el lenguaje más propio para eso. El curso de JavaScript lo tienes aquí: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=78&Itemid=206

Pero supongamos que no quieres usar JavaScript, sino hacerlo con PHP y por tanto del lado del servidor. Tendrás que usar funciones de cadenas o expresiones regulares para comprobar que los datos recibidos se ajustan a lo que tú quieres. El curso de php lo tienes en http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=70&Itemid=193

No sé si esto te sirve como aclaración, tampoco veo del todo claro cuál es la pregunta...

Saludos

1348
Hola, creo que no has respondido a este mensaje: www.aprenderaprogramar.com/foros/index.php?topic=1517

¿No te parece que deberías responder algo antes de preguntar sobre otro tema?

Saludos

1349
Hola, puedes empezar a programar en unas pocas semanas, pero llegar a ser un programador profesional suele requerir varios años de dedicación. El tiempo de formación requerido depende de la persona, pero para ser programador junior suele ser mínimo un par de años...

1350
De todo un poco... / Re:Ética Profesional - ética dialógica
« en: 28 de Octubre 2014, 11:00 »
Hola, la pregunta tiene truco porque te dice que por qué consideras tal cosa, pero realmente no tienes por qué considerarla, la podrás considerar si quieres y si no quieres no.

La ética dialógica (dia- a través; logos- razón): esto quiere decir una ética que parte del dialogo, que asuma que la verdad no es propiedad de nadie y que el monólogo no es adecuado para resolver conflictos morales. Propone que en lugar de una norma que actúe como ley general (imperativo categórico) hay que presentar a los demás las razones de por qué se piensa de esa manera, para que las puedan valorar.

Según la ética dialógica el hombre moralmente bueno es aquel que se halla dispuesto a tener como normas las que se haya establecido después de un diálogo racional encaminado a lograr un consenso y se haya decidido comportarse de acuerdo lo establecido en ese consenso.

Podríamos verlas como el fundamento armónico de la sociedad si consideramos que las democracias son el sistema más avanzado de gobierno y se basan en que la verdad no es propiedad de nadie, sino que se decide mediante el consenso de todos los ciudadanos que eligen lo que quieren hacer.

Saludos

1351
Hola! La cuestión que comentas es una decisión personal que tendrás que tomar tú, pero te doy mi opinión. Supongo que has tenido una idea de emprendimiento que te parece podría tener futuro y éxito. Todo el que tenga ideas de este tipo es lógico que intente luchar por sacarlo adelante, pero debe tenerse en cuenta que sólo 1 de cada 1000 proyectos de emprendimiento tienen éxito (incluso siendo las ideas buenas). Por eso no parece razonable tirar la casa por la ventana por una idea de emprendimiento. Lo que te recomendaría es que empieces a estudiar programación, y si después de un año estudiando por tu cuenta ves que realmente te apasiona y se te da bien y te gusta, te cambies entonces a la carrera de Ingeniería Informática, de esta forma transformarás tu ilusión en tu profesión.

Como primer paso para afrontar el aprendizaje y tener una idea te recomiendo leer esto: https://www.aprenderaprogramar.com/foros/index.php?topic=1313.0 Si tienes dudas consúltalas e intentaremos aclarártelas.

Saludos

1352
Hola, te indico lo mismo que te acabo de escribir en otro post del foro porque también es aplicable aquí:

<<Si funciona bien, enhorabuena. Te comento una cosa que deberías mejorar: cuando creas un programa no debes hacerlo para que funcione con un número determinado de datos (por ejemplo 5 datos, ó 10 ó 20 datos). Debes hacerlo para que el programa sea capaz de resolver el problema con n datos (es decir, en este caso por ejemplo que sea capaz de ordenar tanto un array con 5 datos como con 8 datos como con 80 datos. ¿Cómo haces esto? Sustituyendo los datos fijos (por ejemplo el 5) por variables (por ejemplo escribirías numeroDatos=5, y luego en los bucles usarías numeroDatos, etc.).

Puedes fijarte en el ejercicio de la superficie que le corresponde a herederos que hay aquí para ver cómo se puede plantear un problema sin un número de datos cerrado (ver http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=446:ejercicios-resueltos-con-pseudocodigo-y-diagramas-de-flujo-bucles-for-next-y-while-do-cu00161a&catid=28:curso-bases-programacion-nivel-i&Itemid=59)>>




Saludos

1353
Hola, si funciona bien, enhorabuena. Te comento una cosa que deberías mejorar: cuando creas un programa no debes hacerlo para que funcione con un número determinado de datos (por ejemplo 5 datos, ó 10 ó 20 datos). Debes hacerlo para que el programa sea capaz de resolver el problema con n datos (es decir, en este caso por ejemplo que sea capaz de ordenar tanto un array con 5 datos como con 8 datos como con 80 datos. ¿Cómo haces esto? Sustituyendo los datos fijos (por ejemplo el 5) por variables (por ejemplo escribirías numeroDatos=5, y luego en los bucles usarías numeroDatos, etc.).

Puedes fijarte en el ejercicio de la superficie que le corresponde a herederos que hay aquí para ver cómo se puede plantear un problema sin un número de datos cerrado (ver http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=446:ejercicios-resueltos-con-pseudocodigo-y-diagramas-de-flujo-bucles-for-next-y-while-do-cu00161a&catid=28:curso-bases-programacion-nivel-i&Itemid=59)

Saludos

1354
Hola, una posible definición de las clases a desarrollar y atributos y métodos principales (el enunciado no es demasiado claro...):

CLASE PAÑUELO

Atributos:

Entero: dimensionPrincipal
Coleccion: coleccionAQuePertenece
String: tipoDePañuelo


Métodos

double ObtenerCosteUnitarioPañuelo (double costeTela, double sueldoPromedioHorario) {

//El cálculo debe tener en cuenta el tipo de pañuelo

}



CLASE DISEÑO

Atributos:

String: nombreDelDiseño
String: color



CLASE ORDENDETRABAJO

Atributos:

Entero: cantidadDePañuelos
Pañuelo: pañueloEncargado



CLASE COLECCIONDEPAÑUELOS

Atributos:

Array de tipo Pañuelo: pañueloEnColección


Saludos.

1355
Hola Sistoex, si la duda es relacionada con lo que se venía hablando en un tema, debe responderse en el mismo tema en lugar de crear otro nuevo. Si la pregunta no tiene que ver con lo que se venía hablando, debe crearse un nuevo tema. He procedido a unir la pregunta con el tema con el que está relacionado.

Nota sobre la cuestión que comentas: si sigues este curso con pseudocódigo, http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=28&Itemid=59, te será útil para la programación en cualquier lenguaje, incluido C#

Saludos

1356
Hola Tanci, gracias por tus alabanzas  ;D aunque la realidad es que no se puede evitar que se ofrezcan robos de cuentas y contraseñas, si no se hace aquí se hará entro lado  :-[, incluso aquí no podemos revisar línea a línea lo que se escribe, así que no te asustes si alguien escribe un disparate  ::) Para protegerte frente a tanto hacker te recomendaría: usa un antivirus actualizado, pon contraseñas complejas como hy63mngGDvjg8s en lugar de contraseñas sencillas como casa77, y trata de no instalar demasiados programas en tu ordenador porque algunos vienen "con regalo". Saludos!!!

1357
Hola, en primer lugar por favor cuando escribas mensajes en el foro sigue las indicaciones que se dan aquí: https://www.aprenderaprogramar.com/foros/index.php?topic=1460.0

Es importante seguirlas para que las consultas puedan ser respondidas.

Sobre el error que estás obteniendo, parece que se debe a la llamada de función con esta sintaxis:

comprimir_arreglo(&$arrFacturasPausadasBorrar);

De acuerdo con la documentación oficial de php, no existe ningún signo de referencia en una llamada a una función - sólo en la definición de la función. Las definiciones de funciones por sí solas son suficientes para pasar correctamente el argumento por referencia. A partir de PHP 5.3.0, se obtendrá una advertencia diciendo que "call-time pass-by-reference" (pasar por referencia en tiempo de llamada) está obsoleto cuando se use & en foo(&$a);. A partir de PHP 5.4.0, el paso por referencia en tiempo de llamada ha sido eliminado, por lo que su uso emitirá un error fatal.

Si necesitas que el argumento sea pasado por referencia tienes que definir la función como function comprimir_arreglo(&$array){ ... }

donde el símbolo & indica que el argumento se pasará por referencia.

La llamada a la función será simplemente comprimir_arreglo($arrFacturasPausadasBorrar);

En caso de que quieras que el argumento se pase por valor debes definir la función como function comprimir_arreglo($array){ ... } y hacer la llamada como comprimir_arreglo($arrFacturasPausadasBorrar);



1358
Hay varias formas de hacerlo, una de ellas: el administrador se logea en una página web con un formulario y el usuario en otra página web con otro formulario. Por ejemplo que el administrador se logee en logAdmin.php y el usuario en logUser.php.

La creación de administradores adicionales sólo puede hacerla un administrador. La creación de usuarios, si se permite que se hagan usuarios libremente, se haría desde otra página web, por ejemplo registerNewUser.php

Saludos

1359
Sobre la consulta planteada te comento cómo suele hacerse habitualmente: una aplicación web suele partir de que exista inicialmente un único usuario con nivel de administrador. En la base de datos se guarda el nombre de usuario, contraseña y nivel de acceso (en este caso administrador).

A partir de aquí, para crear más administradores sólo puede hacerlo el administrador accediendo a un formulario específico para crear nuevos administradores.

Si hay un formulario público para que se registren usuarios, cuando se registran, lo hacen por defecto como usuarios normales, no tienen opción a elegir el nivel de usuario que tienen.

Saludos,

1360
El nuevo tema es "cómo diferenciar entre administrador y usuario al hacer login con php"

Páginas: 1 ... 63 64 65 66 67 [68] 69 70 71 72 73 ... 93

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