La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

SISTEMAS NÚMERICOS E INTRODUCCION A LA PROGRAMACIÓN.

Presentaciones similares


Presentación del tema: "SISTEMAS NÚMERICOS E INTRODUCCION A LA PROGRAMACIÓN."— Transcripción de la presentación:

1 SISTEMAS NÚMERICOS E INTRODUCCION A LA PROGRAMACIÓN

2 Agenda Sistemas Númericos Conversiones entre sistemas númericos Representacion de la información. Codigo Ascii Metodologias de programacion Diagramas de flujo y pseudocódigo

3 Definiciones SISTEMA NÚMERICO Conjunto ordenado de símbolos llamados dígitos, con relaciones definidas para la suma (+), resta (-), multiplicación (x) y división (÷) BASE (r) El número de dígitos en un sistema numérico se denomina base. Las bases mas utilizadas en sistemas computacionales son las siguientes: BASESISTEMA NÚMERICO 2Binario 8Octal 10Decimal 16Hexadecimal Sistemas Númericos

4 NOTACIÓN 1 9 8 5. 2 5 6 Parte EnteraParte Fraccionaria Notación Posicional Notación Polinomial Sistemas Númericos

5 SISTEMA NUMÉRICO DECIMAL Es el sistema numérico más utilizado por el hombre en sus tareas de cálculo normales. Además es el sistema numérico de referencia para hacer cambios de base entre bases no comunes. Base 10 Dígitos 0, 1, 2, 3, 4, 5, 6, 7, 8 y 9 Sistemas Númericos

6 SISTEMA NUMÉRICO BINARIO El sistema binario es el usado por la mayoría de los computadores modernos. Los computadores representan los valores usando dos niveles de voltaje (Generalmente 0V para el digito binario ‘0’ y 3.3V o 5V para el digito binario ‘1’). También es común hacer referencia a los dígitos binarios como ALTO = ‘1’ y BAJO = ‘0’. Base 2 Dígitos‘0’ y ‘1’ (0V y 5V – BAJO y ALTO) Sistemas Númericos

7 SISTEMAS NUMÉRICO OCTAL El sistema octal es raramente usado en la actualidad. Base 8 Dígitos0, 1, 2, 3, 4, 5,6 y 7 Sistemas Númericos

8 SISTEMA NUMÉRICO HEXADECIMAL Uno de los principales problemas con el sistema binario es la verbosidad. Es decir que para escribir un número como 2800 se requieren 12 dígitos binarios. Por su parte el sistema decimal solo requiere 4 dígitos, lo cual lo convierte en un sistema más compacto. El sistema hexadecimal proporciona una compactación aún mayor además de presentar un paso directo desde el sistema binario. Base 16 Dígitos0, 1, 2, 3, 4, 5,6, 7, 8, 9, A, B, C, D, E, F Sistemas Númericos

9 CONVERSIONES BASE 10  BASE r Convertir (234) 10 a base 2 234 7 -234 0 3 -6 117 58 2 2 -116 1 2 29 -58 0 2 14 -28 1 2 -14 0 2 1 2 1 -2 1 Divisiones Sucesivas Se realizan divisiones consecutivas hasta que el cociente de la división sea menor que la base. Cociente < base TERMINAMOS El resultado de la conversión es: el ultimo cociente como bit más significativo (234) 10 = 11101010 Los dígitos restantes corresponden a los residuos de las divisiones en el orden inverso al que fueron obtenidos () 2 El procedimiento consiste en dividir la parte entera del número por la base del sistema numérico al que se desea pasar Sistemas Númericos

10 CONVERSIONES BASE r  BASE 10 Convertir (16435.62) 7 a base 10 16435.62 2 x 7 -2 6 x 7 -1 5 x 7 0 3 x 7 1 4 x 7 2 6 x 7 3 1 x 7 4 = 0.020482 = 0.142857 = 5 = 21 = 196 = 2058 = 2401 + 4681.163339 Notación Polinomial 2 x 7 -2 6 x 7 -1 5 x 7 0 3 x 7 1 4 x 7 2 6 x 7 3 1 x 7 4 m = -2 n = 4 a i x 7 i El procedimiento consiste básicamente en multiplicar cada uno de los dígitos por su peso correspondiente Finalmente hacemos la sumatoria de los productos + ++ + ++ El procedimiento anterior es equivalente al uso de la notación polinomial = pesos Sistemas Númericos

