Hagamos un pequeño recordatorio
Descubrimos las informática: disciplina que estudia métodos con el fin de almacenar, transmitir y procesar información, que ha sido un factor fundamental en el desarrollo de la humanidad.
Estudiamos las computadoras: instrumentos que se encargan de recibir, procesar y transmitir datos mediante procesos automáticos, que fueron parte importante de la explosión en el desarrollo de la tecnología y la ciencia en los últimos siglos.
Comprendimos lo que es un programa: secuencia de instrucciones escritas en un lenguaje que la computadora entiende, mediante las que ésta cumple con sus tareas.
En pocas palabras, los programas son la forma de hacer funcionar una computadora, con el objetivo de **Procesar, almacenar y transmitir datos e información de una manera más eficiente **.
Esta corresponde a la cuarta entrega de una serie de artículos, que han sido publicados con anterioridad. Para estar al tanto sigue los siguientes enlaces:
- Programación para todos: Informática
- Programación para todos: Computadoras
- Programación para todos: Programas
Ya conocemos las bases, ahora sigamos estudiando. ¡Comencemos!
Fundamentos
Nuestro objetivo es escribir una secuencia de instrucciones, que posteriormente serán ejecutadas por la computadora. Para ello, necesitamos comprender un concepto: algoritmo .
Un algoritmo se define como sigue: ”Método para resolver problemas mediante una lista bien definida, ordenada y finita de operaciones”, en otras palabras, secuencia de instrucciones ordenadas con el fin de resolver una problemática concreta.
En la vida cotidiana utilizamos frecuentemente algoritmos; por ejemplo, cuando ejecutamos un manual de instrucciones para armar un escritorio, o cuando seguimos los pasos para abrochar nuestros zapatos.
En matemáticas, cuando multiplicamos, sumamos, o dividimos un par de números estamos aplicando métodos de resolución de problemas, que se corresponden con algoritmos.
Características y estructura de un algoritmo
Formalmente, un algoritmo tiene las siguientes características:
- Ordenado
- Claro
- Preciso
- Definido
Estas características se cumplen con el objetivo de llevar a cabo una actividad sin generar dudas a quién debe hacer dicha actividad, en nuestro caso una computadora.
Un algoritmo cumple con la siguiente estructura y flujo de funcionamiento:
- Se presenta el problema. El sistema se encuentra en un estado inicial.
- Se plantean soluciones y se ejecutan pasos sucesivos y ordenados con el fin de solucionar la problemática
- Se llega a un estado final y se obtiene una solución
¿Un poco confuso?, pues, veamos un ejemplo:
Tienes mucha hambre, y lo único que hay para comer es un huevo. Decides que lo comerás, por lo que lo vas a preparar.
Fuente
Problema: Cocinar un huevo frito. El sistema es el huevo, y el estado inicial del sistema es un huevo crudo
- Paso 1:Sacar un sartén y ponerle un poco de aceite
- Paso 2:Prender el quemador de la cocina
- Paso 3: Dar suaves golpes al huevo con el borde del sartén
- Paso 4: Vaciar el contenido del huevo en el sartén
- Paso 5: Echar sal y especias a gusto
- Paso 6: Esperar a que la clara tome un color blanco
-¡Solucionado!, el huevo está preparado. Estado final del sistema:huevo frito
Representaciones de un algoritmo
Un algoritmo se puede representar de forma gráfica y escrita. La representación gráfica más comúnmente utilizada es el Diagrama de flujo. En dicho diagrama,el flujo de ejecución de las instrucciones es representado mediante flechas y cuadros.
Creación propia
Un algoritmo escrito corresponde a una secuencia de instrucciones escrita con texto: símbolos, números, letras y palabras, tales como una receta o un manual de instrucciones.
¿Qué relación tiene esto con programar?
Como ya vimos, programar consiste en escribir una secuencia de instrucciones a la computadora para que cumpla con una tarea en específico. Las computadoras no razonan, por lo tanto el único lenguaje que comprenden es preciso, claro , ordenado y definido, sin ningún nivel de abstracción. La mejor forma de escribir estas instrucciones es mediante algoritmos, que, actualmente, es la forma imperante al momento de programar.
Entonces, ¿cómo escribo un algoritmo a la computadora?, ¿con código binario?
No, utilizamos lenguajes de programación, que tienen ciertos niveles de abstracción y palabras de uso humano, con los cuales la experiencia es mucho más clara y ordenada.
Creación propia
¡Vamos por buen camino!
Ya estamos llegando al momento esperado: poder escribir nuestros propios códigos de programación.
Pero, antes, démonos una pequeña pausa.
El próximo miércoles comenzaremos a estudiar los lenguajes de programación y de qué modo hay que trabajar con ellos.
Para ello estudiaremos como primera instancia una herramienta fundamental: el pseudocódigo, para posteriormente meter las manos en la masa y ¡comenzar a programar!, utilizando un lenguaje con grandes proyecciones: Python.
Fuente
¿Muy corto el artículo?
Pues, ¡paciencia!,este tipo de cosas hay que verlas con calma, y para poder comprenderlas cabalmente hay que estudiarlas paso a paso.
Corto? Está perfecto este tipo de información se debe de asimilar muy poco a poco. Para mi es bastante complicado entenderlo pero ese ejemplo de los huevos lo puso fácil. Estudie Periodismo porque me cuesta muchísimo comprender de números. Y esta explicación se me ha hecho fácil digerirla. Muchas gracias. Soy nueva en steemit y los leo... espero su apoyo. Un beso
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Gracias!, me alegra mucho haber ayudado.
Saludos
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Una muy buena síntesis del tema, para introducir a las personas a los algoritmos, les recomiendo PseInt, muy intuitivo y pedagógico para comenzar con algoritmos sencillos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Gracias por el aporte, ¡se tomará en cuenta!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
El artículo me pareció interesante, pero tiene varios errores de formato dentro del texto:
Del resto gracias por hacer crecer la comunidad hispana, saludos
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Muy bueno, lamentablemente falta mucho para el miércoles siguiente. Gracias por el aporte!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
jaja gracias!, ya queda menos para el miércoles, nos vemos en el próximo post.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Ni más ni menos, ha sido suficientemente claro el artículo. Considero que hoy en día la programación es indispensable para el desarrollo de la tecnología. Poniendo un ejemplo hoy en día un estudiante de ingeniería de cualquier especialidad puede resolver diversos problemas relacionados a su contenido académicos mediante la herramienta Visual Basic incorporada a Excel, cuando antes se hacía manualmente o mediante programas mas rudimentarios y se tomaba mucho más tiempo.
De esta manera podemos optimizar nuestro tiempo y mejorar nuestra eficiencia a la hora de desarrollar nuevas tecnologías y encontrar soluciones a problemas prácticos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Sin duda es muy importante. En el estudio de la ciencia es fundamental hoy en día, en física muchos problemas son imposibles de resolver sin el poder de cálculo de las computadoras.
Un saludo, gracias!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Gracias a ti por el aporte
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Excelente post, nada como repasar las bases de la programación para quienes conocemos el área y es lo suficientemente claro para quienes están dando sus primeros pasos.
Me encantaría leer sobre los diversos tipos de lenguajes sus aplicaciones y alcances: cuales son más usados en programación de aplicaciones de escritorio, en desarrollo web, en creación de base de datos, en administración de base de datos, en desarrollos multimedia, entre otros
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Hola @josepiamba
Para diseño de web HTML, JavaScript, PHP, SQL, Ruby, Phyton
Para diseño de aplicaciones Visual Studio, VisualFox Pro, los Macros de Excel con Visual Basic
Lenguajes C,C++, C#, Phyton, Ruby, RubyOnRails, PHP. SQL, Java, HTML
Pare de contar...
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Gracias por tu aporte hermano
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Excelente post, muy preciso y explicativo, y mejor aun me parece la selección del lenguaje de programación que piensan usar para el próximo post, python el lenguaje con la sintaxis más simple que he usado, me permitio entender rapidamente la programación orientada a objetos lo que me ayudo en el desarrollo de mi trabajo de grado hace pocos días. Saludos
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
¡Gracias!. Hemos elegido python mas que nada por que suele ser más fácil para gente nueva en la programación , es una buena puerta de entrada.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Muy buen post. Me gustó mucho. Gracias por compartirlo @cervantes. Saludos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Buen artículo, ideal para aquellos que quieran hacer un algoritmo propio para una criptomoneda...
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
nice post
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Muy bueno, sobre todo lo del huevo.. Me hizo mucha gracia!!! :)
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Mil gracias por la explicación, la verdad que así "poco a poco"; se va analizando y comprendiendo mucho mejor... Hasta el próximo miércoles!
Fuerte abrazo. @cervantes
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
De nada, seguiremos con un contenido claro y ameno en su lectura.
Hasta el próximo miércoles!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
¡GRACIAS! ¡JODER!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
¡De nada!, que bien que te haya ayudado.
¡Gracias por el comentario!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Qué buen post. Lo entendí con facilidad. Voy a seguir este curso ya que me interesa mucho aprender a programar. No me parece muy corto el artículo, quizá porque como vengo de "cero" necesito que la información no sea mucha para poder digerirla y entenderla bien. Muchas gracias por compartir conocimientos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Es un gran gusto para nosotros compartir este tipo de contenido. Me hace muy feliz que te haya ayudado.
No olvides que con anterioridad se publicaron otros artículos que explican todo desde cero y muy detallado.
¡Un saludo!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Interesante, se aprende con calidad; no con cantidad. La cantidad de información embota la mente, así que para entender esto necesitamos
una mente despejada.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Toda la razón, por eso decidimos hacer los artículos mas concisos.
Gracias, saludos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Excelente publicación. Os invito a leer mi último Post:
https://steemit.com/spanish/@hmetal/amenazas-recibidas-en-steemit-por-usuario-de-alta-reputacion
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Gracias, lo miraremos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
@Vhinojosa quizá leas esto dentro de x tiempo, no importa. Sólo quiero decirte, que estás haciendo un trabajo maravilloso. Mi persona, que siempre le ha temido a la programación, ahora se siente abierta a las posibilidades. Llevas en ti una gran herramienta Victor, tu conocimiento y manejo de ese tipo de lenguaje es realmente...fundamental en lo que se viene para la humanidad. El post está bien redactado, conciso, fácil de comprender. Estás haciendo un gran trabajo!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
@industrialvarez, un millón de gracias, me alegra muchísimo ver que los artículos te han ayudado en esta magnitud. Esa es justamente mi misión, dar acceso justo a toda persona interesada en este tipo de información. Un abrazo!, seguimos hablando.
PD: Un detalle, mi usuario es @vhinojosa, sin mayúscula al inicio jaja.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Esto es otro nivel!!... saludos!
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit
Muchas gracias!, saludos.
Downvoting a post can decrease pending rewards and make it less visible. Common reasons:
Submit