Está en la página 1de 7

Curso de Nivelación: Introducción a la Programación

Tecnicatura Universitaria en Programación


Prof: Carina Raponi

Recordamos las Partes de un Algoritmo. Hasta ahora hemos estudiado los Datos (Entrada, Salida,
Mixtos) y su Dominio.

Número1 Número 1
+ Suma
Número 2
Número 2

DATOS PROCESO RESULTADO

A continuación, comenzaremos a pensar en el proceso, “la” acción, la


resolución, la parte más difícil, pero la más útil que resuelve un problema
planteado.

ACCIONES DE MANIPULACIÓN DE DATOS

Las acciones que manipulan datos pueden ser agrupadas en:

• Operaciones aritméticas

Nombre Operador Operandos Resultado Ejemplo Ejemplo Resultado


de la (símbolo) Operandos
Operación y operador
Suma + a, b ϵ R a+bϵR 8+2 10
Resta - a, b ϵ R a-bϵR 9–5 4
Producto * a, b ϵ R a*bϵR 3*6 18
División / a, b ϵ R a/bϵR 7/2 3.5
exacta b≠0
División /e a, b ϵ R a /e b ϵ Z 7 /e 2 3
entera b≠0
Módulo // a, b ϵ R a // b ϵ R 7 // 2 1
(resto de la b≠0
división)
Curso de Nivelación: Introducción a la Programación
Tecnicatura Universitaria en Programación
Prof: Carina Raponi

• Operaciones relacionales: trabajan sobre dos operandos del mismo dominio de dato
(números, textos, caracteres, valores lógicos) y devuelven un resultado lógico (booleano).

Nombre Operador Operandos Resultado Ejemplo Ejemplo Resultado


de la (símbolo) Operandos
Operación y operador
Menor < a, b son ¿a < b? ϵ ¿8 < 2 ? Falso
ambos del Booleano ¿8 < 8 ? Falso
mismo ¿2 < 8 ? Verdadero
Mayor > a, b son ¿a > b? ϵ ¿8 > 2 ? Verdadero
ambos del Booleano ¿8 > 8 ? Falso
mismo ¿2 > 8 ? Falso
dominio
Igual = a, b son ¿a = b? ϵ ¿8 = 2 ? Falso
ambos del Booleano ¿8 = 8 ? Verdadero
mismo ¿2 = 8 ? Falso
dominio
Distinto <> a, b son ¿a <> b? ϵ ¿8 <> 2 ? Verdadero
ambos del Booleano ¿8 <> 8 ? Falso
mismo ¿2 <> 8 ? Verdadero
dominio
Menor o <= a, b son ¿a <= b? ϵ ¿8 <= 2 ? Falso
igual ambos del Booleano ¿8 <= 8 ? Verdadero
mismo ¿2 <= 8 ? Falso
dominio
Mayor o >= a, b son ¿a >= b? ϵ ¿8 >= 2 ? Verdadero
igual ambos del Booleano ¿8 >= 8 ? Verdadero
mismo ¿2 >= 8 ? Falso
dominio

Obs: no confundir notación matemática con el operador que se utiliza en los algoritmos (por
ende, en los lenguajes de programación)

• Operaciones lógicas:

Las operaciones lógicas son: conjunción (Y), disyunción (O) y negación (NO). Las dos primeras
operaciones son binarias, trabajan sobre dos operandos lógicos (booleanos) y devuelven un
resultado lógico (booleano). Para determinar los resultados de las distintas operaciones lógicas se
utilizan las siguientes tablas de verdad.

a b aYb
verdadero verdadero verdadero
Curso de Nivelación: Introducción a la Programación
Tecnicatura Universitaria en Programación
Prof: Carina Raponi

verdadero falso falso


falso verdadero falso
falso falso falso

a b aOb
verdadero verdadero verdadero
verdadero falso verdadero
falso verdadero verdadero
falso falso falso

a NO a
verdadero falso
falso verdadero

Normalmente las operaciones lógicas se usan con operadores de relación y matemáticos para formar
condiciones más complejas. Se usa mucho en programación la escritura de condiciones como forma
de expresar afirmaciones del lenguaje o restricciones.

Ejemplo 1: Para verificar si un dato llamado Mes es un número de mes correcto, es decir
(Mes >= 1) Y (Mes <= 12)

Probamos con algunos valores al azar:

Mes Mes >= 1 Mes <= 12 (Mes >= 1) Y (Mes <= 12)
-2 falso falso falso
0 falso verdadero falso
5 verdadero verdadero verdadero
1 verdadero verdadero verdadero

Ejemplo 2: Para verificar si un dato llamado Nota es una nota incorrecta, es decir:
(Nota < 0) O (Nota > 10)

Probamos con algunos valores al azar:

Nota Nota < 0 Nota > 10 (Nota < 0) O (Nota > 10)
-2 verdadero falso Verdadero (la nota es incorrecta)
0 verdadero falso verdadero
5 falso falso falso
Curso de Nivelación: Introducción a la Programación
Tecnicatura Universitaria en Programación
Prof: Carina Raponi

1 falso falso falso