11 CONVERSION BINARIO  OCTAL Convertir (1101110001.1) 2 a base 8 Convertir (7341.53) 8 a base 2 0011101011.1 El procedimiento consiste en agrupar los bits en grupos de 3 Para la parte entera se agrupa de derecha a izquierda La parte fraccionaria se agrupa de izquierda a derecha BINARIOOCTAL 0000 0011 0102 0113 1004 1015 1106 1117 1 561 4. Finalmente usando una tabla de equivalencias, asignamos a cada grupo de bits el digito octal correspondiente El procedimiento consiste en usar la tabla de equivalencias para asignar un valor binario a cada digito octal 734153. 111011100001101011. (1101110001.1) 2 = (1561.4) 8 (7341.53) 8 = (111011100001.101011) 2 0000 Sistemas Númericos

12 CONVERSION BINARIO  HEXADECIMAL Convertir (1101111101.111101) 2 a base 16 Convertir (7AD.B) 16 a base 2 1101011111. 1111 DECI MAL BINA RIO HEX 000000 100011 200102 300113 401004 501015 601106 701117 810008 910019 101010A 111011B 121100C 131101D 141110E 151111F 37DF. 7ADB. 0111101011011011. (1101111101.111101) 2 = (37D.F4) 16 (7AD.B) 16 = (011110101101.1011) 2 01 4 El procedimient o consiste en usar la tabla de equivalencias para asignar un valor binario a cada digito octal Finalmente usando una tabla de equivalencias, asignamos a cada grupo de bits el digito octal correspondiente El procedimiento consiste en agrupar los bits en grupos de 4 La parte fraccionaria se agrupa de izquierda a derecha La parte entera se agrupa de derecha a izquierda 00 00 Sistemas Númericos

13 ORDEN DE CONVERSIONES  Binario  Hexadecimal ase N  Decimal  Base M Sistemas Númericos

14 Codigo ASCII El código de caracteres más utilizado en las aplicaciones de cómputo es el código ASCII (siglas en Ingles de Código Estándar Americano para Intercambio de información). Para la representación de los caracteres el código ASCII utiliza 7 bits, para un total de 128 caracteres posibles. CarácterCódigo binarioCódigo hexadecimal D100010044 A100000141 g110011167 i110100169 t111010074 a110000161 5011110035 Código Ascii

15 Ejercicios Consulte el codigo ascii de las letras de su nombre y exprese cada letra en decimal, en binario y en Hexadecimal. Suponga que su cédula está en codigo ascii, represente cada digito en binario. Suponga que su cédula esta en formato decimal, expreselo en formato binario y hexadecimal. Haga ejercicios de conversion de bases.

16 INTRODUCCIÓN A LA PROGRAMACIÓN

17 Problema de la Programación Lenguaje Humano Lenguaje de Programación Lenguaje de Máquina PROGRAMADOR (Ideas) MÁQUINA (1000110) Metodología

18 SOLUCION DE PROBLEMAS Metodología

19 METODOLOGÍA DE PROGRAMACIÓN Análisis del problema. Diseño. Prueba y Verificación. Codificación. Depuración y refinamiento. Metodología

20 Análisis del problema Entender de manera clara el problema que se esta resolviendo. Esta fase concuerda con el proceso de identificación de variables conocidas, variables desconocidas y condiciones usado en la sección de problemas. Metodología

21 Especificación del problema La especificación de un problema se hace mediante una descripción clara y precisa de: Las entradas que el problema recibirá. Las salidas que dan solución al problema. Las condiciones, es decir la dependencia que mantendrán las salidas obtenidas con las entradas recibidas. Metodología

22 Ejemplo de Especificación ENTRADAS: La cantidad de conejos y la cantidad de gansos. SALIDAS: La cantidad total de animales, cantidad de patas totales. CONDICIONES: La suma de conejos y gansos es igual a cincuenta. La suma de las patas de los conejos (cuatro por cada uno) y de los gansos (dos por cada uno) es igual a ciento cuarenta. Metodología

