Programación

1º DAM/DAW - Curso 2023-2024

User Tools

Site Tools


apuntes:estructuras_de_control

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
apuntes:estructuras_de_control [2019/02/14 22:09] Santiago Faciapuntes:estructuras_de_control [2023/06/04 11:24] (current) – [Operador condicional] Santiago Faci
Line 1: Line 1:
 ====== Las estructuras de control ====== ====== Las estructuras de control ======
  
-\part*{Las estructuras de control}+===== Estructura if =====
  
-\section{Estructura if} +La sentencia ''if''  permite tomar una decision en base a una condición. Dicha condición puede ser simple (comparar dos expresiones) o bien compleja, pudiéndose comparar múltiples expresiones unidas por cualquier operador lógico. Si el resultado final de la condición es
- +
-La estructura \verb if  permite tomar una decision en base a una condición. Dicha condición puede ser simple (comparar dos expresiones) o +
-bien compleja, pudiéndose comparar múltiples expresiones unidas por cualquier operador lógico. Si el resultado final de la condición es+
 verdadero (la condición se cumple), se ejecutará el bloque de código asociado a la instrucción \verb if , y a continuación, el programa verdadero (la condición se cumple), se ejecutará el bloque de código asociado a la instrucción \verb if , y a continuación, el programa
 seguirá inmediatamente después. En caso contrario, no se ejecutará ese código y el programa seguirá inmediatamente después. seguirá inmediatamente después. En caso contrario, no se ejecutará ese código y el programa seguirá inmediatamente después.
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if (condicion) { +if (condicion) { 
-        sentencias; +    sentencias; 
-    +
-    \end{lstlisting}+</code>
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if (x > 10) { +if (x > 10) { 
-        System.out.println("x es mayor que 10"); +    System.out.println("x es mayor que 10"); 
-    +
-    \end{lstlisting}+</code>
  
-\section{Estructura if/else}+==== Estructura if/else ====
  
-En este caso la instrucción \verb if  viene acompañada de un segundo bloque de instrucciones que se asocia al caso en que la condición de la +En este caso la instrucción ''if''  viene acompañada de un segundo bloque de instrucciones que se asocia al caso en que la condición de la instrucción no se cumpla. Ahora, cuando la condición asociada al caso \verb if  no se cumpla, se ejecutará el bloque de código asociado al
-instrucción no se cumpla. Ahora, cuando la condición asociada al caso \verb if  no se cumpla, se ejecutará el bloque de código asociado al+
 caso \verb else  antes de continuar inmediatamente después. caso \verb else  antes de continuar inmediatamente después.
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if (condicion) { +if (condicion) { 
-        sentencias_if; +    sentencias_if; 
-    +
-    else { +else { 
-        sentencias_else; +    sentencias_else; 
-    +
-    \end{lstlisting}+</code>
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if (x == 10) { +if (x == 10) { 
-        System.out.println("x vale 10"); +    System.out.println("x vale 10"); 
-    +
-    else { +else { 
-        System.out.println("x no vale 10"); +    System.out.println("x no vale 10"); 
-    +
-    \end{lstlisting}+</code>
  
-\section{Estructura if/else if}+==== Estructura if/else if ====
  
-Este es el caso más completo de la instrucción \verb if . Realmente es posible evaluar tantas condiciones como se deseen y asociar un bloque +Este es el caso más completo de la sentencia ''if'' . Realmente es posible evaluar tantas condiciones como se deseen y asociar un bloque de código al cumplimiento de cada una de esas condiciones, teniendo en cuenta que, por cada sentencia ''if'' sólo se acabará ejecutando un sólo bloque de instrucciones. Se ejecutará siempre el bloque asociado a la condición que antes se cumpla (en orden de arriba a abajo) o 
-de código al cumplimiento de cada una de esas condiciones, teniendo en cuenta que, por cada instrucción \verb if  sólo se acabará ejecutando +el bloque asociado al caso \verb else  si no se cumple ninguna condición (siempre que se haya incluido caso ''else''). Asi, es posible que, aún incluyendo una sentencia ''if'', puede que nunca se ejecute ninguna sentencia.
-un sólo bloque de instrucciones. Se ejecutará siempre el bloque asociado a la condición que antes se cumpla (en orden de arriba a abajo) o +
-el bloque asociado al caso \verb else  si no se cumple ninguna condición (siempre que se haya incluido caso \verb else ). Asi, es posible +
-que, aún incluyendo una sentencia \verb if , puede que nunca se ejecute ninguna sentencia.+
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if (condicion1) { +if (condicion1) { 
-        sentencias_1; +    sentencias_1; 
-    +
-    else if (condicion2) { +else if (condicion2) { 
-        sentencias_2; +    sentencias_2; 
-    +
-    else if (condicion3) { +else if (condicion3) { 
-        sentencias_3; +    sentencias_3; 
-    +
-    . . . +. . . 
-    . . . +. . . 
-    else { +else { 
-        sentencias_else; +    sentencias_else; 
-    +
-    \end{lstlisting}+</code>
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if (x > 10) { +if (x > 10) { 
-        System.out.println("x es mayor que 10"); +    System.out.println("x es mayor que 10"); 
-    +
-    else if (x < 10) { +else if (x < 10) { 
-        System.out.println("x es menor que 10"); +    System.out.println("x es menor que 10"); 
-    +
-    else { +else { 
-        System.out.println("x es igual a 10"); +    System.out.println("x es igual a 10"); 
-    +
-    \end{lstlisting}+</code>
  
-\section{Operador condicional}+===== Operador lógicos en estructuras de control =====
  
 Los operadores condicionales permiten evaluar varias expresiones como si se trataran de una sola condición Los operadores condicionales permiten evaluar varias expresiones como si se trataran de una sola condición
  
-    \begin{itemize} +  * Operador ''AND'' Representado por los caracteres ''&&'', se utiliza para combinar varias expresiones y que éstas sean evaluadas como una sola condición verdadera cuando todas ellas lo sean. Si alguna de ellas es falsa, el resultado siempre será falso indepedientemente del valor de todas las demás 
-        \item \textbf{Operador ANDRepresentado por los caracteres \verb && , se utiliza para combinar varias expresiones y que éstas sean +  Operador ''OR'' Representado por los caracteres ''||'', se utiliza para combinar varias expresiones y que éstas sean evaluadas como una sola condición verdadero simplemente con que una de ellas lo sea. Si todas ellas son falsas, el resultado de la condición compuesta será falso 
-        evaluadas como una sola condición verdadera cuando todas ellas lo sean. Si alguna de ellas es falsa, el resultado siempre será falso +  Operador ''NOT'' Representado por el caracter ''!'', se utiliza para invertir el resultado de la expresión que queda a su derecha.
-        independientemente del valor de todas las demás +
-        \item \textbf{Operador ORRepresentado por los caracteres \verb || , se utiliza para combinar varias expresiones y que éstas sean +
-        evaluadas como una sola condición verdadero simplemente con que una de ellas lo sea. Si todas ellas son falsas, el resultado de la +
-        condición compuesta será falso +
-        \item \textbf{Operador NOTRepresentado por el caracter \verb ! , se utiliza para invertir el resultado de la expresión que queda a +
-        su derecha. +
-    \end{itemize}+
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if ((x > 10) && (x < 20)) { +if ((x > 10) && (x < 20)) { 
-        System.out.println("El valor de x está entre 10 y 20"); +    System.out.println("El valor de x está entre 10 y 20"); 
-    +
-    \end{lstlisting}+</code>
  
-    \begin{lstlisting}[language=java] +<code java> 
-    if ((x == 10) || (x == 20)) { +if ((x == 10) || (x == 20)) { 
-        System.out.println("El valor de x es 10 o 20"); +    System.out.println("El valor de x es 10 o 20"); 
-    +
-    \end{lstlisting}+</code>
          
-    \begin{lstlisting}[language=java] +<code java> 
-    if (!(x == 10)) { +if (!(x == 10)) { 
-        System.out.println("x es distinto que 10"); +    System.out.println("x es distinto que 10"); 
-    +
-    \end{lstlisting}+</code>
  
-\section{Estructura switch}+===== Estructura switch-case =====
  
-La sentencia \verb switch  permite tomar una decisión en base al valor de una variable. A cada posible valor se le asocia un bloque de +La sentencia ''switch-case''  permite tomar una decisión en base al valor de una variable. A cada posible valor se le asocia un bloque de sentencias que será ejecutado cuando la variable contenga dicho valor. Además, de forma similar a como ocurre con la sentencia ''if'',esta sentencia tiene un caso por defecto, en este caso se llama ''default'', cuyo bloque asociado se ejecutará en caso de que la variable 
-sentencias que será ejecutado cuando la variable contenga dicho valor. Además, de forma similar a como ocurre con la sentencia \verb if , +no tenga ninguno de los valores recogidos en los casos ''case''.
-esta sentencia tiene un caso por defecto, en este caso se llama \verb default , cuyo bloque asociado se ejecutará en caso de que la variable +
-no tenga ninguno de los valores recogidos en los casos \verb case .+
  
-    \begin{lstlisting}[language=java] +<code java> 
-    switch(condicion) { +switch(condicion) { 
-        case valor_1: +    case valor_1: 
-            sentencias_1; +        sentencias_1; 
-            break; +        break; 
-        case valor_2: +    case valor_2: 
-            sentencias_2; +        sentencias_2; 
-            break; +        break; 
-        case valor_3: +    case valor_3: 
-            sentencias_3; +        sentencias_3; 
-            break; +        break; 
-        default: +    default: 
-            sentencia_default; +        sentencia_default; 
-            break; +        break; 
-    +
-    \end{lstlisting}+</code>
  
-    \begin{lstlisting}[language=java] +<code java> 
-    switch(color) { +switch(color) { 
-        case "azul": +    case "azul": 
-            System.out.println("El color es azul"); +        System.out.println("El color es azul"); 
-            break; +        break; 
-        case "rojo": +    case "rojo": 
-            System.out.println("El color es rojo"); +        System.out.println("El color es rojo"); 
-            break; +        break; 
-        case "negro": +    case "negro": 
-            System.out.println("El color es negro"); +        System.out.println("El color es negro"); 
-            break; +        break; 
-        default: +    default: 
-            System.out.println("No es ninguno de los colores seleccionados"); +        System.out.println("No es ninguno de los colores seleccionados"); 
-            break; +        break; 
-    +
-    \end{lstlisting}+</code>
  
-%\lstinputlisting{partes/varios/Persona.java}+----
  
  
----- 
  
-(c) 2019 Santiago Faci+(c) 2019-{{date>%Y}} Santiago Faci
apuntes/estructuras_de_control.1550182198.txt.gz · Last modified: 2019/02/14 22:09 by Santiago Faci