Unidad II

Elementos algorítmicos básicos

Lógica de Programación y Pensamiento Computacional

Facultad de Informática Culiacán · Universidad Autónoma de Sinaloa

Escudo de la Universidad Autónoma de Sinaloa Escudo de la Facultad de Informática Culiacán
UAS - Lógica de Programación y Pensamiento Computacional

Al finalizar esta unidad podrás

2.1 Representar información

Identificar tipos de datos y reconocer cómo se representa la información necesaria para un algoritmo.

2.2 Construir expresiones

Combinar datos y operadores para representar operaciones dentro de una solución algorítmica.

2.3 Utilizar identificadores

Diferenciar identificadores, constantes y variables dentro de una representación algorítmica.

2.4 Resolver expresiones

Aplicar reglas de prioridad y asociatividad para determinar correctamente el resultado de expresiones.

UAS - Lógica de Programación y Pensamiento Computacional

¿Dónde estamos?

En la Unidad I aprendimos a pensar una solución antes de escribir un programa.

PROBLEMA
   ↓
ANÁLISIS
   ↓
ABSTRACCIÓN
   ↓
SOLUCIÓN
   ↓
ALGORITMO

Ahora necesitamos responder otra pregunta:

UAS - Lógica de Programación y Pensamiento Computacional

De la solución a la información

Un algoritmo necesita trabajar con datos para representar y procesar la información de un problema.

Por ejemplo:

calificación
edad
nombre
precio
cantidad
promedio

Estos datos no son todos iguales.

  • Una calificación puede representarse mediante un valor numérico.
  • Un nombre se representa mediante un conjunto de caracteres.
  • Una edad puede representarse mediante un valor entero.
  • Una decisión puede representarse mediante un valor lógico.

Por eso, al diseñar un algoritmo necesitamos identificar qué tipo de dato representa cada valor.

UAS - Lógica de Programación y Pensamiento Computacional

1

Tipos de datos

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué es un dato?

En términos formales, un dato es una representación de hechos, conceptos o instrucciones en una forma adecuada para su comunicación, interpretación o procesamiento.

Para nuestro propósito, podemos entenderlo de manera sencilla:

Un dato es un valor que representa una característica, hecho o elemento y que puede ser utilizado dentro de un procedimiento.

Observa:

18
8.75
"Alexis"
Verdadero

Todos son datos.

Pero representan diferentes tipos de valores.

Antes de utilizar un dato necesitamos identificar qué tipo de valor representa.

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué es un tipo de dato?

Un tipo de dato define la naturaleza de los valores que puede representar un dato y las operaciones que pueden realizarse con ellos.

Por ejemplo:

18          → entero
8.75        → real
"Alexis"    → cadena
Verdadero   → lógico

El tipo de dato nos permite saber cómo interpretar un valor dentro de un algoritmo y qué operaciones tienen sentido sobre él.

Dato → un valor que queremos representar o procesar.

Tipo de dato → determina qué clase de valor es y cómo podemos trabajar con él.

UAS - Lógica de Programación y Pensamiento Computacional

Tipos de datos básicos

Para esta unidad trabajaremos principalmente con:

1 Entero

Números sin parte decimal.

Ejemplos: 8, 25, 100

2 Real

Números que pueden representar una parte decimal.

Ejemplos: 8.5, 3.14

3 Carácter o cadena

Información textual.

Ejemplos: "A", "Culiacán"

4 Lógico

Representa una condición de verdad.

Verdadero / Falso

UAS - Lógica de Programación y Pensamiento Computacional

¿Por qué importa el tipo?

Consideremos:

8 + 4

Tiene sentido realizar una suma.

Pero:

"Culiacán" + 4

no representa necesariamente una operación matemática válida.

El tipo del dato ayuda a determinar qué operaciones tienen sentido.

UAS - Lógica de Programación y Pensamiento Computacional

Clasificar información

Observa los siguientes datos:

23
"Informática"
9.5
Verdadero
1500
"UAS"

Clasifícalos:

Dato Tipo
23 Entero
"Informática" Cadena
9.5 Real
Verdadero Lógico
1500 Entero
"UAS" Cadena
UAS - Lógica de Programación y Pensamiento Computacional

Actividad: identificar tipos de datos

Individual

Clasifica los siguientes datos:

18
"Juan"
7.8
Falso
250
"Facultad de Informática"
0
Verdadero

Para cada uno indica:

  1. Dato
  2. Tipo
  3. Qué información representa

Evidencia: ejercicios resueltos.

UAS - Lógica de Programación y Pensamiento Computacional

Una pregunta importante

¿El tipo depende del dato o de lo que queremos hacer con él?

Por ejemplo:

2026

puede representar:

  • un número
  • un año
  • una cantidad

El valor es el mismo.

La interpretación depende del contexto.

UAS - Lógica de Programación y Pensamiento Computacional

