sábado, 22 de noviembre de 2014

Programación


El desarrollo de algoritmos es un tema fundamental en el diseño de programas o soluciones. Por lo cual, el alumno debe tener buenas bases que le sirvan para poder crear de manera fácil y rápida sus programas.

Un algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, para dar solución a un problema específico.


Existen dos tipos y son llamados así por su naturaleza: 
  • Cualitativos: Son aquellos en los que se describen los pasos utilizando palabras.
  • Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para definir los pasos del proceso.

Tipos de Algoritmos
Algoritmo de búsqueda: Un algoritmo de búsqueda es aquel que está diseñado para localizar un elemento con ciertas propiedades dentro de una estructura de datos; por ejemplo, ubicar el registro correspondiente a cierta persona en una base de datos, o el mejor movimiento en una partida de ajedrez.

La variante más simple del problema es la búsqueda de un número en un vector.

Búsqueda dicotómica

Elementos necesarios en una búsqueda :
log2(n) donde n = elementos de la búsqueda
Ejemplo: log2(1.000.000) ≈ 20


Algoritmo de Ordenamiento: En computación y matemáticas un algoritmo de ordenamiento es un algoritmo que pone elementos de una lista o un vectoren una secuencia dada por una relación de orden, es decir, el resultado de salida ha de ser una permutación —o reordenamiento— de la entrada que satisfaga la relación de orden dada. Las relaciones de orden más usadas son el orden numérico y el orden lexicográfico. Ordenamientos eficientes son importantes para optimizar el uso de otros algoritmos (como los de búsqueda y fusión) que requieren listas ordenadas para una ejecución rápida. También es útil para poner datos en forma canónica y para generar resultados legibles por humanos.
Desde los comienzos de la computación, el problema del ordenamiento ha atraído gran cantidad de investigación, tal vez debido a la complejidad de resolverlo eficientemente a pesar de su planteamiento simple y familiar. Por ejemplo, BubbleSort fue analizado desde 1956.1 Aunque muchos puedan considerarlo un problema resuelto, nuevos y útiles algoritmos de ordenamiento se siguen inventado hasta el día de hoy (por ejemplo, el ordenamiento de biblioteca se publicó por primera vez en el 2004). Los algoritmos de ordenamiento son comunes en las clases introductorias a la computación, donde la abundancia de algoritmos para el problema proporciona una gentil introducción a la variedad de conceptos núcleo de los algoritmos, como notación de O mayúscula, algoritmos divide y vencerás, estructuras de datos, análisis de los casos peor, mejor, y promedio, y límites inferiores.

Tipos de Lenguajes Algorítmicos
 

  • Gráficos: Es la representación gráfica de las operaciones que realiza un algoritmo (diagrama de flujo). 

  • No Gráficos: Representa en forma descriptiva las operaciones que debe realizar un algoritmo (pseudocodigo). 

    INICIO 
       Edad: Entero 
       ESCRIBA “cual es tu edad?” 
       Lea Edad 
       SI Edad >=18 entonces 
          ESCRIBA “Eres mayor de Edad” 
       FINSI 
       ESCRIBA “fin del algoritmo” 
       FIN
Existen una variedad de software para programar, y uno de ellos para poder aprender de una manera fácil es PSeInt. Esta es una herramienta para asistir a un estudiante en sus primeros pasos en programación. Mediante un simple e intuitivo pseudolenguaje en español (complementado con un editor de diagramas de flujo), le permite centrar su atención en los conceptos fundamentales de la algoritmia computacional, minimizando las dificultades propias de un lenguaje y proporcionando un entorno de trabajo con numerosas ayudas y recursos didácticos.

 

 PSeInt está pensado para asistir a los estudiantes que se inician en la construcción de programas o algoritmos computacionales. El pseudocódigo se suele utilizar como primer contacto para introducir conceptos básicos como el uso de estructuras de control, expresiones, variables, etc, sin tener que lidiar con las particularidades de la sintaxis de un lenguaje real. Este software pretende facilitarle al principiante la tarea de escribir algoritmos en este pseudolenguaje presentando un conjunto de ayudas y asistencias, y brindarle ademas algunas herramientas adicionales que le ayuden a encontrar errores y comprender la lógica de los algoritmos.



Características y sus Funciones (PSeInt)


