Algoritmos y programación

Comienza Ya. Es Gratis
ó regístrate con tu dirección de correo electrónico
Algoritmos y programación por Mind Map: Algoritmos y programación

1. Informática

1.1. Conjunto de conocimientos científicos que permiten el tratamiento automático de la información por medio de ordenadores

1.1.1. Existen dos tipos de información

1.1.1.1. Los datos: Conjunto de símbolos que utilizamos para expresar un valor numérico en la forma adecuada

1.1.1.2. Las instrucciones: Son indicaciones que recibe la computadora que debe realizar y los datos son los elementos sobre los que actúan o generan las instrucciones

1.2. Representación de la información

1.2.1. Se almacena dentro de ellas de forma codificada que solo usa dos símbolos 0 y 1

1.2.2. BIT

1.2.2.1. Unidad elemental de la información que equivale a un valor binario (0 y 1).

1.2.2.2. La información es representada por caracteres que se representan con bits, es decir, código binario

1.2.3. Byte

1.2.3.1. Numero de bits necesarios para almacenar un carácter

1.2.3.2. Múltiplos del byte

1.2.3.2.1. 1 Kbyte (KB): 210 bytes 1 Megabyte (MB): 210 KB=220 bytes 1 Gigabyte (GB): 210 MB=230 bytes 1Terabyte (TB): 210 GB=240 bytes

1.3. Estructura del computador

1.3.1. Unidad de entrada

1.3.1.1. Es por donde se introducen tanto datos como instrucciones

1.3.1.2. Teclado, scanner, unidad de disco, entre otras

1.3.2. Unidad de salida

1.3.2.1. Es donde se obtienen los resultados de los programas ejecutados en el computador

1.3.2.2. Monitor, impresora, plotter, entre otras

1.3.3. Perifericos

1.3.3.1. Memoria

1.3.3.1.1. Es donde se almacenan los datos y las instrucciones

1.3.3.1.2. Podemos distinguir dos tipos de memorias

1.3.4. Otra unidad de información

1.3.4.1. La Palabra

1.3.4.1.1. Esta formada de un numero entero de bits (8, 16, 32, etc...) y esto indica el tamaño de los datos transferidos entre CPU y memoria

1.3.4.1.2. La longitud de la palabra determina la precisión de los cálculos y la variedad del repertorio de instrucciones

1.3.4.2. Factores para establecer la potencia de una computadora

1.3.4.2.1. La longitud de palabras

1.3.4.2.2. El tiempo de ciclo del reloj (UC)

1.3.4.2.3. La capacidad de memoria

2. Tipos de datos y operadores

2.1. Para que una computadora tenga una razón de ser se deben realizar software que permitan el ingreso de datos

2.1.1. Los datos que se ingresan a una computadora son

2.1.1.1. Numéricos

2.1.1.1.1. Están representados por

2.1.1.2. Lógicos

2.1.1.2.1. Solo puede tomar dos valores

2.1.1.3. Carácter

2.1.1.3.1. Representan datos alfanuméricos

2.2. Variables y constantes

2.2.1. Variable

2.2.1.1. Contiene valores que pueden cambiar durante el desarrollo del algoritmo

2.2.1.2. Los tipos de variables determinan como se manipulara la información contenida en estas

2.2.1.3. Existen dos tipos de variables

2.2.1.3.1. Variables locales

2.2.1.3.2. Variables globales

2.2.2. Constantes

2.2.2.1. Contiene valores que no cambian a lo largo de la ejecución de un algoritmo

2.2.3. Existen reglas

2.2.3.1. Deben iniciar con una letra

2.2.3.2. No deben contener símbolos ni signos de puntuación

2.2.3.3. No deben contener espacios en blanco

2.2.4. Mod

2.2.4.1. Obtiene la parte entera de una division

2.2.5. Las operaciones que se realicen están definidas por una serie de operadores

2.2.5.1. Aritméticos

2.2.5.1.1. Potencia ^

2.2.5.1.2. Producto *

2.2.5.1.3. División /

2.2.5.1.4. Suma +

2.2.5.1.5. Resta -

2.2.5.1.6. Div

2.2.5.2. Alfanuméricos

2.2.5.2.1. Concatenación

2.2.5.2.2. Ejem: 'CE'+'LU'+'LAR' || v CELULAR

2.2.5.3. Relacionales

2.2.5.3.1. Igual a =

2.2.5.3.2. Menor que <

2.2.5.3.3. Mayor que >

2.2.5.3.4. Menor o igual que <=

2.2.5.3.5. Mayor o igual que >=