2

Expresiones

UAS - Lógica de Programación y Pensamiento Computacional

De los datos a las operaciones

Un algoritmo utiliza datos para resolver un problema. Pero tener los datos no siempre es suficiente. Con frecuencia necesitamos calcular, comparar o transformar esos datos para obtener un resultado.

Por ejemplo:

precio = 100
cantidad = 3

Queremos responder:

¿Cuál es el costo total?

Necesitamos realizar una operación:

100 × 3

Resultado:

300
UAS - Lógica de Programación y Pensamiento Computacional

De una operación a una expresión

Observemos:

100 × 3

Para realizar esta operación tenemos:

100       ×       3
 ↑        ↑        ↑
operando operador operando
  • Operandos: son los valores sobre los que se realiza la operación.
  • Operador: indica qué operación se debe realizar.

Cuando combinamos operandos y operadores para obtener un resultado, construimos una expresión.

100 × 3
   ↓
expresión
   ↓
300
UAS - Lógica de Programación y Pensamiento Computacional

Una operación necesita elementos

Para realizar una operación necesitamos identificar:

  • qué valores intervienen
  • qué operación queremos realizar

Observemos:

100 + 25

Aquí:

100       +       25
 ↑        ↑        ↑
operando operador operando

Operando: valor sobre el que se realiza una operación.

Operador: elemento que indica qué operación realizar.

Los operadores indican qué hacer y los operandos indican sobre qué hacerlo.

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué es una expresión?

Una expresión es una combinación de operandos y operadores que puede ser evaluada para obtener un resultado.

Por ejemplo:

100 + 25

Contiene:

100 → operando
+   → operador
25  → operando

Al evaluar la expresión:

100 + 25

obtenemos:

125
UAS - Lógica de Programación y Pensamiento Computacional

Una expresión representa una operación

Consideremos:

precio * cantidad

Si:

precio = 100
cantidad = 3

entonces la expresión utiliza esos datos para realizar el cálculo:

100 * 3

y produce:

300

La expresión no es solamente el símbolo *.

Es la combinación completa de los elementos que participan en la operación.

Una expresión representa una forma de calcular o determinar un resultado a partir de datos.

UAS - Lógica de Programación y Pensamiento Computacional

Los operandos pueden ser valores o identificadores

Una expresión puede utilizar directamente valores:

20 + 5

o identificadores que representan datos:

precio * cantidad

También puede combinar ambos:

precio * 10

Por ejemplo:

precio = 35

La expresión:

precio * 10

utiliza el dato representado por precio.

UAS - Lógica de Programación y Pensamiento Computacional

Evaluar una expresión

Evaluar una expresión significa determinar el resultado que produce.

Por ejemplo:

8 + 5

se evalúa como:

13

Otro ejemplo:

20 / 4

se evalúa como:

5

Y:

7 * 3

se evalúa como:

21

Evaluar → realizar las operaciones indicadas → obtener un resultado.

UAS - Lógica de Programación y Pensamiento Computacional

¿El resultado siempre es un número?

No.

El tipo de resultado depende de la expresión.

Por ejemplo:

8 + 5

produce un resultado numérico:

13

Pero:

8 > 5

produce un resultado lógico:

Verdadero

Por eso podemos construir expresiones que:

  • calculan valores
  • comparan valores
  • combinan condiciones
UAS - Lógica de Programación y Pensamiento Computacional

Expresiones aritméticas

Las expresiones aritméticas permiten realizar cálculos numéricos.

Operación Ejemplo
Suma 8 + 4
Resta 8 - 4
Multiplicación 8 * 4
División 8 / 4
Residuo 8 % 4

Por ejemplo:

35 * 4

produce:

140

Las expresiones aritméticas producen resultados numéricos, de acuerdo con los valores y operaciones involucrados.

UAS - Lógica de Programación y Pensamiento Computacional

Construir una expresión a partir de un problema

Problema:

Calcular el costo total de comprar 4 productos de $35 cada uno.

Primero identificamos los datos:

cantidad = 4
precio = 35

Después identificamos la relación entre ellos:

costo total = cantidad × precio

Construimos la expresión:

cantidad * precio

Y evaluamos:

4 * 35

Resultado:

140
UAS - Lógica de Programación y Pensamiento Computacional

Ejercicio guiado: del problema a la expresión

Problema:

Un estudiante obtuvo tres calificaciones: 8, 9 y 7. ¿Cómo podemos calcular su promedio?

Paso 1. Identificar los datos

calificacion1 = 8
calificacion2 = 9
calificacion3 = 7

Paso 2. Identificar la operación

Para obtener el promedio necesitamos:

sumar las calificaciones
dividir entre 3

Paso 3. Construir la expresión

(calificacion1 + calificacion2 + calificacion3) / 3

Paso 4. Evaluar

(8 + 9 + 7) / 3

