Está en la página 1de 29

Algoritmos

1. Sistemas de procesamiento
de la información

Un sistema de esta clase se define


como un conjunto de componentes
interconectados entre sí que
transforman datos en información
organizada, significativa y útil.
Esquemáticamente
Datos

Procesador

Información
Una primera definición

Un algoritmo consiste en el grupo de


instrucciones que definen la secuencia
de operaciones a realizar para resolver
un sistema específico o clase de
problema.
Conceptos importantes
Un lenguaje algorítmico es un conjunto de símbolos y reglas que
permiten describir de manera explícita un proceso.

Es independiente de cualquier lenguaje de programación.

Debe permitir una traducción clara del algoritmo al programa

Existen dos tipos de lenguajes algorítmicos:


 Gráficos (por ej., los diagramas de flujo)
 No gráficos (por ej., el pseudocódigo)

INICIO
Edad: Entero
ESCRIBE “¿Cuál es tu edad?”
LEE Edad
SI Edad >= 18 ENTONCES
ESCRIBE “Eres mayor de edad”
FINSI
FIN
2. Concepto de algoritmo
La metodología de la programación es
aquella que es necesaria para resolver
problemas mediante programas, su eje
es el algoritmo.

Diseño
Problema del Programa
algoritmo
Pasos para la solución
de un problema
 El diseño del algoritmo describe el
análisis del problema y desarrollo
del algoritmo.
 Expresar el algoritmo como un
programa en un lenguaje de
programación.
 Ejecutar y validar el programa por
la computadora.
Características
de los algoritmos

 Preciso, indicará el orden de cada paso.


 Definido, el mismo resultado se obtendrá
al ejecutar el algoritmo “n” ocasiones.
 Finito, deberá terminar en algún momento.
Ejemplo 2.1 Genere un algoritmo
que solucione la entrega de un
pedido a un cliente.

 Inicio.
 Leer el pedido.
 Examinar el historial crediticio del cliente
 Si el cliente es solvente, entregar el
pedido. En caso contrario, rechazarlo.
 Fin.
Ejemplo 2.2 Genere un algoritmo que
sume los números entre el 3 y el 30.
1. Inicio.
2. Hacer SUMA igual cero.
3. Establecer NUMERO igual a 3.
4. Sumar NUMERO a SUMA.
5. Incrementar NUMERO en 1
6. Si NUMERO es menor o igual que 30 ir
a 4; si no imprimir a SUMA.
7. Fin.
Ejemplo 2.3 Genere un algoritmo que
determine al mayor de tres números enteros.

 Inicio.
 Leer los números y guardarlos en NUM1,
NUM2 y NUM3 respectivamente.
 Comparar NUM1 y NUM2, el número mayor
se guarda en AUX.
 Comparar AUX y NUM3, imprimir el número
mayor.
 Fin.
Tarea 2.1 Diseñe un algoritmo para
determinar si un número es primo o no.

Tarea 2.2 Genere un algoritmo que


sume los números entre el 2 y el 20.

Tarea 2.3 Genere un algoritmo que


sume los números entre el 5 y el 50.
3. Los lenguajes de
programación
 Cuando el procesador de datos es una
computadora entonces el algoritmo de
solución se expresa en un programa.
 Por tanto, un programa es escrito en un
lenguaje de programación.
 Luego, la programación consiste en
expresar las operaciones en forma de
programa de un algoritmo.
Tipos de lenguajes
 Máquina; escritos en código binario.

 Bajo
nivel (ensamblador); escrito en
nemotécnicos.

 Alto
nivel; diseñados para ser
entendidos por el ser humano.
Instrucciones básicas
 Entrada/Salida; transferencia de información entre
dispositivos periféricos y memoria central.

 Aritmético/Lógicas; ejecutan operaciones de éstos


tipos.

 Selectivas; seleccionan tareas en función de los


resultados

 Repetitivas; permiten la iteración de secuencias de


instrucciones un número dado de veces
Traductores del lenguaje
A) Intérpretes; Toma un programa
fuente lo traduce e inmediatamente
lo ejecuta.

Traducción
Programa fuente Intérprete y ejecución
en línea
Traductores del lenguaje

B) Compiladores; traduce un
programa fuente a código objeto.
Programa Programa Programa
fuente Objeto ejecutable

Compilador Montador
(Compiler) (Linker)
4. Datos, Tipos de Datos
y Operaciones Primitivas
 Un dato es la expresión general que
describe los objetos con los cuales opera
la computadora
 Los tipos son: simples (no estructurados)
y compuestos (estructurados). Aquellos
se subdividen en:
 Numéricos (integer, real)
 Lógicos (booleans)
 Carácter (char, string)
Datos primitivos
Datos

Numérico Carácter Lógico

Entero Real
5. Constantes y Variables
 Constantes: valores que durante la
ejecución de un programa no
cambian su valor.

 Variables: valores que cambiarán


durante la ejecución del programa
6. Expresiones
 Se definen como una combinación de
constantes, variables, símbolos de
operación, paréntesis, y nombres de
funciones especiales.
 Una expresión consta de operandos y
operadores.
 Las expresiones se clasifican en
aritméticas, lógicas y carácter.
Expresiones aritméticas
Operador Significado Tipo de operandos Tipo resultado
** Exponenciación Entero o real Entero o real

+ Suma Entero o real Entero o real

- Resta Entero o real Entero o real

* Multiplicación Entero o real Entero o real

/ División Real Real


Div División entera Entero Entero
Mod módulo Entero Entero
Reglas de prioridad
Operador Gráfo
Paréntesis ( )
Exponencial **

Multi, divide *, /

Div y mod Div, mod

Más y menos +, -
Operadores de relación
Expresión 1 Operador de Expresión 2
relación

Operador Significado
< Menor
> Mayor
= Igual
<= Menor o igual
>= Mayor o igual
<>,!= Distinto
Operadores lógicos

Operador lógico Expresión lógica Significado


Not Not p Negación
And PyQ Conjunción
Or PoQ Disyunción
7. Funciones intrínsecas
Función Descripción
Abs(x) Absoluto
Arctan(x) Tangente inversa
Cos(x) Coseno
Exp(x) Exponencial
Ln(x) Log neperiano
Log10(x) Log decimal
Round(x) Redondeo
Sin(x) Seno
Sqr(x) Cuadrado
Sqrt(x) Raíz cuadrada
Trunc(x) Truncamiento
8. Operación de Asignación

 Es la forma de darle valores


tanto a variables como
constantes, se representa con
el símbolo
Tipos de asignación
 Aritmética

 Lógica

 Cadena de caracteres
9. Entrada y salida de
información
 La operación de lectura READ permite
el ingreso de los datos necesarios para
los cálculos computacionales.

 La operación de escritura WRITE


imprime la información procesada por el
programa y su respectivo algoritmo.

También podría gustarte