Algoritmos
El algoritmo
de la amistad
Temática

Concepto de Algoritmo.
 Datos, tipos de datos y operaciones
primitivas.
 Constantes y variables.
 Expresiones.
 Funciones intrínsecas.
 Asignación.
 Entrada y salida de información.
Una definición

Un algoritmo consiste en el grupo
de instrucciones que definen la
secuencia de operaciones que
resuelven un problema específico.
Problema
Diseño
del
algoritmo
Programa
Pasos para la solución
de un problema

El diseño del algoritmo describe el
análisis del problema y desarrollo
del algoritmo.
 Se expresa el algoritmo como un
programa en un lenguaje de
programación.
 Se ejecuta y valida el programa
por la computadora.
Características
algoritmos

de
los
Preciso, indicará el orden de cada paso.
 Definido, el mismo resultado se obtendrá
al ejecutar el algoritmo “n” veces.
 Finito,
deberá terminar en algún
momento.
Ejemplo 1
Genere un algoritmo que sume
los números entre el 3 y el 30.
1.
2.
3.
4.
5.
6.
7.
Inicio.
Hacer SUMA igual cero.
Establecer NUMERO igual a 1.
Sumar NUMERO a SUMA.
Incrementar NUMERO en 3
Si NUMERO es menor o igual que 30 ir a
4; si no imprimir a SUMA.
Fin
Ejemplo 2
Genere un algoritmo que determine al mayor
de tres números enteros ingresados.
1.
2.
3.
4.
5.
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.
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 una
operación lógica

Repetitivas: permiten la iteración de secuencias de
instrucciones un número dado de veces
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:



Numericos (integer, real)
Lógicos (booleans)
Carácter (char, string)
Datos primitivos
Datos
Numérico
Entero
Carácter
Real
Lógico
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
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
^
Potencia
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
\
División entera
Entero
Entero
Mod
módulo
Entero
Entero
Reglas de prioridad
Operador
Parentesis
Exponencial
Gráfo
( )
^
Multi, divide
*, /
Div y mod
\, mod
Más y menos
+, -
Operadores de comparación
Expresión 1
Operador
<
>
=
<=
>=
<>
Operador de
relación
Expresión 2
Significado
Menor
Mayor
Igual
Menor o igual
Mayor o igual
Distinto
Operadores lógicos
Operador lógico
Expresión lógica
Significado
Not
No p
Negación
And
PyQ
Conjunción
Or
PoQ
Disyunción
Funciones Matemáticas
Función
Abs(x)
Atn(x)
Cos(x)
Exp(x)
Int(x), Fix(x)
Log(x)
Rnd(x)
Sin(x)
Sqr(x)
Tan(x)
Sgn(x)
Descripción
Absoluto
Tangente inversa
Coseno
Exponencial
Parte entera
Logaritmo natural
Aleatorio
Seno
Raiz Cuadrada
Tangente
Signo
Operación de Asignación
 Es
la forma de darle valores a
variables y constantes. Se
realiza con el signo = y sigue
el sentido de derecha a
izquierda
PROBLEMAS RESUELTOS
CON COMPUTADORAS Y
HERRAMIENTAS DE
PROGRAMACION
03/10/2015
22
SOLUCION DE PROBLEMAS

Fases de fragmentación:



Análisis del problema: definición
concisa a fin de que sea analizado en
todo detalle.
Diseño del algoritmo: procedimiento,
paso a paso, para la solucionar el
problema dado.
Solución del algoritmo con la
computadora: codificación del algoritmo
en un lenguaje de programación
23
ANALISIS DEL PROBLEMA
 El
propósito llegar a un cierto grado de
comprensión de la naturaleza del
problema.
 Una
buena definición del problema,
junto con una descripción detallada de
entrada y salida, son los requisitos más
importantes para una solución eficaz.
03/10/2015
24
ANALISIS DEL PROBLEMA
Que información debe proporcionar la
solución del problema.
Solución del
Problema
Análisis del
Problema
Diseño del
algoritmo
Solución por
computadora
1. ANALISIS DEL PROBLEMA
Que datos se necesitan para resolver el
problema.
Análisis del
Problema
Definicióndel
Problema
Especificaciones
de entrada
Especificaciones
de salida
1. ANALISIS DEL PROBLEMA
 Ejemplo:
dados los lados de un
triángulo rectangulo, calcular la
hipotenusa.
 Entradas:
valores de los lados (variable
LADO1 y variable LADO2).
 Salida: valor de la hipotenusa (variable
LADO3).
 Variables: LADO1, LADO2 y LADO3 (tipo
reales).
2. DISEÑO DEL ALGORITMO

La información proporcionada al algoritmo
constituye su entrada y la información
producida constituye su salida.

Los problemas complejos se resuelven
eficazmente
si
se
fragmentan
en
subproblemas que sean más sencillos de
solucionar que el original. Esta técnica sigue
el principio: Divide y Vencerás
2. DISEÑO DEL ALGORITMO
1.
2.
3.
4.
5.
6.
7.
Inicio
Total=0, Num=9, Limite=90
Print Num
Total=Total+Num
Si Num < Limite entonces
Num=Num+9 y regresar a 3
Print Total
Fin
tarea
1.
2.
3.
Determine el máximo común divisor
para dos números enteros.
Ordene 3 números ingresados
Convierta un número decimal entero
en hexadecimal
3. SOLUCION DE PROBLEMAS
MEDIANTE LA COMPUTADORA

Una vez diseñado el algoritmo y
representado mediante una herramienta de
programación se debe:
Solución del
Problema por
Computadora
Codificación
del programa
Ejecución del
programa
Comprobación
del programa
3.1 REPRESENTACION GRAFICA
DE LOS ALGORITMOS

1.
2.
Los métodos usuales para
representarlo son:
Diagrama de flujo
Pseudocódigo
3.1 REPRESENTACION GRAFICA
DE LOS ALGORITMOS
3.2 PSEUDOCODIGO
 Es
un lenguaje de especificación de
algoritmos que permite una codificación
rápida y simple.
 Su ventaja radica en que el
programador no debe preocuparse por
la sintaxis de un lenguaje de
programación en particular.
 Utiliza palabras sencillas de entender
para codificar programas.
ESTRUCTURA
DE UN
PROGRAMA
Concepto de Programa
Conjunto de instrucciones que producirán
la ejecución de una determinada tarea.
Esencialmente es un medio para lograr
un fin.
PROCESO DE
PROGRAMACION
Consiste en la solución de
problemas y el desarrollo de
programas
Elementos básicos de un
programa

Palabras reservadas.
 Identificadores (nombres de variables).
 Caracteres especiales.
 Constantes.
 Variables.
 Expresiones.
 instrucciones.
DIAGRAMAS
DE FLUJO
Estructuras básicas
Todo programa cumple las siguientes
características:
 secuenciales,
 selectivas, y
 repetitivas.
posee un solo punto de entrada y salida.
se puede recorrer toda la estructura del
programa modular.
todas las instrucciones son ejecutables y
no existen bucles infinitos.
Instrucciones Secuenciales
Instrucción Selectiva Simple
Instrucción Selectiva Compuesta
Instrucción Selectiva Múltiple
“Select – Case”
Instrucción Repetitiva
“While-Wend”
Instrucción Repetitiva
“Do-Loop While”
Instrucción Repetitiva
“For-Next”
FIN
Descargar

Algoritmos y Programas