Lgica Computacional - PowerPoint PPT Presentation

1 / 59
About This Presentation
Title:

Lgica Computacional

Description:

La principal raz n para que las personas aprendan ... Arreglarse. Irse. Disco. Magn tico. Lectura de. Tarjeta. S/370. Computador. Impresora. Perforadora ... – PowerPoint PPT presentation

Number of Views:150
Avg rating:3.0/5.0
Slides: 60
Provided by: juancarlos61
Category:

less

Transcript and Presenter's Notes

Title: Lgica Computacional


1
Lógica Computacional
  • M.C. Juan Carlos Olivares Rojas

2
Introducción a la programación
  • La principal razón para que las personas aprendan
    lenguajes de programación es utilizar la
    computadora como una herramienta para la
    resolución de problemas.

3
Construyendo Sistemas de Información
  • Las fases del desarrollo de un S.I.
  • - Análisis del Sistema
  • - Diseño del Sistema
  • - Programación
  • - Pruebas
  • - Conversión
  • - Producción y Mantenimiento

4
Qué es un algoritmo?
  • La creación de algoritmos se realiza durante
    la fase de análisis del sistema. Un algoritmo es
    la secuencia ordenada de pasos que conducen a la
    solución de un problema dado, y puede ser
    expresado en lenguaje natural, por ejemplo el
    castellano

5
Algoritmo
  • Conjunto finito de reglas que dan una secuencia
    de operaciones para resolver todos los problemas
    de un tipo dado. De forma más sencilla, podemos
    decir que un algoritmo es un conjunto de pasos
    que nos permite obtener un dato.
  • Algoritmo es el procedimiento o protocolo- paso
    por paso- que ideamos o escribimos para que se
    realice una tarea o para lograr objetivos o
    propósitos es como un plan (ordenado,
    estructurado, específico, claro).

6
Algoritmo
  • Algoritmo se define como una sucesión o serie de
    instrucciones, por pasos, que deben realizarse
    y que explica cómo deben procesarse los datos
    para producir sus resultados los algoritmos
    deben escribirse en español o inglés,
    independientes de los lenguajes para programación
    (no mezclarlos).

7
Características de un Algoritmo
  • Bien definido
  • No ambiguo
  • Finito (siempre termina)
  • Efectivo
  • Claridad programación estructurada
  • Correctitud satisfacer especificación
  • Cero o más entradas y una o más salidas

8
Características de un algoritmo
  • Preciso. Indicar el orden de realización de cada
    paso.
  • Definido. Si se sigue un algoritmo dos veces, se
    debe obtener el mismo resultado cada vez.
  • Finito. Debe terminar el algún momento

9
Ejemplo de algoritmo
10
Algoritmo para hacer una taza de té
  • Inicio
  • Tomar la tetera
  • Llenarla de agua
  • Encender el fuego
  • Mientras no hierva el agua
  • Esperar
  • Introducir una bolsa de té en la tetera
  • Vaciar el té en la taza
  • Fin

11
Ejemplo
  • Construya un algoritmo para preparar Pechugas de
    pollo en salsa de elote y chile poblano
  • Ingredientes (para 6 personas)
  • 3 Pechugas deshuesadas, sin piel y partidas a la
    mitad.
  • 1 diente de ajo
  • 4 gramos de pimienta negra. Sal.
  • 6 cucharadas de aceite
  • 5 chiles poblanos asados y limpios.
  • ½ Taza de leche.
  • ¼ Taza de crema ligera.
  • 1 lata de crema de elote.

12
Ejemplo
  • Algoritmo (Preparación)
  • Muela el ajo, la pimienta y un poco de sal y
    únteselo a las pechugas.
  • Caliente el aceite y dore las pechugas.
  • Licue los chiles con la leche y la crema, y
    mézclelos con la crema de elote.
  • En una fuente coloque las pechugas y báñelas con
    la mezcla anterior.
  • Cubra el platón con papel aluminio y hornee a 200
    C, durante 15 minutos.

