Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
else
En la gran mayora de los programas ser necesario tomar decisiones
sobre qu acciones realizar. Esas decisiones pueden depender de los
datos que introduzca el usuario, de si se ha producido algn error o
de cualquier otra cosa.
La estructura condicional if ... else es la que nos permite tomar ese
tipo de decisiones. Traducida literalmente del ingls, se la podra
llamar la estructura "si...si no", es decir, "si se cumple la condicin,
haz esto, y si no, haz esto otro".
Un ejemplo sencillo sera el siguiente (no se trata de un programa
completo, sino tan slo una porcin de cdigo):
if(edad sweeps<18)
printf("No puedes acceder.\n");
else
printf("Bienvenido.\n");
Este cdigo de ejemplo dice que si edad es menor que 18 se
imprimir "No puedes acceder.\n", mientras que en caso contrario se
imprimir "Bienvenido.\n".
Como se ve en el ejemplo, la estructura de un condicional es bastante
simple:
if(condicin){
sentencias_si_verdadero;
}else{
sentencias_si_falso;
}
Cuando la condicin sea verdadera, se ejecutarn las sentencias
dentro del primer bloque de cdigo, cuando la condicin sea falsa, se
ejecutarn las sentencias del segundo bloque de cdigo.
La indentacin (los espacios al comienzo de las lneas) no es
necesaria, pero ayuda a la claridad del cdigo. La utilizacin de las
llaves {...} es obligatoria cuando se quiere utilizar ms de una
instruccin por bloque, y optativa cuando slo se quiere escribir una
instruccin. Por claridad, sin embargo, es recomendable utilizarlas
an cuando slo vaya a haber una instruccin.
El bloque del else es opcional. Si no se lo encuentra, slo se realizar
la accin correspondiente al bloque if.
A continuacin, un ejemplo con una funcin, que devuelve el mayor
de dos nmeros:
int mayor(int a,int b)
{
intelmayor= a;
if(b > a){
elmayor= b;
}
returnelmayor;
}
[editar]Operadores de Comparacin
Las condiciones son expresiones que utilizan operadores para tomar
la decisin apropiada. Son los operadores de comparacin, y su
resultado puede ser 1 (equivalente a verdadero) o 0 (equivalente a
falso). Este resultado provocar que se ejecute el cdigo del
bloque if o el del bloque else, segn corresponda.
A continuacin un listado de los posibles operadores de comparacin
en C y su significado.
<
>
<=
>=
==
!=
Operadores de Comparacin
Operador
Significado
estrictamente menor que
estrictamente mayor que
menor o igual que
mayor o igual que
igual a
distinto de
12/02/2011
2:55 pm
marcofbb
La estructura condicional (if) es fundamental a la hora de hacer una
pgina web dinmica, sirbe para que una vez llegado a un cierto
punto, tome un camino concreto en determinados casos. Se utiliza el
conjunto de instrucciones: if, else y elseif.
Estructura base:
if(Condicin)
{
Instruccin 1;
Instruccin 2;
}
else
{
Instruccin A;
Instruccin B;
}
Cuando la ejecucin llega al punto donde se encuentra la instruccin
if, el programa verificar el cumplimiento o no de la condicin. Si la
condicin es verdadera se ejecutarn las instrucciones 1 y 2, de lo
contrario, se ejecutarn las instrucciones A y B. En los casos en que
las condiciones sean varias se agregan if dentro de los if.
Estructura:
if(Condicion1)
{
Instruccin 1;
Instruccin 2;
}
else
{
if(Condicion2)
{
Instruccin A;
Instruccin B;
}
else
{
Instruccin X;
Instruccin Z;
}
}
De este modo se pueden introducir tantas condiciones como se quiera
dentro de la condicin principal. Una variante de este sistema es
utilizando la sentencia elseif, que permite en una sola lnea introducir
una condicin adicional:
if(Condicion1)
{
Instruccin 1;
Instruccin 2;
}
elseif(Condicion2)
{
Instruccin A;
Instruccin B;
}
else
{
Instruccin X;
Instruccin Z;
}
== para ver si una variable es igual a otra.
!= distinto.
>= mayor o igual.
> mayor.
<= menor o igual
< menor
La mejor forma de entender esta estructura condicional es por medio
de ejemplos. El primero que nos plantearemos es generar un valor
aleatorio (es decir lo elige la mquina al azar, como extraer una
bolilla de un bolillero de lotera) comprendido entre 1 y 10. Luego
mostraremos un mensaje si es menor o igual a 5 o si es mayor a 5.
El programa completo es:
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor=rand(1,10);
echo"El valor sorteado es $valor<br>";
if($valor<=5)
{
echo"Es menor o igual a 5";
}
else
{
echo"Es mayor a 5";
}
?>
</body>
</html>
Ahora vamos a poner en ejemplo un if con otro if dentro
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor=rand(1,100);
echo"El valor sorteado es $valor<br>";
if($valor<=9)
{
echo"Tiene un dgito";
}
else
{
if($valor<100)
{
echo"Tiene 2 dgitos";
}
else
{
echo"Tiene 3 dgitos";
}
}
?>
</body>
</html>
Lo que hace este script es saber si el nmero generado
aleatorioamente por nuestro servidor, esto lo hace la
lnea $valor=rand(1,100);, tiene 1, 2 o 3 digtos.
Si el valor generado es menor a 9 tiene 1 digto, si no es menor a 9
sigue otro camino para saber si tiene 2 o 3 digtos.
El mismo ejemplo con la estructura if/elseif
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor=100;//rand(1,100);
echo"El valor sorteado es $valor<br>";
if($valor<=9)
{
echo"Tiene un dgito";
}
elseif($valor<100)
{
echo"Tiene 2 dgitos";
}
else
{
echo"Tiene 3 dgitos";
}
?>
</body>
</html>
Para hacer esta clase me gue en la explicacin que dio la
pagina PHPYA para buscar la mejor forma de que entiendan esto que
se me hacia difcil de explicar.
Hilo donde estn todos los artculos para aprender PHP
.
A == B
A Igual a B
A != B
A distinto de B
A<B
A menor que B
A>B
A mayor que B
A >= B
A <= B
A // B
A es mltiplo de B
A\\B
A no es mltiplo de B
A isin B
A iswm B
A isnum B
A isop B
A isvo B
A ischan
A isauto B
A isignore
Si la condicin
intrucciones:
se
verifica
verdadera
luego
se
ejecutan
las
print nombre
print ' es menor de edad.<br>'
Es obligatorio luego de la condicin del if disponer los dos puntos
if edad<18:
Tambin similar a otros lenguajes la estructura condicional if tiene
una segunda parte que es el else, dicha seccin se ejecuta si la
condicin se verifica falsa.
nombre='juan'
edad=15
print nombre
if edad<18:
print ' es menor de edad.<br>'
else:
print ' es mayor de edad.<br>'
print 'Fin del programa'
Nuevamente tener en cuenta que las instrucciones que se indiquen
por el else deben estar corridas a derecha (indentadas).
La palabra clave else requiere tambin los dos puntos
else:
Problema resuelto
Generar un nmero aleatorio comprendido entre 1 y 20. Luego
mostrar si el valor generado tiene uno o dos dgitos.
Para generar un valor aleatorio hay una librera que debemos
importar (veremos ms adelante el concepto de mdulos)
importrandom
Luego podemos llamar la funcin randint de dicho mdulo, esta
funcin requiere dos valores enteros y nos devuelve otro valor entero
comprendido entre ellos (lo selecciona de forma aleatoria, es decir al
azar)
x=random.randint(1,20)
ejecutar