2.2.5.3.6. Distinto a <>

2.2.5.4. Lógicos

2.2.5.4.1. Negación Not no

2.2.5.4.2. Conjunción / producto And y

2.2.5.4.3. Disyunción / suma Or o

2.2.5.5. Paréntesis

2.2.5.5.1. Permite alterar el orden en que se realizan las diferentes operaciones

2.2.5.5.2. Ej: A/(2*b)

2.2.5.5.3. Serie de reglas que permiten determinar el orden de las operaciones

3. Lenguaje de programación

3.1. Programa destinado a la construcción de programas informaticos

3.2. Compuesto por símbolos y reglas sintácticas y semánticas

3.3. Permite el trabajo conjunto y coordinado

3.4. Tipos de lenguaje

3.4.1. Lenguaje maquina

3.4.1.1. Todo se programa en base al sistema binario (0 y 1)

3.4.2. Lenguaje de bajo nivel

3.4.2.1. Diseñados para un hardware especifico no pueden exportarse a otros computadores

3.4.2.2. Utiliza abreviaturas (mnemotecnico)

3.4.3. Lenguajes de nivel medio

3.4.3.1. Permite operaciones de alto nivel y a la vez gestión local de la arquitectura del sistema

3.4.4. Lenguaje alto nivel

3.4.4.1. Aspiran a ser un lenguaje mas universal

3.4.4.2. Puede emplearse en varios tipos de sistemas

3.4.4.3. Es el mas cercano al lenguaje humano

4. Lenguaje a desarrollar

4.1. Pseint

4.1.1. Software libre educativo creado en Argentina

4.1.2. Utilizado por estudiantes que inician en la programación

4.1.3. Representación

4.1.3.1. INICIO o FIN

4.1.3.2. LEER

4.1.3.3. CALCULAR o ASIGNAR

4.1.3.4. ESCRIBIR

4.2. DFD

4.2.1. Ayuda a diseñar algoritmos en diagramas de flujo

4.2.2. También se utiliza para la visualización de procesamiento de datos

4.2.3. Representación

4.2.3.1. Inicio

4.2.3.2. Cuadrado diagonal (lectura)

4.2.3.3. Realizar operaciones

4.2.3.4. Escribir, mostrar o imprimir información

4.3. C++

4.3.1. Es llamado el lenguaje de programación multiparadigma porque permite la manipulación de objetos

4.3.2. Es un lenguaje híbrido

4.3.3. Representación de los datos

4.3.3.1. Carácter

4.3.3.1.1. Tipo

4.3.3.2. Entero

4.3.3.2.1. Tipo

4.3.3.3. Real

4.3.3.3.1. Tipo

4.3.4. Operaciones

4.3.4.1. Suma +

4.3.4.2. Resta -

4.3.4.3. Multiplicación *

4.3.4.4. División (real) /

4.3.4.5. División (residuo) %

4.3.4.6. Potencia pow(x,y)

4.3.4.7. Raiz cuadrada sqrt(x)

4.3.4.8. Mayor que >

4.3.4.9. Menor que <

4.3.4.10. Mayor igual >=

4.3.4.11. Menor igual <=

4.3.4.12. Comparación ==

4.3.4.13. Distinto a !=

4.3.4.14. Conector Y &&

4.3.4.15. Conector O ||

4.3.4.16. Conector NO !

4.3.5. Sintaxis

4.3.5.1. Escribir: cout<<

4.3.5.2. Leer: cin>>

4.3.5.3. Mostrar: Cout<<

4.4. Matlab

4.4.1. Sistema de computo numérico totalmente integrado para llevar a cabo proyectos en donde se encuentren elevados cálculos matemáticos

4.4.2. Tiene lenguaje de programación propio

4.4.3. Operaciones

4.4.3.1. Suma +

4.4.3.2. Resta -

4.4.3.3. Multiplicación *

4.4.3.4. División (real) /

4.4.3.5. División (residuo) MOD

4.4.3.6. Potencia X^Y

4.4.3.7. Raiz cuadrada sqrt(x)

4.4.3.8. Mayor que >

4.4.3.9. Menor que <

4.4.3.10. Mayor igual >=

4.4.3.11. Menor igual <=

4.4.3.12. Comparación =

4.4.3.13. Distinto a ~=

4.4.3.14. Conector Y &&

4.4.3.15. Conector O ||

4.4.3.16. Conector NO NOT

4.4.4. Sintaxis

4.4.4.1. Escribir

4.4.4.1.1. disp('');

4.4.4.1.2. fprintf('');

4.4.4.2. Leer

4.4.4.2.1. input('');

