SlideShare une entreprise Scribd logo
1  sur  32
Sentencia, Secuencia y
Bloque
CLASE 07
Sentencia, Secuencia y Bloque
En C++ la unidad básica de acción es la sentencia, y expresamos la composición de sentencias
como una secuencia de sentencias terminadas cada una de ellas por el carácter “punto y coma“
(;), de tal forma que su flujo de ejecución es secuencial, es decir, se ejecuta una sentencia, y
cuando esta termina, entonces se ejecuta la siguiente sentencia, y así sucesivamente.
Un bloque es una unidad de ejecución mayor que la sentencia, y permite agrupar una secuencia
de sentencias como una unidad. Para ello enmarcamos la secuencia de sentencias entre dos
llaves para formar un bloque. Es posible el anidamiento de bloques.
Sentencia, Secuencia y Bloque
Declaraciones Globales y Locales
Distinguiremos dos clases de declaraciones: globales y locales.
Entidades globales son aquellas que han sido definidas fuera de cualquier bloque. Su ámbito de
visibilidad comprende desde el punto en el que se definen hasta el final del fichero. Respecto a
su tiempo de vida, se crean al principio de la ejecución del programa y se destruyen al finalizar
este. Normalmente serán constantes simbólicas, definiciones de tipos, declaración de prototipos
de subprogramas y definiciones de subprogramas.
Declaraciones Globales y Locales
Entidades locales son aquellas que se definen dentro de un bloque. Su ámbito de visibilidad
comprende desde el punto en el que se definen hasta el final de dicho bloque. Respecto a su
tiempo de vida, se crean en el punto donde se realiza la definición, y se destruyen al finalizar el
bloque. Normalmente serán constantes simbólicas y variables locales.
EJEMPLO 1(EJ7_1)
Programa que hace el uso de variables
locales y globales sobre la conversión de
dólares a pesos mexicanos
EJEMPLO (EJ7_1)
EJEMPLO (EJ7_1)
Declaraciones Globales y Locales
Respecto al ámbito de visibilidad de una entidad, en caso de declaraciones de diferentes
entidades con el mismo identificador en diferentes niveles de anidamiento, la entidad visible
será aquella que se encuentre declarada en el bloque de nivel de anidamiento más
interno. Es decir, cuando se solapa el ámbito de visibilidad de dos entidades con el
mismo identificador, en dicha zona de solapamiento será visible el identificador
declarado/definido en el bloque más interno. Sin embargo, no es una buena practica de
programación ocultar identificadores al redefinirlos en niveles de anidamiento mas internos, ya
que conduce a programas difíciles de leer y propensos a errores.
Declaraciones Globales y Locales
Sentencias de Asignación
La sentencia de asignación permite asignar a una variable el
resultado de evaluar una expresión aritmética expresada en notación
infija, de tal forma que primero se evalúa la expresión, considerando
las reglas de precedencia y asociatividad de los operadores y a
continuación el valor resultante se asigna a la variable, que pierde.
Por ejemplo:
Sentencias de Asignación
Sentencias de Asignación
Además, se definen las siguientes sentencias de
incremento/decremento
Sentencias de Asignación
Sentencias de Asignación
Nota: las sentencias de asignación vistas anteriormente se pueden
utilizar en otras formas muy diversas, pero nosotros restringiremos
su utilización a la expresada anteriormente, debido a que otras
utilizaciones pueden dificultar la legibilidad y aumentar las
posibilidades de cometer errores de programación.
Sentencias de Asignación
Nota: las sentencias de asignación vistas anteriormente se pueden
utilizar en otras formas muy diversas, pero nosotros restringiremos
su utilización a la expresada anteriormente, debido a que otras
utilizaciones pueden dificultar la legibilidad y aumentar las
posibilidades de cometer errores de programación.
Sentencias de Selección
Las sentencias de selección alteran el flujo secuencial de ejecución
de un programa, de tal forma que permiten seleccionar flujos de
ejecución alternativos y excluyentes dependiendo de expresiones
lógicas. La más simple de todas es la sentencia de selección
condicional if cuya sintaxis es la siguiente:
Sentencias de Selección
Sentencias de Selección
y cuya semántica consiste en evaluar la expresión lógica, y si su
resultado es Verdadero (true) entonces se ejecuta la secuencia de
sentencias entre las llaves. Ejemplo de programa que imprime el
valor mayor de tres números:
EJEMPLO (EJ7_2)
y cuya semántica consiste en evaluar la expresión lógica, y si su
resultado es Verdadero (true) entonces se ejecuta la secuencia de
sentencias entre las llaves. Ejemplo de programa que imprime el
valor mayor de tres números:
EJEMPLO (EJ7_2)
EJEMPLO (EJ7_2)
ESTRUCTURAS DE CONTROL
Otra posibilidad es la sentencia de selección condicional compuesta, que tiene la siguiente
sintaxis:
EJEMPLO (EJ7_3)
y cuya semántica consiste en evaluar la expresión lógica, y si su resultado
es Verdadero (true) entonces se ejecuta la <secuencia de sentencias v> .
Sin embargo, si el resultado de evaluar la expresión lógica es Falso (false)
entonces se ejecuta la <secuencia de sentencias f> .
La sentencia de selección condicional se puede encadenar de la
siguiente forma con el flujo de control esperado:
EJEMPLO (EJ7_3)
ESTRUCTURAS DE CONTROL
La sentencia switch es otro tipo de sentencia de selección en la cual la secuencia de sentencias
alternativas a ejecutar no se decide en base a expresiones lógicas, sino en función del valor que
tome una determinada expresión de tipo ordinal, es decir, una relación de igualdad entre el
valor de una expresión y unos determinados valores constantes de tipo ordinal especificados. Su
sintaxis es la siguiente:
ESTRUCTURAS DE CONTROL
ESTRUCTURAS DE CONTROL
en la cual se evalúa la expresión, y si su valor coincide con <valor 1> entonces se
ejecuta la <secuencia de sentencias 1> . Si su valor coincide con <valor 2> o con
<valor 3> se ejecuta la <secuencia de sentencias 2> y así sucesivamente. Si el
valor de la expresión no coincide con ningún valor especificado, se ejecuta la
secuencia de sentencias correspondiente a la etiqueta default (si es que existe).
Nótese que la sentencia break; termina la secuencia de sentencias a ejecutar
para cada caso. Ejemplo:
EJEMPLO (EJ7_4)
EJEMPLO (EJ7_4)
EJEMPLO
(EJ7_5)
EJEMPLO
(EJ7_5)

