Escolar Documentos
Profissional Documentos
Cultura Documentos
FACULTAD DE INGENIERIA
DIVISIN DE INGENIERA ELCTRICA
COMPUTACIN PARA INGENIEROS
NOTA IMPORTANTE: Para complementar este tema
es necesario bajar e imprimir el artculo
Herramientas de Programacin que se encuentra
en el apartado Artculos
Descripcin Representacin
FUNDAMENTOS DE ALGORITMOS
Modelo: Especificacin, generalmente en trminos de un
lenguaje matemtico, de los pasos necesarios para
reproducir, aqu y ahora, un subconjunto determinado de
la realidad descrito previamente
Pregunta:
Todo aquello que es descriptible es representable?
Habr una representacin que simule completamente lo
descrito?
Cuanto ms adecuada sea la descripcin del proceso,
tanto mejor ser el resultado que emula lo real
FUNDAMENTOS DE ALGORITMOS
Supongamos que se crea una mquina para
producir descripciones en trminos de cadenas de
smbolos.
Dada una descripcin cualquiera, la analiza durante
un tiempo finito y despus emite su dictmen (si o
no) con respecto al problema
Procedimiento SI
Descripcin De HAY
decisin SOLUCIN
NO
S10 S0 S7 S14 S4 S2
CONTROL
FINITO
FUNDAMENTOS DE ALGORITMOS
Teora de la computabilidad Encontrar formas de
representar descripciones de procesos, de manera tal
que siempre se pueda decir que la solucin de un
problema existe o no
Un problema se dice que es Computable si existe una
mquina de decisin para l
Pregunta: Todos los procesos son computables?
Un problema se dice que es No Computable si la
mquina de decisin para l llega a un estado en donde
no es capaz de decir que si o que no
FUNDAMENTOS DE ALGORITMOS
Dame el El rea es , A,
radio: u^2
r Fin
A
FUNDAMENTOS DE ALGORITMOS
CONSTANTES Y VARIABLES
Las constantes son datos cuyos valores no cambian,
pero existen datos cuyos valores s varan durante la
ejecucin del programa, a stos los llamamos variables.
En la mayora de los lenguajes de programacin se
permiten diferentes tipos de constantes: enteras, reales,
caracteres y boolean o lgicas, quienes representan
datos de estos tipos.
Entonces una variable se conoce como un objeto, o
partida de datos cuyo valor puede cambiar durante la
ejecucin del algoritmo o programa.
A las variables y a las constantes se les conoce o
identifica por los atributos siguientes: nombre o
identificador que lo asigna y tipo que describe el uso de
la variable.
FUNDAMENTOS DE ALGORITMOS
Identificadores:
Deben empezar con letra, excepto o , o guin bajo
y estar seguidos de cero o ms letras, nmeros o
guiones bajos
No se permiten smbolos como
$ ! ? | & - % # @ , . / \ o espacios en blanco y
tabuladores
Palabras reservadas: Existe un conjunto
palabras que se utilizan tanto en pseudocdigo
como en los lenguajes de programacin no
pueden ser utilizadas como nombres de
identificadores ni de funciones.
FUNDAMENTOS DE ALGORITMOS
OPERACION DE ASIGNACION
Se le otorgan valores a una variable. Esta operacin
de asignacin se conoce como instruccin o
sentencia de asignacin, si es que est en un
lenguaje de programacin
La operacin de asignacin es representada por un
smbolo u operador:
La accin de asignar puede ser destructiva ya que
puede perderse el valor que tuviera la variable antes,
siendo reemplazado por el nuevo valor. Las acciones
de asignacin se clasifican segn sea el tipo de
expresiones en: Asignacin aritmticas,
Asignacin lgica y Asignacin de caracteres
FUNDAMENTOS DE ALGORITMOS
EXPRESIONES
Son la combinacin de constantes, variables, smbolos de
operacin, parntesis y nombres de funciones especiales,
idea que puede ser utilizada en notaciones de matemtica
tradicional. Los valores de las variables nos permitirn
determinar el valor de las expresiones, debido a que
stos estn implicados en la ejecucin de las operaciones
indicadas. Estas constan de operandos y operadores.
Segn el tipo de objetos que manipulan, pueden
clasificarse en:
Aritmticas -> resultado tipo numrico.
relacionales -> resultado tipo lgico.
lgicas -> resultado tipo lgico.
caracter -> resultado tipo caracter.
FUNDAMENTOS DE ALGORITMOS
Expresiones Aritmticas
Estas expresiones son anlogas a las frmulas
matemticas. Las variables y constantes son
numricas (real o entera) y las operaciones son las
aritmticas
Operadores aritmticos
Precedencia
- (operador monario)
^ (exponenciacin), (radicacin)
*, / (divisin real),
+, -
div o / (cociente de divisin entera) , mod o %
(residuo de divisin entera)
FUNDAMENTOS DE ALGORITMOS
ESTRUCTURA SECUENCIAL
Es la estructura en donde una accin (instruccin) sigue
a otra de manera secuencial.
Las tareas se dan de tal forma que la salida de una es la
entrada de la que sigue y as en lo sucesivo hasta
cumplir con todo el proceso.
PROGRAMACION ESTRUCTURADA
ESTRUCTURA DE DECISIN
Decisin: Elegir una alternativa o camino en el flujo del
algoritmo cuando se cumpla o no una determinada
condicin.
El resultado de la condicin se evala como falso o
verdadero y se obtiene al comparar dos expresiones
mediante operadores relacionales. De ser necesario
realizar ms de una comparacin al mismo tiempo se
asocian con operadores lgicos
Gua de referencia rpida de lenguaje
C
Estructuras de control
PROGRAMACION ESTRUCTURADA
Estructuras de control
Decisiones (cont.)
En algunas ocasiones para realizar
las comparaciones tambin se
hace uso de una variable
booleana o bandera (flag). Una
bandera es una variable que slo
puede tener dos valores: falso o
verdadero
PROGRAMACION ESTRUCTURADA
Estructuras de control
Ciclo, loop, lazo o bucle: Repetir un conjunto de
instrucciones varias veces con base en que se cumpla o no
una determinada condicin.
A cada ejecucin del conjunto de instrucciones en un ciclo se
le llama iteracin
PROGRAMACION ESTRUCTURADA
Tipos de ciclos:
Mientras (while): Se lleva a cabo mientras se cumpla una
condicin. Primero evala la condicin y luego ejecuta el conjunto
de instrucciones. De no cumplirse la condicin desde el inicio, no
hace nada y sigue con el flujo normal del algoritmo
Hacer mientras (do while): Realiza un conjunto de instrucciones
y continua mientras se cumpla una condicin. A diferencia del
anterior, este ciclo se ejecuta por lo menos una vez
Desde hasta (for): Se utiliza cuando se conoce el nmero de
veces que se va a repetir un conjunto de instrucciones. Requiere
de un valor inicial, un valor final y un contador
PROGRAMACION ESTRUCTURADA
Decisiones anidadas
Cuando se tiene una serie de
estructuras de control de la forma
PROGRAMACION ESTRUCTURADA
si condicin1 entonces
si condicin2 entonces
si condicinN entonces
sino
fin_si
sino
fin_si
sino
fin_si
PROGRAMACION ESTRUCTURADA
10 0 7 14 4 2 -10
Funciones comunes a todos los
lenguajes de programacin
Matemtica Algortmica Matemtica Algortmica
x abs(x) senh x sinh(x)
sqrt(x) cosh x cosh(x)
x
exp(x) tanh x tanh(x)
ex
cos x cos(x)
tan x tan(x)
sen1 x asin(x)
cos1 x acos(s)
tan 1 x atan(x)
Cadenas y sus operaciones
Representacin
Dependiendo del lenguaje las cadenas se
pueden representar entre comillas simples o
dobles
Por ejemplo:
Bsqueda de subcadenas
Una operacin frecuente es tratar de localizar si una
cadena forma parte de una cadena ms grande o
buscar la posicin en que aparece determinado
caracter o secuencia de caracteres de texto
var cadena1: cadena
var posicion:entero
cadena1 <- hola qu tal
posicion <- instr$ cadena1, la
print posicion
{Muestra en pantalla 2}
Cadenas y sus operaciones