En este tema, aprenderemos sobre los operadores y las expresiones en ALGOL. Los operadores son símbolos que indican al compilador que debe realizar una operación específica, como aritmética, lógica o de comparación. Las expresiones son combinaciones de variables, constantes y operadores que se evalúan para producir un valor.

Tipos de Operadores

ALGOL soporta varios tipos de operadores, que se pueden clasificar en las siguientes categorías:

  1. Operadores Aritméticos
  2. Operadores Relacionales
  3. Operadores Lógicos
  4. Operadores de Asignación

Operadores Aritméticos

Los operadores aritméticos se utilizan para realizar operaciones matemáticas básicas. A continuación se muestra una tabla con los operadores aritméticos disponibles en ALGOL:

Operador Descripción Ejemplo
+ Suma a + b
- Resta a - b
* Multiplicación a * b
/ División a / b
:= Asignación a := b

Ejemplo de Operadores Aritméticos

begin
  integer a, b, c;
  a := 10;
  b := 5;
  c := a + b;  ! c es 15
  c := a - b;  ! c es 5
  c := a * b;  ! c es 50
  c := a / b;  ! c es 2
end

Operadores Relacionales

Los operadores relacionales se utilizan para comparar dos valores. El resultado de una operación relacional es un valor booleano (true o false). A continuación se muestra una tabla con los operadores relacionales disponibles en ALGOL:

Operador Descripción Ejemplo
= Igual a a = b
No igual a a ≠ b
< Menor que a < b
> Mayor que a > b
Menor o igual que a ≤ b
Mayor o igual que a ≥ b

Ejemplo de Operadores Relacionales

begin
  integer a, b;
  boolean result;
  a := 10;
  b := 5;
  result := a = b;  ! result es false
  result := a ≠ b;  ! result es true
  result := a < b;  ! result es false
  result := a > b;  ! result es true
  result := a ≤ b;  ! result es false
  result := a ≥ b;  ! result es true
end

Operadores Lógicos

Los operadores lógicos se utilizan para combinar expresiones booleanas. A continuación se muestra una tabla con los operadores lógicos disponibles en ALGOL:

Operador Descripción Ejemplo
and Y lógico a and b
or O lógico a or b
not Negación lógica not a

Ejemplo de Operadores Lógicos

begin
  boolean a, b, result;
  a := true;
  b := false;
  result := a and b;  ! result es false
  result := a or b;   ! result es true
  result := not a;    ! result es false
end

Operadores de Asignación

El operador de asignación se utiliza para asignar un valor a una variable. En ALGOL, el operador de asignación es :=.

Ejemplo de Operador de Asignación

begin
  integer a, b;
  a := 10;
  b := a;  ! b es 10
end

Ejercicios Prácticos

Ejercicio 1: Operaciones Aritméticas

Escribe un programa en ALGOL que realice las siguientes operaciones aritméticas y muestre los resultados:

  1. Suma de 15 y 7
  2. Resta de 20 y 5
  3. Multiplicación de 6 y 8
  4. División de 40 por 4

Solución

begin
  integer a, b, result;
  a := 15;
  b := 7;
  result := a + b;
  print(result);  ! Debería imprimir 22

  a := 20;
  b := 5;
  result := a - b;
  print(result);  ! Debería imprimir 15

  a := 6;
  b := 8;
  result := a * b;
  print(result);  ! Debería imprimir 48

  a := 40;
  b := 4;
  result := a / b;
  print(result);  ! Debería imprimir 10
end

Ejercicio 2: Comparaciones Relacionales

Escribe un programa en ALGOL que compare dos números y muestre si son iguales, no iguales, mayor, menor, mayor o igual, y menor o igual.

Solución

begin
  integer a, b;
  boolean result;
  a := 10;
  b := 5;

  result := a = b;
  print(result);  ! Debería imprimir false

  result := a ≠ b;
  print(result);  ! Debería imprimir true

  result := a < b;
  print(result);  ! Debería imprimir false

  result := a > b;
  print(result);  ! Debería imprimir true

  result := a ≤ b;
  print(result);  ! Debería imprimir false

  result := a ≥ b;
  print(result);  ! Debería imprimir true
end

Ejercicio 3: Operaciones Lógicas

Escribe un programa en ALGOL que evalúe las siguientes expresiones lógicas y muestre los resultados:

  1. true and false
  2. true or false
  3. not true

Solución

begin
  boolean a, b, result;
  a := true;
  b := false;

  result := a and b;
  print(result);  ! Debería imprimir false

  result := a or b;
  print(result);  ! Debería imprimir true

  result := not a;
  print(result);  ! Debería imprimir false
end

Conclusión

En esta sección, hemos aprendido sobre los diferentes tipos de operadores en ALGOL y cómo se utilizan en expresiones. Hemos cubierto operadores aritméticos, relacionales, lógicos y de asignación, y hemos visto ejemplos prácticos de cada uno. Los ejercicios proporcionados te ayudarán a reforzar estos conceptos y a practicar la escritura de expresiones en ALGOL. En el próximo módulo, exploraremos las estructuras de control en ALGOL, que nos permitirán tomar decisiones y repetir acciones en nuestros programas.

© Copyright 2024. Todos los derechos reservados