clase1 lp 2016 ia
TRANSCRIPT
-
8/16/2019 Clase1 Lp 2016 Ia
1/96
LENGUAJE DE
PROGRAMACION
SEMESTRE 2016-I
Profesor: Ing. William W. Chauca Nolasco
-
8/16/2019 Clase1 Lp 2016 Ia
2/96
INTRODUCCIÓNAL LENGUAJE DEPROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
3/96
¿Qué son? ¿P! "ué s#!$%n?
A& #'u& "u% &os #(#o)s s#!$%n (% $%*+,u&o (% ,o)un#,,#%n.!% &os s%!%s *u)nos/ %#s.%n &%n'u%s "u% !%n ,o)un#,,#n %n.!% &os s%!%s *u)nos 3 &s ,o)4u.(o!s5
-
8/16/2019 Clase1 Lp 2016 Ia
4/96
Es.os &%n'u%s 4%!)#.%n %4!%s! &os 4!o'!)s o %& ,onun.o (#ns.!u,,#on%s "u% %& o4%!(o! *u)no (%s% "u% & ,o)4u.(o! %%,u.%
-
8/16/2019 Clase1 Lp 2016 Ia
5/96
PARA QUE SIRVE LA PRORA!ACI"N
Un 4%!son 4#%ns 3 s% ,o)4o!. o%(%,#%n(o un s%,u%n,#& &'#,o5 U
,o)4u.(o! !% .!%s 3 )n% (.os %n )%)o!# o%(%,#%n(o us%,u%n,# (% 4sos &'#,os 4! &o ,u& * s#(o 4!o'!)(o5
-
8/16/2019 Clase1 Lp 2016 Ia
6/96
PROGRAMACIÓN DE COMPUTADORAS
Es la ciencia que permite a una persona programar una computadora para qresuelva tareas de manera rápida. Un Programa #e com$u%a#ora se $ue
#efinir como una secuencia #e ins%rucciones &ue in#ica las acciones o %are&ue han #e e'ecu%arse $ara #ar soluci(n a un $ro)lema #e%ermina#o.
-
8/16/2019 Clase1 Lp 2016 Ia
7/96
P!o'!)! ,o)4u.(o!s %s #n(#s4%ns&% %n ,u&"u#%! 7!% (% & #n'%n#%!+/ 3 "(#8%!%n.%s 4!o&%)s "u% s% 4u%(n 4!%s%n.! .!(n .#%)4o !%so&$%!&os (% )n%)nu&5 L ,o)4u.(o! !%su%&$% 4!o&%)s (% ,u%!(o ,o)o s% &% *3 4!o'!)(% )n%! !74#(5
-
8/16/2019 Clase1 Lp 2016 Ia
8/96
QUE ES LA PROGRAMACIÓNL (%8#n#,#n n.%!#o! (% )u,*s ,oss "u% (%,#!5 P! &&%'! .%n%! un s%,u%n,##ns.!u,,#on%s "u% (%n so&u,#n un 4!o&%) %s n%,%s!#o %%,u.! $!#s %.4s5
E.4 (% n7s#s: En esta etapa el programador debe entender claramente problema. Saber que es lo que se quiere resolver. (Analizar)
-
8/16/2019 Clase1 Lp 2016 Ia
9/96
E.4 (% So&u,#n '%n%!&: Escribir la serie de pasos que sean necesarios para dar solución al problema. Estos pasos se pueden desarrollar a través de
un Diagrama de lu!o ("tilizando s#mbolos) ó a través de un pseudo lengua!e
("tilizando $engua!e com%n). A lo anterior es lo que se conoce con el
nombre de Algoritmo.
-
8/16/2019 Clase1 Lp 2016 Ia
10/96
E.4 (% 4!u%9 &onsiste en c'equear el algoritmo paso a paso para estseguro si la solución da solución verdaderamente el problema. (rueba d
escritorio).
-
8/16/2019 Clase1 Lp 2016 Ia
11/96
E.4 (% #)4&%)%n.,#n %s4%,+8#,9 &onsiste en traducir el algoritmo a ulengua!e de programación. (&odiicar).
ALORI*!O LENUA+E ,E PRORA!ACION PASCAL
-
8/16/2019 Clase1 Lp 2016 Ia
12/96
E.4 (% 4!u%9 &onsiste en e!ecutar el programa en un computador revislos datos arro!ados para ver si son correctos 'acer los a!ustes necesario
(*mplementar).
-
8/16/2019 Clase1 Lp 2016 Ia
13/96
E.4 (% uso9 &onsiste en instalar el programa de manera deinitiva para uso por parte del usuario
Ó
-
8/16/2019 Clase1 Lp 2016 Ia
14/96
Dados un problema un dispositivo+ un algoritmo es la caracterización preci
de un método de resolución al problema+ presentando en un lengua
comprensible al dispositivo.
DEFINICIÓN DE ALGORITMO
¿Cómo sumodos números?
-
8/16/2019 Clase1 Lp 2016 Ia
15/96
En particular+ un algoritmo es caracterizado por las siguientes propiedades:
$a aplicación del algoritmo a un con!unto particular de entradas genera un
secuencia inita de acciones. $a secuencia de acciones tiene una %nica acción inicial &ada acción en la secuencia tiene un %nico sucesor $a secuencia inaliza con la solución al problema o con una indicación d
que el problema no tiene solución para ese con!unto de datos.
-
8/16/2019 Clase1 Lp 2016 Ia
16/96
$a palabra algoritmo se deriva de la traducción al lat#n de la palab
árabe &:*o;!#)#+ nombre de un matemático astrónomo árabque escribió un tratado sobre manipulación de n%meros ecuaciones en el siglo *,.
ALGORITMOS Y SUS TIPOS
-
8/16/2019 Clase1 Lp 2016 Ia
17/96
-
8/16/2019 Clase1 Lp 2016 Ia
18/96
Un algori%mo es una serie #e $asos organi-a#os &ue #escri)eel $roceso &ue se #e)e seguir $ara #ar soluci(n a un
$ro)lema es$ecifico5
DE
-
8/16/2019 Clase1 Lp 2016 Ia
19/96
T#4os (% A&'o!#.)os
ALGORITMOS Y SUS TIPOS
-
8/16/2019 Clase1 Lp 2016 Ia
20/96
-
8/16/2019 Clase1 Lp 2016 Ia
21/96
Es una serie de símbolos y reglas que se utilizan para describir de mane
explícita un proceso. De los cuales se encuentran los siguientes tipos dLenguajes Algorítmicos:
• Gr!cos: Es la representaci"n gr!ca de las operaciones que realiza ualgoritmo #diagrama de $ujo%.
• &o Gr!cos: 'epresenta en (orma descripti)a las operaciones que debrealizar un algoritmo #pseudoc"digo%.
LENGUAJES ALGORITMICOS
-
8/16/2019 Clase1 Lp 2016 Ia
22/96
GRA
-
8/16/2019 Clase1 Lp 2016 Ia
23/96
DE LOS PROBLEMAS A LOS PROGRAMAS
La computadora no solamente es una mquina que puede realizar procespara darnos resultados* sin que tengamos la noci"n exacta de loperaciones que realiza para llegar a esos resultados. +on la computadoadems de lo anterior tambi,n podemos dise-ar soluciones a la medida* dproblemas especí!cos que se nos presenten. s a/n* si estos in)olucraoperaciones matemticas complejas y0o repetiti)as* o requieren del manede un )olumen muy grande de datos.
DE LOS PROBLEMAS A LOS PROGRAMAS
-
8/16/2019 Clase1 Lp 2016 Ia
24/96
El dise-o de soluciones a la medida de nuestros problemasrequiere como en otras disciplinas una metodología que noense-e de manera gradual* la (orma de llegar a estasoluciones.A las soluciones creadas por computadora se les conoccomo programas y no son ms que una serie d
operaciones que realiza la computadora para llegar a uresultado* con un grupo de datos especí!cos. Lo anterior nolle)a al razonamiento de que un programa nos sir)e parsolucionar un problema especi!co.
DE LOS PROBLEMAS A LOS PROGRAMAS
C O S ÁS C S C C Ó
-
8/16/2019 Clase1 Lp 2016 Ia
25/96
DEFINICIONES BÁSICAS PARA LA CREACIÓNDE PROGRAMAS
1ara poder realizar programas* adems de conocer metodología mencionada* tambi,n debemos dconocer* de manera especí!ca las (unciones qupuede realizar la computadora y las (ormas en que s
pueden manejar los elementos que 2ay en la misma1or eso es indispensable conocer ciertas de!niciones:
- & t d E di iti l t ó i tili d
-
8/16/2019 Clase1 Lp 2016 Ia
26/96
-. &omputadora: Es un dispositivo electrónico utilizado par
procesar inormación obtener resultados. $os datos l
inormación se pueden introducir en la computadora como entrada
(input) a continuación se procesan para producir una salid(output).
-
8/16/2019 Clase1 Lp 2016 Ia
27/96
. rograma: Es el con!unto de instrucciones escritas de alg%n
lengua!e de programación que e!ecutadas secuencialmente
resuelven un problema especiico.
Lengua'e /or%ran 01
Lengua'e !a%La)
=5 D#s4os#.#$os (% En.!(: &omo su nombre lo indica+ sirven para
-
8/16/2019 Clase1 Lp 2016 Ia
28/96
=5 D#s4os#.#$os (% En.!(: &omo su nombre lo indica+ sirven paraintroducir datos (inormación) en la computadora para su proceso. $os datos
se leen de los dispositivos de entrada se almacenan en la memoria central o
interna. E!emplos: teclado+ scanner (digitalizadores de rastreo)+ mouse
(ratón)+ /rac01all (bola de ratón estacionario)+ !ostic0 (palancas de !uego)lápiz óptico.
> D# #.# ( S ( 2 l d t d
-
8/16/2019 Clase1 Lp 2016 Ia
29/96
>5 D#s4os#.#$os (% S(9 2egresan los datos procesados qusirven de inormación al usuario. E!emplo: monitor+ impresora.
L Un#(( C%n.!& (% P!o,%s)#%n.o @C P U s% (#$#(% %n (os9
-
8/16/2019 Clase1 Lp 2016 Ia
30/96
5 L Un#(( C%n.!& (% P!o,%s)#%n.o @C5P5U s% (#$#(% %n (os93 Un#(( (% ,on.!o&9 &oordina las actividades de la computadora determina que operaciones se deben realizar en que orden4 as# mism
controla todo el proceso de la computadora.
-
8/16/2019 Clase1 Lp 2016 Ia
31/96
-
8/16/2019 Clase1 Lp 2016 Ia
32/96
-
8/16/2019 Clase1 Lp 2016 Ia
33/96
-
8/16/2019 Clase1 Lp 2016 Ia
34/96
-
8/16/2019 Clase1 Lp 2016 Ia
35/96
B Un#(( A!#.)é.#,o L'#,9 R% o4%!,#on%s !#.)é.#,s 3 &'#,
-
8/16/2019 Clase1 Lp 2016 Ia
36/96
Un#(( A!#.)é.#,o L'#,9 R% o4%!,#on%s !#.)é.#,s 3 &'#,.&%s ,o)o su)/ !%s./ )u&.#4,,#n/ (#$#s#n 3 ,o)4!,#on%s5
-
8/16/2019 Clase1 Lp 2016 Ia
37/96
-
8/16/2019 Clase1 Lp 2016 Ia
38/96
-
8/16/2019 Clase1 Lp 2016 Ia
39/96
65 L M%)o!# (% & ,o)4u.(o! s% (#$#(% %n (os9
-
8/16/2019 Clase1 Lp 2016 Ia
40/96
BM%)o!# C%n.!& o In.%!n9 $a &" utiliza la memoria de lacomputadora para guardar inormación mientras traba!a con ella
mientras esta inormación permanezca en memoria+ lacomputadora puede tener acceso a ella en orma directa.
-
8/16/2019 Clase1 Lp 2016 Ia
41/96
La memoria interna conta !e !o "rea !e memoria#
-
8/16/2019 Clase1 Lp 2016 Ia
42/96
•La memoria RAM $Ran!om Acce Memor%&: 'ecibe el nombrememoria principal o memoria del usuario* en ella se almacena in(ormacsolo mientras la computadora est encendida. +uando se apaga o arranue)amente la computadora* la in(ormaci"n se pierde* por lo que se dque la memoria 'A es una memoria )oltil.
•La memoria ROM $Rea! On'% Memor% Es una memoriatti d bi l t d d l l d t
-
8/16/2019 Clase1 Lp 2016 Ia
43/96
esttica que no puede cambiar* la computadora puede leer los datosalmacenados en la memoria '3* pero no se pueden introducir datos enella* o cambiar los datos que a2í se encuentran4 por lo que se dice queesta memoria es de solo lectura. Los datos de la memoria '3 estn
grabados en (orma permanente y son introducidos por el (abricante de lacomputadora.
() Memoria A*+i'iar $E+terna E !on!e e a'macenan
-
8/16/2019 Clase1 Lp 2016 Ia
44/96
to!o 'o ,ro-rama o !ato .*e e' **ario !eee) Lo!i,oiti/o !e a'macenamiento o memoria a*+i'iare$e+terna o ec*n!aria& ma com0nmente *ti'i1a!o on#cinta ma-n2tica % !ico ma-n2tico)
ES3UEMA GENERAL A LA 4ORA DE PROGRAMAR
-
8/16/2019 Clase1 Lp 2016 Ia
45/96
DEFINICIÓN DE LENGUAJE
-
8/16/2019 Clase1 Lp 2016 Ia
46/96
Len-*a5e# E *na erie !e 6m7o'o .*e ir/en ,artranmitir *no o ma mena5e $i!ea& entre !o
enti!a!e !i8erente) A 'a tranmii9n !e mena5e 'e conoce com0nmente como com*nicaci9n)
Com*nicaci9n: es un proceso complejo que requiere una serie de reglasimples* pero indispensables para poderse lle)ar a cabo. Las do
i i l l i i
-
8/16/2019 Clase1 Lp 2016 Ia
47/96
principales son las siguientes:
• Los mensajes deben correr en un sentido a la )ez.• Debe (orzosamente existir 5 elementos: Emisor* 'eceptor* edio d
+omunicaci"n y ensaje.
DEFINICIONES DE LENGUAJE DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
48/96
DEFINICIONES DE LENGUAJE DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
49/96
-
8/16/2019 Clase1 Lp 2016 Ia
50/96
Ins%rucciones #e un $rograma
Sen%encia en Visual 2asic
Sen%encia en !a%La)
-
8/16/2019 Clase1 Lp 2016 Ia
51/96
2lo&ue funcional
DEFINICIONES DE LENGUAJE DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
52/96
ORIGEN DE LENGUAJE DE PROGRAMA
-
8/16/2019 Clase1 Lp 2016 Ia
53/96
-
8/16/2019 Clase1 Lp 2016 Ia
54/96
La m3&uina anal4%ica #e 2a))age
Ada se dedicó a la música y la matemtica! s" madre tem
$"e Ada %"era poeta como s" padre y la ed"có para $mostrara cierto desprecio &acia s" tale'to art#stico y ale'tó para $"e s"s i'tereses disc"rriera' por el cami'o la cie'cia y la matemtica! asig''dole como t"tor
prestigioso A"g"sto Morga'( A los )* a+os co'oció ,a--age $"ie' desp".s te'dr#a "' papel importa'te e' /ida(
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
55/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
56/96
LENGUAJE MA3UINA
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
57/96
LENGUAJE MA3UINA
-
8/16/2019 Clase1 Lp 2016 Ia
58/96
:enta5a !e' Len-*a5e M".*ina0osi-ilidad de cargar 1tra's%erir "' programa a la memoria2 si''ecesidad de trad"cció' posterior! lo $"e s"po'e "'a /elocidad dee3ec"ció' s"perior a c"al$"ier otro le'g"a3e de programació'(
Des/e'ta3as del Le'g"a3e M$"i'aDi4c"ltad y le'tit"d e' la codi4cació'(0oca 4a-ilidad(Gra' di4c"ltad para /eri4car y po'er a p"'to los programas(Los programas solo so' e3ec"ta-les e' el mismo procesador 1C052(
LENG5A6E7 DE ,A6O NI8EL 1e'sam-lador2
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
59/96
LENG5A6E7 DE ,A6O NI8EL 1e'sam-lador2
LENG5A6E7 DE ,A6O NI8EL 1e'sam-lador2
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
60/96
LENG5A6E7 DE ,A6O NI8EL 1e'sam-lador2
-
8/16/2019 Clase1 Lp 2016 Ia
61/96
-
8/16/2019 Clase1 Lp 2016 Ia
62/96
-
8/16/2019 Clase1 Lp 2016 Ia
63/96
CLASIFICACIÓN DE LOS LENGUAJES DEPROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
64/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
65/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
66/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
67/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
68/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
69/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
70/96
CLASIFICACIÓN DE LOS LENGUAJES DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
71/96
-
8/16/2019 Clase1 Lp 2016 Ia
72/96
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
P! & so&u,#n (% 4!o&%)s %s4%,+8#,os .!$és (% & ,o)4u.(o!
-
8/16/2019 Clase1 Lp 2016 Ia
73/96
P! & so&u,#n (% 4!o&%)s %s4%,+8#,os .!$és (% & ,o)4u.(o!!%"u#%!% $!#s %.4s .&%s ,o)o9
515- D%8#n#,#n (%& P!o&%)9 Es. 8s% %s.7 (( 4o! %& %nun,#(o 4!o&%)/ %& ,u& !%"u#%!% un (%8#n#,#n ,&! 3 4!%,#s5 Es #)4o!."u% s% ,ono, &o "u% s% (%s% "u% !%,% & ,o)4u.(o! )#%n.!s %s.os% ,ono, (%& .o(o no .#%n% )u,*o ,so ,on.#nu! ,on & s#'u#%n.% %.45
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
-
8/16/2019 Clase1 Lp 2016 Ia
74/96
525- An7s#s (%& P!o&%): "na vez que se 'a comprendido lo que se desede la computadora+ es necesario deinir:
o Los (.os (% %n.!(5o Cu& %s & #n8o!),#n "u% s% (%s% 4!o(u,#! @s(o Los )é.o(os 3 8!)u&s "u% s% n%,%s#.n 4! 4!o,%s! &os (.os5 "na recomendación mu práctica es el que nos pongamos en el lugar de
computadora analicemos que es lo que necesitamos que nos ordenen eque secuencia para producir los resultados esperados.
< = >Die?o !e' A'-oritmo# Las características de un buen
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
-
8/16/2019 Clase1 Lp 2016 Ia
75/96
-
8/16/2019 Clase1 Lp 2016 Ia
76/96
Co!icaci9n# La codi!caci"n es la operaci"n de escribi
la soluci"n del problema #de acuerdo a la l"gica del diagramade $ujo o pseudoc"digo%* en una serie de instruccionedetalladas* en un c"digo reconocible por la computadora* laserie de instrucciones detalladas se le conoce como c"digo(uente* el cual se escribe en un lenguaje de programaci"n o
lenguaje de alto ni)el.
9
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
-
8/16/2019 Clase1 Lp 2016 Ia
77/96
Pr*e7a % De,*raci9n# Los errores 2umanos dentro de programaci"n de computadoras son muc2os y aumenta
considerablemente con la complejidad del problema. El proceso didenti!car y eliminar errores* para dar paso a una soluci"n sin errores se llama depuraci"n. La depuraci"n o prueba resulta una tarea tan creati)como el mismo desarrollo de la soluci"n* por ello se debe considerar con mismo inter,s y entusiasmo. 'esulta con)eniente obser)ar los siguienteprincipios al realizar una depuraci"n* ya que de este trabajo depende e
,xito de nuestra soluci"n.
< > Doc*mentaci9n# Es la guía o comunicaci"n escrita es
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
-
8/16/2019 Clase1 Lp 2016 Ia
78/96
Doc*mentaci9n# Es la guía o comunicaci"n escrita essus )ariadas (ormas* ya sea en enunciados* procedimientos*
dibujos o diagramas. A menudo un programa escrito por unapersona* es usado por otra. 1or ello la documentaci"n sir)epara ayudar a comprender o usar un programa o para(acilitar (uturas modi!caciones #mantenimiento%. Ladocumentaci"n se di)ide en tres partes:
O Doc*mentaci9n Interna# 6on los comentarios o mensaje que se
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
-
8/16/2019 Clase1 Lp 2016 Ia
79/96
O Doc*mentaci9n Interna# 6on los comentarios o mensaje que sea-aden al c"digo (uente para 2acer ms claro el entendimiento de unproceso.
O Doc*mentaci9n E+terna# Se !ene en *n !oc*mento ecrito 'oi-*iente ,*nto# Decri,ci9n !e' Pro7'ema Nom7re !eA*tor A'-oritmo $!ia-rama !e *5o o ,e*!oc9!i-o& Diccionario !e Dato C9!i-o F*ente $,ro-rama&
O Man*a' !e' U*ario# Decri7e ,ao a ,ao 'a manera como8*nciona e' ,ro-rama con e' n !e .*e e' **ario o7ten-a ere*'ta!o !eea!o)
METODOLOG;A PARA LA SOLUCIÓN DE PROBLEMAS POR MEDIO DCOMPUTADORA
-
8/16/2019 Clase1 Lp 2016 Ia
80/96
Mantenimiento# 6e lle)a a cabo despu,s de terminad
el programa* cuando se detecta que es necesario 2acer alg/cambio* ajuste o complementaci"n al programa para que sigtrabajando de manera correcta. 1ara poder realizar esttrabajo se requiere que el programa este correctamentdocumentado.
4ERRAMIENTAS DE PROGRAMACION
DIAGRAMA DE FLUJO
-
8/16/2019 Clase1 Lp 2016 Ia
81/96
Un !ia-rama !e *5o e 'a re,reentaci9n -r"ca !e *na'-oritmo) Tam7i2n e ,*e!e !ecir .*e e 'a re,reentaci9n!eta''a!a en 8orma -r"ca !e como !e7en rea'i1are 'o ,ao en'a com,*ta!ora ,ara ,ro!*cir re*'ta!o)
Eta re,reentaci9n -r"ca e !a c*an!o /ario 6m7o'o $.*ein!ican !i8erente ,roceo en 'a com,*ta!ora& e re'acionan
entre i me!iante '6nea !irecciona'e .*e in!ican e' or!en en.*e e !e7en e5ec*tar 'o ,roceo) Lo 6m7o'o *ti'i1a!o ani!o norma'i1a!o ,or e' intit*to norteamericano !enorma'i1aci9n $ANSI&) :er -*ra) N H
4ERRAMIENTAS DE PROGRAMACION
-
8/16/2019 Clase1 Lp 2016 Ia
82/96
• 6e deben se usar solamente líneas 2orizontales y0o )erticales.
RECOMENDACIONES PARA EL DISEO DE DIAGRAMAS DE FLUJO
-
8/16/2019 Clase1 Lp 2016 Ia
83/96
• 6e debe e)itar el cruce de líneas utilizando los conectores.
• 6e deben usar conectores solo cuando sea necesario.
• &o deben quedar líneas de $ujo sin conectar.
• 6e deben trazar los símbolos de manera que se puedan leer de arrib2acia abajo y de izquierda a derec2a.
• 7odo texto escrito dentro de un símbolo deber ser escrito claramente)itando el uso de muc2as palabras.
En eencia e' ,e*!oc9!i-o e ,*e!e !enir como *n 'en-*a5e !e,ecicacione !e a'-oritmo) E 'a re,reentaci9n narrati/a !' ! 7 i ' i ! ' i9
PSEUDOCÓDIGOS
-
8/16/2019 Clase1 Lp 2016 Ia
84/96
'o ,ao .*e !e7e e-*ir *n a'-oritmo ,ara !ar o'*ci9n a *,ro7'ema !etermina!o) E' ,e*!oc9!i-o *ti'i1a ,a'a7ra .*
in!ican e' ,roceo a rea'i1ar):enta5a !e *ti'i1ar *n Pe*!oc9!i-o a *n Dia-rama !e F'*5o#
• Oc*,a meno e,acio en *na o5a !e ,a,e')• Permite re,reentar en 8orma 8"ci' o,eracione re,etiti/a
com,'e5a)
• E m*% 8"ci' ,aar !e ,e*!oc9!i-o a *n ,ro-rama en a'-0'en-*a5e !e ,ro-ramaci9n)• Si e i-*en 'a re-'a e ,*e!e o7er/ar c'aramente 'o ni/e'e
.*e tiene ca!a o,eraci9n)
-
8/16/2019 Clase1 Lp 2016 Ia
85/96
0se"docódigo paradetermi'ar la rai9 de
"'a ec"ació' No li'eal
REPRESENTACIÓN DE ALGORITMOS B Mé.o(os 4! !%4!%s%n.! un &'o!#.)o9
Ps%u(o&%n'u% D#'!)s (% 8&uo
-
8/16/2019 Clase1 Lp 2016 Ia
86/96
D#'!)s (% 8&uo 3 Ps%u(o&%n'u%
5 Es un lengua!e espec#ico de descripción de algoritmos
5 $a traducción de un algoritmo escrito en pseudolengua!e a un programa en un lengua
de programación determinado es relativamente simple
3 F%!!)#%n.s (% un 4s%u(o&%n'u% 4! !%4!%s%n.! un &'o!#.)o 5 &on!unto de palabras clave que proporcionan:
3 las estructuras de control
3 declaraciones de variables3 caracter#sticas de modularidad
5 Sinta6is libre de un lengua!e natural que describe las caracter#sticas del proceso
5 Elementos para la deinición llamada a subprogramas
Metodología de diseño
Un 4!o&%) H )u,*os &'o!#.)os 4! !%so&$%!&o
-
8/16/2019 Clase1 Lp 2016 Ia
87/96
'¿C)o %&%'#! %& )7s (%,u(o? s7n(onos %n &s s#'u#%n.%s
,!,.%!+s.#,s9 L%'##(( E8#,#%n,# Po!.#(( Mo(u&!#(( Mo(#8#,#(( Es.!u,.u!,#n
Metodología de diseño P!o'!),#n %s.!u,.u!(
5 &on!unto de técnicas que aumentan la productividad de un programa+ reduciendo el
-
8/16/2019 Clase1 Lp 2016 Ia
88/96
! q p p g
tiempo para:
3 Escribir 3 Depurar
3 7eriicar 3 8antener
5 "tiliza un n%mero limitado de estructuras de control que minimizan la comple!idad
de los problemas
5 T%o!%) de 198;JACOPINI: cualquier programa+ por comple!o que sea+ puedeescribirse utilizando sólo tres estructuras de control:
5 Secuencial
5 Selectiva
5 2epetitiva
Secuencial
-
8/16/2019 Clase1 Lp 2016 Ia
89/96
Actividad -
Actividad
Actividad n
Selección
&ondicións#
nos#
Simple: Doble:
-
8/16/2019 Clase1 Lp 2016 Ia
90/96
actividad
&ondición
no
condición
Actividad - Actividad
&ondición
s#
sino&ondición &ondición
sino
Actividad - Avtividad nActividad n;-Actividad
s# s#
8%ltiple:
Repetición Condicional
-
8/16/2019 Clase1 Lp 2016 Ia
91/96
activit
/est
condition
true
alse
Ejemplo: Un sensor toma (lee) la temperatura ambiente y de acuerdo alrango en que se encuentre, debe emitir un mensaje. La escala es lasiguiente:
Mayor que 100 “Temperatura muy alta – Mal funcionamiento” Entre 91 y 100 “Rango normal” Entre 51 y 90 “Bajo el rango normal”
-
8/16/2019 Clase1 Lp 2016 Ia
92/96
Entre 51 y 90 Bajo el rango normal Menor que 50 “Muy frío – pague el equipo”
ALGO!"#O $ensor!%!&!OLEE temperatura$! temperatura ' E%"O%&E$
E$&!*! +"emperatura muy alta #al -uncionamiento$!%O
$! temperatura ' / E%"O%&E$E$&!*! +ango normal
$!%O$! temperatura ' 0 E%"O%&E$
E$&!*! “Bajo el rango normal” $!%O
E$&!*! +#uy -r1o Apague equipo2!%3$!
2!%3$!2!%3$!2!%
EjemploSe desea sumar una lista de números que ingresa desde teclado (por ejemplo, edades de los alumnos
una clase). El algoritmo debería ingresar el valor y sumarlo a una variable SU! que contenga
i i l
-
8/16/2019 Clase1 Lp 2016 Ia
93/96
sucesivas sumas parciales.
ALGORITMO suma
INICIO
Suma=0
LEER número
Suma = suma + número
LEER número
Suma = suma + número
….
FIN
"omo podemos observar, si no utili#amos alguna instrucci$n de repetir, el algoritmo deber% reali#ar tan
lecturas y sumas como alumnos se procesen& ', ', ',...
Representación gráfica del algoritmo: diagramas de flujo
1. Inicio
2. Leer cantidad de estudiantes (N) Inicio
-
8/16/2019 Clase1 Lp 2016 Ia
94/96
3. N !" #$ % !" #$ %& !" #
'. INR*% N ! N
'.1 Leer edad + peso del estudiante ($ &)
'.2 % !" % ,
'.3 %& !" %& , &
'.' Incrementar el contador: N !" N , 1
-IN"INR*%
. /alcular la media de la edad: !" %0N
. /alcular la media del peso: & !" %&0N
. scriir 4La edad promedio es: 5$
6. scriir 4l peso promedio es: 5$ &
7. -in
Leer N
N !" #
% !" #
%& !" #
1
/ontinuación
1. Inicio
2. Leer cantidad de estudiantes (N)
3. N !" #$ % !" #$ %& !" #
Leer $ &
1
-
8/16/2019 Clase1 Lp 2016 Ia
95/96
3. N ! #$ % ! #$ %& ! #
'. INR*% N ! N
'.1 Leer edad + peso del estudiante ($ &) '.2 % !" % ,
'.3 %& !" %& , &
'.' Incrementar el contador: N !" N , 1
-IN"INR*%
. /alcular la media de la edad: !" %0N
. /alcular la media del peso: & !" %&0N
. scriir 4La edad promedio es: 5$
6. scriir 4l peso promedio es: 5$ &
7. -in
-in
% !" %,
%& !" %&,&
N !" N,1
N !N%i
No
!" %0N
& !" %&0N
scriir $ &
1ibliogra#a:
-
8/16/2019 Clase1 Lp 2016 Ia
96/96
*ntroducción a la *normática eter 1is'op
illiam &'auca ?olasco
>ebgraia:
/oda página que tenga como inormación términos claves:rogramacion+ $engua!es de ba!o nivel+ $engua!e maquinas+ $engua!e de
alto nivel+ Diagrama de lu!o+ seudocódigos++