Resultado:

8

No comenzamos por escribir una expresión.

Primero entendemos el problema y después construimos la expresión.

UAS - Lógica de Programación y Pensamiento Computacional

¿Por qué necesitamos operadores?

Los operadores permiten expresar qué relación u operación queremos establecer entre los operandos.

Por ejemplo:

8 + 5

El operador + indica una suma.

8 > 5

El operador > indica una comparación.

A Y B

El operador Y indica una combinación lógica.

UAS - Lógica de Programación y Pensamiento Computacional

3

Operadores

UAS - Lógica de Programación y Pensamiento Computacional

Clasificación de operadores

Los operadores que utilizaremos principalmente pueden agruparse en:

Aritméticos

Permiten realizar cálculos con valores numéricos.

Relacionales

Permiten comparar valores.

Lógicos

Permiten combinar o modificar condiciones.

La clasificación depende de qué operación realiza el operador y qué resultado produce.

UAS - Lógica de Programación y Pensamiento Computacional

Operadores aritméticos

Los principales operadores aritméticos son:

Operador Operación Ejemplo
+ Suma 8 + 4
- Resta 8 - 4
* Multiplicación 8 * 4
/ División 8 / 4
% Residuo 8 % 4

La representación exacta puede variar dependiendo de la herramienta utilizada.

UAS - Lógica de Programación y Pensamiento Computacional

El residuo de una división

El operador % permite obtener el residuo de una división entera.

Por ejemplo:

10 % 3

La división es:

10 ÷ 3 = 3

y sobra:

1

Por lo tanto:

10 % 3 = 1

Este operador puede ser útil para identificar, por ejemplo, si un número es par o impar.

UAS - Lógica de Programación y Pensamiento Computacional

Los paréntesis en una expresión

Los paréntesis permiten agrupar operaciones.

Observa:

2 + 3 * 4

No todas las operaciones se realizan necesariamente de izquierda a derecha.

En cambio:

(2 + 3) * 4

los paréntesis indican que primero debemos considerar:

2 + 3

y después multiplicar el resultado por 4.

UAS - Lógica de Programación y Pensamiento Computacional

Operadores relacionales

Los operadores relacionales permiten comparar valores.

Operador Significado
< Menor que
> Mayor que
<= Menor o igual que
>= Mayor o igual que
= Igual a
<> Diferente de

La representación exacta puede variar según la herramienta utilizada.

UAS - Lógica de Programación y Pensamiento Computacional

Una comparación produce una condición

Observemos:

8 > 5

El operador > compara los operandos:

8       >       5
↑       ↑       ↑
operando operador operando

Al evaluar la expresión obtenemos:

Verdadero

Ahora:

3 > 10

produce:

Falso

Una expresión relacional compara valores y produce un resultado lógico.

UAS - Lógica de Programación y Pensamiento Computacional

De la comparación a la condición

Una comparación permite responder preguntas del problema.

Por ejemplo:

edad >= 18

puede interpretarse como:

¿La edad es mayor o igual que 18?

El resultado será:

Verdadero

o:

Falso

Esto será fundamental cuando un algoritmo necesite tomar decisiones.

UAS - Lógica de Programación y Pensamiento Computacional

Operadores lógicos

A veces una sola condición no es suficiente.

Podemos necesitar combinar varias condiciones.

Los principales operadores lógicos son:

Y

Verdadero cuando ambas condiciones son verdaderas.

O

Verdadero cuando al menos una condición es verdadera.

NO

Invierte el valor lógico de una condición.

UAS - Lógica de Programación y Pensamiento Computacional

Combinar condiciones

Supongamos que queremos determinar si una persona puede realizar un trámite.

Necesitamos comprobar:

edad >= 18

y:

tieneIdentificacion = Verdadero

Podemos combinarlas:

edad >= 18 Y tieneIdentificacion

La expresión completa produce:

Verdadero

solo cuando ambas condiciones son verdaderas.

UAS - Lógica de Programación y Pensamiento Computacional

Ejercicio guiado: analizar una expresión

Considera:

(10 + 5) > 12

Identifica:

1. Operandos

10
5
12

2. Operadores

+
>

3. Primera operación

10 + 5 = 15

4. Comparación

15 > 12

5. Resultado

Verdadero

Una expresión puede contener más de una operación.

Para evaluarla debemos respetar la forma en que están agrupadas y ordenadas sus operaciones.

UAS - Lógica de Programación y Pensamiento Computacional

Ejercicio guiado: expresión lógica

Considera:

edad >= 18 Y tieneIdentificacion

Si:

edad = 20
tieneIdentificacion = Verdadero

primero evaluamos:

20 >= 18

Resultado:

Verdadero

Después:

Verdadero Y Verdadero

Resultado final:

Verdadero
UAS - Lógica de Programación y Pensamiento Computacional

Actividad: construir expresiones