13
Otros ejemplos de algoritmos
  • Las instrucciones o serie de pasos que sigues
    para grabar un número telefónico en tu celular.
  • Las instrucciones que te dan para resolver un
    examen.
  • Los pasos que sigues para prender el carbón para
    una carne asada
  • El procedimiento que sigues para inscribirte
  • EL procedimiento para obtener tu pasaporte
  • La receta que sigues para preparar un pastel
  • Los pasos para invitar a alguien al cine

14
Herramientas para hacer un algoritmo
Las distintas representaciones de un algoritmo
son el Pseudocódigo, el Diagrama N-S, el Diagrama
de Flujo
15
Pseudocódigo
  • Es un lenguaje de especificación de algoritmos y
    no puede ser ejecutado por una computadora, la
    ventaja del pseudocódigo es que el programador se
    puede concentrar en la lógica y en las
    estructuras de control y no preocuparse de las
    reglas de un lenguaje específico.
  • Es fácil de modificar y puede ser rápidamente
    traducido a un lenguaje de programación.
  • Representa acciones sucesivas en un lenguaje
    similar al humano.

16
Ejemplo Algoritmo para dividir 2 números
  • algoritmo División
  • variables
  • real dividendo, divisor,
    resultado_división
  • inicio
  • Leer (dividendo, divisor)
  • si divisor ltgt 0 entonces
  • resultado_división dividendo /
    divisor
  • escribir (resultado_división)
  • si_no
  • escribir (El resultado es
    infinito)
  • fin_si
  • fin

17
Diagramas de Flujo
  • Es una representación gráfica de las
    actividades, operaciones y decisiones lógicas que
    deben ser realizadas, su orden o secuencia en que
    se realizan. Utiliza símbolos unidos por
    flechas. Dentro de cada símbolo o caja se indican
    las operaciones que deben ser realizadas.

18
Diagrama de flujo para calcular una división
19
Diagramas Nassi-Scneiderman
  • Conocidos como Diagramas N-S o Diagramas de
    Chapin. Las acciones se escriben dentro de cajas
    sucesivas.

20
Ejercicio
  • Realizar el siguiente algoritmo
  • REGISTRO DE VENDEDORES.
  • Una tienda emplea un cierto número de vendedores.
    La mayoría de estos empleados obtienen sus
    ingresos de comisiones sobre los artículos que
    venden, pero existen algunos empleados que
    obtienen su salario fijo, sin importar el tipo o
    cantidad de artículos que venden, más una
    comisión por sobre ciertos artículos.
  • La tienda ofrece distintos tipos de mercancías,
    algunas de las cuales se clasifican como
    artículos estándar por que son de uso común y no
    requieren de técnicas creativas de venta además,
    hay artículos que son altamente remunerados pero
    difíciles de vender.

21
Ejercicio
  • Los compradores también se clasifican. Algunos se
    conocen como compradores regulares, pues hacen
    transacciones tan a menudo que no se requiere de
    hacerles venta creativa. Sin embargo, la mayoría
    de los clientes hacen pocas transacciones dentro
    de la tienda, y es probable que entren, compren
    algo y no vuelvan a ser vistos.

22
Ejercicio
  • Si un empleado vende cualquier tipo de artículo a
    un cliente regular, no se da comisión alguna.
  • Si un empleado asalariado vende un artículo
    extra, recibe una comisión del 10 a menos que el
    artículo tenga un precio mayor de 10,000, en
    cuyo caso recibe una comisión del 15.

23
Ejercicio
  • Si un empleado no asalariado vende un artículo
    extra a alguien que no sea un comprador regular,
    recibe un 15 de comisión a menos que el artículo
    tenga un precio mayor a 10,000 en cuyo caso
    recibe una comisión del 20. Si un empleado
    asalariado vende un artículo estándar recibe un
    3 de comisión, en caso de ser un empleado no
    asalariado recibe un 7.

24
Pseudocódigo
25
  • Diagrama de Flujo
  • Cálculo de comisión

