Está en la página 1de 40

IESP San Ignacio de Monterrico

Fundamentos de la Programación

Algoritmos
La base de la programación

Instructor : Italo Alexander Morales Zamora


IESP San Ignacio de Monterrico

1.Algortimo (Latín)

▪ Se deriva de la traducción al latín de la


palabra árabe alkhowarizmi, nombre de un
matemático astrónomo árabe que escribió
un tratado sobre manipulación de números
y ecuaciones en el siglo IX.
IESP San Ignacio de Monterrico

1. Definiciones de Algoritmos

▪ Es una serie de pasos , que se siguen para dar solución a un


problema
▪ Es un conjunto de instrucciones que siguen una secuencia
determinada de operaciones, para resolver una serie de
problemas
NOTA
La resolución de un problema exige el diseño de un algoritmo que resuelva el mismo.
IESP San Ignacio de Monterrico

1.1.Características de los Algoritmos

▪ Preciso: Indicar el orden de realización de cada paso.

▪ Definido: Si se sigue un algoritmo dos veces, se debe obtener el


mismo resultado cada vez.

▪ Finito: Si se sigue un algoritmo, se debe terminar en algún


momento; o sea, debe tener un número finito de pasos.
IESP San Ignacio de Monterrico

1.2.Tipos de Algoritmos

▪ Cualitativos: Son aquellos en los que se describen los pasos utilizando


palabras.
Ejemplos:
✓ Cambiar la llanta de automóvil, Cocinar Ají de Gallina, ir a mi trabajo

▪ Cuantitativos: Son aquellos en los que se utilizan cálculos numéricos para


definir los pasos del proceso.
Ejemplos:
✓ Hallar el factorial, definir los primeros 20 números primos, Calcular el sueldo
de un empleado
IESP San Ignacio de Monterrico

1.2.Estructura de un Algoritmo

Entradas
La entrada representa todos los datos que
necesita el algoritmo, para cumplir su objetivo.
Entradas Salida
Proceso

Proceso
Salida
Proceso es la ejecución paso a
paso de las instrucciones, cabe mencionar que un Son los resultados que se desean
proceso consiste en un conjunto de pasos y nunca obtener en la ejecución del algoritmo.
un paso puede saltarse otro
IESP San Ignacio de Monterrico

2.Identificadores

▪ Los identificadores representan los datos de un programa, es decir


su nombre.
▪ Un identificador es una secuencia de caracteres que sirve para
identificar una posición en la memoria de la computadora, que nos
permite acceder a su contenido
▪ Ejemplo:
✓ Dirección ✓ Promedio
✓ Dni ✓ Sueldo
✓ Edad ✓ EstdoCivil… Etc.
IESP San Ignacio de Monterrico

2.1.Reglas para definir un Identificador

▪ Debe comenzar con una letra (A a Z, mayúsculas o minúsculas) y


no deben contener espacios en blanco.

▪ Letras, dígitos y caracteres como el guión bajo ( _ ) están


permitidos después del primer carácter.

▪ La longitud de identificadores puede ser de hasta 8 caracteres.


IESP San Ignacio de Monterrico

2.2.Variables, Constantes y Funciones

2.2.1.Variable: “Es aquello que varía o que está sujeto a algún tipo de cambio”.

▪ Es un objeto o partida de datos cuyo valor puede cambiar


durante el desarrollo del algoritmo o ejecución del programa.
▪ Una variable pertenece a un único tipo de datos, si se intenta
asignar un valor de un tipo diferente se producirá un error de
tipo.
▪ Ejemplo:
✓ promedio = (nota1+nota2+nota3)/3
IESP San Ignacio de Monterrico

2.Variables, Constantes y Funciones

2.2.2.Constantes: “Es aquello que su valor no cambia”.

▪ Igual que las variables, permiten almacenar un valor, pero este


valor es dado desde un principio y es invariable, durante la
puesta en marcha de un programa.

▪ Ejemplo:
✓ pi = 3,1416
IESP San Ignacio de Monterrico

2.2.Variables, Constantes y Funciones

2.2.1.Tipos de Variables (Por su Uso)

