jueves, 10 de noviembre de 2016

Bloque 3

Bloque 3


Arreglos Unidimensionales



"Un arreglo unidimensional es un tipo de datos estructurado que está formado por una colección finita y ordenada de datos del mismo tipo. Es la estructura natural para modelar listas de elementos iguales. Los datos que se guarden en los arreglos todos deben ser del mismo tipo."

El tipo de acceso a los arreglos unidimensionales es el acceso directo, es decir, podemos acceder a cualquier elemento del arreglo sin tener que consultar a elementos anteriores o posteriores, esto mediante el uso de un índice para cada elemento del arreglo que nos da su posición relativa.
Para implementar arreglos unidimensionales se debe reservar espacio en memoria.

Los arreglos nos permiten hacer un conjunto de operaciones para manipular los datos guardados en ellos, estas operaciones son: ordenar, buscar, insertar, eliminar, modificar entre otras.


Resultado de imagen para arreglo unidimensional


Para manejar un arreglo, las operaciones a efectuarse son

-Declaración del arreglo,
-Creación del arreglo,
-Inicialización de de los elementos del arreglo, y
-Acceso a los elementos del arreglo.



Ejemplos usando dimensiones y arreglos

viernes, 28 de octubre de 2016

Bloque 1




Algoritmia


Primero que nada, la algoritmia se puede definir como el estudio de los algoritmos. Ósea que con la algoritmia, estudiamos los diferentes algoritmos que se pueden aplicar. Estudiamos y aprendemos a hacerlos y los requisitos de un algoritmo para que se facilite usarlo.
“Básicamente la algoritmia estudia, observa y analiza la lista de operaciones para resolver un proceso(algoritmo).”

Aplicación en la vida cotidiana: por ejemplo cuando resolvemos problemas matemáticos por medio de una serie de pasos como lo es la división, multiplicación, etc.

Algoritmo: Lista bien definida y ordenada que no es infinita de operaciones que nos permiten hallar la solución a un problema

Algoritmia computacional 


Los algoritmos computacionales son aquellos que son aplicados en la computadora y con lenguaje de programación
Introducción:{existe un lenguaje entre humano y maquinas, y este nos permite darle ordenes a la maquina, algo así como un algoritmo.}
Los algoritmos en computadora son = programa
Algoritmo computacional… algoritmo ejecutado en computadora

Clasificaciones de algoritmos


-Algoritmo determinista: En cada paso del algoritmo se determina de forma única el siguiente paso
-Algoritmo no determinista: existen varias alternativas en cada paso de la ejecución que hay que elegir hasta que una te lleve al resultado.
-Cualitativo: los algoritmos cualitativos permiten dar solución a casos cotidianos en donde no es necesario utilizar operaciones matemáticas para llegar a dicha solución.
-Cuantitativo: solucionan casos en donde es necesario el recurrir a las matemáticas para dar solución a dichos casos.
-Informal: Él algoritmo informal es en si un algoritmo que no puede ser hecho por un computador o no fácilmente ya que su actor principal es el humano.
-Computacional: Es en el cual se usa una computadora de por medio

Elementos que constituyen un algoritmo


“Todo algoritmo debe obedecer a la estructura básica de un sistema, es decir: entrada proceso y salida.”
-Entrada: En este se proporcionan ¡todos! Los datos necesarios para llegar a un resultado, sino el proceso seria erróneo y habrían fallos
-Proceso: Estos son los pasos necesarios para llegar a la solución.
-Salida: Aquí se arrojan los resultados del proceso una vez ejecutado.
-Introducción o sentencia: Define una acción a un mandato que se debe realizar y se expresa atreves de un comando
-Comandos o palabras reservadas: palabras que denotan una acción
-Datos: Símbolos que se convierten en condiciones, hechos situaciones o valores. Un dato puede significar un numero, una letra, un signo ortográfico o cualquier símbolo que represente cantidad, medida, palabra o descripción,.

Estructura de un algoritmo


Secuencial(lineal):   
                


Cíclico

       
          
Condicional:


Tecnicas para el diseño de algoritmos


En mi investigación encontré el famosísimoé


-“Divide y vencerás”
Divide y vencerás es  una técnica que consiste en dividir los problemas y resolverlos por aparte para la final unirlos y resolver el problema mayor

-“Recursividad básica”
Casos base: Deben existir casos que se puedan resolver sin incursión.
-Progreso. Los casos deben avanzar a ser casos base.
-Reglas de diseño: Suponiendo que todas sirven
-Reglas de interés compuesto: El trabajo nunca se duplica

-“Back tracking”
-representar el problema mediante un estado, definir el conjunto de operadores o acciones, especificar una estrategia de búsqueda de la secuencia de operadores que nos lleven al estado inicial.

Conectivos lógicos en computación


También llamados operadores lógicos o conectores lógicos
Sirven para comparar dos expresiones y obtener un valor verdadero o falso… entre los cuales tenemos-Esto nos ayuda a Expresarle a la maquina instrucciones






Tablas de verdad




Estas tablas se emplean en lógica para determinar los posibles valores de verdad de una expresión, o sea para validar un argumento... 

-Las tablas de verdad son una herramienta mas del hombre. 




jueves, 13 de octubre de 2016

Bienvenido a Algoritmia para principiantes



Este Blog esta dedicado plenamente para empezar en el mundo de la programación con programas sencillos y hecho completamente gratis por mi.



-------------------------------------------------------------------------------------------------------------------------------------------------------------------------


Antes que nada hay que preguntarnos... ¿Que es un Algoritmo?

Un algoritmo es un conjunto de instrucciones o pasos que nos permiten resolver un problema 


Y.. ¿Que es un problema?


Un problema es una circunstancia en la que se genera un obstáculo. su etimología nos demuestra que un problema es aquel que requiere solución.