26
Ejercicio resuelto
27
Ejercicio resuelto
28
Diagrama de flujo
  • Al diagrama de flujo también se le conoce como
    ordinograma o flujograma
  • Diagrama de Sistema Diagrama que representa
    gráficamente los dispositivos de entrada-salida
    que usa un programa de un sistema.

29
Ejemplo

Diagrama de Sistema
Flujo General


Disco
Lectura de
Magnético


Tarjeta

Levantarse



Arreglarse

S/370

Computador


Irse


Impresora


Perforadora

30
Símbolos del diagrama de Flujo
31
Símbolos del diagrama de Flujo
32
Símbolos del diagrama de Flujo
33
Símbolos del diagrama de Flujo
34
Símbolos del diagrama de Flujo
35
Símbolos del diagrama de Flujo
36
SENTENCIAS DE CONTROL
37
Lenguaje Estructurado
  • Español Estructurado
  • Para describir los procesos se utiliza el
    lenguaje natural. Este incluye estructuras de
    control como
  • Si
  • Mientras
  • Repetir-Hasta_que
  • Según_sea- hacer

38
Español EstructuradoEstructura selectiva
Una estructura selectiva es aquella en que se
ejecutan unas acciones u otras según se cumpla o
no una determinada condición. La selección puede
ser simple, doble o múltiple
39
Estructura Selectiva Simple
  • Se evalúa la condición y si ésta da como
    resultado verdad se ejecuta una determinada
    acción o grupo de acciones en caso contrario se
    saltan dicho grupo de acciones

40
Español EstructuradoEstructura selectiva
Diagrama de Flujo
Diagrama N-S
Pseudocódigo
si ltcondicióngt entonces acción 1 fin_si
41
Español EstructuradoEstructura selectiva
  • Estructura Selectiva Doble
  • Cuando el resultado de evaluar la condición es
    verdad se ejecutará una determinada acción o
    grupo de acciones y si el resultado es falso otra
    acción o grupo de acciones diferentes.

42
Español EstructuradoEstructura selectiva
Diagrama de Flujo
Diagrama N-S
Pseudocódigo
si ltcondicióngt entonces acción 1 si_no
acción 2 fin_si
43
Español EstructuradoEstructura selectiva
  • Estructura Selectiva Múltiple
  • Se ejecutarán unas acciones u otras según el
    resultado que se obtenga al evaluar una expresión.

44
Español EstructuradoEstructura selectiva
Diagrama de Flujo
Diagrama N-S
45
Español EstructuradoEstructura selectiva
Estructura Selectiva Múltiple
Pseudocódigo
según_sea ltexpresióngt hacer ltlista 1gt
acción 1 ltlista 2gt acción 2 . . .
si_no acción n fin_según
46
Español EstructuradoEstructura repetitiva
  • mientras
  • Lo que caracteriza este tipo de estructura es que
    las acciones del cuerpo del bucle se realizan
    cuando la condición es cierta. Además, se
    pregunta por la condición al principio, de donde
    se deduce que dichas acciones se podrán ejecutar
    de 0 a n veces.

47
Español EstructuradoEstructura repetitiva
Diagrama de Flujo
Diagrama N-S
Pseudocódigo
mientras ltexpresión lógicagt hacer acción
fin_mientras
48
Español EstructuradoEstructura repetitiva
  • repetir-hasta_que
  • El bucle repetir-Hasta_que es análogo al bucle
    mientras desde el punto de vista de que el cuerpo
    del bucle (acción) se ejecuta una y otra vez
    mientras la condición (expresión lógica) es
    verdadera. La diferencia entre ellos consiste en
    que en el bucle repetir-hasta_que, las sentencias
    del cuerpo se ejecutan, al menos una vez, antes
    de que se evalúe la expresión lógica. En otras
    palabras, el cuerpo del bucle siempre se ejecuta,
    al menos una vez, incluso aunque la expresión
    lógica sea falsa.

