Professional Documents
Culture Documents
condicionales y ciclos
Diego Andrs Alvarez Marn
Profesor Asociado
Universidad Nacional de Colombia
Sede Manizales
Temario
Condicionales
if, if-else
switch, case, default
Ciclos
while
do-while
for
break, continue
goto
2
if else
if (condicin)
comando1;
else
comando2;
comando3;
condicin
true
false
comando1
comando2
comando3
if else
Observe que la
condicin va entre
parntesis
Observe
que los ifs
se pueden
anidar
a?b:c
Si la expresin a es verdadera, entonces se
evala la expresin b y el resultado es el valor de
b; de lo contrario la expresin c se evalua y se
retorna dicho resultado.
switch(var)
{
case op1:
comando1;
break;
case op2:
comando2;
case op3:
comando3;
break;
default:
comando4;
}
comando5;
true
comando1
false
var = op2
true
comando2
false
var = op3
true
comando3
false
comando4
comando5
6
switch case
default
Las expresiones
comparadas deben
ser de tipo entero o
char.
Las expresiones
contra las que se
comparan deben ser
constantes enteras o
tipo char
GNU C extension
switch case
default
Se puede especificar un
rango en la etiqueta, algo as
como:
case bajo ... alto:
Cuidado con los espacios:
bajo ... alto
bajo...alto
correcto
incorrecto
while
while (condicin)
comando1;
comando2;
condicin
true
comando1
false
comando2
10
while
11
while
12
do while
comando1
do
{
comando1;
}
while(condicin);
comando2;
condicin
true
false
comando2
13
do while
Repite hasta que la
condicin de salida se
vuelve falsa
14
for
inicializacin
condicin
false
true
comando1
incremento
comando2
for(inicializacin;condicin; incremento)
comando1;
comando2;
15
for
La estructura general del ciclo for es:
for(inicializacin; condicin; incremento)
comando1;
comando2;
0123456789
1 2 3 4 5 6 7 8 9 10
x = 1, y = 10
x = 3, y = 9
x = 5, y = 8
x = 7, y = 7
x = 9, y = 6
17
19
break
break se utiliza para
salirse del bloque {} actual
de un ciclo (for, while, do
while) o de un switch.
Si se pone un break
dentro de un ciclo o switch
anidado, el break solo se
sale del bloque (ciclo o
switch) interior, no de los
otros ciclos o switchs.
20
continue
21
goto
(evite usar esta orden)
La etiqueta debe residir en la
misma funcin que el goto
que salta a ella. Un goto no
puede saltar a una etiqueta
en una funcin diferente.
Este es un ejemplo en el
cual el uso del goto est
justificado. Observe que
aqu quiero salir de los dos
ciclos. Un break, solo nos
sacara del for interior,
mientras que el goto nos
saca de los dos ciclos con
una sola instruccin, sin
22
perder claridad en el cdigo.
23
Normas de estilo
Unas normas de estilo en programacin, son tan importantes
que todas las empresas dedicadas a programacin imponen a
sus empleados una mnima uniformidad, para facilitar el
intercambio de programas y la modificacin por cualquier
empleado, sea o no el programador inicial. Por supuesto, cada
programa debe ir acompaado de una documentacin
adicional, que aclare detalladamente cada mdulo del
programa, objetivos, algoritmos usados, ficheros... (ver por
ejemplo https://code.google.com/p/google-styleguide/)
No existen un conjunto de reglas fijas para programar con
legibilidad, ya que cada programador tiene su modo y sus
manas y le gusta escribir de una forma determinada. Lo que s
existen son un conjunto de reglas generales, que aplicndolas,
en mayor o menor medida, se consiguen programas bastante
24
legibles. Aqu intentaremos resumir estas reglas.
Normas de estilo en la
programacin
Lneas
Espacios e identaciones
Nombres de variables
Variables
Comentarios
Comentarios
Consejos generales
http://www.gnu.org/software/gnu-c-manual/gnu-c-man
http://en.cppreference.com/w/cpp/language/goto
Wikipedia