ClaseIII_CI2125
-
Upload
alexandra-la-cruz -
Category
Documents
-
view
220 -
download
0
Transcript of ClaseIII_CI2125
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 1/23
Computación I (CIComputación I (CI--2125)2125)
Clase 3Clase 3
Prof. Mireya Morales PrimeraProf. Mireya Morales Primera
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 2/23
ContenidoContenido
CicloCiclo dede DesarrolloDesarrollo dede unun programaprogramaFormasFormas dede RepresentaciónRepresentación Algorítmica Algorítmica::
DiagramasDiagramas dede flujoflujo yy seudocódigoseudocódigoEstructurasEstructuras dede ControlControl
EstructurasEstructuras dede secuenciasecuencia EstructurasEstructuras dede controlcontrol condicionalescondicionales
�� SimplesSimples:: if if �� DoblesDobles:: if if--elseelse�� MúltiplesMúltiples:: switchswitch
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 3/23
Ciclo de Desarrollo de un programaCiclo de Desarrollo de un programa
Archivos ArchivosCódigo Fuente
Código Objeto
Código Ejecutable
Compilador
Enlazador
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 4/23
Preprocesador
Archivos Cabecera
Código Fuente
Compilador
Ensamblador
Editor de Enlaces Ejecutable
Ciclo de
Desarrollo
de un
programa
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 5/23
Diagramas de FlujoDiagramas de Flujo
EsEs unauna formaforma dede representaciónrepresentación algorítmicaalgorítmicaqueque usausa unauna esquematizaciónesquematización gráficagráfica..
MuestraMuestra gráficamentegráficamente loslos pasospasos aa seguir seguir
parapara alcanzar alcanzar lala soluciónsolución alal problemaproblema.. TodoTodo esquemaesquema dede representaciónrepresentación
algorítmicaalgorítmica debedebe ser ser independienteindependiente deldel
lenguajelenguaje..ElEl diagramadiagrama dede flujoflujo representarepresenta lala soluciónsolución
deldel problemaproblema.. ElEl programaprograma representarepresenta lala
implementaciónimplementación
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 6/23
Diagramas de FlujoDiagramas de FlujoSímbolos utilizadosSímbolos utilizados
Marca el inicio y fin del diagrama
Se usa para introducir datos de entrada
Representa un proceso. Asignaciones, operaciones aritméticas
Se utiliza para representar una decisiónSI
NO
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 7/23
Diagramas de FlujoDiagramas de FlujoSímbolos utilizadosSímbolos utilizados
Se utiliza para representar unadecisión múltiple: el switch
Representa la impresión de un resultado
Expresan la dirección del flujo deldiagrama
Expresa conexión dentro de una misma página
Representar conexión entre páginas diferentes
Expresa un módulo de un subproblema que hayque resolver antes de continuar el DF.
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 8/23
Diagramas de FlujoDiagramas de FlujoEjemplo. Calcular el área de un triánguloEjemplo. Calcular el área de un triángulo
INICIO
BAS, ALT
AREA BAS*ALT/2
/*Lectura de datos*/
/*Cálculo del Área*/
/*Escritura del resultado*/ AREA
FIN
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 9/23
Diagramas de FlujoDiagramas de Flujo
TodoTodo diagramadiagrama dede flujoflujo debedebe tener tener inicioinicio yy finfin..
LasLas líneaslíneas utilizadasutilizadas parapara indicar indicar lala direccióndireccióndeldel flujoflujo deldel diagrama,diagrama, debendeben ser ser rectasrectas::verticalesverticales uu horizontaleshorizontales
TodasTodas laslas líneaslíneas utilizadasutilizadas parapara indicar indicar direccióndirección deldel diagrama,diagrama, debendeben estar estar conectadasconectadas..
DebeDebe construirseconstruirse dede arribaarriba haciahacia abajoabajo yy dedeizquierdaizquierda aa derechaderecha..
LaLa notaciónnotación utilizadautilizada debedebe ser ser independienteindependientedeldel lenguajelenguaje dede programaciónprogramación..
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 10/23
Diagramas de FlujoDiagramas de Flujo
SiSi lala construcciónconstrucción deldel diagramadiagrama dede flujoflujorequiererequiere másmás dede unauna hojahoja sese debendeben utilizar utilizar loslosconectoresconectores adecuadosadecuados yy enumerar enumerar laslas páginaspáginas
correspondientescorrespondientes.. Al Al resolver resolver unun problemaproblema complejocomplejo eses
convenienteconveniente colocar colocar comentarioscomentarios queque expresenexpresenoo ayudenayuden aa entender entender lala soluciónsolución..
NoNo puedepuede llegar llegar másmás dede unauna línealínea aa unun símbolosímbolodeterminadodeterminado..
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 11/23
SeudocódigoSeudocódigo
NoNo sese tratatrata dede unun lenguajelenguaje dede programaciónprogramaciónparapara lala computadorascomputadoras..
EsEs unun lenguajelenguaje artificialartificial ee informalinformal queque ayudaayuda aa
desarrollar desarrollar algoritmosalgoritmos.. SeSe hacenhacen concon elel objetoobjeto dede ayudar ayudar alal
programador programador ³a³a pensar´pensar´ unun programa,programa, antesantes dedeintentar intentar escribirloescribirlo enen unun lenguajelenguaje dede
programaciónprogramación.. ElEl seudocódigoseudocódigo consisteconsiste sólosólo dede caracteres,caracteres, dede
modomodo queque sese puedepuede hacer hacer enen papelpapel oo concon algúnalgún
editor editor dede textotexto..
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 12/23
SeudocódigoSeudocódigoEjemplo. Calcular el área de un triánguloEjemplo. Calcular el área de un triángulo
InicioInicioVar Var BAS,BAS, ALT ALT:: RealReal /*datos/*datos dede entrada*/entrada*/
AREA AREA:: RealReal /*dato/*dato dede salidasalida */*/LEERLEER BASBAS
LEERLEER ALT ALT
AREA AREA BASBAS ** ALT ALT // 22
ESCRIBIRESCRIBIR AREA AREAFinFin
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 13/23
s ruc uras e on ros ruc uras e on ro
Por Por lolo regular,regular, enen unun programaprograma laslas instruccionesinstruccionessonson ejecutadasejecutadas unauna aa unauna secuencialmentesecuencialmente.. SinSinembargo,embargo, existenexisten algunasalgunas instruccionesinstrucciones queque lelepermitenpermiten alal programador programador especificar especificar queque elel
enunciadoenunciado siguientesiguiente aa ejecutar,ejecutar, puedepuede ser ser otrootrodiferentediferente alal queque lele siguesigue enen lala secuenciasecuencia.. EstoEstoeses conocidoconocido comocomo transferenciatransferencia dede controlcontrol..
LosLos investigadoresinvestigadores BohmBohm yy JacopiniJacopinidemostrarondemostraron queque loslos programasprogramas podíanpodían ser ser escritosescritos sinsin ningúnningún instruccióninstrucción gotogoto.
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 14/23
s ruc uras e on ros ruc uras e on ro
El trabajo de Bohm y Jacopini demostróque todos los programas podían ser escritos en términos de sólo tres
estructuras de control: Estructura de secuencia
Estructura de selección
Estructura de repetición
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 15/23
Estructura de Secuencia
Una estructura de secuencia es aquella en laque una acción (instrucción) sigue a otra ensecuencia.
Acción 1
Acción 2
Acción 3
Pseudocódigo
varInicio
<acción1><acción2>..
fin
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 16/23
Estructura de Secuencia
Una estructura de secuencia es aquella en laque una acción (instrucción) sigue a otra ensecuencia.
Acción 1
Acción 2
Acción 3
Pseudocódigo
varInicio
<acción1><acción2>..
fin
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 17/23
Estructuras de Control Condicionales
En las estructuras de control condicionales seevalúa una condición y en función del resultadode la misma se realiza una opción u otra.
Las condiciones se especifican usandoexpresiones lógicas. Estas estructuras pueden ser:
Simples
Dobles Múltiples
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 18/23
Estructuras de control simple
Seudocódigo: if .
.
acción m
si <condición> entonces<acción 1>
<acción 2>
.
.
<acción n>
fin_si
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 19/23
Estructuras de control simple
Diagrama de flujo: if
Condición
Acción 1
Verdadero
Falso
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 21/23
Diagrama de flujo: if else
Estructuras de control doble
Condición
Acción 1
VerdaderoFalso
Acción 2
8/6/2019 ClaseIII_CI2125
http://slidepdf.com/reader/full/claseiiici2125 22/23
Estructuras de Control MúltiplesSeudocódigo: switch
.
acción m
caso de E hacer
e1: <acción 1.1>
e2: <acción 2.1>
.
.
en <acción n.1>
si_no
<acción m.1>
<acción m.2>.
.
<acción m.n>
fin_caso