Contenu connexe

Tendances

Tema 3 sentencias de control de java por gio
Tema 3   sentencias de control de java por gioTema 3   sentencias de control de java por gio
Tema 3 sentencias de control de java por gio
Robert Wolf
 
Estructuras De Control
Estructuras De ControlEstructuras De Control
Estructuras De Control
mtemarialuisa
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
parada137
 
Instrucciones de control
Instrucciones de controlInstrucciones de control
Instrucciones de control
itamargarcia2000
 
Exposicion estalin
Exposicion estalinExposicion estalin
Exposicion estalin
Stalyn Cruz
 
Sentencias de repetición en Java
Sentencias de repetición en JavaSentencias de repetición en Java
Sentencias de repetición en Java
Jdcaste
 
Estructuras de seleccion anidadas
Estructuras de seleccion anidadasEstructuras de seleccion anidadas
Estructuras de seleccion anidadas
UVM
 

Tendances (19)

Tema 3 sentencias de control de java por gio
Tema 3   sentencias de control de java por gioTema 3   sentencias de control de java por gio
Tema 3 sentencias de control de java por gio
 
Estructuras De Control
Estructuras De ControlEstructuras De Control
Estructuras De Control
 
Las estructuras de control en la programación
Las estructuras de control en la programaciónLas estructuras de control en la programación
Las estructuras de control en la programación
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionales
 