Metodo de polya


Resultado de imagen para metodo de polya


El método de Polya Consiste en estos simples Pasos:

1.Entender el problema.
2.Configurar un plan.
3.Ejecutar el plan.
4.Mirar hacia atrás.

Estas son recomendaciones que también se pueden llevar a cabo

-Comprender el problema, distinguir los datos, saber lo que quiere.
-Hacer una lista, prueba y error, diagrama.
-Poner en marcha la solución.
-¿Es una solución correcta?, ¿satisface?, ¿puedes extenderlo a un caso general?

Métodos de ordenamiento
Los métodos de ordenamiento sirven para ordenar diferentes tipos de datos.

Ordenamiento de burbuja (bubblesort)

Este algoritmo revisa la lista de elementos y los intercambia si están mal ordenados hasta que todos los elementos estén en su posición.

Resultado de imagen para bubble sort gif


Quick Sort.

Es el algoritmo de ordenamiento mas eficiente se basa en la técnica de “divides y vencerás” y permite ordenar  “n” elementos en un tiempo proporcional a la longitud.
Elige un elemento de la lista y es el centro y los demás los va ordenando los menores a la izquierda y los mayores a la derecha y se repite el proceso con los de la izquierda y la derecha hasta que estén ordenados todos.


Resultado de imagen para quicksort gif









Heapsort.


Este algoritmo NO es estable. Almacena todos los elementos y extrae el modo que queda como raíz en sucesivas interacciones hasta que queda ordenado toda la lista. 




¿Que es el ciclo de vida del software?

El ciclo de vida de un software es el proceso para desarrollar, entregar y evolucionar el software desde el inicio hasta el final.
Todo esto se hace para asegurar que los métodos de creación sean apropiados y es muy costoso rectificar los problemas que se detectan tarde en el software, también ayuda mucho a aumentar la calidad del software.

·     -Definición
·     -Análisis
·     -Programación
·     -Prueba de calidad.
·     -Integración
·     -Prueba beta
·     -Documentación.
·     -Implementación
·     -Mantenimiento









-------------------------------------------------------------------------------------------------------------------------------------------------------------------------



Aprendiendo a Aprender...




Es necesario saber las cosas que realmente buscamos en la programación ya sea la creación de programas o de cualquier otra cosa.

La programación es como un pastel, se empieza desde lo básico ya sea la masa y se sigue una lista de cosas por hacer, si te falta algún ingrediente por ejemplo ponerle HUEVOS tu pastel no tendrá una buena consistencia por lo cual quedara malo y eso no le gusta a nadie, como sabemos, llegar a ser algo consiste en una serie de pasos desde lo mas sencillo hasta la preparación profesional y es así como trabajaremos.


Como se aprende

Aprender a programar y hacer algoritmos conlleva un trabajo diario y de practica.

Es necesario que se realizan algoritmos sencillos e ir avanzando en cuando a la complejidad de los mismos. Así que en este blog aprenderemos desde lo mas básico e incrementaremos de dificultad. 

Pseint 

Resultado de imagen para pseint


Algoritmo Descarga_El_Programa_Que_Utilizaremos


Escribir "Lo primero que necesitaras para empezar con tu programa sera descargar Pseint"

Escribir "Encuentralo en este lugar http://pseint.sourceforge.net/index.php?page=descargas.php"

Escribir "Una vez en la pantalla de la pagina es necesario que ingreses tu tipo de sistema operativo y selecciones esa opción.

Escribir "Al seleccionarla solo faltara esperar 5 segundos para que sea descargado"

Escribir "Recuerda que es la pagina oficial y no debes estar preocupado por cualquier clase de virus"


Fin Algoritmo




-------------------------------------------------------------------------------------------------------------------------------------------------------------------------




Algoritmo Aprende_A_Usar_El_Programa


Como te habrás dado cuenta este blog tiene un estilo extraño a otros, Pero porque es así?

Es una pregunta simple de responder, este es el tipo de estructura sera la que usaremos en nuestro programa PseInt.

Lo primero que necesitaremos sera saber las cosas básicas de escritura en nuestro programa pseint

Las primeras cosas que tuve que ver para aprender a usar el programa fueron las siguientes palabras que por base de ejemplos logre hacer mis primeros algoritmos que "hablaran"


(Escribir "") : Esta palabra indica que en la pantalla se escribirá lo que deseemos decir, tenemos que tener en cuenta que esto no afecta en NADA una operación por dentro ya que solo es un mensaje de salida.



Ejemplo con texto (ESCRIBIR)


(Leer "") : Nos permite ingresar un valor constante o variable o incluso asignado para hacer alguna cosa deseada



Ejemplo usando (Leer y Escribir)



------------------------------------------------------------------------------------------
-------------------------------------------------------------


PROGRAMA EJECUTADO




















Aquí una muestra de mis trabajos realizados en Pseint USANDO LA CONDICIONAL 
"SI ENTONCES-SINO" ESCRIBIR" "LEER"















FinAlgoritmo


-------------------------------------------------------------------------------------------------------------------------------------------------------------------------




DFD 

Como sabemos un algoritmo tiene un diagrama de flujo de igual forma asi que es importante saber como realizar uno 

Para comenzar a hacer los diagramas de flujo es necesario descargar DFD 

DFD es una aplicación que nos ayuda a realizar diagramas de flujo con las acciones principales de el

Resultado de imagen para dfd icono


Resultado de imagen para dfd icono

Aquí tenemos un ejemplo de un diagrama de flujo en el que se muestra "escribir"
asignar variables "leer".
Y un mensaje de "salida".


























Algunos de mis trabajos realizados en
DFD
USANDO CONDICIONALES LEER Y ESCRIBIR