Anda di halaman 1dari 64

SISTEMAS UNI

ALGORITMOS Y ESTRUCTURAS DE DATOS

INSTRUCTOR. ITALO YARANGA.

E-mail: ipyv@hotmail.com

Telfonos de contacto.
Cel.:947413836, 994843027
RPM:#947413836

1
SISTEMAS UNI

SESION 1

2
Sistemas

Conjunto de elementos dinmicamente relacionados


formando una actividad para alcanzar un objetivo operando
sobre datos, energa y/o materia para proveer informacin.

3
Sistemas

Elementos de un Sistemas

4
Sistemas de procesamiento
de la informacin.

DATO
Es la representacin simblica de un hecho, atributo o
caracterstica de una entidad.
Ejm: nota de un alumno, nombre de un docente, color de un
carro, etc.
INFORMACION
Es un conjunto de datos que tiene realacin.
Ejm. El promedio final de un alumno para un curso, nmero
de aprobados en un examen, nombre de los primeros
alumnos de cada especialidad por cada ciclo.
La informacin se obtiene mediante el procesamiento de
5
los datos
Procesamientos de datos

Operaciones que transforman datos en informacin

DATOS INFORMACION

Entrada Salida

Es realizado por el procesador el cual ejecuta un conjuntode pasos


previamente definidos (algoritmo)
El procesamiento de datos puede ser:Manual ,Mecanizada(uso de
calculadora, sumadora, etc),Automatizado (uso del computador)
6
Procesamientos de datos
Automatizados

PROCESADOR

DATOS INFORMACION

Entrada Salida

7
Algoritmos

Un algoritmo es un grupo de instrucciones que definen la


secuencia de operaciones a realizar para resolver una clase
de problema.
Secuencia ordenada de pasos que nos sirve para resolver un
problema.

8
Algoritmos

Caractersticas
Tiene que ser preciso.
Tiene que estar bien definido.
Tiene que ser finito.

9
Algoritmos

Medios de expresin de un algoritmo


Los algoritmos pueden ser expresados de muchas maneras,
incluyendo al lenguaje natural, pseudocdigo, diagramas
de flujo y lenguajes de programacin.

10
Algoritmos

Ejemplo 1
Suponga que un individuo desea invertir su capital en un banco y desea
saber cuanto dinero ganara despus de un mes si el banco paga a razn
de 2% mensual.
Solucin:
1 Inicio
2 Leer cap_inv
3 gan = cap_inv * 0.02
4 Imprimir gan
5 Fin

11
Algoritmos

Ejemplo 2
Un vendedor recibe un sueldo base mas un 10% extra por comisin de sus
ventas, el vendedor desea saber cuanto dinero obtendr por concepto de
comisiones por las tres ventas que realiza en el mes y el total que
recibir en el mes tomando en cuenta su sueldo base y comisiones.
Solucin:
Inicio
Leer sb, v1, v2, v3
tot_vta = v1 + v2 + v3
com = tot_vta * 0.10
tpag = sb + com
Imprimir tpag, com
Fin
12
Algoritmos

Ejemplo 3
Se cuenta con las notas del EP, EF y PP de un alumno.
Se sabe que el promedio final (PF) se calcula con la frmula:
PF=(EP+ PP+2EF)/4
Si el alumno cumple con la siguiente condicin: PP>6.1 y
PF> 6.1 tiene opcin a rendir un examen sustitutorio (ES).
Escriba un algoritmo reciba las notas del alumno y luego muestre un
mensaje indicando si el alumno puede rendir o no puede rendir el ES.
En el caso que ya no pueda rendir el ES, debe mostrar
tambin el PF

13
Algoritmos