Pseudocodigo
PseudocodigoPseudocodigo
Pseudocodigo
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructuras de control en Visual Basic
Estructuras de control en Visual BasicEstructuras de control en Visual Basic
Estructuras de control en Visual Basic
 
Pseudocódigo
PseudocódigoPseudocódigo
Pseudocódigo
 
Instrucciones de control
Instrucciones de controlInstrucciones de control
Instrucciones de control
 
Sentencia de Selección
Sentencia de SelecciónSentencia de Selección
Sentencia de Selección
 
Estructuras if
Estructuras ifEstructuras if
Estructuras if
 
Exposicion estalin
Exposicion estalinExposicion estalin
Exposicion estalin
 
Sentencias de repetición en Java
Sentencias de repetición en JavaSentencias de repetición en Java
Sentencias de repetición en Java
 
Curso Java Inicial 3 Sentencias De Control De Flujo
Curso Java Inicial   3 Sentencias De Control De FlujoCurso Java Inicial   3 Sentencias De Control De Flujo
Curso Java Inicial 3 Sentencias De Control De Flujo
 
Elementos de una programación
Elementos de una programaciónElementos de una programación
Elementos de una programación
 
Estructuras de seleccion anidadas
Estructuras de seleccion anidadasEstructuras de seleccion anidadas
Estructuras de seleccion anidadas
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Control
ControlControl
Control
 

En vedette

Física2 bach 9.4 ley de lorentz
Física2 bach 9.4 ley de lorentzFísica2 bach 9.4 ley de lorentz
Física2 bach 9.4 ley de lorentz
Tarpafar
 

En vedette (20)

Ley de kirchhoff
Ley de kirchhoffLey de kirchhoff
Ley de kirchhoff
 
Elementos basicos c++
Elementos basicos c++Elementos basicos c++
Elementos basicos c++
 
Introducción
IntroducciónIntroducción
Introducción
 
Ley de-biot-savart-electromagnetismo
Ley de-biot-savart-electromagnetismoLey de-biot-savart-electromagnetismo
Ley de-biot-savart-electromagnetismo
 
Ley de ampere. ITO
Ley de ampere. ITOLey de ampere. ITO
Ley de ampere. ITO
 
Elicitacion de requerimientos
Elicitacion de requerimientosElicitacion de requerimientos
Elicitacion de requerimientos
 
Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)Método de la regla falsa (o metodo de la falsa posición)
Método de la regla falsa (o metodo de la falsa posición)
 
Clase 5 LKV
Clase 5 LKVClase 5 LKV
Clase 5 LKV
 
Simulación en promodel clase 04
Simulación en promodel clase 04Simulación en promodel clase 04
Simulación en promodel clase 04
 
Cadenas y funciones de cadena
Cadenas y funciones de cadenaCadenas y funciones de cadena
Cadenas y funciones de cadena
 
Clase 5 ley de biot savart
Clase 5 ley de biot savartClase 5 ley de biot savart
Clase 5 ley de biot savart
 
Cuckoo sandbox
Cuckoo sandboxCuckoo sandbox
Cuckoo sandbox
 
Clase 10 ley de biot savart
Clase 10 ley de biot savartClase 10 ley de biot savart
Clase 10 ley de biot savart
 
Física2 bach 9.4 ley de lorentz
Física2 bach 9.4 ley de lorentzFísica2 bach 9.4 ley de lorentz
Física2 bach 9.4 ley de lorentz
 
Ley de ampere
Ley de ampereLey de ampere
Ley de ampere
 
Sentencia, secuencia y bloque
Sentencia, secuencia y bloqueSentencia, secuencia y bloque
Sentencia, secuencia y bloque
 
Clase 16 ley de biot savart
Clase 16 ley de biot savartClase 16 ley de biot savart
Clase 16 ley de biot savart
 
Armitage pruebas
Armitage pruebasArmitage pruebas
Armitage pruebas
 
Primera ley de faraday
Primera ley de faradayPrimera ley de faraday
Primera ley de faraday
 
Ley de ampere
Ley de ampereLey de ampere
Ley de ampere
 