Variables de Trabajo: Variables que reciben el resultado de una


operación matemática completa y que se usan normalmente dentro de
un programa.
Ejemplo: suma=a+b
IESP San Ignacio de Monterrico

2.2.Variables, Constantes y Funciones

2.2.1.Tipos de Variables (Por su Uso)


Contadores: Se utilizan para llevar el control del número de ocasiones en
que se realiza una operación o se cumple una condición. Con los incrementos
generalmente de uno en uno.
Ejemplo: c=c+1
Acumuladores (Sumadores): Forma que toma una variable y que sirve
para llevar la suma acumulativa de una serie de valores que se van leyendo o
calculando progresivamente.
Ejemplo: Sumador = Sumador + variable
IESP San Ignacio de Monterrico

3.Tipos de datos (Por su contenido)

▪ Los datos que puede manejar una computadora básicamente


son los siguientes:

▪ Numéricos
▪ Lógicos
▪ Carácter y Cadena (Alfanuméricas)
NOTA
De estos tipos se desprenden todos los demás tipos considerados en algunos lenguajes
de programación.
IESP San Ignacio de Monterrico

3.1.Datos Numéricos

▪ El tipo numérico es el conjunto de valores numéricos (positivos o


negativos). Estos pueden ser:

▪ El tipo numérico entero


✓ Ejemplo: Edad, Cantidad de alumnos de un aula, etc.
▪ El tipo numérico decimal
✓ Ejemplo: Talla, Sueldo, etc.
IESP San Ignacio de Monterrico

3.2.Datos Lógicos

▪ El tipo lógico (también denominado booleano) es aquel dato que


sólo puede tomar unos de dos valores:

▪ Verdadero (True) y Falso (False)


✓ Ejemplo: Aprobado(Si/No)

NOTA
Este tipo de dato se utiliza para representar las alternativas (si/no) a determinadas
condiciones
IESP San Ignacio de Monterrico

3.3.Datos Tipo Carácter

▪ El tipo carácter es el conjunto finito y ordenado de caracteres


que la computadora reconoce. Un dato tipo carácter contiene un
sólo carácter:
▪ Los caracteres que reconocen las diferentes computadoras no
son estándar; pero la mayoría reconoce los siguientes
caracteres alfabéticos y numéricos:
▪ Caracteres alfabéticos (A,B,C,…,Z) (a,b,c,…,z)
▪ Caracteres numéricos (1,2, …, 9,0)
▪ Caracteres especiales (+, -, *, /, ^, ., ;, <, >, $, …)
IESP San Ignacio de Monterrico

3.4.Datos Tipo Cadena de Caracteres (String)

▪ El tipo carácter suma de caracteres


▪ Los caracteres que reconocen las diferentes computadoras no
son estándar; pero la mayoría reconoce los siguientes
caracteres alfabéticos y numéricos:
▪ Caracteres alfabéticos (A,B,C,…,Z) (a,b,c,…,z)
▪ Caracteres numéricos (1,2, …, 9,0)
✓ Ejemplo:
▪ Caracteres especiales (+, -, *, /, ^, ., ;, <, >, $, …) ✓ Dirección: “Av. José Granda
2596 (S.M.P)”
✓ Celular: “999-989-978”
IESP San Ignacio de Monterrico

4.Expresiones

▪ Son combinaciones de constantes, variables símbolos de


operación, paréntesis y nombres de funciones especiales.

▪ Se compone de operandos y operadores. Según sea el tipo de


objetos que manipulan las expresiones se clasifican en:

▪ Aritméticas
▪ Lógicas
IESP San Ignacio de Monterrico

4.1.Expresiones Aritméticas

▪ Son análogas a las fórmulas matemáticas. Las variables y


constantes son numéricas (real o entera) y las operaciones son
las aritméticas.
Operadores Aritméticos:
+ Suma
- Resta
* Multiplicación
/ División
% Residuo (función) Obtiene el residuo de una división Entera de 2
números.
IESP San Ignacio de Monterrico

4.1.Expresiones Aritméticas