Presenta herramientas de edición para escribir algoritmos en pseudocodigo en español:


    • Autocompletado
    • Ayudas Emergentes
    • Plantillas de Comandos
    • Coloreado de Sintaxis
    • Indentado Inteligente
    • Permite generar y editar el diagrama de flujo del algoritmo
    • Permite la edición simultánea de múltiple algoritmos
    • El lenguaje pseudocódigo utilizado es configurable
    • Ofrece perfiles de configuración predefinidos para numerosas instituciones
    • Puede interpretar (ejecutar) los algoritmos escritos
    • Permite ejecutar el algoritmo paso a paso controlando la velocidad e inspeccionando variables y expresiones
    • Puede confeccionar automáticamente una tabla de prueba de escritorio
    • Determina y marca claramente errores de sintaxis (mientras escribe) y en tiempo de ejecucion
    • Permite convertir el algoritmo de pseudocodigo a código C++
    • Ofrece un sistema de ayuda integrado acerca del pseudocódigo y el uso del programa
    • Incluye un conjunto de ejemplos de diferentes niveles de dificultad
    • Es multiplataforma (probado en Microsoft Windows, GNU/Linux y Mac OS X)
    • Es totalmente libre y gratuito (licencia GPL) 




            Excel

            Excel es un programa informático. Se trata de un software que permite realizar tareas contables y financieras, gracias a sus funciones desarrolladas específicamente para ayudar a crear y trabajar con hojas de calculo (permite manipular datos numéricos en tablas formadas por la unión de filas y columnas )


            Algunas Formulas mas utilizadas:

             =Suma (Rango)
            =Sumar.Si (Rango, Condición)
            =Promedio (Rango)
            =Promedio.Si (Rango, Condición)
            =Potencia (Base, Exponente)
            =Contar (Rango)
            =Contar.Si (Rango, Condición)
            =Redondear (Celdas, Cifras)
            =Truncar (Celda)
            =Max. (Rango)
            =Min. (Rango) 

            Existen muchas más, pero como dije anteriormente estas son las mas utilizadas.

            (Haz click en el link de abajo)
                                
            => Formulas y Funciones Básicas de Excel





            Gráficos 


            Gráficos de columna: Este tipo de gráfico hace un énfasis especial en las variaciones de los datos a través del tiempo. Las categorías de datos aparecerán en el eje horizontal y los valores en el eje vertical. Frecuentemente se compara este tipo de gráfico con los gráficos de barra, donde la diferencia principal es que en los gráficos de barra las categorías aparecen en el eje vertical.




            Gráficos de línea: Un gráfico de línea muestra las relaciones de los cambios en los datos en un período de tiempo. Este gráfico es comparado con los gráficos de área, pero los gráficos de línea hacen un énfasis especial en las tendencias de los datos más que en las cantidades de cambio como lo hacen los gráficos de área.



            Gráficos circulares: También conocidos como gráficos de pie (en inglés) o gráficos de pastel. Estos gráficos pueden contener una sola serie de datos ya que muestran los porcentajes de cada una de las partes respecto al total.





            Gráficos de Barra: Un gráfico de barra hace un énfasis en la comparación entre elementos en un período de tiempo específico. Este tipo de gráfico incluye cilindros, conos y pirámides.



            Gráficos de Área: Los gráficos de área muestran la importancia de los valores a través del tiempo. Un gráfico de área es similiar a un gráfico de línea, pero ya que el área entre las líneas está relleno, el gráfico de área le da una mayor importancia a la magnitud de los valores que lo que puede hacer un gráfico de línea.



            Gráficos XY (Dispersión): Los gráficos de dispersión son útiles para mostrar la relación entre diferentes puntos de datos. Este tipo de gráfico utiliza valores numéricos para ambos ejes en lugar de utilizar categorías en alguno de los ejes como en los gráficos anteriores.











            Operatoria de Sistemas Numéricos

            Suma :  0+0 = 0                                             Ejemplo:                 110110
                          0+1 = 1                                                                        +  110111
                          1+0 = 1                                                                           1101101          
                          1+1 = 0 (acarreo 1)


            Resta:   0-0 = 0                                              Ejemplo:              101101
                         0-1 = 1 (debo 1)                                                           -  11011
                         1-0 = 1                                                                             10010
                         1-1 = 0


            Multiplicación o Producto:
                       
                       0*0 = 0                                              Ejemplo:            1101*101
                       0*1 = 0                                                                         1101
                       1*0 = 0                                                                       0000-
                       1*1 = 1                                                                   + 1101--   
                                                                                                        1000001

            miércoles, 27 de agosto de 2014

            Sistema Númerico




            Ø  Son conjuntos de datos usados para representar cantidades, son 4 sistemas los más usados:
            1) Decimal.

            2) Binario.

            3) Octal.

            4) Hexadecimal.


            ·         Todos tienen base y cumplen con la notación posicional (la pasión de cada numero le da un valor o peso).

            El Primer dígito tiene un valor =B veces al valor del digito, y así el digito tiene en la pasión 
            n un valor = b A

            b= valor de la base. 

            n= número del dígito o posición

            Adígito



            Conceptos básicos y Componentes del computador




            1) Informática: Procesamiento automatizado de la información mediante dispositivos electrónicos y computacionales.


              2)Sistema Informático: Cumple tres tareas básicas.
             • Entrada (obtención de información)
            . • Procesamiento de datos.
             • Salida (genera resultados).
             Ejemplo: - Transporte (bip).
                           -Supermercado.


                              Componentes de un computador 


                               

            ·         Hardware: Componentes físicos y tangibles.
                               Ejemplo: -Monitor.
                                                        -Teclado.
                                                        -Mouse.

            -Periféricos de entrada: Mouse, teclado.

            -Periféricos de salida: Monitor, impresora.

            -Periféricos Mixtos: Modem, tarjetas de red.


            -Memoria:     
            Ø  RAM (Random Access Memory)

            Ø  ROM (Read only Memory)

            Ø  Caché: Pequeña, rápida, más cara, se úbica entre la memoria principal y la CPU.



            -Procesador: -Multiprocesamiento                    (Velocidad para procesar se
                 ↓↓           -Distribuida                                           mide en Hertz)   
              BATCH- online (tiempo real)                               Ejemplo: Intel         
                ↓↓                                                                        I7   3,7 GHZ
            Ejecuta por orden de                                                   I3  2,5 3GHZ
            Proceso en que lleguen.
                                                                                            
                               
            ·        Software: Componentes lógicos de un computador (programas).


             -Programas: Conjunto de instrucciones que permite que la maquina funcione.
            -Sistema Operativo: Programa o conjunto de programas destinada a GESTIONAR los recursos del computador.
            Ejemplo: -OS (Apple)                       -Windows
                             -Android                            -Unix (Linux y sus distribuciones)



            -Inteligencia Artificial: Campo de estudio que trato de aplicar los procesos del pensamiento humano usados en la solución de problemas.

            -Robótica: Arte y Ciencia de la Creación y empleo de robot.

            -Robot: Sistema de computación hibrido que realiza actividades físicas y de cálculos diseñados con Inteligencia Artificial.

            -Sistema Experto: Aplicación de I.A. que usa una base de conocimiento de la experiencia humana para ayudar en la resolución de problemas.


                                 


            Diagrama de Von Neumann




                                          


            • ALU: Unidad Aritmética lógica, encargada de realizar todas las operaciones, mat. Aritméticas.

             • UC: Unidad de Control, encargada de controlar los componentes del computador para realizar operaciones.

             • CPU: Unidad Central de Proceso (Central Process Unit), encargada de realizar cálculos y transformaciones de datos.

            Historia de la Computación


            *Se divide básicamente en 5 generaciones; él primer computador o instrumento parecido fue el “ábaco”. 


            1) Primera Generación (1938-1958): Los primeros computadores se fabricaron en U.S.A. y fueron diseñados con “TUBOS AL VACÍO”; eran de gran tamaño y muy costosos. Se programaban en lenguaje de maquinas, y la primera empresa que los creó fue IBM.
            • Se usaban tarjetas perforadoras para entrar datos de programas.
            • Se utilizó sistemas binarios para representar los datos. 


                                                     


            2) Segunda Generación (1958-1964): 
            -Disminuye el tamaño y aumenta el procesamiento.
             -Estaban construidos con circuitos de transistores (más rápidos, pequeños y confiables).
            -Ocupaban lenguaje de alto nivel (COBOL-FORTRAN). 


                                                    


            3) Tercera Generación (1964-1971):
            -Se fabrican en base a Circuitos Integrados.
             -Comienzan a aparecer las minicomputadoras, procesadores de texto y algunas planillas.
             -Se incorporan lenguaje que controla el sistema operativo. 


                                                        



            4) Cuarta Generación (1974-1988): 
            -Época de los microprocesadores.
             -Nace la revolución de la información (Apple). 


                                                             


            5) Quinta Generación (1983-Actualidad):
            -Procesamiento Paralelo.
            -Manejo de Lenguaje Natural y sistema de Inteligencia Artificial.
             -Nano-Procesadores
             -Celulares, maquinas de alto procesamiento.