0% encontró este documento útil (0 votos)
10 vistas16 páginas

Estructuras de Selección y Lógica Booleanas

El documento aborda la importancia de los ciclos y estructuras de selección en el análisis y diseño de algoritmos, destacando su papel en la mejora de la legibilidad y eficiencia del código. Se exploran conceptos clave como expresiones booleanas, operadores de comparación y la lógica AND y OR, así como la precedencia de operadores. Finalmente, se concluye que el uso adecuado de estos elementos reduce errores y mejora la calidad del software.

Cargado por

cariasjohaly
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas16 páginas

Estructuras de Selección y Lógica Booleanas

El documento aborda la importancia de los ciclos y estructuras de selección en el análisis y diseño de algoritmos, destacando su papel en la mejora de la legibilidad y eficiencia del código. Se exploran conceptos clave como expresiones booleanas, operadores de comparación y la lógica AND y OR, así como la precedencia de operadores. Finalmente, se concluye que el uso adecuado de estos elementos reduce errores y mejora la calidad del software.

Cargado por

cariasjohaly
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Tabla de Contenido

Introducción.......................................................................................................................................3
Objetivos.............................................................................................................................................4
Expresiones booleanas y las estructuras de selección..........................................................5
Estructuras de selección................................................................................................................6
Operadores de comparación racional.........................................................................................7
Lógica ADN........................................................................................................................................8
Estructuras de selección..............................................................................................................10
Lógica AND......................................................................................................................................11
Lógica OR.........................................................................................................................................11
Precedencia de Operadores.........................................................................................................13
Conclusiones...................................................................................................................................16
Bibliografía.......................................................................................................................................17
Universidad Tecnológica de Honduras

Introducción

La creación de ciclos en el análisis y diseño de algoritmo se refiere a las diversas


técnicas y principios utilizados para crear soluciones iterativas y repetitivas en la
resolución de problemas. Los ciclos permiten que las computadoras repitan la
misma secuencia de operaciones repetidamente hasta que se cumpla una condición
específica, lo cual es de gran utilidad para resolver problemas que requieren de
múltiples pasos y/o iteraciones para llegar a una solución. En el análisis y diseño de
algoritmo, los ciclos permiten mejorar la eficiencia y efectividad de los programas al
dividir “tasks” complejas en tareas más simples y manejables.

Los ciclos juegan un papel importante en el diseño de algoritmos, ya que ayudan a


organizar el flujo de datos y controlar repeticiones en la ejecución del programa.

pág. 3
Universidad Tecnológica de Honduras

Objetivos

 Mejorar la legibilidad y mantenibilidad del código al permitir reducir


la repetición de instrucciones.
 Reducir la probabilidad de errores de programación causados por
la necesidad de realizar múltiples copias de un mismo código.
 Mejorar la eficacia y velocidad del programa al reducir la
necesidad de repetir instrucciones varias veces.

pág. 4
Universidad Tecnológica de Honduras

Expresiones booleanas y las estructuras de selección


Son conceptos fundamentales en la programación, relacionados con la toma de
decisiones. Son expresiones que pueden evaluarse como verdaderas o falsas. Las
expresiones booleanas suelen utilizarse para realizar comparaciones y decidir qué
camino tomar en un programa.

En lenguajes de programación, una expresión booleana puede involucrar


operadores como:

== (igual)

!= (diferente)

> (mayor que)

< (menor que)

>= (mayor o igual que)

<= (menor o igual que)

&& (y lógico)

|| (o lógico)

! (negación lógica)

Ejemplo en pseudocódigo:

a=5

b = 10

resultado = (a < b) # Esto es una expresión booleana que se evalúa como


"verdadero"

Las expresiones booleanas son las condiciones que se evalúan en las estructuras
de selección, lo que permite que el programa tome diferentes caminos dependiendo
del valor de verdad de esas condiciones

pág. 5
Universidad Tecnológica de Honduras

Estructuras de selección
Son bloques de código que permiten tomar decisiones basadas en el resultado de
una expresión booleana.

En otras palabras, permiten ejecutar una u otra acción dependiendo de si una


condición es verdadera o falsa.

Las estructuras de selección más comunes son:

if-else (si-sino): Ejecuta un bloque de código si la condición es verdadera, y otro


bloque si es falsa.