Ejemplos :
▪ Expresión Resultado
7/2 3.5
20 % 6 2 Modular (%) Residuo de una División Entera
4+2*5 14
IESP San Ignacio de Monterrico

4.2.Expresiones Lógicas

▪ Es una expresión que solo pueda tomar los valores de Verdadero


(true) o Falso (false).

▪ Estas expresiones se forman combinando operadores lógicos y


operadores de relación.
IESP San Ignacio de Monterrico

4.2.Expresiones Lógicas

Operadores lógicos: Operadores Relacionales:


Y (AND) .- Todas las expresiones lógicas deben ser > Mayor que
verdaderas para que el resultado general sea verdadero, de lo < Menor que
contrario, si una de ellas es falsa todo es falso. > = Mayor o igual que
< = Menor o igual que
O (OR) - En un grupo de expresiones lógicas basta que una <> Diferente
sea verdadera para que el resultado general sea verdadero, de = Igual
lo contario será falso.

Negación (Negation) Cambia el valor de Falso a Verdadero


y viceversa.
IESP San Ignacio de Monterrico

Tabla de Operadores Lógicos

Operador Y - Inglés(And)
p1 p2 Y (Resultado) Sólo SI las 2 preposiciones Operador Negación - Inglés(Not)
V V V son verdaderas, el Valor Lógico (Resultado)
V F F resultado será VERDADERO
Neg(Verdadero) FALSO
F V F Neg(Falso) VERDADERO
F F F

Operador O - Inglés(Or) La Negación


Cambia el valor de Falso a Verdadero y
p1 p2 (Resultado) viceversa.
V V V Basta que una de las
preposiciones sea
V F V
Verdadera, el resultado
F V V será VERDADERO
F F F
IESP San Ignacio de Monterrico

4.3.Jerarquía de Operadores

▪ Operadores Matemáticos
✓Paréntesis
✓Potencias y Raíces
✓Multiplicaciones y Divisiones
✓Sumas y restas
▪ Operadores Relacionales
✓<,>,<=,>=,=,!=
▪ Operadores Lógicos
✓Negación (Not)
✓Y (and) , O (or)
IESP San Ignacio de Monterrico

4.4.Ejemplos de Expresiones Lógicas

Dado que a=20; b=5; c=4;


•a<20 Falso
•c<=4 Verdadero
•a=(b*c) Verdadero
•a<>10 Verdadero
•a/b=(a*2)/10 Verdadero
•a<c+b Falso
IESP San Ignacio de Monterrico

4.4.Ejemplos de Expresiones Lógicas que


usan operadores Lógicos

Dado a=20; b=5; c=4;


•(a*b>=100) Y (a*b)/10=15 Falso
•(a>=15) Y (a<=25) Verdadero
•(a>=25) Y (a<=35) Falso
•(a=20) O (b=5) 0 (c=4) Verdadero
•(a=20) O ((b=6) O (c=4)) Verdadero
•((b>4 Y a<25) O (c>10)) Y (a%3=7) Falso
IESP San Ignacio de Monterrico

4.4.Ejemplos

Dado a=20; b=5; c=4;


•((b>4 Y a<25) O (c>10)) Y (a%3=7)
((True Y True) O (False)) Y (2=7)
(True O False) Y (False)
True Y False
False
IESP San Ignacio de Monterrico

5.Métodologia para la descomposición de


Algoritmo
Una metodología es un conjunto de métodos utilizados para la investigación
científica, en este paradigma, la metodología es la que permite diseñar los
algoritmos que servirán para resolver los problemas específicos.

Definición del problema Análisis Diseño Verificación


IESP San Ignacio de Monterrico

5.1.Definición del Problema

Este paso de la metodología debemos plantearnos la pregunta ¿Cuál es el


problema en concreto?, visualizar la delimitación del problema, ¿Hasta
dónde abarcará la solución del problema?
IESP San Ignacio de Monterrico

5.2. Análisis

Esta fase tiene el objetivo de dividir el problema en sus componentes y


examinar de qué manera pueden unirse. Para ello debes hacerte las
preguntas correctas.
Datos de Entrada