23 Ejemplo de Especificación Problema Construir un algoritmo que determine el mayor de tres números enteros. Especificación: ENTRADAS: A,B,C (números de entrada) de tipo entero. SALIDAS: Mayor (valor mayor) de tipo entero. CONDICIONES: Mayor debe ser el valor máximo de A, B y C. Metodología

24 Diseño La fase de diseño del algoritmo, es la fase en la que se construye el algoritmo que permitirá encontrar la solución al problema. La forma adecuada de realizar este proceso es subdividir el proceso. Metodología

25 Ventajas de la división Al dividir el problema en módulos o partes se comprende más fácilmente Al hacer modificaciones es más fácil sobre un módulo en particular que en todo el algoritmo. En cuanto a los resultados, se probarán mucho mejor comprobando si cada módulo da el resultado correcto que si se intenta probar de un golpe todo el programa Metodología

26 División Metodología

27 Prueba de Escritorio y Refinamiento Proceso de seguimiento del algoritmo para verificar que cumple con la especificación. Si no se cumple con la especificación se va refinando hasta lograr el objetivo. Metodología

28 CODIFICACIÓN Proceso en el cual se escribe el algoritmo en lenguaje de programación, utilizando el editor del compilador. Metodología

29 DEPURACIÓN Y REFINAMIENTO Proceso en el cual se corrigen los errores de sintaxis y de lógica del programa, hasta lograr que el programa ejecute. Eficacia. "También se espera que un algoritmo sea eficaz, en el sentido de que todas las operaciones a realizar en un algoritmo deben ser suficientemente básicas como para que en principio puedan ser hechas de manera exacta y en un tiempo finito por un hombre usando lápiz y papel". Metodología

30 ALGORITMO X Preciso. X Definido o determinístico. X Finito. Problema  Algoritmo  Programa

31 Medios de expresión de un algoritmo lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las descripciones en lenguaje natural tienden a ser ambiguas y extensas. Algoritmos

32 Ejemplo Un estudiante se encuentra en su casa (durmiendo) y debe ir a la universidad (a tomar la clase de Informatica!!), ¿Que debe hacer el estudiante? 1. Dormir. 2. Hacer 1 hasta que suene el despertador (o lo llame la mamá). 3. Mirar la hora. 4. Hay tiempo suficiente? 4.1 Si, entonces 4.1.1 Bañarse 4.1.2 Vestirse 4.1.3 Desayunar 4.2 No, 4.2.1 Vestirse Solución Algoritmos

33 Solucion(2) 5. Lavarse los dientes 6. Hay tiempo suficiente? 6.1. Si, Caminar al paradero. 6.2. No, Correr al paradero. 7. Hasta que pase un bus para la universidad hacer: 7.1. Esperar el bus 7.2. Ver a las demás personas como esperan un bus. 8. Tomar el bus. 9. Mientras que no llegue a la universidad 9.1. Seguir en el bus. 9.2.Hacer fuerza para que el bus llegue rapido. 10. Timbrar 11. Ingresar a la Universidad. Algoritmos

34 Estructura Básica inicio datos de entrada procesamiento de los datos datos de salida fin Algoritmos

35 ALGORITMO Entrada. "Un algoritmo tiene cero o más entradas: cantidades que le son dadas antes de que el algoritmo comience, o dinámicamente mientras el algoritmo corre. Estas entradas son tomadas de conjuntos específicos de objetos". Salida. "Un algoritmo tiene una o más salidas: cantidades que tienen una relación específica con las entradas". Algoritmos

36 Componentes Básicas Variables: Espacios de trabajo reservados para guardar datos (valores). El valor de una Variable puede cambiar en algún paso del Algoritmo o permanecer invariable. Constantes: Consisten en datos que, luego de ser asignados, no cambian en ninguna instrucción del Algoritmo. Utilizadas por ejplo. para almacenar constantes matemáticas (pi). Nombre (identificador) Valor apellidoLópez saldo20000 tamaño8.5 esTriángulo SI Algoritmos