Individual

Construye una expresión para cada situación.

1. Calcular el área de un rectángulo.

Datos:

base
altura

2. Calcular el costo de varios productos.

Datos:

cantidad
precio

3. Calcular el promedio de tres calificaciones.

Datos:

calificacion1
calificacion2
calificacion3

4. Determinar si una persona es mayor de edad.

Dato:

edad

5. Determinar si una persona es mayor de edad y tiene identificación.

Datos:

edad
tieneIdentificacion

Evidencia: expresiones construidas y resultado cuando sea posible.

UAS - Lógica de Programación y Pensamiento Computacional

Actividad: identificar los elementos

En parejas

Para cada expresión identifiquen:

  1. Los operandos.
  2. Los operadores.
  3. El tipo de expresión.
  4. El resultado.
8 + 5
20 - 7
precio * cantidad
edad >= 18
calificacion1 + calificacion2
edad >= 18 Y tieneIdentificacion

Evidencia: tabla de análisis.

UAS - Lógica de Programación y Pensamiento Computacional

Actividad: del problema a la expresión

En equipos

Para cada problema sigan esta secuencia:

Problema → datos → operación → expresión → resultado

1. Una tienda vende 5 productos de $80 cada uno.

2. Un rectángulo tiene una base de 12 y una altura de 5.

3. Un estudiante obtuvo 7, 8 y 10. Calcular su promedio.

4. Determinar si una persona con edad 21 puede considerarse mayor de edad.

5. Determinar si una persona tiene al menos 18 años y cuenta con identificación.

Evidencia: solución completa siguiendo la secuencia indicada.

UAS - Lógica de Programación y Pensamiento Computacional

4

Identificadores

UAS - Lógica de Programación y Pensamiento Computacional

¿Cómo nombramos la información?

En una expresión podemos escribir directamente:

35 * 4

Pero también podemos trabajar con nombres:

precio * cantidad

Para utilizar esos nombres necesitamos identificadores.

UAS - Lógica de Programación y Pensamiento Computacional

Ejemplos de identificadores

edad
precio
cantidad
promedio
nombre
distancia

Estos nombres permiten expresar una solución de manera más comprensible.

Compara:

150 * 4

con:

precio * cantidad

La segunda expresión comunica mejor qué representa cada dato.

UAS - Lógica de Programación y Pensamiento Computacional

Un buen identificador comunica

Observa:

x

frente a:

precioProducto

Ambos pueden representar un valor.

Pero el segundo comunica mejor la intención.

Los nombres deben ayudar a entender el algoritmo.

La elección de identificadores es parte de la claridad de una solución.

UAS - Lógica de Programación y Pensamiento Computacional

Reglas generales

Las reglas exactas dependen de la herramienta.

Como criterio general:

Claridad

El nombre debe comunicar qué representa.

Consistencia

Debemos mantener una misma forma de nombrar.

Validez

Debe respetar las reglas de identificación de la herramienta utilizada.

En esta unidad interesa comprender la función de los identificadores. Las reglas sintácticas específicas de cada lenguaje de programación no son objetivo de la unidad.

UAS - Lógica de Programación y Pensamiento Computacional

5

Constantes y variables

UAS - Lógica de Programación y Pensamiento Computacional

Dos formas de representar valores

Dentro de un algoritmo podemos trabajar con valores que permanecen constantes y con valores que pueden cambiar.

Constante

Representa un valor que se mantiene fijo durante la solución.

Variable

Representa un dato cuyo valor puede cambiar durante la ejecución del algoritmo.

UAS - Lógica de Programación y Pensamiento Computacional

Ejemplo

Para calcular el área de un círculo:

radio
π

El radio puede cambiar.

El valor de π se considera constante para nuestro modelo.

Podemos conceptualizar:

radio → variable
π     → constante
UAS - Lógica de Programación y Pensamiento Computacional

Otro ejemplo

Para calcular el costo de un viaje:

distancia
consumo
precioCombustible

Estos valores pueden cambiar de un viaje a otro.

Por lo tanto:

distancia          → variable
consumo            → variable
precioCombustible  → variable
UAS - Lógica de Programación y Pensamiento Computacional

Variable significa que el valor puede cambiar

Supongamos:

edad ← 18

Posteriormente:

edad ← 19

El identificador sigue siendo:

edad

Pero su valor cambió.

UAS - Lógica de Programación y Pensamiento Computacional

Constante significa que el valor permanece

Supongamos:

IVA = 0.16

Si nuestro problema establece que ese valor es fijo:

IVA → constante

El valor no debe cambiar durante el procedimiento.

La decisión de considerar algo constante o variable depende del problema y de las reglas que establezcamos para nuestra solución.

UAS - Lógica de Programación y Pensamiento Computacional

Actividad: identificar variables y constantes

Individual

