Está en la página 1de 22

INGENIERÍA DE SOFTWARE

Algoritmos

Ing. Fabián Constante.


Objetivo

Conocer y aplicar las estructuras algorítmicas


para la solución de problemas informáticos
Bit y Bytes

El bit es un único dígito que


representa 1 ó 0. Es la unidad
mínima de información digital
que puede ser tratada por un
computador, cada byte tiene 8
bits
Tipos de datos

 Ocupan una sola casilla de memoria.


 Hacen referencia a un único valor a la vez.
 Dentro de este grupo de datos se encuentran:
 Enteros (int ): 2 bytes de memoria (16 bits)
 Reales (float): 4 bytes de memoria (32 bits)
 Caracteres (char):1 bytes de memoria (8 bits)
Identificadores

 Las celdas de memoria en donde se guardan los datos, tienen un nombre que
permite su identificación.

 Los datos que no cambian durante la ejecución de un programa se llaman


constantes.

 Los objetos que pueden cambiar su valor durante la ejecución de un programa se


llaman variables.
Variables

Cada variable debe tener:

 Un tamaño de memoria ocupada y un modo de representación


interna.

 Un conjunto de operadores y de tratamientos específicos que


pueden aplicarse a la variable. Si las variables son, por ejemplo,
de tipo lógico, se aplican operadores lógicos; pero, si las
variables son numéricas, se aplican operadores de cálculo
numérico (suma, producto, entre otros).
Operadores

Son símbolos que indican un tipo de operación específica. Pueden ser:

 Aritméticos (^, *, /, +, -, div, mod)

 Relacionales (=, <>,<, >, <=, >=)

 Lógicos (NO, Y, O )
Estos operadores se aplican y ejecutan mediante una jerarquía específica.
Por ejemplo:
 9 + 7 * 8 – 3 6 /5
 A=5 y B =16 -> (A^2)>(B*2)
 ((NOT A) AND B) OR (A AND (NOT B))
Proceso para realizar un algoritmo

 Un algoritmo es una serie de pasos ordenados encaminados a resolver un problema.

 Para establecer esta serie de pasos se requiere de una reflexión previa del problema dada
por el paso anterior (planeación de la solución).
1. Entender el problema: Debemos definir:
 Entrada
 Proceso
 Salida

2. Planteamiento de la lógica de solución


 Escribir el algoritmo: Diagrama de flujo o lenguaje natural
3. Codificación e edición del programa
4. Pruebas y depuración
5. Puesta en producción
6. Mantenimiento.
Estructura de un algoritmo

Finito: característica fundamental de un


algoritmo

Inicio ……. Fin


Estructuras algorítmicas

Asignación

Secuenciales Entrada

Las estructuras de operación de Salida


programas son un grupo de formas de
trabajo, que permiten, mediante la Estructuras
Simples
Condicionales
manipulación de variables, realizar Algorítmicas Múltiples
ciertos procesos específicos que nos
lleven a la solución de problemas. Hacer para

Cíclicas Hacer Mientras

Repetir Hasta
Pseudocódigo

Texto basado en normas técnica que permiten que el


algoritmo sea mas entendible, sobre todo mas fácil de
representar y codificar.

Además permite compartir la solución del problema al resto


del equipo.
Ventajas de utilizar un pseudocódigo

 Ocupa menos espacio en una hoja de papel.


 Permite representar en forma fácil operaciones repetitivas
complejas.

 Es muy fácil pasar de pseudocódigo a un programa en algún


lenguaje de programación.

 Si se siguen las reglas se puede observar claramente los niveles


que tiene cada operación.
Sentencias Algorítmicas en
Pseudocódigo
Sentencias secuenciales

La estructura secuencial es aquella en la que una acción (instrucción) sigue a otra en


secuencia. Las tareas se suceden de tal modo que la salida de una es la entrada de la
siguiente y así sucesivamente hasta el fin del proceso. Una estructura secuencial se
representa de la siguiente forma:

Seudocódigo: Utilizado para expresar de


forma textual un algoritmo

Estructuras
 input
 output
 Proceso, asignación
Ejemplo 1

Razonamiento Algebraico Pruebas

X - Pago Persona1 W a 100, Q a 10


Y – Pago Persona 2 Persona 2 a ( 100 – 10)/2 = 45
Persona 1 a (100 – 10)/2 + 10 = 55
Dos personas trabajan Por lo tanto, sabemos por el (Esto es correcto porque 55 + 45 =
para la misma problema que: 100 y Persona 1 gana 10 dólares más
empresa y tienen un que Persona 2)
salario total X + Y = W.
combinado de W X =Y +Q
dólares, pero una
persona gana Q Resolviendo: W a 31, Q a 2
dólares más que la ( Y + Q) + Y = W Persona 2 a ( 31 – 2)/ 2 = 14,5
otra persona. ¿Cuánto Y = (W - Q)/2 Persona 1 a (31 – 2)/ 2 + 2= 16,5
ganaron cada uno?. X = (W - Q)/2 + Q (Esto es correcto porque 14,5 + 16,5
= 31 y Persona 1 gana 2 dólares más
que Persona 2)
Solución Problema

Dos personas trabajan para la misma empresa y tienen un salario total combinado de W
dólares, pero una persona gana Q dólares más que la otra persona. ¿Cuánto ganaron cada
uno?.

Entrada Proceso Salida

W : Salario Total Y = (W - Q)/2 X: Salario Persona 1


X = (W - Q)/2 + Q Y : Salario Persona 2

Q: Diferencia
Algoritmo – Ejemplo 1

Problema:

Dos personas trabajan para la misma empresa y tienen un salario total combinado de W
dólares, pero una persona gana Q dólares más que la otra persona. ¿Cuánto ganaron cada
uno?.
Solución:
Entrada Proceso Salida
SalarioTotal Y = (W - Q)/2 Salario1: Persona 1
X = (W - Q)/2 + Q Salario2: Persona 2

Diferencia
Pruebas de escritorio
Pruebas de escritorio

Todo algoritmo debe ser probado antes de ser ejecutado con el propósito de que tengamos la
certeza de que se cumple el objetivo.

Prueba de escritorio:

Es la simulación de la puesta en marcha de un algoritmo

Si no cumple logra el
Si cumple logra el objetivo y soluciona el
objetivo y soluciona el problema se debe
problema corregir el algoritmo
Prueba de escritorio
Algoritmo – Ejemplo 1

Solución:

Entrada Proceso Salida


SalarioTotal Y = (W - Q)/2 Salario1: Persona 1
X = (W - Q)/2 + Q Salario2: Persona 2

Diferencia

Prueba de escritorio algoritmo SumaNumeros:


Línea SalarioTotal Diferencia Salario1 Salario2 SALIDA

4 100

5 10

6 45

7 55

8 55

9 45
Ejercicios

Para cada uno de los siguientes ejercicios realizar el pseudocódigo respectivo

1. Un estudiante desea saber cuál será su calificación final en la materia de programación.


Dicha calificación se compone de los siguientes porcentajes:
a. 55% del promedio de sus tres notas parciales
b. 30% de la calificación del examen final
c. 15% de la calificación de un trabajo final.

2. Una tienda ofrece un descuento del 15% sobre el total de la compra y un cliente desea
saber cuanto deberá pagar finalmente por su compra

3. Determinar el área y perímetro de un rectángulo

4. Calcular el nuevo salario de un obrero si obtuvo un incremento del 25% sobre su salario
anterior
Conclusiones

¿Qué aprendimos hoy?

También podría gustarte