Proceso

Salida
IESP San Ignacio de Monterrico

5.2. Análisis

Se sugiere la construir la siguiente tabla :


IESP San Ignacio de Monterrico

5.3. Diseño

Indicar los pasos que deberá seguir el algoritmo para obtener la solución
del problema. Para ello se podrá utilizar las herramientas como los
diagramas de flujo, pseudocódigo
PseudoCódigo

Diagrama de Flujo
IESP San Ignacio de Monterrico

5.4.Verificación

Es la fase que nos permite saber si el algoritmo cumplió o no su objetivo,


para realizar la comprobación se le dan variables de entrada al algoritmo y
se observan los resultados que arroja. Si en caso no cumpliese el objetivo
se tendrá que regresar a la primera fase de definición del problema.
IESP San Ignacio de Monterrico

Ejemplo N#1
Se requiere de un algoritmo que calcule el sueldo semanal o mensual de un trabajador de construcción, al
empleado le pagan 50 soles la hora y cada día trabaja durante 8 horas

1.Definición del Problema


Nombre del Problema Sueldo de un trabajador
Obtener el sueldo semanal o mensual a partir del pago por horas y el número
Delimitación
de horas trabajadas
Resultado deseado Sueldo semanal del trabajador
2.Analisis
Datos de entrada Proceso Salida
(¿Qué necesito para resolver el (¿Qué pasos son necesarios para (¿Qué se obtiene al resolver el
problema) resolver el problema?) problema)
•Pago por hora
Sueldo = (Pago por hora*Número de
•Número de horas trabajadas en un
horas trabajadas en un día)*Número Sueldo Semanal
día
de días trabajados
•Número de días trabajados
IESP San Ignacio de Monterrico

Ejemplo N#1

3.Diseño PseudoCódigo

Algoritmo Calcular_Sueldo
Inicio
Variables Sueldo,NumDiasTrab Como Entero

Leer NumDiasTrab
Sueldo = (50*8)*NumDiasTrab
Escribir Sueldo
Fin

Diagrama de Flujo
IESP San Ignacio de Monterrico

Ejemplo N#1

4.Verificación
Variables de entrada Operaciones Realizadas Resultado Obtenido
NumDiasTrab=5 Sueldo = (50*8)*5 Sueldo =2000

NumDiasTrab=7 Sueldo = (50*8)*7 Sueldo =2800


IESP San Ignacio de Monterrico

Ejemplo N#2

Se necesita conocer la cantidad de horas, minutos y segundos que existen una cantidad determinada de
Días.
1.Definición del Problema
Nombre del Problema Calcular las Horas, Minutos y Segundas
Obtener la cantidad de horas, minutos y segundos a partir de
Delimitación
cantidad de días dado.
Resultado deseado Horas, Minutos y Segundos

2.Analisis Datos de entrada Proceso Salida


(¿Qué necesito para resolver el (¿Qué pasos son necesarios (¿Qué se obtiene al resolver el
problema) para resolver el problema?) problema)

CantH=Dias*24
Dias CantM=Dias*24*60 CantH, CantM,CantS
CantS=Dias*24*60*60
IESP San Ignacio de Monterrico

Ejemplo N#2

3.Diseño PseudoCódigo

Algoritmo Convertir_Horas_Minutos_Segundos
Inicio

Definir Dias, CantH, CantM, CantS Como Enteros


Leer Dias
CantH=Dias*24
CantM=Dias*24*60
CantS=Dias*24*60*60
Escribir CantH, CantM, CantS
Fin
Diagrama de Flujo
IESP San Ignacio de Monterrico

Ejemplo

4.Verificación
Variables de entrada Operaciones Realizadas Resultado Obtenido
Dias=5 CantH=5*24 Horas : 120
CantM=5*24*60 Minutos : 7200
CantS=5*24*60*60 Segundos : 432000

Dias=7 CantH=7*24 Horas : 168


CantM=7*24*60 Minutos : 10080
CantS=7*24*60*60 Segundos : 604800
Muchas gracias !!!

Instructor : Italo Alexander Morales Zamora

También podría gustarte