Similaire à Sentencia, secuencia y bloque

Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de control
mariaisabelg
 
Mariangel garcía informática
Mariangel garcía  informáticaMariangel garcía  informática
Mariangel garcía informática
marifabi5
 
TEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA I
TEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA ITEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA I
TEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA I
Anyeni Garay
 
Estructuras algoritnicas de control
Estructuras algoritnicas de controlEstructuras algoritnicas de control
Estructuras algoritnicas de control
Miguel Martinez
 
Las estructuras de control en programación presentacion
Las estructuras de control en programación presentacionLas estructuras de control en programación presentacion
Las estructuras de control en programación presentacion
Orangel4
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
marigelcontreras
 

Similaire à Sentencia, secuencia y bloque (20)

Yy
YyYy
Yy
 
Actividad de Inicio Programación
Actividad de Inicio ProgramaciónActividad de Inicio Programación
Actividad de Inicio Programación
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de control
 
ESTRUCTURAS DE CONTROL
ESTRUCTURAS DE CONTROLESTRUCTURAS DE CONTROL
ESTRUCTURAS DE CONTROL
 
Unidad 2
Unidad 2Unidad 2
Unidad 2
 
Mariangel garcía informática
Mariangel garcía  informáticaMariangel garcía  informática
Mariangel garcía informática
 
Estructuras secuenciales, selectivas e iterativas 01
Estructuras secuenciales, selectivas e iterativas 01Estructuras secuenciales, selectivas e iterativas 01
Estructuras secuenciales, selectivas e iterativas 01
 
TEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA I
TEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA ITEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA I
TEMA Nº 6: SENTENCIAS DE CONTROL DE FLUJO EN JAVA I
 
lp1t3.pdf
lp1t3.pdflp1t3.pdf
lp1t3.pdf
 
Estructuras algoritnicas de control
Estructuras algoritnicas de controlEstructuras algoritnicas de control
Estructuras algoritnicas de control
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Fundamentos de visual basic 6.0.
Fundamentos de visual basic 6.0. Fundamentos de visual basic 6.0.
Fundamentos de visual basic 6.0.
 
Estructuras
EstructurasEstructuras
Estructuras
 
Presentación de estructuras de control en la programación
Presentación de estructuras de control en la programaciónPresentación de estructuras de control en la programación
Presentación de estructuras de control en la programación
 
Estructuras de wps office
Estructuras de wps officeEstructuras de wps office
Estructuras de wps office
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Estructura de control en la Programación. Luis Rondón
Estructura de control en la Programación. Luis RondónEstructura de control en la Programación. Luis Rondón
Estructura de control en la Programación. Luis Rondón
 
Las estructuras de control en programación presentacion
Las estructuras de control en programación presentacionLas estructuras de control en programación presentacion
Las estructuras de control en programación presentacion
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Presentacion Jose Barazarte Estructuras Repetitivas.pptx
Presentacion Jose Barazarte Estructuras Repetitivas.pptxPresentacion Jose Barazarte Estructuras Repetitivas.pptx
Presentacion Jose Barazarte Estructuras Repetitivas.pptx
 

Plus de Tensor (20)

Libertad
LibertadLibertad
Libertad
 
Metodo de la bisección
Metodo de la bisecciónMetodo de la bisección
Metodo de la bisección
 
Transito vehicular
Transito vehicularTransito vehicular
Transito vehicular
 
Teoria de colas
Teoria de colasTeoria de colas
Teoria de colas
 
Practica 7 2016
Practica 7 2016Practica 7 2016
Practica 7 2016
 
Practica 6 2016
Practica 6 2016Practica 6 2016
Practica 6 2016
 
Game maker
Game makerGame maker
Game maker
 
Practica 5 2016
Practica 5 2016Practica 5 2016
Practica 5 2016
 
Procesamiento de archivos
Procesamiento de archivosProcesamiento de archivos
Procesamiento de archivos
 
Reduccion de orden
Reduccion de ordenReduccion de orden
Reduccion de orden
 