Para cada problema identifica qué datos podrían considerarse variables y cuáles constantes.

A. Calcular el área de un círculo.

B. Calcular el costo de un producto con un impuesto fijo.

C. Calcular el pago de un préstamo utilizando una tasa establecida.

Para cada problema explica brevemente tu decisión.

Evidencia: ejercicios resueltos.

UAS - Lógica de Programación y Pensamiento Computacional

Una distinción importante

No confundas:

IDENTIFICADOR

con:

VARIABLE

Un identificador es un nombre.

Una variable es un elemento que puede representar valores que cambian.

Por ejemplo:

precio

es un identificador.

Puede utilizarse para representar una variable:

precio → 35
UAS - Lógica de Programación y Pensamiento Computacional

6

Funciones matemáticas

UAS - Lógica de Programación y Pensamiento Computacional

Cuando una operación ya tiene una forma conocida

Algunos cálculos aparecen con frecuencia.

Por ejemplo:

√25
|−8|

En lugar de construir cada operación desde cero, podemos utilizar funciones matemáticas.

UAS - Lógica de Programación y Pensamiento Computacional

Algunas funciones frecuentes

Raíz cuadrada

sqrt(x)

Valor absoluto

abs(x)

Potencia

pow(x,y)

Redondeo

round(x)

La notación exacta depende de la herramienta utilizada. Lo importante en esta unidad es reconocer la función matemática que necesitamos y comprender qué resultado produce.

UAS - Lógica de Programación y Pensamiento Computacional

Ejemplos

sqrt(25)

Resultado:

5
UAS - Lógica de Programación y Pensamiento Computacional
abs(-8)

Resultado:

8
UAS - Lógica de Programación y Pensamiento Computacional
pow(2,3)

Resultado:

8
UAS - Lógica de Programación y Pensamiento Computacional

Una función también forma parte de una expresión

Observa:

sqrt(25) + 5

Podemos resolver primero:

sqrt(25)
   ↓
5

Después:

5 + 5
   ↓
10
UAS - Lógica de Programación y Pensamiento Computacional

Actividad: aplicar funciones matemáticas

Individual

Determina el resultado de:

sqrt(49)

abs(-12)

pow(3,2)

sqrt(16) + 6

abs(-5) * 2

Después construye una expresión propia que utilice una función matemática.

Evidencia: ejercicios resueltos.

UAS - Lógica de Programación y Pensamiento Computacional

7

Representación de la información

UAS - Lógica de Programación y Pensamiento Computacional

Ya tenemos las piezas

Hasta ahora hemos trabajado con:

DATOS
  ↓
TIPOS
  ↓
IDENTIFICADORES
  ↓
VARIABLES
  ↓
CONSTANTES
  ↓
OPERADORES
  ↓
FUNCIONES
  ↓
EXPRESIONES

Estas piezas permiten representar información y realizar operaciones dentro de un algoritmo.

UAS - Lógica de Programación y Pensamiento Computacional

El modelo conceptual de la unidad

Y podemos trabajar con:

VARIABLE
     ↓
valor que puede cambiar

CONSTANTE
     ↓
valor que permanece

Las operaciones se construyen mediante:

OPERADOR + OPERANDOS
          ↓
      EXPRESIÓN
          ↓
       RESULTADO
UAS - Lógica de Programación y Pensamiento Computacional

¿Por qué necesitamos esta representación?

Porque el algoritmo necesita operar con información de manera precisa.

Por ejemplo:

Problema

Calcular el total de una compra.

Podemos representar:

cantidad
precio

y construir:

cantidad * precio

El algoritmo puede trabajar entonces con información claramente identificada.

UAS - Lógica de Programación y Pensamiento Computacional

Actividad de integración conceptual

Relaciona cada elemento con su función:

Elemento Función
Dato Representa información
Tipo Indica la naturaleza del dato
Identificador Permite nombrar un elemento
Variable Puede representar valores que cambian
Constante Representa un valor fijo
Operador Indica una operación
Expresión Combina elementos para producir un resultado
Función matemática Realiza una operación matemática definida
UAS - Lógica de Programación y Pensamiento Computacional

8

Resolver expresiones

UAS - Lógica de Programación y Pensamiento Computacional

Una expresión puede tener varias operaciones

Observa:

5 + 3 * 2

¿El resultado es 16?

No.

Primero debemos determinar qué operación se realiza.

La multiplicación tiene prioridad sobre la suma.

5 + (3 * 2)
5 + 6
11
UAS - Lógica de Programación y Pensamiento Computacional

¿Qué pasa con los paréntesis?

Ahora:

(5 + 3) * 2

Primero:

5 + 3

Resultado:

8

Después:

8 * 2

Resultado:

16
UAS - Lógica de Programación y Pensamiento Computacional

Prioridad de operaciones

Como regla general para expresiones aritméticas:

