Anda di halaman 1dari 7

Estatuto if

Este estatuto nos sirve para realizar alguna(s) instruccin(es) en vez de otra(s) de acuerdo a
alguna condicin que resulte verdadera, analizaremos la sintaxis de las decisiones en Java y
despus utilizaremos algunos ejemplos.
Sintaxis
if ( condicin
estatuto;
else // la parte else es opcional
estatuto;
En caso de requerir ms de un estatuto es necesario usar llaves.
if ( condicin ) {
!loque de estatutos;
}
else { // la parte else es opcional
!loque de estatutos;
}
"na condicin es la comparacin de una varia!le#constante#expresin$numerica contra otra
varia!le#constante#expresin$numrica. % este tipo de condicin se le llama condicin
simple , la condicin compleja se manejar en la ultima unidad. &a condicin simple utiliza los
siguientes operadores de relacin'
Operadores Relacionales
&os operadores relacionales que tiene Java son '
Operador en
Java
Significado
(( )gual
*( +i,erente
). )ntroduccin a la programacin orientada
a o!jetos y al lenguaje J%-%
. /enor que
0 /ayor que
.(
/enor o igual
que
0(
/ayor o igual
que
"n ejemplo puede ser que 1 sea igual a 23 la condicin quedar4a como
), (x (( 23) 5..
6tro podr4a ser c7ecar si el rea del c4rculo con radio r es menor a 233
), (/at7.8)() 9 /at7.po:(r, ;) . 233) 55.
Etc.
Ejecucin del if
&a estructura i, (sin else), ejecuta el estatuto solo cuando la condicin es verdadera; en caso
de que sea ,alsa !rinca el estatuto
(o estatutos en caso de tener ms de uno entre llaves)

&a estructura de seleccin i, # else , ejecuta la(s) accin(es) despus de la parte i, cuando la
condicin es verdadera; en caso de
que sea ,alsa ejecuta la(s) accin(es) que est(n) despus del else.
Ejemplo
i, (promedio 0( <3)
t.set=ext(> %pro!ado>);
else
t.set=ext(>?epro!ado>);

ifs anidados
@e dice que 7ay i, anidados cuando existe un i,#else dentro de otra estructura i,#else
Ejemplo
+eterminar si un nAmero es positivo, cero o negativo.
i, (num 0 3)
t.set=ext(>El nAmero es positivo>);
else i, (num (( 3)
t.set=ext(>El nAmero es cero>);
else
t.set=ext(>El nAmero es negativo>);
El applet quedaria como sigue'
import java.a:t.9;
import java.applet.9;
import java.a:t.event.9;
## .applet :idt7(>;33> 7eig7t(>;33> code(>%pplet+ecisiones2>0.#applet0
pu!lic class %pplet+ecisiones2 extends %pplet implements %ction&istener B
&a!el l2, l;;
=extCield t2, t;;
Dutton !;

pu!lic %pplet+ecisiones2() B
l2 ( ne: &a!el(>Eumero>);
t2 ( ne: =extCield(F);
l; ( ne: &a!el(>?esultado>);
t; ( ne: =extCield(2G);
! ( ne: Dutton(>Halcula>);
add(l2);
add(t2);
add(l;);
add(t;);
add(!);
!. add%ction&istener(t7is);
I
pu!lic void action8er,ormed(%ctionEvent ae) B
int num ( )nteger.parse)nt(t2.get=ext());
i, (num 0 3)
t;.set=ext(>El nAmero es positivo>);
else i, (num (( 3)
t;.set=ext(>El nAmero es cero>);
else
t;.set=ext(>El nAmero es negativo>);
I
I
El applet en ejecucin se muestra como sigue'


En el applet anterior 7icimos uso del constructor =extCield(entero) donde entero es un
nAmero entero para de,inir el nAmero de espacios que se quieren usar en el campo de texto
creado.

@i tenemos el siguiente ,ragmento de cdigo'
i, (condicin 2)
i, (condicin ;)
estatuto;
else ## este else pertenece al i, de la condicin ;, pues se asocia al i, ms
cercano
estatuto;
J queremos que el else pertenezca al primer i, de!emos poner BI para determinar donde
termina el segundo i,'
i, (condicin 2)
B
i, (condicin ;)
estatuto;
I
else ## con el uso de llaves cerramos el i, anidado y el else
estatuto; ## pertenece al primer i,

Ejemplos de !rogramas
% continuacin tendrs algunos ejemplos de programas en HKK'
Ejemplo " 8rograma que calcula la energ4a necesaria para la com!ustin de un compuesto
dada la cantidad de tomos
>x> y >y> de dos di,erentes elementos, de acuerdo a la siguiente ,rmula'
Lx K Mx
;
y $ ;y si x 0 3 , y 0( 3
e(x,y) ( x
;
$ L(y $ x) K y
;
si x . 3 , y 0( 3
x
;
K y K y (x$ ;) en cualquier otro caso
import java.a:t.9;
import java.applet.9;
import java.a:t.event.9;
import java.lang./at7;
## .applet :idt7(>;33> 7eig7t(>;33> code(>%pplet+ecisiones;>0.#applet0
pu!lic class %pplet+ecisiones; extends %pplet implements %ction&istener B
&a!el l2, l;, lM;
=extCield t2, t;, tM;
Dutton !;

pu!lic %pplet+ecisiones;() B
l2 ( ne: &a!el(>-%&6? x>);
t2 ( ne: =extCield(F);
l; ( ne: &a!el(>-%&6? y>);
t; ( ne: =extCield(F);
lM ( ne: &a!el(>?esultado>);
tM ( ne: =extCield(F);
! ( ne: Dutton(>Halcula>);
add(l2);
add(t2);
add(l;);
add(t;);
add(lM);
add(tM);
add(!);
!. add%ction&istener(t7is);
I
pu!lic void action8er,ormed(%ctionEvent ae) B
dou!le x ( +ou!le.parse+ou!le(t2.get=ext());
dou!le y ( +ou!le.parse+ou!le(t;.get=ext());
dou!le res;
i, (y 0( 3)
i, ( x 0 3)
res ( L 9 x K M 9 /at7.po: (x,;) 9 y $ ; 9 y;
else
res ( /at7.po:(x,;) $ L9 (y $ x) K /at7.po: (y,;);
else
res ( /at7.po: (x,;) K y K y 9 (x$;);
tM.set=ext(>> K res);
I
I

Ejemplo "" 8rograma que lee M nAmeros enteros di,erentes y los despliega de mayor a
menor.
import java.a:t.9;
import java.applet.9;
import java.a:t.event.9;

## .applet :idt7(>;33> 7eig7t(>;33> code(>%pplet+ecisionesM>0.#applet0
pu!lic class %pplet+ecisionesM extends %pplet implements %ction&istener B
&a!el l2, l;, lM,lL;
=extCield t2, t;, tM,tL;
Dutton !;

pu!lic %pplet+ecisionesM() B
l2 ( ne: &a!el(>-%&6? 2>);
t2 ( ne: =extCield(F);
l; ( ne: &a!el(>-%&6? ;>);
t; ( ne: =extCield(F);
lM ( ne: &a!el(>-%&6? ;>);
tM ( ne: =extCield(F);
lL ( ne: &a!el(>?esultado>);
tL ( ne: =extCield(2F);
! ( ne: Dutton(>Halcula>);
add(l2);
add(t2);
add(l;);
add(t;);
add(lM);
add(tM);
add(!);
add(lL);
add(tL);
!. add%ction&istener(t7is);
I
pu!lic void action8er,ormed(%ctionEvent ae) B
dou!le a ( +ou!le.parse+ou!le(t2.get=ext());
dou!le ! ( +ou!le.parse+ou!le(t;.get=ext());
dou!le c ( +ou!le.parse+ou!le(tM.get=ext());
dou!le res;
i, (a 0( !)
i, ( a 0( c)
tL.set=ext(>>K a K > es el mayor>);
else
tL.set=ext(>>K c K > es el mayor>);
else
i, ( ! 0( c)
tL.set=ext(>>K ! K > es el mayor>);
else
tL.set=ext(>>K c K > es el mayor>);
I
I
&a aplicacin ejecutando ,uncionar4a como se o!serva'

Anda mungkin juga menyukai