37 Componentes Básicas(2) Identificadores: son nombres que se dan a los elementos utilizados para resolver un problema y poder diferenciar unos de otros. Pueden estar formados por una combinación de letras y números. Palabras reservadas (primitivas): Todos los lenguajes de programación definen unas palabras para nombrar sus comandos, instrucciones y funciones(Matematicas,…). PROCESOS:Se llama procesos a todas las instrucciones contenidas en un algoritmo. Algoritmos

38 Componentes Básicas(3) OPERADORES: Son símbolos que sirven para manipular o transformar datos. Aritmeticos, Logicos, relacionales. OperadorOperaciónEjemploResultado ^Potencia2^416 *Multiplicación2*3468 /División24/38 +Suma3+47 -Resta5-23 …. Algoritmos

39 REPRESENTACIÓN DE ALGORITMOS Descripción Inicial. Se establece el problema, se selecciona un modelo matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones y omitiendo detalles. Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que encuentran la solución. Diagramas de flujo, Pseudo Código Implementación. Se muestra el algoritmo expresado en un lenguaje de programación específico o algún objeto capaz de llevar a cabo instrucciones. Algoritmos

40 PSEUDO CÓDIGO Esquema de representación de algoritmos que usa un subconjunto del lenguaje natural del diseñador de algoritmos. Elimina posibles ambigüedades empleando una notación que aunque libre es más restringida que la del lenguaje natural. leer A, B, C si A>B si A>C Mayor  A sino Mayor  C fin_si sino si B>C Mayor  B sino Mayor  C fin_si escribir Mayor Algoritmos

41 DIAGRAMA DE FLUJO Esquema de representación gráfico de algoritmos. Usa elementos gráficos como rectángulos y rombos. Se pueden usar operaciones matemáticas. Algoritmos

42 DIAGRAMA DE FLUJO(2) Inicio o fin del programa Pasos, procesos o líneas de instrucción de programa de computo Operaciones de entrada y salida Toma de desiciónes y Ramificación Líneas de flujo Display, para mostrar datos Algoritmos

43 Ejemplo Escribir un procedimiento que se llame triangulo para hallar el área de un triángulo rectángulo dado su base y su altura. Introducir en el código comentarios que aclaren lo que está sucediendo en cada uno de los pasos importantes. ANÁLISIS DEL PROBLEMA Formular el problema: Ya se encuentra claramente planteado. Resultados esperados: El área de un triángulo rectángulo. Datos disponibles: Base, Altura, Hipotenusa, tipo de triángulo. La incógnita es el área. El estudiante debe preguntarse si sus conocimientos actuales de matemáticas le permiten resolver este problema; de no ser así, debe plantear una estrategia para obtener los conocimientos requeridos. Restricciones: Datos reales positivos, se obviará esta restricción. Procesos necesarios: Guardar en dos variables (base y altura) los valores de Base y Altura; Guardar en una constante (DIV) el divisor 2; aplicar la fórmula BASE*ALTURA/DIV y guardar el resultado en la variable AREA; desplegar el resultado (AREA). Algoritmos

44 Diagrama y pseudoCodigo //Seudocodigo Area Triangulo INICIO div 2 // constante div vale 2 LEA base // Lee el valor de la base LEA altura area= (base *altura)/ div //Calcula el area IMPRIMA area //Muestra el valor del area FIN Algoritmos

45 Revise Estructuras de programación Secuenciales Condicionales Ciclicas.

46 Ejercicios Realice el diagrama de flujo y el seudocodigo de los siguientes problemas. 1. Dado el perimetro de una circunferencia halle su radio. 2. Dada el área de un cuadrado muestre la longitud de su diagonal. 3. Dada la distancia de recorrido de un automovil y el tiempo que gasto en hacerlo, calcule la velocidad de éste.

47 Bibliografia Oviedo, Efrain. Algoritmos Estructurados. www.google.com

48 GRACIAS POR SU ATENCIÓN


Descargar ppt "SISTEMAS NÚMERICOS E INTRODUCCION A LA PROGRAMACIÓN."

Presentaciones similares


Anuncios Google