1. Paréntesis
2. Funciones
3. Multiplicación, división y residuo
4. Suma y resta

Cuando existen operaciones con la misma prioridad, intervienen reglas de asociatividad y orden de evaluación.

La notación exacta puede variar entre herramientas. En esta unidad nos interesa comprender la regla y aplicarla correctamente.

UAS - Lógica de Programación y Pensamiento Computacional

Ejemplo paso a paso

Resolver:

10 + 6 / 2

Primero la división:

10 + 3

Después la suma:

13

Por lo tanto:

10 + 6 / 2 = 13
UAS - Lógica de Programación y Pensamiento Computacional

Otro ejemplo

Resolver:

20 - 4 * 3

Primero:

4 * 3 = 12

Después:

20 - 12 = 8

Resultado:

8
UAS - Lógica de Programación y Pensamiento Computacional

Con paréntesis

Resolver:

(20 - 4) * 3

Primero:

20 - 4 = 16

Después:

16 * 3 = 48

Resultado:

48
UAS - Lógica de Programación y Pensamiento Computacional

¿Por qué debemos respetar la prioridad?

Porque una misma expresión puede producir resultados diferentes si cambiamos el orden de las operaciones.

5 + 3 * 2

produce:

11

mientras:

(5 + 3) * 2

produce:

16
UAS - Lógica de Programación y Pensamiento Computacional

Actividad: resolver expresiones

Individual

Resuelve paso a paso:

8 + 4 * 2

20 - 6 / 2

(8 + 4) * 2

30 / (5 + 1)

10 + 2 * 3 - 4

No escribas únicamente el resultado.

Muestra el orden en que realizaste las operaciones.

Evidencia: ejercicios resueltos.

UAS - Lógica de Programación y Pensamiento Computacional

9

Comprobar una expresión con una herramienta

UAS - Lógica de Programación y Pensamiento Computacional

Del razonamiento a la comprobación

Podemos resolver una expresión manualmente.

Después podemos utilizar una herramienta para comprobar nuestro resultado.

La secuencia es:

EXPRESIÓN
    ↓
RESOLUCIÓN MANUAL
    ↓
RESULTADO ESPERADO
    ↓
HERRAMIENTA
    ↓
COMPROBACIÓN
UAS - Lógica de Programación y Pensamiento Computacional

PSeInt como herramienta

PSeInt permite representar algoritmos mediante pseudocódigo y observar su ejecución.

En esta asignatura:

PSeInt
   ↓
herramienta de apoyo

No es el contenido central.

El contenido es:

pensamiento algorítmico
pseudocódigo
representación
comprobación
UAS - Lógica de Programación y Pensamiento Computacional

Pseudocódigo

Ejemplo:

Algoritmo CalcularTotal

    Definir cantidad, precio, total Como Real

    Leer cantidad
    Leer precio

    total <- cantidad * precio

    Escribir total

FinAlgoritmo

La estructura anterior representa un algoritmo.

La herramienta permite escribirlo y ejecutarlo para observar el resultado.

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué debemos comprobar?

Cuando ejecutamos una solución debemos preguntarnos:

¿El resultado coincide con lo esperado?

Por ejemplo:

cantidad = 4
precio = 35

Esperamos:

4 * 35 = 140

Si la herramienta produce:

140

la comprobación coincide con nuestro resultado esperado.

UAS - Lógica de Programación y Pensamiento Computacional

La herramienta no piensa por nosotros

Si escribimos una expresión incorrecta y la herramienta produce un resultado:

herramienta
     ↓
resultado

eso no significa que la solución sea correcta.

Debemos preguntarnos:

¿Representé correctamente el problema?
¿Utilicé los datos adecuados?
¿Construí correctamente la expresión?
¿El resultado tiene sentido?

Ejecutar una representación y obtener un resultado no garantiza por sí mismo que la solución del problema sea correcta.

UAS - Lógica de Programación y Pensamiento Computacional

10

Laboratorio

UAS - Lógica de Programación y Pensamiento Computacional

Laboratorio 1

Representar y comprobar una expresión

Objetivo

Representar una operación mediante pseudocódigo y comprobar el resultado utilizando PSeInt o una herramienta equivalente.

Problema

Calcular el costo total de una compra.

Datos:

cantidad
precio

Entregable

  1. Identificación de datos
  2. Tipo de cada dato
  3. Expresión utilizada
  4. Pseudocódigo
  5. Resultado esperado
  6. Resultado obtenido
  7. Conclusión de la comprobación

Evidencia: solución entregada en Moodle.

UAS - Lógica de Programación y Pensamiento Computacional

Laboratorio 2

Representar y comprobar un cálculo

Objetivo

Construir una solución algorítmica sencilla utilizando información, expresiones y representación gráfica.

Problema

Calcular el promedio de tres calificaciones.

Datos:

calificacion1
calificacion2
calificacion3