Solucin
Anlisis
Datos de entrada:EP, EF, PP
Salida: mensaje y PF (si no puede rendir ES)
Algoritmo
Inicio del algoritmo
Ingresar las notas del alumno: EP, EF y PP
Calcular PF con la siguiente frmula:
PF = (EP + 2EF + PP)/4
Si cumple la condicin PP> 6.1 y PF>6.1entonces mostrar
el mensaje Puede rendir el ES
Si no cumple la condicin entonces mostrar el mensaje No
puede rendir ES y mostrar PF
14
Fin del algoritmo.
Programas
Es una lista de instrucciones que la computadora debe seguir para
procesar datos y convertirlos en informacin.
Tipos de lenguajes:
Lenguaje de alto nivel: lenguaje similar al lenguaje natural. Son
fciles de escribir. Es el mas usado por los programadores.
Ejm. C++, Pascal, Basic, Prolog, Java, etc.
Lenguaje de bajo nivel: lenguaje mnemotcnico.
Ejm. ADD M, N, P
Lenguaje de mquina: lenguaje binario (0 y 1) entendible
directamente por el computador.
Ejm. 0110 1001 1010 1011
15
Programas
TIPOS DE PROGRAMAS
PROGRAMA FUENTE (PF): Programa escrito en lenguaje de alto o bajo nivel.
PROGRAMA OBJETO (PO): Programa escrito en lenguaje de mquina. Es el que
ejecuta el computador.
TRADUCTORES DE LENGUAJE
Programas que traducen programas fuente a lenguaje de mquina.
Tipos de traductores

16
Lenguaje de
Programacin
Es un conjunto de smbolos junto a un conjunto de reglas para combinar
dichos smbolos que se usan para expresar programas. Constan de un
lxico, una sintaxis y una semntica.
Qu conoces tu por lxico, sintaxis y semntica?
Lxico : Conjunto de smbolos permitidos o vocabulario
Sintaxis: Reglas que indican cmo realizar las construcciones del lenguaje
Semntica: Reglas que permiten determinar el significado de cualquier
construccin del lenguaje.

17
Datos

18
Tipos de datos
DATOS NUMERICOS
Enteros y Reales
El rango y precisin de los datos numricos depende del lenguaje de
programacin que se utilice.
DATOS TIPO CARACTER
Conjunto de caracteres que el computador reconoce.
Se encuentran normalizados bajo el cdigo ASCII o EBCDIC
Se tienen:
Caracteres alfabticos: A - Z ; a - z
Caracteres numricos: 0 - 9
Caracteres especiales: *, / , +, >, <, =, etc.
DATOS TIPO LOGICO
Conjunto formado por dos valores lgicos:
verdad, falso

19
Tipos de datos

20
Tipos de datos

21
Variable

22
Variable

23
Variables

24
Constantes

25
Expresiones

26
Expresiones

27
Expresiones

28
Expresiones

29
Funciones

30
SISTEMAS UNI

SESION 2

31
Resolucin de problemas

32
Diseo de Algoritmo

33
Diseo de Algoritmo

34
Herramientas de
representacin de algoritmo

35
Herramientas de
representacin de algoritmo

36
Herramientas de
representacin de algoritmo

37
Herramientas de
representacin de algoritmo

38
Herramientas de
representacin de algoritmo

39
SISTEMAS UNI

SESION 3

40
Programas

Caractersticas de los sistemas


Sistema es un todo organizado y complejo; un conjunto o
combinacin de cosas o partes que forman un todo complejo
o unitario. Es un conjunto de objetos unidos por alguna
forma de interaccin o interdependencia.
Tipos de Sistemas
Sistemas fsicos o concretos: compuestos por equipos,
maquinaria, objetos y cosas reales. El hardware.
Sistemas abstractos: compuestos por conceptos, planes,
hiptesis e ideas. Muchas veces solo existen en el
pensamiento de las personas. Es el software. 41
SISTEMAS UNI

SESION 4

42
Estructuras de Control de
Programa
Tcnicas de programacin
El programar con flujogramas o diagramas NS resulta muy lioso en el
momento en que el programa se complica, por eso vamos a utilizar
siempre el pseudocdigo, en el que vamos a utilizar dos tcnicas de
programacin que no se usan por separado, sino que son
complementarios.
Estas tcnicas son:
Programacin modular: Consiste en dividir el programa en partes
llamadas mdulos, e implementar cada uno de esos mdulos por
separado.
Programacin estructurada: Cuyo objetivo es hacer ms legible y lgico
la estructura del programa utilizando para ello solamente tres tipos de
estructuras: selectivas, secuenciales (condicionales) y repetitivas. 43
Estructuras de Control de
Programa
Estructura Secuencial
Es cuando una instruccin sigue a otra en secuencia, es decir, la salida
de una instruccin es la entrada de la siguiente.

44
Estructuras de Control de
Programa
Estructura Condicional
Se evala la condicin y en funcin del resultado se ejecuta un conjunto
de instrucciones u otro. Hay tres tipos de condicional (simple, doble o
mltiple):
* Simple: Es la estructura : S <cond>
entonces <acciones>
fin s