49
Español EstructuradoEstructura repetitiva
Diagrama de Flujo
Diagrama N-S
Pseudocódigo
repetir acción hasta_que ltexpresión
lógicagt
50
Español EstructuradoEstructura anidada
Pseudocódigo
si ltcondición1gt entonces ltacciónes1gt si_no
si ltcondición2gt entonces
ltacciones2gt si_no si
ltcondición3gt entonces ltacciones3gt
si_no ltaccionesXgt
fin_si fin_si fin_si
  • Tanto las estructuras selectivas como las
    repetitivas pueden ser anidadas, e introducidas
    unas en el interior de las otras.

51
PROGRAMA
  • Es más que una secuencia ordenada de
    instrucciones que hacen algo con sentido. Las
    instrucciones tienen que ser las precisas y estar
    ordenadas de tal forma que, cuando el ordenador
    las ejecute, se consigan los efectos deseados.
  • Las instrucciones que tendremos disponibles para
    escribir un programa y su sintaxis van a depender
    del lenguaje que vayamos a usar en nuestro caso,
    el C.

52
Variables
  • Una variable, en realidad, no es más 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 serán, y
    por lo tanto cuanta memoria debe destinar para
    albergar a cada una de ellas.

53
Variables
  • Lenguaje Estructurado.
  • Inicialización de Variables
  • Es conveniente inicializar las variables al
    inicio del algoritmo. Ejemplo

algoritmo calcula_total var entero contador0,
total0 inicio leer numero mientras contador lt
numero hacer contadorcontador1 totalt
otalcontador fin_mientras fin
54
Ejemplo de programa en Lenguaje C
  • include ltstdio.hgt
  • main()
  • / defino multiplicador como un entero /
  • int multiplicador
  • / defino multiplicando como un entero /
  • int multiplicando
  • / defino resultado como un entero /
  • int resultado
  • / les asigno valores /
  • multiplicador 1000
  • multiplicando 2
  • resultado multiplicando multiplicador
  • / muestro el resultado /
  • printf("Resultado d\n", resultado)
  • return 0

55
Los elementos de un programa en C son los
siguientes
  • Comentarios
  • Inclusión de archivos
  • main()
  • variables locales
  • flujo de sentencias
  • Definición de funciones creadas por el
    programador utilizadas en main()

56
Ejemplo1
  • /Programa que despliega un mensaje de bienvenida
    en la pantalla/
  • includeltstdio.hgt
  • includeltconio.hgt
  • void main()
  • clrscr()
  • gotoxy(20,10)
  • printf("BIENVENIDO AL CURSO DE C ESTANDAR \n")
  • delay(2500)
  • return 0

57
Diagrama
Estructura de un programa
Lenguaje estructurado
1. SIMPLE PROCESS (Secuencial)
  • C
  • n n 1
  • instructions()

Sentencia(s) Sentencia(s)
2. IF-THEN-ELSE (Condición)
  • C
  • if (first lt second)
  • return first
  • else
  • return second

SI (condición) ENTONCES
sentencia(s) SINO sentencia(s) FIN SI
58
Estructura de un programa
Lenguaje estructurado
Diagrama
  • C
  • switch (conversion)
  • case A case a
  • result FahrToCelsius(temp)
  • break
  • case B case b
  • result CelsiusToFahr(temp)
  • break
  • .

3. Estructura CASE (Selección)
SELECCION (variable) constante_1
sentencia(s) constante_2 sentencia(s)
constante_n sentencia(s)
  • C (for, while, do)
  • WHILE (expresión)
  • proposición 1
  • proposición 2
  • ...............
  • proposición n
  • DO  
  • proposición 1  
  • proposición 2  
  • ...............
  • WHILE (expresión)

MIENTRAS (condicion) HACER
sentencia(s) FIN MIENTRAS
4. WHILE-DO (iteración)
HACER sentencia(s) MIENTRAS
(condición)
59
Preguntas, dudas y comentarios?
Write a Comment
User Comments (0)
About PowerShow.com