Entregable

  1. Identificación de datos
  2. Tipo de cada dato
  3. Expresión para calcular el promedio
  4. Pseudocódigo
  5. Diagrama de flujo
  6. Resultado esperado
  7. Comprobación mediante un ejemplo

Evidencia: solución entregada en Moodle.

UAS - Lógica de Programación y Pensamiento Computacional

Criterios para el laboratorio

Datos

Identifica correctamente la información necesaria.

Expresión

Representa correctamente la operación.

Representación

El pseudocódigo y el diagrama corresponden a la solución.

Comprobación

El resultado obtenido coincide con el resultado esperado.

UAS - Lógica de Programación y Pensamiento Computacional

11

Integración de la unidad

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué hemos construido?

Partimos de información:

precio
cantidad

Reconocimos sus tipos:

Real
Entero

Les asignamos identificadores:

precio
cantidad

Construimos una expresión:

precio * cantidad

Y obtuvimos:

total
UAS - Lógica de Programación y Pensamiento Computacional

La cadena de Unidad II

INFORMACIÓN
     ↓
DATOS
     ↓
TIPOS
     ↓
IDENTIFICADORES
     ↓
VARIABLES / CONSTANTES
     ↓
OPERADORES
     ↓
EXPRESIONES
     ↓
FUNCIONES MATEMÁTICAS
     ↓
RESOLUCIÓN
     ↓
RESULTADO

Esta cadena resume el núcleo conceptual de la unidad.

UAS - Lógica de Programación y Pensamiento Computacional

Ejemplo integrador

Calcular el área de un círculo

Necesitamos:

radio
π

La expresión es:

π * radio²

Podemos representar:

radio → variable
π     → constante

Y utilizar una función matemática o una potencia para expresar el cálculo.

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué información es relevante?

Para el área del círculo:

radio
π

No necesitamos:

color del círculo
material
ubicación
nombre del estudiante
fecha
UAS - Lógica de Programación y Pensamiento Computacional

Actividad integradora

En parejas

Construyan una solución para uno de estos problemas:

A. Calcular el costo total de una compra.

B. Calcular el promedio de tres calificaciones.

C. Calcular el área de un círculo.

D. Calcular la distancia recorrida conociendo velocidad y tiempo.

Entreguen

  1. Datos
  2. Tipos
  3. Identificadores
  4. Variables y constantes
  5. Expresión
  6. Pseudocódigo
  7. Diagrama de flujo
  8. Comprobación mediante un ejemplo

Evidencia: actividad integradora de Unidad II.

UAS - Lógica de Programación y Pensamiento Computacional

12

Cierre de Unidad II

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué debes poder explicar?

Dato

Representa información que puede utilizar un algoritmo.

Tipo

Describe la naturaleza del dato.

Identificador

Permite nombrar elementos de la representación.

Variable

Puede representar valores que cambian.

Constante

Representa un valor que permanece fijo.

Operador

Indica una operación.

Expresión

Combina elementos para producir un resultado.

Función matemática

Permite realizar una operación matemática definida.

UAS - Lógica de Programación y Pensamiento Computacional

¿Qué debes poder hacer?

Identificar datos
       ↓
Determinar tipos
       ↓
Elegir identificadores
       ↓
Distinguir variables y constantes
       ↓
Construir expresiones
       ↓
Aplicar operadores
       ↓
Utilizar funciones matemáticas
       ↓
Resolver expresiones
       ↓
Comprobar resultados
UAS - Lógica de Programación y Pensamiento Computacional

Una comprobación final

Resuelve:

5 + 3 * 4

Resultado:

17

Ahora:

(5 + 3) * 4

Resultado:

32

La forma en que construimos una expresión cambia el resultado.

Por eso necesitamos comprender datos, operadores, expresiones y reglas de evaluación.

UAS - Lógica de Programación y Pensamiento Computacional

Lo que sigue

En la Unidad III trabajaremos con una metodología más sistemática para resolver problemas.

La secuencia será:

PROBLEMA
   ↓
ANÁLISIS
   ↓
ABSTRACCIÓN
   ↓
ESTRATEGIA
   ↓
ALGORITMO
   ↓
REPRESENTACIÓN
   ↓
COMPROBACIÓN

La Unidad II nos proporciona los elementos que necesitaremos para construir esas soluciones de manera más precisa.

UAS - Lógica de Programación y Pensamiento Computacional

Idea central

UAS - Lógica de Programación y Pensamiento Computacional

Representar antes de implementar

Por eso trabajamos con:

DATOS
TIPOS
IDENTIFICADORES
VARIABLES
CONSTANTES
OPERADORES
EXPRESIONES
FUNCIONES
UAS - Lógica de Programación y Pensamiento Computacional

La idea que debes llevarte

UAS - Lógica de Programación y Pensamiento Computacional