Variación+de+parametros
Variación+de+parametrosVariación+de+parametros
Variación+de+parametros
 
Coeficientes indeterminados enfoque de superposición
Coeficientes indeterminados   enfoque de superposiciónCoeficientes indeterminados   enfoque de superposición
Coeficientes indeterminados enfoque de superposición
 
Bernoulli y ricatti
Bernoulli y ricattiBernoulli y ricatti
Bernoulli y ricatti
 
Practica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicioPractica no. 3 tiempo de servicio
Practica no. 3 tiempo de servicio
 
Clase 14 ondas reflejadas
Clase 14 ondas reflejadasClase 14 ondas reflejadas
Clase 14 ondas reflejadas
 
Ondas em
Ondas emOndas em
Ondas em
 
Clase 7 ondas electromagneticas
Clase 7 ondas electromagneticasClase 7 ondas electromagneticas
Clase 7 ondas electromagneticas
 
Practicas 8 2016
Practicas 8 2016Practicas 8 2016
Practicas 8 2016
 
Tipos de datos ok
Tipos de datos okTipos de datos ok
Tipos de datos ok
 
Practica 4 2016
Practica 4 2016Practica 4 2016
Practica 4 2016
 

Dernier

Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
amelia poma
 

Dernier (20)

ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLAACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
ACRÓNIMO DE PARÍS PARA SU OLIMPIADA 2024. Por JAVIER SOLIS NOYOLA
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 2º de la ESO
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
AEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptxAEC 2. Aventura en el Antiguo Egipto.pptx
AEC 2. Aventura en el Antiguo Egipto.pptx
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Lecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigosLecciones 06 Esc. Sabática. Los dos testigos
Lecciones 06 Esc. Sabática. Los dos testigos
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.pptFUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
FUERZA Y MOVIMIENTO ciencias cuarto basico.ppt
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
Power Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptxPower Point E. S.: Los dos testigos.pptx
Power Point E. S.: Los dos testigos.pptx
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!
 
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESOPrueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
Prueba de evaluación Geografía e Historia Comunidad de Madrid 4ºESO
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 

