22
BASES FUNDAMENTOS DE PROGRAMACION

Introduccion a Los Algoritmos

Embed Size (px)

DESCRIPTION

ad

Citation preview

  • BASES FUNDAMENTOS DE PROGRAMACION

  • Agenda:

    Desarrollo del Tema Trabajo y Actividades

  • Algoritmos:Es un conjunto finito de instrucciones o pasos que sirven para ejecutar una tarea o resolver un problema. En s algoritmo es una secuencia de pasos lgicos que permite la solucin de un problema.

    Ejemplos vida cotidiana: Asistir a la clase de fundamentos de Programacin. Cambiar la llanta de un carro.Para cocinar.

    ndole Matemtico:Resolver operaciones matematicas.

  • Algoritmos: CaractersticasLos algoritmos deben ser: Definido, preciso y finito.

    Definido: Si se sigue el mismo proceso mas de una vez llegaremos al mismo resultado. Preciso: debe indicar de realizacin de cada paso. Finito: Debe tener un determinado numero de pasos; debe terminar en algn momento de lo contrario se puede llegar a un ciclo infinito de ejecucin.

  • Algoritmos:La mayora de los algoritmos de utilidad al programador poseen 3 partes principales:

    Algoritmo

    Entrada de Datos

    Procesamiento de Datos

    Salida de Resultados

  • FUNDAMENTOS DE PROGRAMACIONAlgoritmos:Los algoritmos pueden representarse a travs de un conjunto de palabras por medio de las cuales se puede representar la lgica de un programa. Este conjunto de palabras constituyen lo que se conoce como pseudocdigo. Adems, los algoritmos se pueden representar grficamente a travs de un diagrama de flujo.

  • Solucin de Problemas:Pasos para la solucin de un problema:

    Anlisis del problema. Diseo del Algoritmo. Solucin del algoritmo en la computadora.Anlisis del problema.

  • Solucin de Problemas:Diseo del Algoritmo:Creacin de los pasos sucesivos que indican las instrucciones a ejecutar. Consiste en realizar una descripcin paso a paso.Solucin del Problema - Computadora:Se compone de: Codificacin del algoritmo en un programa Ejecucin del programa. Comprobacin del programa.

  • Tipos de Datos:Los datos son los objetos sobre lo que opera una computadora. Los tipos de datos que manipulan las computadoras se clasifican datos simples y datos estructurados.

  • Tipos de Datos:Arrays ( vectores matrices)Registros FicherosConjuntos Cadenas

  • Operadores:Si analizamos la sentencia siguiente: var1 = var2 + var3

    Estamos dicindole al programa, por medio del operador +, que compute la suma del valor de dos variables , y una vez realizado sto asigne el resultado a otra variable var1. Esta ltima operacin (asignacin) se indica mediante otro operador, el signo =. El lenguaje C tiene una amplia variedad de operadores, y todos ellos caen dentro de 6 categorias:

    Aritmticos Relacionales Lgicos Incremento y decremento Asignacion. Manejo de Bits (Investigar).

  • Operadores:Comprenden las cuatro operaciones basicas: suma, resta, multiplicacin y divisin, con un agregado, el operador mdulo . Aritmeticos:El operador mdulo ( % ) se utiliza para calcular el resto del cociente entre dos ENTEROS , y NO puede ser aplicado a variables del tipo float double.

    SIMBOLODESCRIPCIONEJEMPLO+SUMAa + b-RESTAa - b*MULTIPLICACIONa * b/DIVISIONa / b%MODULOa % b-SIGNO-a

  • Operadores:Todas las operaciones relacionales dan slo dos posibles resultados : VERDADERO FALSO . En el lenguaje C, Falso queda representado por un valor entero nulo (cero) y Verdadero por cualquier nmero distinto de cero Relacionales:Jerarqua de operadores: a < b + c se interpreta como a < ( b + c ), pero aunque sea superfluo se recomienda el uso de parntesis a fin de aumentar la legilibilidad del texto.

    SIMBOLODESCRIPCIONEJEMPLOmayor que(a >b)< =menor o igual que(a < = b)>=mayor o igual que( a >>= b )= =igual que( a = = b)! =distinto que( a != b)

  • Operadores:Hay tres operadores que realizan las conectividades lgicas:Y (AND) , O (OR) y NEGACION (NOT).Lgicos:Incremento y Decremento:

    SIMBOLODESCRIPCIONEJEMPLO&&Y (AND)(a>b) && (c < d)||O (OR)(a>b) || (c < d)!NEGACION (NOT)!(a>b)

    SIMBOLODESCRIPCIONEJEMPLO++incremento++i i++--decremento--i i--

  • Operadores:Sentencias : a = a + 1 ; a++ ;

    tienen una accin idntica, de la misma forma que

    a = a - 1;a-- ;

    Es decir incrementa y decrementa a la variable en una unidad. Ejemplos

  • Operadores:Asignacin:

    SIMBOLODESCRIPCION=ASINACION SIMPLE+=SUMA-=RESTA*=MULTIPLICACION/=DIVISION%=MODULO

  • Variables:No es ms que un nombre para identificar una (o varias) posiciones de memoria donde el programa guarda los distintos valores de una misma entidad . Un programa debe DEFINIR a todas las variables que utilizar , antes de comenzar a usarlas , a fin de indicarle al compilador de que tipo sern , y por lo tanto cuanta memoria debe destinar para albergar a cada una de ellas. Como se declaran:Globales: Esta se declara antes del main(). Puede ser utilizada en cualquier parte del programa.

    Local: Esta se declara despus del main(), en la funcin en que vaya a ser utilizada y se destruye al final de esta funcin.

  • Constantes:Las constantes mantienen su valor a lo largo de todo el programa. Para indicar al compilador que se trata de una constante, se declara de la siguiente forma.

  • Contador:Un elemento cuyo valor se incrementa o decrementa en un valor constante en cada iteracin de un bucle, y se utiliza para controlar la condicin del bucle.En general suelen contar de forma natural desde 0 y de 1 en 1, aunque se pueden realizar otros tipos de cuentas necesarios en algunos procesos.

    Se utilizan realizando sobre ellos dos operaciones bsicas:

    Inicializacin: todo contador se inicializa a 0 si realiza cuenta natural o a Vi(valor inicial), si se desea realizar otro tipo de cuenta.

    Contabilizacin o incremento: cada vez que aparece el evento a contar se ha de incrementar el contador en 1 si se realiza cuenta natural o en la In (Incremento) si se realiza otro tipo de cuenta.

  • Acumulador:Es una variable que tambin se suele usar en los bucles y que se incrementa en cada iteracin del bucle, pero no en una cantidad constante. En general se usan para calcular sumas y productos, sin descartar otros posibles tipos de acumulacin.

    Al igual que los contadores, para utilizarlos hay que realizar sobre ellos dos operaciones bsicas:

    Inicializacin: todo acumulador requiere ser inicializado con el valor neutro de la operacin que va a acumular.(0 para sumas y 1 para productos)

    Acumulacin: cuando se hace presente en la memoria el elemento a acumular por la realizacin de una lectura o clculo, se efecta la acumulacin.

  • Interruptores (marca, bandera o flag:Es una variable que sirve como indicador de una determinada informacin y que solo puede tomar uno de dos valores. El valor de la variable tiene asociado un signo y puede variar a lo largo de la ejecucin.

    Podemos decir que actan como recordatorios manteniendo caractersticas de objetos o clculos que estuvieron presentes en un momento anterior de la ejecucin de un programa.

  • Bucles:Un conjunto de instrucciones que se repiten un nmero finito de veces. Lleva asociado aparte de las instrucciones una condicin que es la que determina cuando se termina un bucle. Ejecucin de un bucle (iteracin). Los bucles se pueden anidar unos dentro de otros, y puede haber varios bucles al mismo nivel, pero nunca se entrelazan.

    Identificadores:Son los nombres que aparecen en el programa dados por el usuario. Son por tanto los nombres de variables, de constantes, de subprogramas y nombres de tipos creados por el usuario .