45
Estructuras de Control de
Programa
Estructura Condicional
Se evala la condicin y en funcin del resultado se ejecuta un conjunto
de instrucciones u otro. Hay tres tipos de condicional (simple, doble o
mltiple):
* Doble: Es la estructura : S <cond>
entonces <acciones_v>
sino
entonces <acciones_f>
fin s

46
Estructuras de Control de
Programa
Estructura Selectivas
El valor con el que se compara la expresin, va a depender de los
lenguajes, de lo que sea ese valor. En general ese valor puede ser un
valor constante, un rango de valores o incluso otra condicin

47
Estructuras de Control de
Programa
Estructura Selectivas

48
Estructuras de Control de
Programa
Estructura Repetitiva

49
Estructuras de Control de
Programa
Estructura Repetitiva

50
SISTEMAS UNI

SESION 5

51
Procedimientos y
Funciones
Procedimientos y Funciones
La programacin modular es una de las tcnicas fundamentales de la
programacin. Se apoya en el diseo descendente y en la filosofa de
divide y vencers, es decir se trata de dividir el problema dado, en
problemas ms simples en que cada uno de los cuales lo
implementaremos en un mdulo independiente. A cada uno de estos
mdulos es a lo que llamamos subalgoritmos o subprogramas.

52
Procedimientos y
Funciones
Funciones
Desde el punto de vista matemtico, una funcin es una operacin que
toma uno o varios operandos, y devuelve un resultado. Y desde el punto
de vista algortmico, es un subprograma que toma uno o varios
parmetros como entrada y devuelve a la salida un nico resultado.
Declaracin de una funcin:
Funcion <nombre_funcion> (n_parametro: tipo, n_parametro: tipo): tipo
funcion
Var <variables locales funcion>
Inicio
<acciones>
retorno <valor>
fin <nombre_funcion> 53
Estructuras de Control de
Programa
Invocacin de una funcin:
Para llamar a una funcin se pone el nombre de la funcin, y entre
parntesis los parmetros reales, que podrn ser variables, expresiones,
constantes,... pero siempre del mismo tipo que los parmetros normales
asociados
<nombre_funcion> (parmetros reales)
Ejemplo de funcin:
Una funcin que calcule la mitad del valor que le paso parmetro.
Suponemos que es un valor entero.
Funcion mitad (n: entero): real
Var m: real
Inicio
M n/2
Retorno m 54

Fin mitad
Procedimientos y
Funciones
Procedimientos
Un procedimiento es un subprograma o un subalgoritmo que ejecuta una
determinada tarea, pero que tras ejecutar esa tarea no tienen ningn
valor asociado a su nombre como en las funciones, sino que si devuelve
informacin, lo hace a travs de parmetros.
Nota.
El inconveniente de una funcin es que solo puede devolver un nico
valor, por lo que s nos interesa devolver 0 o N valores, aunque puedo
usarlo para devolver un solo valor, debo usar un procedimiento.

55
Procedimientos y
Funciones
Sintaxis
Procedimiento <nombre_proc> (<tipo_paso_par> <nombre_par>:
tipo_par,...)
Var <variables locales>: tipo
Inicio
<sentencias>
fin <nombre_proc>

56
SISTEMAS UNI

SESION 6

57
SISTEMAS UNI

SESION 6

58
Arreglo de datos

Un array unidimensional, o lineal, o vector, es un conjunto finito y


ordenado de elementos homogneos.

Es finito porque tiene un nmero determinado de elementos.


Homogneo porque todos los elementos almacenados van a ser del
mismo tipo. Ordenado porque vamos a poder acceder a cada elemento
del array de manera independiente porque va a haber una

59
Arreglo de datos

Sintaxis.

60
Arreglo de datos

Recorrido o acceso secuencial de un array.

61
Arreglo de datos

Arrays bidimensionales o matrices.


En un array unidimensional o vector cada elemento se referencia por un
ndice, en un array bidimensional cada elemento se va a referenciar por
2 ndices, y ahora la representacin lgica ya no va a ser un vector, sino
una matriz.

62
Arreglo de datos

Arrays bidimensionales o matrices.

63
Arreglo de datos

Mnejo de matrices.

64

Anda mungkin juga menyukai