7/23/2019 Apuntes de Programacin
1/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
INTRODUCCININTRODUCCIN
La computadora no solamente es una mquina que puede realizar procesos para darnos resultados,sin que tengamos la nocin exacta de las operaciones que realiza para llegar a esos resultados. Con lacomputadora, adems de lo anterior, tambin podemos disear soluciones a la medida de problemas
especficos que se nos presenten. as a!n, si estos in"olucran operaciones matemticas comple#as $%orepetiti"as, o requieren del mane#o de un "olumen mu$ grande de datos.
&l diseo de soluciones a la medida de nuestros problemas, requiere como en otras disciplinas unametodologa que nos ensee de manera gradual, la forma de llegar a estas soluciones.
' las soluciones creadas por computadora se les conoce comoprogramas$ no son mas que unaserie de operaciones que realiza la computadora para llegar a un resultado, con un grupo de datosespecficos. Lo anterior nos lle"a al razonamiento de que un programa nos sir"e para solucionar unproblema especifico.
(ara poder realizarprogramas, adems de conocer la metodologa mencionada, tambin debemosde conocer, de manera especifica las funciones que puede realizar la computadora $ las formas en que sepueden mane#ar los elementos que )a$ en la misma.
Conceptos de Programacin
Computadora: &s un dispositi"o electrnico utilizado para procesar informacin $ obtener resultados. Losdatos $ la informacin se pueden introducir en la computadora como entrada *input+ $ a continuacin seprocesan para producir una salida *output+.
Proceso de informacin en la computadora
atos de (roceso atos de entrada salida
Programa:&s el con#unto de instrucciones escritas de alg!n lengua#e de programacin $ que e#ecutadas
secuencialmente resuel"en un problema especifico.
Lenguaje:&s una serie de smbolos que sir"en para transmitir uno o mas mensa#es *ideas+ entre dosentidades diferentes. ' la transmisin de mensa#es se le conoce com!nmente como comunicacin.
La comunicacin es un proceso comple#o que requiere una serie de reglas simples, peroindispensables para poderse lle"ar a cabo. Las dos principales son las siguientes-/ Los mensa#es deben correr en un sentido a la "ez.0 ebe forzosamente existir 1 elementos- &misor, eceptor, edio de Comunicacin $ ensa#e.
7/23/2019 Apuntes de Programacin
2/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Lenguajes de Programacin
&s un con#unto de smbolos, caracteres $ reglas *programas+ que le permiten a las personascomunicarse con la computadora.
Los lengua#es de programacin tienen un con#unto de instrucciones que nos permiten realizaroperaciones de entrada%salida, calculo, manipulacin de textos, lgica%comparacin $almacenamiento%recuperacin.
Los lenguajes de programacin se clasifican en:
Lenguaje Maquina: 3on aquellos cu$as instrucciones son directamente entendibles por la
computadora $ no necesitan traduccin posterior para que la C(4 pueda comprender $ e#ecutar elprograma. Las instrucciones en lengua#e maquina se expresan en trminos de la unidad de memoria maspequea el bit *dgito binario / o 0+.
Lenguaje de Bajo Nivel (Ensamblador:&n este lengua#e las instrucciones se escriben en cdigos
alfabticos conocidos como mnemotcnicos para las operaciones $ direcciones simblicas.
Lenguaje de !lto Nivel:Los lengua#es de programacin de alto ni"el *5'36C, pascal, cobol, frotran,
etc.+ son aquellos en los que las instrucciones o sentencias a la computadora son escritas con palabrassimilares a los lengua#es )umanos *en general en ingles+, lo que facilita la escritura $ comprensin delprograma.
Definicin de lgoritmo
La palabra algoritmo se deri"a de la traduccin al latn de la palabra rabe al7)o8arizmi, nombrede un matemtico $ astrnomo rabe que escribi un tratado sobre manipulacin de n!meros $ ecuacionesen el siglo 69.
4n algoritmo es una serie de pasos organizados que describe el proceso que se debe seguir, paradar solucin a un problema especifico.
Lenguajes algor!tmicos
&s una serie de smbolos $ reglas que se utilizan para describir de manera explcita un proceso.
"ipos de Lenguajes !lgoritmicos
#r$ficos:&s la representacin grfica de las operaciones que realiza un algoritmo *diagrama de flu#o+.
No #r$ficos: epresenta en forma descripti"a las operaciones que debe realizar un algoritmo
*pseudocodigo+.
7/23/2019 Apuntes de Programacin
3/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
#r$ficos :
%iagrama de &lujo
4n diagrama de flu#o es la representacin grfica de un algoritmo. :ambin se puede decir que esla representacin detallada en forma grfica de como deben realizarse los pasos en la computadora paraproducir resultados.
&sta representacin grfica se da cuando "arios smbolos *que indican diferentes procesos en lacomputadora+, se relacionan entre si mediante lneas que indican el orden en que se deben e#ecutar losprocesos.Los smbolos utilizados )an sido normalizados por el instituto norteamericano de normalizacin *';36+.
'ecomendaciones para el diseo de %iagramas de &lujo
3e deben se usar solamente lneas de flu#o )orizontales $%o "erticales.
3e debe e"itar el cruce de lneas utilizando los conectores.
3e deben usar conectores solo cuando sea necesario.
;o deben quedar lneas de flu#o son conectar.
3e deben trazar los smbolos de manera que se puedan leer de arriba )acia aba#o $ de izquierda a
derec)a.
:odo texto escrito dentro de un smbolo deber ser escrito claramente, e"itando el uso de muc)as
palabras.
%iagramas estructurados (Nassi)*c+neiderman
&l diagrama estructurado ;
7/23/2019 Apuntes de Programacin
4/31
"U# $ % & '
ID(NTI)ICDOR OP(RDOR ID(NTI)ICDOR OP(RDOR CON"TNT(
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
&s la representacin narrati"a de los pasos que debe seguir un algoritmo para dar solucin a unproblema determinado. &l pseudocodigo utiliza palabras que indican el proceso a realizar.
,entajas de utili-ar un Pseudocodigo a un %iagrama de &lujo
>cupa menos espacio en una )o#a de papel
(ermite representar en forma fcil operaciones repetiti"as comple#as
&s mu$ fcil pasar de pseudocodigo a un programa en alg!n lengua#e de programacin.
3i se siguen las reglas se puede obser"ar claramente los ni"eles que tiene cada operacin.
odelo-
'ccion0 'ccion2 . .
'ccion;=in
(jemplos de lgoritmos(jemplos de lgoritmos
Identificador:&s el carcter alfabtico o grupo de caracteres alfabticos o alfanumricos que seemplean para representar algo en la solucin de un problema.
Redactar el algoritmo para leer * n+meros
cuales,uiera - calcular la suma de am.os.
(aso 0. inicio
(aso 2. leer N/ ID(NTI)ICDOR
(aso ?. leer N*
(aso 1. total $ N/ & N*
(aso @. fin0
Calcular el 1rea de en2oltura de papel de
una lata cil!ndrica ,ue tiene una altura.-
un di1metro%0 Redactar el algoritmo paraleer la.- el di1metro%- calcular el 1rea
solicitada0
(aso 0. inicio
(aso 2. leer D ID(NTI)ICDOR
(aso ?. leer 3
(aso 1. PC $ '0/4/5 6 7D8*9
(aso @. rea $ PC63(aso A. )in
7/23/2019 Apuntes de Programacin
5/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Ejemplo: ada la figura del triangulo '5C, el coseno de ngulo ' puede calcularse mediante la formula
dada posteriormente. edactar un algoritmo para calcular el coseno para cada uno de los ngulos, si se
proporciona como !nico dato el "alor de los lados.
0. 6nicio.2. leer a.?. leer b.1. leer c@. CosB' b2D c2D a2%2bcA. CosB5 a2D c2E b2%2ac
F. CosBC b2
D a2
E c2
%2abG. 6mprimir el coseno del ngulo que es - cosB'H. 6mprimir el coseno del ngulo que es - cosB50/. imprimir el coseno del ngulo que es - cosBC00. =in.
(structuras lgoritmicas
Las estructuras de operacin de programas son un grupo de formas de trabajo, que permiten,mediante la manipulacin de variables, realizar ciertos procesos especficos que nos lleven a la solucin
de problemas. Estas estructuras se clasifican de acuerdo con su complejidad en:
< 'signacin3ecuenciales < &ntrada
< 3alida
< 3imples &structuras Condicionales
'lgoritmicas < !ltiples
< Iacer paraCclicas < Iacer mientras
< epetir )asta
=igura- Tri1ngulo %C=ormula- Cos $ .*& c2& a*8*.c
Cos % $ a*& c* .*8*ac
Cos C $ .*& a* c*8*a.
C
a
.
c %
7/23/2019 Apuntes de Programacin
6/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Estructuras *ecuenciales
La estructura secuencial es aquella en la que una accin *instruccin+ sigue a otra en secuencia.Las tareas se suceden de tal modo que la salida de una es la entrada de la siguiente $ as sucesi"amente)asta el fin del proceso. 4na estructura secuencial se representa de la siguiente forma-
6nicio 'ccion0 'ccion2 . . 'ccion;=in
) !signacin:La asignacin consiste, en el paso de "alores o resultados a una zona de la memoria. ic)azona ser reconocida con el nombre de la "ariable que recibe el "alor. La asignacin se puede clasificar dela siguiente forma-
*imples:Consiste en pasar un "alor constate a una "ariable *a0@+
Contador:Consiste en usarla como un "erificador del numero de "eces que se realiza un
proceso *aaD0+
!cumulador:Consiste en usarla como un sumador en un proceso *aaDb+
%e trabajo:onde puede recibir el resultado de una operacin matemtica que in"olucre
muc)as "ariables *acDb2%1+.) Lectura:La lectura consiste en recibir desde un dispositi"o de entrada *p.e#. el teclado+ un "alor. &staoperacin se representa en un pseudocodigo como sigue-
Leer a, b
onde JaK $ JbK son las "ariables que recibirn los "alores
)Escritura:Consiste en mandar por un dispositi"o de salida *p.e#. monitor o impresora+ un resultado omensa#e. &ste proceso se representa en un pseudocodigo como sigue-
&scribe J&l resultado es-K,
%onde /El resultado es:0 es un mensaje que se desea apare-ca 1 ' es una variable que contiene
un valor2
Estructuras de Condicionales
Las estructuras condicionales comparan una "ariable contra otro*s+ "alor*es+, para que en base alresultado de esta comparacin, se siga un curso de accin dentro del programa. Cabe mencionar que lacomparacin se puede )acer contra otra "ariable o contra una constante, seg!n se necesite. &xisten dostipos bsicos, las simples $ las m!ltiples.
7/23/2019 Apuntes de Programacin
7/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
*imples: Las estructuras condicionales simples se les conoce como J:omas de decisinK. &stas
tomas de decisin tienen la siguiente forma-
3i condicinM entonces'ccin*es+
=in
7/23/2019 Apuntes de Programacin
8/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
CondicinNNNN 6ndica la condicin a e"aluarentoncesNN..NN (recede a las acciones a realizar cuando se cumple la condicinaccin*es+NNNN 3on las acciones a realizar cuando se cumple o no la condicinsi noNNNNNN (recede a las acciones a realizar cuando no se cumple la condicin
%ependiendo de si la comparacin es cierta o falsa3 se pueden reali-ar una o mas acciones2
M4ltiples:Las estructuras de comparacin m!ltiples, son tomas de decisin especializadas que
permiten comparar una "ariable contra distintos posibles resultados, e#ecutando para cada caso unaserie de instrucciones especificas. La forma com!n es la siguiente-
3i condicinM entonces'ccin*es+
si no3i condicinM entonces
'ccin*es+ si no
.
. Oarias condiciones
.
&orma #eneral
Casos Oariable >p0- 'ccin*es+ >p2- 'ccin*es+
. .
>p;- accin=in
7/23/2019 Apuntes de Programacin
9/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Diagramas de )lujo 7D0)09
%iagrama de &lujo o 5rganigrama2 epresentacin semigrfica del algoritmo en cuestin $ representa la
solucin de un problema por medio de smbolos estandarizados, que se colocan en una secuencia
adecuada para indicar las fases lgicas de la solucin de un problema.
&sto nos facilita la "isin descripti"a de la e#ecucin del programa, as como la generacin de la traza
del algoritmo o del Diagrama de Flujo . 3e denomina traza de un algoritmo o iagrama de =lu#o, a la
e#ecucin manual de un programa obteniendo para cada paso un resultado.
&l sentido de la e#ecucin de un .=. es de arriba )acia aba#o $ de izquierda a derec)a. &l .=.,
proporciona algo ms que una descripcin detallada del flu#o o procesamiento de informacin, sir"e
tambin como-
edio de comunicacin eficiente.
Ierramienta de anlisis.
=orma concisa de documentacin.
*6mbolos generales:
6nicio $ fin de un programa.
>peraciones de 6%> , aritmticas $ lgico
7/23/2019 Apuntes de Programacin
10/31
+- Diagrama de Flujo
Inicio
a=0, b=0
a,b
c = a + b
c terminar
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
La tra-a*tambin conocido como-Prueba de Escritorio+ de un lgoritmo o Diagrama de )lu#o, sepuede definir como la e#ecucin manual de forma secuencial de las sentencias que lo componen. 's, lala traza del siguiente algoritmo es el "alor que "an adoptando las "ariables a medida que se "a e#ecutando
un programa.
La funcin principal que posee realizar la traza de un algoritmo es la de comprobar que ste funciona
correctamente o para realizar la etapa de depuracin en la que se intenta corregir errores, simplificarel algoritmo al mximo e incrementar su eficacia $ "elocidad.
"im.olog!a .1sica del los Diagrama de )lujo
:odos los smbolos se unen mediante lneas que tiene un solo sentido, $ se les conoce como l6neas de
flujo, las cuales indican el sentido de la e#ecucin del .=. de arriba aba#o $ de izquierda a derec)a.
&mpleado para marcar el inicio$ el finde un .=. *elimita cuerpo lgico del .=.+
Inicio
T R @ Comentario Oalores
Leemos a- a < 1
Leemos b- b < @
Calcula c- c < aDb < H
&scribe c- c < H
7/23/2019 Apuntes de Programacin
11/31
'5;o 3i
6nstruccin 6nstruccin
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
3mbolo de lectura03e encierra lo que ser ledo.
3mbolo de impresin0&mpleado para la impresin de los "alores que tienen los indentificadores o
citar mensa#es.
5loque de procesamiento0 3e usan para representar- asignaciones o para realizar clculos.
Conectores. &mpleados para indicar )acia donde continua el .=.
Colectores23on para recibir dos lneas de flu#o $ tener una lnea resultante.
*6mbolo de Condicin o %ecisin2
;o Condicin 3i
%ecisin: 3e utiliza para buscar una comparacin o relacin lgica entre dos "alores. 3i la condicin se
cumple, la direccin lgica tamar el camino del JsiK $ e#ecutar la instruccin o instrucciones
correspondientesP en caso contrario, tomar el camino del Jno 7si no 9K. 'l tomar la alternati"a del
Resultado
N
$%&C
Instruccin
'5
;o 3i
7/23/2019 Apuntes de Programacin
12/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
JnoA, podra ser necesario no realizar una instruccin o grupos de instrucciones, $a que puede ser deseable
que por las condiciones del problema, no se necesite realizar ninguna instruccin.
*imbolo de decisin anidados2 &sta simbologa, es seme#ante a la anterior. 'l implantar una
simbologa de condicin $ agregar inmediatamente otro smbolo igual al anterior *en lugar de una
instruccin+ independientemente de la posicin lgica Jsio si noJ, en ese momento se puede decir
que se est utilizando simbologa de decisin anidada.
Cabe mencionar, que mientras ms condiciones anidadas se implanten, ms comple#idad de interpretacin
o confusin se presentar al analizar el diagrama de flu#o. (ara tal caso, se crea simbologa que sigue a
continuacin.
7nstruccin *eg4n8+acer (case
&s una instruccin de seleccin m!ltiple de opciones. &n esta simbologa de multiples caminos, solamente
uno es el que se e#ecutar *de acuerdo al deseado+ e inmediatamente terminar el mdulo del flu#o lgico.
6nstruccin 6nstruccin 6nstruccin 6nstruccin 6nstruccin 6nstruccin 6nstruccin
3eg!n Oalor
=in 3eg!n
;o 3i
;o 3i ;o 3i
;o 3i
;o 3i
Condicin
Condicin
Condicin
Condicin
Condicin6nstruccin 6nstruccin 6nstruccin
6nstruccin 6nstruccin
7/23/2019 Apuntes de Programacin
13/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
5tros s6mbolos:
"!m.olo Uso (jemplo&xpresa, la tomar la parte entera
de un identificador
' ?.@AF
' '&xpresa, tomar el mdulo a
residuo de una di"isin entera
' 2/
' % 2 B&xpresa, &l "alor absoluto de que
tine un identificador.
' ,9c,Qc,9p,Qp
*9c
7/23/2019 Apuntes de Programacin
14/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
ealizar un diagrama de flu#o para leer una calificacin que debe ser entera $ legal. eterminar si la
calificacin es reprobatoria, si saco F/, si saco G/, si saco H/, o excelente.
C'L M /'nd Cal 0//
3eg!n C'L
:erminar
Problemas *ecuenciales para %iagramar
0+ 3uponga que un indi"iduo desea in"ertir su capital en un banco $ desea saber cuanto dinero ganaradespus de un mes si el banco paga a razn de 2R mensual.
6nicio Leer capBin" gan capBin" /./2
6mprimir gan=in
2+ 4n "endedor recibe un sueldo base mas un 0/R extra por comisin de sus "entas, el "endedor deseasaber cuanto dinero obtendr por concepto de comisiones por las tres "entas que realiza en el mes $ eltotal que recibir en el mes tomando en cuenta su sueldo base $ comisiones.
6nicio Leer sb, "0, "2, "? totB"ta "0 D "2 D "? com totB"ta /.0/
eprobado 3aco F/ 3aco G/ 3aco H/ &xcelente
C'L
6;6C6>
:erminar 3eg!n
7/23/2019 Apuntes de Programacin
15/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
7iG tpag sb D com 6mprimir tpag, com=in
?+ 4na tienda ofrece un descuento del 0@R sobre el total de la compra $ un cliente desea saber cuantodeber pagar finalmente por su compra.
6nicio Leer tc d tc /.0@ tp tc < d 6mprimir tp=in
1+ 4n alumno desea saber cual ser su calificacin final en la materia de 'lgoritmos. ic)a calificacin secompone de los siguientes porcenta#es-
@@R del promedio de sus tres calificaciones parciales.?/R de la calificacin del examen final.0@R de la calificacin de un traba#o final.
6nicio Leer c0, c2, c?, ef, tf prom *c0 D c2 D c?+%? ppar prom /.@@ pef ef /.?/ ptf tf /.0@ cf ppar
D pef D ptf 6mprimir cf=in
@+ 4n maestro desea saber que porcenta#e de )ombres $ que porcenta#e de mu#eres )a$ en un grupo deestudiantes.
6nicio Leer n), nm ta n) D nm p) n) 0// % ta pm nm 0// % ta 6mprimir p), pm=in
Problemas Condicionales
Problemas *electivos *imples para diagramar
0+ 4n )ombre desea saber cuanto dinero se genera por concepto de intereses sobre la cantidad que tiene enin"ersin en el banco. &l decidir rein"ertir los intereses siempre $ cuando estos excedan a SF///, $ enese caso desea saber cuanto dinero tendr finalmente en su cuenta.
6nicio
7/23/2019 Apuntes de Programacin
16/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Leer pBint, cap int cap pBint si int M F/// entonces
capf cap D int fin
7/23/2019 Apuntes de Programacin
17/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
fin
2+ Leer tres n!meros diferentes e imprimir el numero ma$or de los tres.6nicio Leer num0, num2, num? 3i *num0 M num2+ and *num0 M num?+ entonces
ma$or num0 si no
3i *num2 M num0+ and *num2 M num?+ entoncesma$or num2
si noma$or num?
fin
7/23/2019 Apuntes de Programacin
18/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
6nicio Leer sm, antig 3i antig 0 entonces
util sm /./@ si no
3i *antig M 0+ and *antig 2+ entoncesutil sm /./F
si no3i *antig M 2+ and *antig @+ entonces
util sm /.0/ si no
3i *antig M @+ and *antig 0/+ entoncesutil sm /.0@
si noutil sm /.2/
fin
7/23/2019 Apuntes de Programacin
19/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Estructuras C6clicas
Iasta el momento las instrucciones "istas, sir"en para realizar todo el proceso una sola "ez. 3i se quisiera
repetir estas sentencias, deber e#ecutarse de nue"o el programa. (ara e"itar este problema surge un
mecanismo iterati"o llamado instrucciones repetitivas. &stas instrucciones cclicas, son controladas
*abortadas, canceladas o terminadas+ mediante el cumplimiento de una condicin o a tra"s de un
contador automtico.
#or lo tanto, $e llaman problemas repetitivos o cclicos a aquellos en cu%a solucin es necesario
utilizar un mismo conjunto de acciones que se puedan ejecutar una cantidad especifica de veces. Estacantidad puede ser fija &previamente determinada por el programador' o puede ser variable &estar en
funcin de alg(n dato dentro del programa'.Los ciclos se clasifican en:
a+ ientras
7/23/2019 Apuntes de Programacin
20/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
ercicio.< iagrama de flu#o para leer un n!mero entero que debe ser no negati"o. Calcular el factorial de
dic)o n!mero. *emplo- =actorial @Z @x1x?x2x0 02/+
)bservacin importante. 3i al iniciar el ciclo repetiti"o, la concicin no se cumple, se sale del proceso
sin que se realice alguna "ez el bloque de instrucciones repetiti"as.
.9 Repetir3asta 7repetuntil9
ealizar repetiti"amente un proceso mientras la condicin es falsa. &s necesario que un componente de la
condicin se altere para e"itar caer en un ciclo repetiti"o infinito.
3imbologa Yeneral 3imbologa de e#emplo- ; tiene que ser ma$or que cero.
;o ;/
3i6
;
;
6nicio
=act 0 'ux ;
;o'ux M 0
3i =act, ;
:erminar
=act =act 'ux'ux 'ux
7/23/2019 Apuntes de Programacin
21/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
ercicio < ealizar un .=. para calcular la suma de los primeros 0/ n!meros impares.
C9Desdeastaacerfin desde7)or9
ealiza repetiti"amente un ciclo de instruccin*es+ )asta cumplir con el n!mero de "eces pre"iamente
conocido. &xisten dos "ariantes de este ciclo de control.
To)or
DoEnto
(l )or to: (l )or DoEnto7forma in2ersa9:
;oCont 0/
3i
3umimp
:erminar
Yenimp Yenimp D 2cont contD 0
sumimp sumimp D Yenimp
6nicio
Yenimp0Cont0
3umimp 0
I $ / to N
6ntrucciones
I $ N DoEnto /
6ntrucciones
7/23/2019 Apuntes de Programacin
22/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
&l identificador I &pudo ser cualquiera'0 (s un auxiliar que se utiliza para lle"ar el control cclico
automtico.
Casofor toel identificador "ariable73tendr el "alor numrico uno 7/9cuando el flu#o lgico pase la
primera "ez. ientras no salga de la primera "uelta Isiempre tendr el "alor nurico uno 7/9.
&l ciclo lgico terminar cuando I alcance el "alor de N *n!mero mximo de "ueltas pre"iamente
conocido+.
Caso for do9nto el identificador "ariable73 tendr el "alor numrico N *n!mero mximo de "ueltas
pre"iamente conocido+ $ cada "ez que pase por el flu#o lgico decrementar de manera automtica, por lotanto, antes de entrar de nue"o al ciclo repetiti"o de instrucciones *en la parte alta del ciclo+ se comparar
el "alor de Icon el "alor n!merico de uno * pasa por (ltima vez9, de tal forma que cuando Itenga como
"alor numrico cero 7B9, el flu#o saldr del ciclo.
emplo-
Problemas ( .acer para
0+ Calcular el promedio de un alumno que tiene F calificaciones en la materia de iseo &structurado de'lgoritmos
6nicio 3um/ Leer ;om Iacer para c 0 a F
Leer calif3um sum D calif =in
7/23/2019 Apuntes de Programacin
23/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Leer numcubo num num numcuarta cubo num6mprimir cubo, cuarta
=in
7/23/2019 Apuntes de Programacin
24/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
rreglos
!rreglo:&s un con#unto o coleccin de "ariables del mismo tipo, donde cada elemento ocupa una posicin
determinada, !nica $ que se referencian utilizando un nmbre com!n.
Los arreglos se caracterizan por-
'lmacenan los elementos en posiciones contiguas de memoria
:ienen un mismo nombre de "ariable que representa a todos los elementos. (ara )acer referencia a
esos elementos es necesario utilizar un ndice que especifica el lugar que ocupa cada elementodentro del arc)i"o.
Notacin del arreglo:
Los subndices indican la posicin del elemento dentro del arreglo $ son "ariables ordinales *enteros o
caracteres+.
Tipos de arreglos de acuerdo a su dimensin:
4nidimensionales > O&C:>&3
5idimensionales > ':6C&3
:ridimensionales > ':6C&3
!rreglo de una dimensin:
!rreglos Multidimensionales: 3eg!n el Lengua#e de (rogramacin que se utilice, ser eln!mero de dimensiones que soportar el Lengua#e. &l Lengua#e C, contempla )asta Fdimensiones. Los arreglos :ridimensionales por lo general, son los que se utilizan comomximo.
7/23/2019 Apuntes de Programacin
25/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
;umeros ;ombre del 'rreglo ato de las posiciones
*< / > < '4 /*
7/23/2019 Apuntes de Programacin
26/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
6 6 D 0Iasta
7/23/2019 Apuntes de Programacin
27/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Matri-
Es un arreglo de * + elementos organizados en dos dimensiones donde -* es el numero defilas o reglones % - el numero de columnas.
(ara representar una matriz se necesita un nombre de matriz se necesita un nombre de matrizacompaado de dos ndices.
at [,C\
onde indica el rengln $ C indica la columna, donde se encuentra almacenado el dato.
epresentacin grfica de una matriz
Mat >'3C?
0,0 0,2 0,? 0,1
2,0 2,2 2,? 2.1
?,0 ?,2 ?,? ?,1
1,0 1,2 1,? 1,1
!cceso a la matri-
atrizBletras 'cceso a la letra C: #atri;Fletras[2,2\
/ * ' P ) /
C u *L ; 3 '
=ila o englon[\
Columna[C\
7/23/2019 Apuntes de Programacin
28/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Llenado de una matri-
Por renglones
Iacer para 0 a @ Iacer para C 0 a @
Leer at [,C\ =in
7/23/2019 Apuntes de Programacin
29/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
(G(RCICIO" D( L UNIDD
ercicio 0- edactar un algoritmo para ir a la escuela.
ercicio 2- isear un diagrama de flu#o para calcular el promedio de las tres calificaciones de un
alumno.
ercicio ?- isear un diagrama de flu#o para calcular la suma de los 0/ primeros n!meros impares.
ercicio 1- ado dos n!meros cualesquiera, disear un diagrama de flu#o para leer $ calcular elproducto de ambos, si el primer "alor es menor que el segundo, en caso contrario, efectuar la suma.
ercicio @- Leer ; n!meros enteros $ calcular el promedio de los pares, contar la cantidad de impares
$ calcular el promedio de los n!meros proporcionados.
ercicio A- 3e tiene las calificaciones de un grupo de 0/ alumnos, se necesita saber, Tcuntos
alumnos tienen una calificacin superior al promedio del grupoU. ealizar un . =., *;o utilice
arreglos+.
ercicio F- Iacer un .=., para generar $ sumar los ; primeros n!meros de la secuencia de la serie de
Leonardo )i.onacci. La secuencia de )i.onaccies- 0,2,?,@,G,0?,20,..., es decir, dados los primeros
dos n!meros *0 $ 2+ la generacin de cada nue"o trmino se pueden encontrar sumando los dos
trminos predecentes.
ercicio G- ealizar .=. para simular una calculadora que realice las operaciones bsicas *D,
7/23/2019 Apuntes de Programacin
30/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
ercicio 00- ealizar la siguientes series, )asta el ;
7/23/2019 Apuntes de Programacin
31/31
Programacin en C Ing. Leonel Antonio QuijanoAcua
Unidad IIUnidad II
Top Related