else-if (sino-si): Permite evaluar varias condiciones de manera secuencial.

switch (según): Evalúa una expresión y selecciona una entre varias opciones.

Ejemplo en pseudocódigo con if-else:

si (edad >= 18) entonces

imprimir("Eres mayor de edad")

sino

imprimir("Eres menor de edad")

fin si

Las expresiones booleanas son las condiciones que se evalúan en las estructuras
de selección, lo que permite que el programa tome diferentes caminos dependiendo
del valor de verdad de esas condiciones

pág. 6
Universidad Tecnológica de Honduras

Operadores de comparación racional


Los operadores de comparación racional se refieren a los operadores que se utilizan
para comparar dos valores o expresiones en términos de relaciones lógicas o
matemáticas.

Estos operadores permiten evaluar si una expresión es mayor, menor, igual o


diferente a otra.

Los más comunes son:

1. Igual a (==) - Verifica si dos valores son iguales.

Ejemplo: 5 == 5 es verdadero.

2. Diferente de (!=) - Verifica si dos valores no son iguales.

Ejemplo: 5 != 3 es verdadero.

3. Mayor que (>) - Verifica si el valor de la izquierda es mayor que el de la


derecha.

Ejemplo: 7 > 5 es verdadero.

4. Menor que (<) - Verifica si el valor de la izquierda es menor que el de la


derecha.

Ejemplo: 3 < 5 es verdadero.

5. Mayor o igual que (>=) - Verifica si el valor de la izquierda es mayor o igual


que el de la derecha.

Ejemplo: 5 >= 5 es verdadero.

6. Menor o igual que (<=) - Verifica si el valor de la izquierda es menor o igual


que el de la derecha.

Ejemplo: 4 <= 6 es verdadero.

Estos operadores se usan en muchos lenguajes de programación y en lógica


matemática para realizar comparaciones entre variables, números u otras
expresiones.

pág. 7
Universidad Tecnológica de Honduras

Estructuras de selección
Son bloques de código que permiten tomar decisiones basadas en el resultado de
una expresión booleana. En otras palabras, permiten ejecutar una u otra acción
dependiendo de si una condición es verdadera o falsa.

Las estructuras de selección más comunes son:

• if-else (si-sino): Ejecuta un bloque de código si la condición es


verdadera, y otro bloque si es falsa.

• else-if (sino-si): Permite evaluar varias condiciones de manera


secuencial.

• switch (según): Evalúa una expresión y selecciona una entre varias


opciones.

Ejemplo en pseudocódigo con if-else:

si (edad >= 18) entonces

imprimir("Eres mayor de edad") sino

imprimir("Eres menor de edad")

fin si

1. Errores comunes con operadores relacionales

Un error frecuente es usar el operador relacional incorrecto al establecer límites. Un


ejemplo que ilustra esto es cuando se programa para seleccionar a empleados
mayores de 65 años. Si se usa el operador >, se excluirán las personas de 65 años,
pero si se usa >=, se incluyen correctamente. Esto enfatiza la importancia de
entender y utilizar los operadores relacionales de manera precisa.

Es importante interpretar correctamente las instrucciones de quienes solicitan el


programa, ya que a menudo las instrucciones pueden ser ambiguas, como la

pág. 8
Universidad Tecnológica de Honduras

diferencia entre "más de" y "mayor o igual a". Por eso, siempre es recomendable
confirmar los requerimientos antes de implementarlos.

Lógica ADN
La lógica AND en programación es una operación booleana que permite combinar
dos o más condiciones para tomar decisiones. Se utiliza cuando es necesario que
todas las condiciones especificadas sean verdaderas para que se ejecute una
acción o se produzca un resultado.

Características clave de la lógica AND:

1. Ambas condiciones deben ser verdaderas: Si una condición es falsa, la expresión


completa será falsa. Solo si todas las condiciones evaluadas son verdaderas, la
expresión AND dará como resultado verdadero.

2. Sintaxis en varios lenguajes:

En muchos lenguajes de programación, la lógica AND se representa con && (doble


ampersand). Por ejemplo:

if (a > 10 && b < 20) {

// Solo se ejecuta si ambas condiciones son verdaderas.

En otros lenguajes como Python, se utiliza la palabra and:

if a > 10 and b < 20:

# Solo se ejecuta si ambas condiciones son verdaderas.

Ejemplo práctico:

Supongamos que estás desarrollando un sistema para una tienda que ofrece un
descuento si un cliente cumple con dos condiciones:

1. El cliente ha hecho más de 5 compras.

2. El total de las compras es mayor a $500.

pág. 9
El código que implementa esta lógica usando AND sería algo como:

if num_compras > 5 and total_compras > 500:


Universidad Tecnológica de Honduras

Aquí, el mensaje "Descuento aplicado" solo se mostrará si ambas condiciones (más


de 5 compras y más de $500) se cumplen.

¿Cómo funciona en la vida real?

Un ejemplo común sería un control de acceso. Supongamos que, para entrar a una
habitación segura, necesitas dos cosas:

1. Tener una tarjeta válida.

2. Saber el código de acceso correcto.+66666666

En este caso, ambas condiciones deben cumplirse para que la puerta se abra. Si
una de las dos es falsa (por ejemplo, si la tarjeta no es válida), la puerta no se
abrirá.

Tabla de verdad del operador AND:

La tabla de verdad para el operador AND muestra las posibles combinaciones de


verdad/falsedad y el resultado:

La lógica AND se usa cuando es necesario que todas las condiciones sean
verdaderas.

Es útil para crear condiciones compuestas y controlar flujos de decisiones


complejas.

Lógica AND
Condiciones compuestas: A veces es necesario evaluar más de una condición para
tomar una decisión en un programa. Esto se llama una condición compuesta, y para

pág. 10
Universidad Tecnológica de Honduras

ello se utiliza la lógica AND. Esto significa que ambas condiciones deben ser
verdaderas para que la acción se ejecute.

Ejemplo: En el caso de una empresa de telefonía, para cobrar $20 adicionales, se


debe cumplir con dos condiciones:

1. El cliente debe haber hecho más de 100 llamadas.

2. El total de minutos consumidos debe ser mayor a 500.

Si ambas condiciones se cumplen, se realiza el cobro adicional. Este tipo de lógica


se utiliza frecuentemente en programación cuando hay múltiples factores a evaluar.

3. Decisión AND en pseudocódigo

El diagrama de flujo y el pseudocódigo presentados muestran cómo funciona la


lógica AND en un programa de facturación telefónica. El pseudocódigo empieza con
declaraciones básicas y luego evalúa si las condiciones de número de llamadas y
minutos se cumplen. Si es así, el programa añade el cargo adicional, de lo contrario,
no lo hace.

Además, se introduce el concepto de decisiones encadenadas, que se construyen


usando la cláusula if-then-else para evaluar varias condiciones en cascada.

La lógica AND es esencial cuando se necesita cumplir más de una condición para
que se ejecute una acción.

Lógica OR
En ocasiones usted desea que ocurra una acción cuando una u otra de dos
condiciones sea verdadera. Esto se llama decisión OR porque una condición o
alguna otra condición deben cumplirse para que un evento se presente.

Si alguien pregunta:

“¿Estás libre para cenar el viernes o el sábado?”, sólo una de las dos condiciones
tiene que ser verdadera para que la respuesta a la pregunta completa sea sí; sólo si
las respuestas a ambas mitades de la pregunta son falsas el valor de la expresión
entera es falso.

pág. 11
Universidad Tecnológica de Honduras

Por ejemplo, suponga que desea agregar $20 a las facturas de los clientes de
telefonía celular que hagan más de 100 llamadas o usen más de 500 minutos. el
módulo detailLoop() alterado del programa de facturación que logra este objetivo.

Tabla de verdad para el operador OR

Evitar errores comunes cuando se usan comprobaciones de rango

Evitar errores comunes al usar comprobaciones de rango es crucial para garantizar


la precisión y efectividad de tu código.

Aquí hay algunos consejos:

1. **Definir claramente los límites**: Asegúrate de que los límites inferior y


superior estén bien definidos y documentados. Usa constantes en lugar de valores
mágicos para mayor claridad.

2. **Inclusión o exclusión de límites**: Decide si los límites deben ser inclusivos o


exclusivos y mantén la consistencia en todo el código.

3. **Orden de las comprobaciones**: Si realizas múltiples comprobaciones,


colócalas en un orden lógico. Por ejemplo, verifica primero si el valor está por
debajo del límite inferior antes de verificar el límite superior.

4. **Uso de operadores adecuados**: Asegúrate de usar los operadores correctos


(`<`, `<=`, `>`, `>=`) según las reglas que definas para tu rango.

5. **Validación de tipos de datos**: Asegúrate de que el valor que estás


comprobando sea del tipo esperado. Realiza conversiones si es necesario.

pág. 12
Universidad Tecnológica de Honduras

6. **Pruebas exhaustivas**: Realiza pruebas con diferentes valores, incluidos los


límites, para asegurarte de que las comprobaciones funcionan correctamente en
todos los casos.

7. **Manejo de errores**: Implementa un manejo adecuado de errores o


excepciones para valores fuera de rango. Esto ayudará a identificar problemas
durante la ejecución.

8. **Comentarios y documentación**: Incluye comentarios en el código para


explicar las comprobaciones de rango, lo que ayudará a otros (o a ti mismo en el
futuro) a entender la lógica.

9. **Refactorización**: Si el código de comprobación de rango se repite en varias


partes, considera refactorizarlo en una función para evitar errores y mantener la
consistencia.

10. **Revisión de código**: Realiza revisiones de código con compañeros para


detectar posibles errores o mejoras en la lógica de las comprobaciones.

Siguiendo estos consejos, puedes minimizar errores y mejorar la robustez de tu


código al trabajar con comprobaciones de rango.

• Precedencia cuando se combinan operadores AND y OR comprensión

Cuando se combinan los operadores AND y OR en expresiones lógicas, es


importante entender la precedencia para evitar confusiones. Aquí tienes un resumen
de cómo funciona:

Precedencia de Operadores
[Link]: Tiene la mayor precedencia. Se evalúa primero.

[Link]: Se evalúa después de NOT y antes de OR.

[Link]: Tiene la menor precedencia.

Ejemplo de Evaluación:

Considera la expresión:

A OR B AND

pág. 13
Universidad Tecnológica de Honduras

Evaluación Paso a Paso:

1. Primero se evalúa B AND C.

2. Luego se evalúa A OR (resultado de B AND C).

Uso de Paréntesis

Para evitar ambigüedades y hacer que el código sea más legible, es recomendable
usar paréntesis.

Por ejemplo:

Si quieres que A se evalúe con B antes que C, puedes escribirlo así:

(A OR B) AND C

Resumen

• Siempre recuerda que NOT se evalúa primero, seguido de AND, y finalmente


OR.

• Usa paréntesis para aclarar la intención de tu lógica y mejorar la legibilidad.

Siguiendo estas pautas, puedes evitar errores lógicos y hacer que tu código sea
más claro

pág. 14
Universidad Tecnológica de Honduras

Conclusiones

 El uso de ciclos en el diseño de algoritmos ayuda a mejorar la legibilidad,


mantenibilidad y calidad del código, al permitir reducir la repetición de
instrucciones.
 El uso de ciclos reduce la probabilidad de errores de programación causados
por la necesidad de realizar múltiples copias de un mismo código.
 El uso de ciclos puede mejorar la eficacia y velocidad del programa al reducir
la necesidad de repetir instrucciones varias veces.

pág. 15
Universidad Tecnológica de Honduras

Bibliografía
*Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to Algorithms (3rd ed.).
MIT Press.

*Sebesta, R. W. (2012). Concepts of Programming Languages (10th ed.). Addison-Wesley.

[Link]

[Link]
%20biomol%C3%A9cula%20que%20compone%20al%20genoma

[Link]

[Link]
c690c48c3012/UAPA-estructuras-seleccion/[Link]#:~:text=Las%20estructuras%20de%20selecci
%C3%B3n%20(o%20condicionales)%20permiten%20realizar%20una%20u

[Link]
%20comparar%20dos%20valores%20y%20determinar%20si%20son%20iguales,%20diferentes,

[Link]
%C3%B3gico%20OR%20%28%7C%7C%29%20Este%20operador%20l%C3%B3gico
%20compara,sentencia%20devolver%C3%A1%20el%20valor%20de%20la%20primera%20expresi
%C3%B3n.

Álgebra booleana: qué es, historia, teoremas, postulados, ejemplos ([Link])

pág. 16

También podría gustarte