Unidad II en una imagen mental

             INFORMACIÓN
                  ↓
                DATOS
                  ↓
                TIPOS
                  ↓
           IDENTIFICADORES
              ↙       ↘
        VARIABLES   CONSTANTES
              \       /
               ↓     ↓
              OPERADORES
                  ↓
              EXPRESIONES
                  ↓
        FUNCIONES MATEMÁTICAS
                  ↓
              RESOLUCIÓN
                  ↓
               RESULTADO
UAS - Lógica de Programación y Pensamiento Computacional

Para cerrar

Antes de continuar, pregúntate:

¿Qué dato tengo?

Identifica la información.

¿Qué operación necesito?

Construye la expresión.

¿El resultado tiene sentido?

Comprueba tu solución.

UAS - Lógica de Programación y Pensamiento Computacional

Referencias

UAS - Lógica de Programación y Pensamiento Computacional

Bibliografía principal

Joyanes Aguilar, L. (2020).

Fundamentos de programación: algoritmos, estructuras de datos y objetos (5.ª ed.).

McGraw-Hill Interamericana.

Uso en U2: datos, tipos de datos, constantes, variables, expresiones, operadores, prioridad y funciones matemáticas.

UAS - Lógica de Programación y Pensamiento Computacional

Cairo Battistutti, O. (2015).

Metodología de la programación: algoritmos, diagramas de flujo y programas.

Computec.

Uso en U2: tipos de datos, identificadores, constantes, variables, operaciones aritméticas y expresiones lógicas.

Kernighan, B. W., & Ritchie, D. M. (1991).

El lenguaje de programación C (2.ª ed.).

Prentice-Hall Hispanoamericana.

Uso en la asignatura: referencia institucional complementaria.

No constituye lectura obligatoria de Unidad II.

UAS - Lógica de Programación y Pensamiento Computacional

Stroustrup, B. (2000).

The C++ Programming Language (3rd ed.).

Addison-Wesley.

Uso en la asignatura: referencia institucional complementaria.

No constituye lectura obligatoria de Unidad II.

UAS - Lógica de Programación y Pensamiento Computacional

Referencias complementarias

Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2022).

Introduction to Algorithms (4th ed.).

The MIT Press.

Uso: profundización en fundamentos algorítmicos.

UAS - Lógica de Programación y Pensamiento Computacional

Wirth, N. (1976).

Algorithms + Data Structures = Programs.

Prentice-Hall.

Uso: referencia histórica y conceptual sobre algoritmos.

Knuth, D. E. (1997).

The Art of Computer Programming, Volume 1: Fundamental Algorithms (3rd ed.).

Addison-Wesley.

Uso: profundización en fundamentos de algoritmos.

Las referencias complementarias amplían la comprensión de los conceptos. No sustituyen la bibliografía oficial de la asignatura.

UAS - Lógica de Programación y Pensamiento Computacional

Herramientas de apoyo

PSeInt

Herramienta para representar y ejecutar pseudocódigo.

Diagramas de flujo

Representación gráfica de algoritmos.

Moodle

Plataforma para actividades, evidencias y retroalimentación.

Las herramientas son medios para construir y comprobar representaciones. El objetivo de la unidad es comprender y utilizar los elementos algorítmicos básicos.

UAS - Lógica de Programación y Pensamiento Computacional

Para recordar

Unidad II

Elementos algorítmicos básicos

Datos → Expresiones → Operadores → Variables → Resolución

UAS - Lógica de Programación y Pensamiento Computacional

estado: versión 2.0, producción académica fuente curricular: programa oficial de Lógica de Programación y Pensamiento Computacional, clave 22101 fuentes de contenido: - programa/programa-oficial.md - CONTEXTO_UNIDAD.md - PLANEACION_UNIDAD.md - RUTA_LECTURAS.md criterios V2: - El programa oficial de la UAS es la fuente de verdad curricular. - La secuencia de sesiones corresponde exactamente a PLAN_SEMESTRAL.md. - La Unidad II desarrolla los elementos algorítmicos básicos definidos en el programa oficial. - PSeInt se utiliza únicamente como herramienta de representación y comprobación de algoritmos. - El pseudocódigo es una forma de representación algorítmica y no se presenta como un lenguaje de programación. - Los diagramas de flujo se utilizan como representación gráfica. - No se enseñan lenguajes de programación como contenido de esta unidad. - No se desarrollan estructuras de control, modularización ni estructuras de datos como contenido de esta unidad. - La metodología formal de resolución de problemas se desarrollará posteriormente en la Unidad III. - La resolución de expresiones se trabaja mediante reglas de prioridad, asociatividad y uso de paréntesis. - La comprobación mediante herramientas se utiliza para observar y verificar resultados, no para enseñar compiladores o lenguajes de programación. - Las definiciones de autores externos son paráfrasis, no citas textuales, salvo cuando se indique expresamente lo contrario.