Centro de bachillerato técnico Agropecuario CBTa 131 Tec. Informática Sub modulo 1. –Algoritmos, Diagramas de flujo…… Vianey Ortiz Oax
Santiago Juxtlahuaca.
Aquí puedes encontrar Que es un problema? Que es la lógica
Algoritmos
computacional
selectivas o de
Algoritmos
selección
Ejemplos de
-simple
Algoritmos
-Doble
Diagramas de flujo
-múltiple
Significados de
-Repetitivos
símbolos de un
-para
diagrama de flujo
Que es un
Pseudocódigo
contador?
Ejemplos de
Que en un
pseudocódigos
acumulador?
Tipos de algoritmos 2
LOGICA COMPUTACIONAL
QUE ES UN PROBLEMA?
1er. Sub modulo
3
Un problema es un punto discutible que requiere de una solución, que genera ingonita.
ETAPAS PARA RESOLVER UN PROBLEMA: INICIO INICIO Entrada Entrada De De Datos Datos
Proceso
Salida Salida De De Datos Datos
Datos Datos
FIN FIN
QUE ES LA LOGICA COMPUTACIONAL? Es aquella que nos ayuda a resolver un problema
Algoritmos
UTILIZANDO LA Dentro de esto se puede TECNOLOGIA. Diagramas Diagramas De encontrarDe
4
Pseudocodigo
Que son los Algoritmos?
Es un conjunto ordenada de instrucciones INICIO
Conduce a una solución de un Salida Salida problema de de
ESTRUCTURA Entrada de Proceso Datos GENERAL Datos
Datos
5
UN ALGORITMO ORDENADO DEBE SER FINITO
(características )
FIN
EJEMPLOS DE ALGORITMOS Ejemplo1: Diseñe un algoritmo para calcular el área y perímetro de un cuadrado. 6
Inicio: Proceso: Datos De Entrada =L a =L2
o
P =L+L+L+L P =4 L Salida De Datos: = a,p.
Ejemplo2: Dise ñe un algoritmo para calcular el área y perímetro de un rectángulo. Inicio: 7
Datos de entrada: Proceso: b,h
a
=b*h P =2b +2h
Salida De Datos: a,p
Ejemplo3: 8
Diseñe un algoritmo que lea una medida y los convierta en megas, kilos y bytes. Inicio Datos de Entrada: Leer
Gb.
Proceso: Mb =(1024* Gb.)/1 Kb =(1024*Mb)/1 b =(1024*Kb)/1 Salida de Datos: Mostrar
Mb, Kb, B
fin
Ejemplo4: 9
Dice ñe un algoritmo que dada la hora actual en horas, minutos y segundos determinen cuantas horas, minutos y segundos restan para culminar el día. Inicio: Datos de entrada: Horas, minutos y segundos. Hora actual 11:30 Proceso: Total seg. Rest 86 400-(hr*3600+60 min+seg) hrs =total seg rest /3600 resto =total seg rest Mod o Residuo o 360 min = resto /60 seg = resto: Mod o residuo 60 Salida de Datos: Horas, minutos y seg. FIN
10
DIAGRAMAS DE FLUJO QUE SON LOS DIAGRAMAS DEFLUJO
Es una herramienta de lógica computacional
Se representa de manera grafica Conjunto de instrucciones ordenada , que llevan a una solución.
11
S
ignificado de los símbolos en un Diagrama de flujo
Algoritmo Inicio Entrada de Datos Proceso Salida de Datos Fin
12
Símbolo: función:
Flujo de Datos Conectar misma Hoja Conectar otra hoja Impresora
Pantalla
13
Toma de Decisiones
PSEUDOCÓDIGO Que son los Pseudocodigo?
Su principal objetivo es representar la solución CABECER de un algoritmo A: -Nombre -Nombre del del programa programa Tipos Tipos de de datos datosDe aa utilizar utilizar
la forma más detallada posible CUERPO CUERPO INICIO INICIO
14
---proceso Muy parecidoPrograma al lenguaje de programación. Programa ---proceso /* Para comentar Declaración Declaración de instrucciones de instrucciones. de de variables variables yy un pseudocódigo
ESTRUCTUR
Constantes Constantes
A
EJEMPLOS DE PSEUDOCÓDIGOS: EJEMPLO1: diseñar un pseudocódigo que sirve para calcular el área de un cuadrado: 15
/* Pseudocódigo que sirve para calcular el área del cuadrado */ Programa: Calcular_area_cuadrado. Cabecera
Dim
I, A as Single.
INICIO Cuerpo Del
Visualizar “introduce lado del
cuadrado” Programa
Leer (I) I: text1.text Calcular área: A: I*I Visualizar “el área es” Text2.text=A
FIN..
EJEMPLO2: 16
/* Pseudocódigo que sirve para la suma de números*/ Prívate sub comomand 1_chick () Nombre
evento
Dim I, a suma as integer Función que convierte carácter equivalente en número. I=Val (text1.text) I =text1.text introduce num 1___ A=Val (text2.text) a=text2.text introduce num 2___ Nombre objeto propiedades
suma =i+a
Suma=i+a Text3.text=suma End- sub
17
Tipos de algoritmos: (Secuenciales, de decisión y repetitivos)
ALGORITMOS SECUENSIALES: INICIO
ACCION 1
ACCION 2
ACCION 3
FIN
18
ALGORITMOS SELECTIVAS O DE DECISION: SIMPLE:
Si-Entonces If- them No
Condició n
si Acció n
FIN
19
EJEMPLOS DE SIMPLE: Ejemplo1.-Diseñe un algoritmo y diagrama de flujo para saber si un numero introducido del usuario negativo. INICIO Entrada de Datos entonces
Proceso si el número es < 0
Leer núm.
Imprimir “núm.
negativo” FIN- si
Diagrama de flujo: INICIO
Núm.
20
Núm.<0 <0 Nú Nú m. m. neg neg ativ ativ oo
FIN
Ejemplo2.-realice un algoritmo y diagrama de flujo que valide una división de dos número, sabiendo que solo podrá realizar la división, si el divisor es diferente de 0. INICIO PROCESO DATOS DE ENTRADA: Si y!=0 entonces Leer x, y R=x/y Imprimir R Fin-si DIAGRAMA DE FLUJO:
INICI INICI O O
X,y
Y!=0
R
X/F
21
R
DOBLE:
Si-entonces de lo contrario If-them-else
no
si
Condició n
Acción2
Acción1
FIN
Ejemplos de diagramas de flujo Doble: 22
Ejemplo1.-Diseñe un algoritmo que determine si una persona es mayor o menor de edad por el teclado. INICIO
Proceso
DATOS DE ENTRADA
si edad > = 18
entonces Leer edad
imprimir “mayor
de edad” De lo contrario Imprimir “menor de edad” fin –si
Diagrama de flujo: INICIO
EDAD
Edad >=18
23
““ m m
““ m m
aa yy
ee nn
oo rr
oo rr
”
””
FIN
Ejemplo2.-diseñe un algoritmo que determine si un numero introducido por por el usuario es o no par positivo. INICIO Entrada de datos
Leer núm.
Proceso si un numero mod 2 =0 and
Núm.> 0 entonces
Imprimir “par positivo” De lo contrario “un me interesa” 24
Fin-si INICIO
núm. núm.
Núm. Núm. Mod Mod 2=0 2=0 And And núm. núm. >0 >0
““ nn oo
“ p
m m ee
o s
ii nn tt ee rr ee ss aa ””
FIN
Ejemplo3.-diseñe un algoritmo y diagrama de flujo que introducido un número me diga si es positivo, negativo o nulo. INICIO Datos de entrada Leer núm.
i t i v o ”
Proceso Si núm. > 0 es positivo y núm. Entonces imprimir “positivo” De lo contrario Si <0 entonces es negativo Entonces imprimir “negativo”
INICIO
Núm. 25
Núm. >0
“ p o si ti v o ”
Núm.>0
“ n e g a ti v o ”
“n ul o”
Fin
MULTIPLE: En caso de opción hacer 0P1, 0P2, OP3 case
OP1
Caso opción
OP2
OP3
0P4
26
Ejemplos: De diagrama de flujo simple Múltiple: Ejemplo1.-Diseñe un algoritmo que permita ingresar una cantidad de 3 cifras y determine si es un numero capicúa o no, si la la cifra es mayor a 999 y menor que a 100, que mande un mensaje que diga que se ingrese una cifra de tres dígitos.
INICIO Datos de entrada Leer núm.
Diagrama de flujo: INICIO
Núm.
Núm. > = 100 and Núm.<= 999
27
“ingr esen úm. de 3 cifras ”
C= truac (num/100) R= num mod 100 u= r mod 10
U =c
“no “no capic capic úa” úa”
“cap “cap icúa icúa ””
FIN
Ejemplo2.-disiñe un algoritmo que califique el puntaje obtenido en el lanzamiento de tres dados en base en la cantidad de 6 obtenidos, de acuerdo a los siguientes datos; 3 de 6 –Tiro excelente, 2 de 6 Tiro bueno, 1 de 6 Tiro regular, ninguno tiro malo. INICIO
Proceso 28
Entrada de Datos
3-
6=excelente Leer x, y,z.
2-6 =bueno INICIO
1-6=
regular 0= malo X, Y, Z
X+Y+Z X+Y+Z =18 =18
X+y=12 or
“
X+z=12 or
cc el el
Y+z =12
ee xx
“ b u e
ee nn tt ee ””
n o ”
X=3 X=3 or or Y=6 Y=6 or or Z=z=6 Z=z=6
29
“ma lo” “Bu eno ”
FIN
REPITITIVOS En estos se encuentran El “para, mientras, repetir.” Principales características 30
For: i =1 to i=10 While: condición verdadera Repeat: condición = verdadera
SECUENCIA REPITITIVA
Repiten instrucciones (determinadas veces) Son llamadas también bucles o lazos.
For- Para While- Mientras Repeat- Repetir
Ejemplos de diagramas de repetición (PARA) Eemplo1.-Dado un numero natural positivo calcular la suma de los números naturales, del 1 hasta el número introducido. 31
INICIO INICIO
Datos de entrada Leer núm.
Núm.
Núm. > =1 and Núm. < =100 “ing rese nú m. Que este entr e 1y 100 ”
S
s+i
I
i+1
MQ
1< =Núm.
I
sti
S
FIN
i+1
S
(MQ) FIN
32
Ejemplo2.- (PARA) INICIO
33
Núm.
Núm.> Núm.> 11 and and Núm. Núm. << =1000 =1000
“Ingre Ingre se se valor valor q’ q’ este este entre entre el el 11 al al 100” 100”
S
0
Para i
1, num, 1
S
s+1
Fin (para)
FIN
Ejemplo3.- realice un algoritmo q’ calcule la suma de los cuadrados de 1 al 10 INICIO
Proceso 34
Datos de entrada
i= 1
Leer núm.
s=
Para i=1 hasta i
=núm. S = s+ (I*I)
INICIO O
I = I+ 1
Fin Para
S 0
Imprimir
Para i
1, 10, 1
S
s+ (i + i)
Fin (para)
s FIN
EJEMPLO4.-Diseñe un algoritmo que sume los números impares de 1 al 100 y que realice el cuadrado de los números pares. 35
INICIO
Proceso
ENTRADA DE DATOS
si un numero
es impar del Leer núm.
1 al 100
entonces Imprimir
FIN
“núm. Impar”
De lo contrario sumar el
Si =0 Sp =0 Cuadrado I =1
de los números pares Entonces “num. Par”
Para
i 1, 100, 1
Fin- si
R= i mod 2
R =0 Sr = si + i
SP=Sp + (i + i)
Fin para S I
fin fin
ss pp
36
QUE ES UN CONTADOR?...
Es el que determina el número que repite un conjunto de instrucciones.
Que es un acumulador. .. Es el que almacena resultados Es el que
determina el número que repite un conjunto de instrucciones. 37
Ejemplos de variables: Puede variar a lo largo del de la resolución del problema. Ejemplo: -X, y, z - nombre, edad, sexo. Ejemplos de constantes: Este dato se mantiene y no cambia
Tipos de Datos:
Enteros
Numérico s Tipos de datos
Reale s Caracteres
Carácte r Cadena
Boléanos
Verdader o Falso
Esper0 que esta información sirva… 38