4.4.4.3. Mostrar

4.4.4.3.1. disp('');

4.4.4.3.2. fprintf('');

4.5. VBA (Visual Basic Application)

4.5.1. Lenguaje de Macros de Microsoft Visual Basic que es utilizado para programas aplicaciones Microsoft

4.5.2. Permite crear aplicaciones para automatizar las tareas cotidianas

4.5.3. Representación de datos

4.5.3.1. Carácter

4.5.3.1.1. Tipo

4.5.3.2. Entero

4.5.3.2.1. Tipo

4.5.3.3. Real

4.5.3.3.1. Tipo

4.5.4. Operaciones

4.5.4.1. Suma +

4.5.4.2. Resta -

4.5.4.3. Multiplicación *

4.5.4.4. División (real) /

4.5.4.5. División (residuo) MOD

4.5.4.6. Potencia X^Y

4.5.4.7. Raiz cuadrada sqrt(x)

4.5.4.8. Mayor que >

4.5.4.9. Menor que <

4.5.4.10. Mayor igual >=

4.5.4.11. Menor igual <=

4.5.4.12. Comparación ==

4.5.4.13. Distinto a <>

4.5.4.14. Conector Y AND

4.5.4.15. Conector O OR

4.5.4.16. Conector NO ~

4.5.5. Sintaxis

4.5.5.1. Escribir

4.5.5.1.1. Etiquetas

4.5.5.1.2. Cuadro de textos

4.5.5.1.3. MsgBox

4.5.5.2. Leer

4.5.5.2.1. Cuadro de textos

4.5.5.2.2. InputBox

4.5.5.3. Mostrar

4.5.5.3.1. Etiquetas

4.5.5.3.2. Cuadro de textos

4.5.5.3.3. MsgBox

4.6. Recomendación para programar

4.6.1. INICIO #include <cstdlib> #include <iostream> #include <math.h> using namespace std; int main(int argc, char *argv[]) { DESARROLLO DEL ALGORITMO FIN system ("PAUSE"); return EXIT_SUCCESS; }

5. Algoritmo

5.1. Conjunto de instrucciones que le dicen a la computadora como ejecutar o resolver cualquier problema de tipo dado.

5.2. Permite el análisis lógico- conceptual de un problema

5.3. ¿Cómo se aplica?

5.3.1. Expresando la secuencia de operadores que llevan a la solución del problema

5.3.2. Considerando todas las posibilidades lógicas del problema

5.3.3. Considerando relaciones y restricciones pertinentes del problema

5.4. Caracteristicas

5.4.1. Es ordenado

5.4.1.1. Los pasos siguen un orden

5.4.2. Es preciso

5.4.2.1. Los pasos no deben ser confusos

5.4.3. Es finito

5.4.3.1. El procedimiento tiene un principio y un fin

5.4.4. Es definido

5.4.4.1. Si se obtienen los mismos datos de entrada se obtiene la misma salida

5.5. Un buen algoritmo exige

5.5.1. Dominio del problema que se intenta resolver

5.5.2. Abstracción y lógica

5.5.3. Imaginación y cratividad

5.5.4. Dominio de la técnica de programación

5.6. Construcción de un algoritmo

5.6.1. Entrada de datos

5.6.2. Datos capturados

5.6.3. Procesamiento Calculo

5.6.4. Muestran Imprimen Transmiten

5.6.5. Salida

6. Problema

6.1. Análisis del Problema

6.1.1. Identificación de variables y constantes

6.1.2. Estructura y datos de Entrada y Salida

6.1.3. Restricciones y operaciones matemáticas

6.2. Pasos para resolver un problema

6.2.1. Entender el problema

6.2.2. Identificar constantes y variables

6.2.3. Identificar procesos de transformación

6.2.4. Establecer una estrategia de solución

6.2.5. Representar del problema

6.2.6. Codificar el algoritmo en un lenguaje a desarrollar

6.2.7. Ejecutar el programa con base a los resultados obtenidos

7. ¿Cómo representar los algoritmos?

7.1. Estructuras

7.1.1. Secuenciales

7.1.1.1. Una acción sigue a otra en el orden que esta escrita

7.1.1.2. Inicio Acción 1 Acción 2 . Acción n Fin

7.1.2. Condicionales

7.1.2.1. Grupo de instrucciones que se pueden ejecutar o no en función del valor de una condición

7.1.2.2. Si <condicion> Entonces <instrucciones> FinSi

7.1.2.3. Tipos de condicionales

7.1.2.3.1. Simples

7.1.2.3.2. Dobles

7.1.3. Repetitivas