Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Introduccin
El objetivo de esta sesin consistir en explicar los conceptos de algoritmo, programa y lenguaje de programacin. As como explorar otros temas concurrentes.
Temtica
Sistemas de procesamiento de informacin. Concepto de Algoritmo. Lenguaje de programacin. Datos, tipos de datos y operaciones primitivas. Constantes y variables. Expresiones. Funciones intrnsecas. Asignacin. Entrada y salida de informacin.
Un sistema de esta clase se define como un conjunto de componentes interconectados entre s que transforman datos en informacin organizada, significativa y til.
Esquemticamente
Datos
Procesador
Informacin
Un algoritmo consiste en el grupo de instrucciones que definen la secuencia de operaciones a realizar para resolver un sistema especfico o clase de problema.
Conceptos importantes
Hardware: grupo de componentes fsicos de una computadora. Software: conjunto de programas que controlan el funcionamiento de una computadora
2. Concepto de Algoritmo
La metodologa de la programacin es aquella que es necesaria para resolver problemas mediante programas, su eje es el algoritmo.
Problema
Programa
Caractersticas algoritmos
de
los
Preciso, indicar el orden de cada paso. Definido, el mismo resultado se obtendr al ejecutar el algoritmo n ocasiones. Finito, deber terminar en algn momento.
Inicio. Leer el pedido. Examinar el historial crediticio del cliente Si el cliente es solvente, entregar el pedido. En caso contrario, rechazarlo. Fin
Ejemplo
s s s s s s
2.2
Ejemplo 2.3 Genere un algoritmo que determine al mayor de tres nmeros enteros.
Inicio Leer los nmeros y guardarlos en NUM1, NUM2 y NUM3 respectivamente Comparar NUM1 y NUM2, el nmero mayor se guarda en AUX. Comparar AUX y NUM3, imprimir el nmero mayor. Fin.
Tarea
2.1
Tarea
2.2
Tarea
2.3
de
el procesador de datos es una computadora entonces el algoritmo de solucin se expresa en un programa. Por tanto, un programa es escrito en un lenguaje de programacin. Luego, la programacin consiste en expresar las operaciones en forma de programa de un algoritmo.
Tipos de lenguajes
Mquina; Bajo
nivel (ensamblador); escrito en nemotcnicos. nivel; diseados para ser entendidos por el ser humano.
Alto
Instrucciones bsicas
Entrada/Salida; transferencia de informacin entre dispositivos perifricos y memoria central. Aritmtico/Lgicas; ejecutan operaciones de stos tipos. Selectivas; seleccionan tareas en funcin de los resultados Repetitivas; permiten la iteracin de secuencias de instrucciones un nmero dado de veces
Programa fuente
del
Programa fuente
Compilador (Compiler)
Datos primitivos
Datos
Numrico
Carcter
Lgico
Entero
Real
5. Constantes y Variables
Constantes: valores que durante la ejecucin de un programa no cambian su valor. Variables: valores que cambiarn durante la ejecucin del programa
6. Expresiones
Se
definen como una combinacin de constantes, variables, smbolos de operacin, parntesis, y nombres de funciones especiales. Una expresin consta de operandos y operadores. Las expresiones se clasifican en aritmticas, lgicas y carcter.
Expresiones aritmticas
Operador ** + * / Div Mod Significado Exponenciacin Suma Resta Multiplicacin Divisin Divisin entera mdulo Tipo de operandos Entero o real Entero o real Entero o real Entero o real Real Entero Entero Tipo resultado Entero o real Entero o real Entero o real Entero o real Real Entero Entero
Reglas de prioridad
Operador Parentesis Exponencial Multi, divide Div y mod Ms y menos Grfo ( ) ** *, / Div, mod +, -
Operadores de relacin
Expresin 1 Operador de relacin Expresin 2 Operador < > = <= >= <>,!= Significado Menor Mayor Igual Menor o igual Mayor o igual Distinto
Operadores lgicos
Operador lgico Not And Or Expresin lgica Not p PyQ PoQ Significado Negacin Conjuncin disyuncin
7. Funciones Intrnsecas
Funcin Abs(x) Arctan(x) Cos(x) Exp(x) Ln(x) Log10(x) Round(x) Sin(x) Sqr(x) Sqrt(x) Trunc(x) Descripcin Absoluto Tangente inversa Coseno Exponencial Log neperiano Log decimal Redondeo Seno Cuadrado Raz cuadrada Truncamiento
8. Operacin de Asignacin
Es
la forma de darle valores tanto a variables como constantes, se representa con el smbolo
Tipos de asignacin
Aritmtica Lgica Cadena
de carcteres
La operacin de lectura READ permite el ingreso de los datos necesarios para los clculos computacionales. La operacin de escritura WRITE imprime la informacin procesada por el programa y su respectivo algoritmo.
12/03/12
32
INDICE
OBJETIVO SOLUCION
DE PROBLEMAS ANALISIS DEL PROBLEMA DISEO DEL ALGORITMO SOLUCION DEL PROBLEMA MEDIANTE COMPUTADORA REPRESENTACION GRAFICA DE ALGORITMOS PSEUDOCODIGO
12/03/12 33
2.1 OBJETIVO
EXPONER
12/03/12
34
Fases de fragmentacin:
Anlisis del problema: definicin concisa a fin de que sea analizado en todo detalle. Diseo del algoritmo: procedimiento, paso a paso, para la solucionar el problema dado. Solucin del algoritmo con la computadora: codificacin del algoritmo en un lenguaje de programacin
35
12/03/12
propsito es ayudar al programador a llegar a un cierto grado de comprensin de la naturaleza del problema. buena definicin del problema, junto con una descripcin detallada de entrada y salida, son los requisitos ms importantes para una solucin eficaz.
36
Una
12/03/12
valores de los lados (variable LADO1 y variable LADO2). Salida: valor de la hipotenusa (variable LADO3). Variables: LADO1, LADO2 y LADO3 (tipo reales).
La informacin proporcionada al algoritmo constituye su entrada y la informacin producida constituye su salida. Los problemas complejos se resuelven eficazmente si se fragmentan en subproblemas que sean ms sencillos de solucionar que el original. Esta tcnica es conocida como divide y vencers (divide and conquer).
descomposicin del problema original en subproblemas cuya solucin puede implementarse a travs de la computadora se le denomina diseo descendente (top down design) La descripcin detallada de la solucin mediante pasos especficos se le denomina refinamiento del algoritmo (stepwise refinement).
Sumatoria
Inicio Total=0, Num=9, Limite=90 Print Num Total=Total+Num Si Num <= Limite entonces Num=Num+9 y regresar a 3 Print Total Fin
tarea
Determine si una palabra es un palndromo. 2. Determine el mximo comn divisor para dos nmeros enteros. 3. Lea e imprima una serie de nmeros distintos de cero. El algoritmo terminar con un valor que no se debe imprimir . Finalmente obtenga la cantidad de valores ledos.
1.
tarea
4. Imprima y sume la serie de nmeros mltiplos de 3 en el rango cerrado de 3 y 99. 5. Lea cuatro nmeros e imprima el mayor de ellos. 6. Calcule la superficie de un triangulo en funcin de la base y la altura.
Una vez diseado el algoritmo y representado mediante una herramienta de programacin se debe:
Solucin del Problema por Computad Ejecucin ora del programa
2.7 PSEUDOCODIGO
Es
un lenguaje de especificacin de algoritmos que permite una codificacin rpida y simple. Su ventaja radica en que el programador no debe preocuparse por la sintaxis de un lenguaje de programacin en particular. Utiliza palabras sencillas de entender para codificar programas.
ESTRUCTURA DE UN PROGRAMA
Concepto de Programa
Conjunto de instrucciones que producirn la ejecucin de una determinada tarea. Esencialmente es un medio para lograr un fin.
PROCESO DE PROGRAMACION
Consiste en la solucin de problemas y el desarrollo de programas
Partes de un programa
concepto de caja negra
Entrada Algoritmo Salida
Tipos de Instrucciones
(acciones que resuelven un problema)
De
Otros elementos
Iteraciones, Contadores, Acumuladores, Interruptores, Estructuras: Secuenciales, Selectivas, Repetitivas.
Iteraciones
Es el segmento de un algoritmo o programa, cuyas instrucciones se repiten un nmero determinado de veces mientras se cumple una determinada condicin. Sus partes son: decisin cuerpo del bucle salida
Contadores
Un contador es una variable cuyo valor se incrementa o decrementa en una cantidad constante en cada iteracin.
Acumuladores
Un Acumulador es una variable cuya misin es almacernar cantidades distintas resultantes de sumas sucesivas.
Interruptores
Un interruptor ( conmutador, bandera, flag) es una variable que puede tomar diversos valoresdurante la ejecucin de un programa y que permite comunicar informacin desde una parte a otra del mismo.
Componentes de un algoritmo
Algoritmo
Cabecera del programa Seccin de declaracin Seccin de acciones
PROGRAMACIN ESTRUCTURADA
Tcnicas de Programacin...
modular: Descomposicin del problema en mdulos. estructurada: Programacin de cada mdulo mediante mtodos estructurados.
Programacin Programacin
Consideraciones .
Mdulo principal. Submdulo impresin de ttulos Submdulo de lectura de datos Submdulo ejecucin de procesos Submdulo impresin de resultados
de tcnicas que reducen el tiempo requerido para escribir, verificar, depurar y mantener los programas. Mediante el uso de:
recursos abstractos, diseo descendente, estructuras bsicas.
Recursos Abstractos
Consiste en descomponer una determinada accin compleja en un nmero de acciones ms simples, capaces de ser ejecutada por una computadora y sus respectivas instrucciones.
Diseo Descendente
TOP-DOWN DESIGN
Esta metodologa efecta una relacin de refinamiento entre las distintas etapas de estructuracin, de modo que se relacionen unas con otras, mediante entradas y salidas de informacin. Descompone el problema en etapas o estructuras jerrquicas, de modo que se pueda considerar cada estructura desde dos puntos de vista: qu hace y cmo lo hace
Diseo Descendente
Desde el exterior ..
Diseo Descendente
Desde el interior ..
Estructuras bsicas
Teorema de la programacin estructurada: Un programa propio es aquel que cumple las siguientes caractersticas: secuenciales, selectivas, y repetitivas. posee un solo punto de entrada y salida. se puede recorrer toda la estructura del programa modular. todas las instrucciones son ejecutables y no existen bucles infinitos.
Instrucciones Secuenciales
FIN