Ejemplo 3: Para verificar si un dato llamado Nro es un número entero positivo impar. (al dividirlo
por dos el resto es distinto de 0): (Nro // 2 <> 0 ) Y (Nro > 0)

Probamos con algunos valores al azar:

Nro Nro //2 Nro // 2 <> 0 Nro > 0 (Nro // 2 <> 0 ) Y (Nro > 0)
-2 0 falso falso falso
0 0 falso falso falso
5 1 verdadero verdadero verdadero
8 0 falso verdadero falso
2 0 falso verdadero falso

Ejemplo 4: Para verificar si un dato llamado Longitud es correcto, es decir: ( Longitud >= 0 )

Ejercicio: ¿Cómo verificar si un dato llamado denominador no es cero? Comprobar con la tabla

• Asignación

Es una acción que permite asignar/almacenar/guardar un valor o resultado de una expresión a un


dato (también llamado Variable), para que el mismo pueda ser usado más adelante.
Estos datos o Variables, en programación, serán guardadas en espacios de la memoria RAM de la
computadora, según su Dominio. Luego, esos espacios se liberan, es decir, no permanecen con su
valor almacenado.
Sintaxis:
Variable ← Expresión

Donde expresión puede ser:


una constante (literal),
una variable,
una expresión matemática, relacional o lógica.

Funcionamiento:

1) Se evalúa la expresión de la derecha


2) El valor obtenido es almacenado en la variable indicada a la izquierda.
Curso de Nivelación: Introducción a la Programación
Tecnicatura Universitaria en Programación
Prof: Carina Raponi

Ejemplos de asignaciones: (varía el dominio de dato)

Asignación dominio de Dato


Feriado ← `jueves, viernes´ Feriado ϵ Texto
Longitud ← 7 Longitud ϵ R+
Saldo ← Saldo + Pago Saldo ϵ R
Número ← Número + 1 Número ϵ Z+
EsImpar ← (Num // 2) <> 0 EsImpar ϵ Booleano
Mitad ← Total / 2 Mitad ϵ R

Ejemplos del Material anterior:


En el Algoritmo de la Suma de dos números sería: Suma ← Número1 + Número2
En el Algortitmo del cálculo de la superficie del triángulo: Superficie ← Base * Altura / 2
En el Algoritmo propuesto del perímetro de un rectángulo: …............ ← ….............
En el Algoritmo propuesto del cálculo del 10% de un número cualquiera: …............ ← ….............

Como se mencionó anteriormente, estas variables son lugares provisiorios en la Memoria Ram que
comienzan vacíos (sin un dato predeterminado) y van tomando los valores según las asignaciones.

Para “simular” el valor de las variables y hacer un seguimiento dentro del algoritmo, se realizan
TRAZAS que veremos en breve.

• Escritura de datos en pantalla

Es una acción que permite mostrar por pantalla valores literales (constantes), valores de variables o
resultados de expresiones.

MOSTRAR ( Constante | Variable | Expresión [, Constante | Variable | Expresión ]…)

Lo que está entre corchetes se puede repetir


Curso de Nivelación: Introducción a la Programación
Tecnicatura Universitaria en Programación
Prof: Carina Raponi

• Lectura de datos

Es una acción que permite al usuario ingresar valores a través del teclado. Internamente hace
variable ← valor que ingrese el usuario

Ejemplo:

Mostrar (‘ Ingrese un numero’)


LEER (variable)

• Comentarios

En cualquier parte del algoritmo, podemos acotar notas aclaratorias para recordar o comprender
mejor. Dicho texto se escribe entre llaves { }
Escribir comentarios en los algoritmos es opcional, y se pueden escribir tantos comentarios como
necesitemos agregar.

Ya estamos en condiciones de escribir los algoritmos completos.

ALGORITMO PARA SUMAR DOS NÚMEROS


Datos de entrada: número1 ϵ R, número2 ϵ R
Dato de salida: suma ϵ R

Comienzo
{faltan las instrucciones para ingresar datos pero vamos despacio...}
Suma ← Número1 + Número2
{la variable suma recibe el valor de sumar los dos valores}

Fin

ALGORITMO SUPERFICIE DE UN TRIANGULO


Datos de entrada:
entrada: Base, Altura ϵ R+
Dato de salida: Superficie ϵ R+

Comienzo
Curso de Nivelación: Introducción a la Programación
Tecnicatura Universitaria en Programación
Prof: Carina Raponi

Superficie ← Base * Altura / 2


Fin

Ejercicio propuesto: Escribir los algoritmos del Perímetro del rectángulo y del 10% de un número.

TRAZAS

Nos permiten hacer en lápiz y papel la ejecución del algoritmo. OJO: hay que seguir los pasos que
están escritos y no lo que suponemos que debería hacer.
Son de ayuda para encontrar errores y casos especiales.

Es una tabla donde se destina una columna para cada dato, una para las salidas en pantalla (si las
hubiese) y una para cada subexpresión y una para la expresión completa.

Ejemplo: Este es una secuencia de instrucciones al azar, a modo de ejemplificación, no resuelve


nada

Feriado ← `jueves, viernes´


Total ← 100
Num ← 7
Total ← Total + Num
Núm ← Núm + 1
EsImpar ← (Num // 2) <> 0
Mitad ← Total / 2

Traza:

Feriado Total Num EsImpar Mitad


`jueves, viernes´ 100 7
100+7=107 7+1=8 ¿8 // 2 <> 0? falso 107 / 2 = 53.5

También podría gustarte