Sentencia, secuencia y bloque

  • 2. Sentencia, Secuencia y Bloque En C++ la unidad básica de acción es la sentencia, y expresamos la composición de sentencias como una secuencia de sentencias terminadas cada una de ellas por el carácter “punto y coma“ (;), de tal forma que su flujo de ejecución es secuencial, es decir, se ejecuta una sentencia, y cuando esta termina, entonces se ejecuta la siguiente sentencia, y así sucesivamente. Un bloque es una unidad de ejecución mayor que la sentencia, y permite agrupar una secuencia de sentencias como una unidad. Para ello enmarcamos la secuencia de sentencias entre dos llaves para formar un bloque. Es posible el anidamiento de bloques.
  • 4. Declaraciones Globales y Locales Distinguiremos dos clases de declaraciones: globales y locales. Entidades globales son aquellas que han sido definidas fuera de cualquier bloque. Su ámbito de visibilidad comprende desde el punto en el que se definen hasta el final del fichero. Respecto a su tiempo de vida, se crean al principio de la ejecución del programa y se destruyen al finalizar este. Normalmente serán constantes simbólicas, definiciones de tipos, declaración de prototipos de subprogramas y definiciones de subprogramas.
  • 5. Declaraciones Globales y Locales Entidades locales son aquellas que se definen dentro de un bloque. Su ámbito de visibilidad comprende desde el punto en el que se definen hasta el final de dicho bloque. Respecto a su tiempo de vida, se crean en el punto donde se realiza la definición, y se destruyen al finalizar el bloque. Normalmente serán constantes simbólicas y variables locales.
  • 6. EJEMPLO 1(EJ7_1) Programa que hace el uso de variables locales y globales sobre la conversión de dólares a pesos mexicanos
  • 9. Declaraciones Globales y Locales Respecto al ámbito de visibilidad de una entidad, en caso de declaraciones de diferentes entidades con el mismo identificador en diferentes niveles de anidamiento, la entidad visible será aquella que se encuentre declarada en el bloque de nivel de anidamiento más interno. Es decir, cuando se solapa el ámbito de visibilidad de dos entidades con el mismo identificador, en dicha zona de solapamiento será visible el identificador declarado/definido en el bloque más interno. Sin embargo, no es una buena practica de programación ocultar identificadores al redefinirlos en niveles de anidamiento mas internos, ya que conduce a programas difíciles de leer y propensos a errores.
  • 11. Sentencias de Asignación La sentencia de asignación permite asignar a una variable el resultado de evaluar una expresión aritmética expresada en notación infija, de tal forma que primero se evalúa la expresión, considerando las reglas de precedencia y asociatividad de los operadores y a continuación el valor resultante se asigna a la variable, que pierde. Por ejemplo:
  • 13. Sentencias de Asignación Además, se definen las siguientes sentencias de incremento/decremento
  • 15. Sentencias de Asignación Nota: las sentencias de asignación vistas anteriormente se pueden utilizar en otras formas muy diversas, pero nosotros restringiremos su utilización a la expresada anteriormente, debido a que otras utilizaciones pueden dificultar la legibilidad y aumentar las posibilidades de cometer errores de programación.
  • 16. Sentencias de Asignación Nota: las sentencias de asignación vistas anteriormente se pueden utilizar en otras formas muy diversas, pero nosotros restringiremos su utilización a la expresada anteriormente, debido a que otras utilizaciones pueden dificultar la legibilidad y aumentar las posibilidades de cometer errores de programación.
  • 17. Sentencias de Selección Las sentencias de selección alteran el flujo secuencial de ejecución de un programa, de tal forma que permiten seleccionar flujos de ejecución alternativos y excluyentes dependiendo de expresiones lógicas. La más simple de todas es la sentencia de selección condicional if cuya sintaxis es la siguiente:
  • 19. Sentencias de Selección y cuya semántica consiste en evaluar la expresión lógica, y si su resultado es Verdadero (true) entonces se ejecuta la secuencia de sentencias entre las llaves. Ejemplo de programa que imprime el valor mayor de tres números:
  • 20. EJEMPLO (EJ7_2) y cuya semántica consiste en evaluar la expresión lógica, y si su resultado es Verdadero (true) entonces se ejecuta la secuencia de sentencias entre las llaves. Ejemplo de programa que imprime el valor mayor de tres números:
  • 23. ESTRUCTURAS DE CONTROL Otra posibilidad es la sentencia de selección condicional compuesta, que tiene la siguiente sintaxis:
  • 24. EJEMPLO (EJ7_3) y cuya semántica consiste en evaluar la expresión lógica, y si su resultado es Verdadero (true) entonces se ejecuta la <secuencia de sentencias v> . Sin embargo, si el resultado de evaluar la expresión lógica es Falso (false) entonces se ejecuta la <secuencia de sentencias f> . La sentencia de selección condicional se puede encadenar de la siguiente forma con el flujo de control esperado:
  • 26. ESTRUCTURAS DE CONTROL La sentencia switch es otro tipo de sentencia de selección en la cual la secuencia de sentencias alternativas a ejecutar no se decide en base a expresiones lógicas, sino en función del valor que tome una determinada expresión de tipo ordinal, es decir, una relación de igualdad entre el valor de una expresión y unos determinados valores constantes de tipo ordinal especificados. Su sintaxis es la siguiente:
  • 28. ESTRUCTURAS DE CONTROL en la cual se evalúa la expresión, y si su valor coincide con <valor 1> entonces se ejecuta la <secuencia de sentencias 1> . Si su valor coincide con <valor 2> o con <valor 3> se ejecuta la <secuencia de sentencias 2> y así sucesivamente. Si el valor de la expresión no coincide con ningún valor especificado, se ejecuta la secuencia de sentencias correspondiente a la etiqueta default (si es que existe). Nótese que la sentencia break; termina la secuencia de sentencias a ejecutar para cada caso. Ejemplo: