Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4...

38
1 Teoría Nº 4 üConceptos Básicos de Algoritmia üEstructuras de Control üDiagrama de Flujo üDatos Primer Cuatrimestre 2021

Transcript of Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4...

Page 1: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

1

Teoría Nº 4

ü Conceptos Básicos de Algoritmia

ü Estructuras de Control

ü Diagrama de Flujo

ü Datos

Primer Cuatrimestre 2021

Page 2: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

2

Una computadora es, esencialmente, una HERRAMIENTA.

Una herramienta sirve para operar la conversión de una materia prima en un producto mediante un dispositivo que desarrolla un proceso; el proceso a su vez, lo determina una persona.

Conceptos Previos de Algoritmia

• materia prima

• producto

• dispositivo

• proceso

datos

información

componentes de la computadora

PROBLEMA

PROBLEMA RESUELTO

?

Analogía

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 3: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

3

Conceptos Previos de Algoritmia

• Escribir un guión

• Elegir el director

• Buscar los actores

• Buscar los expertos

• Rodar la película

Analogía

Hacerunapelícula Hacerunprogramaparacomputadora

• Escribir un guión

Entrada Salida

Proceso

Algoritmo

Programa Selección del Lenguaje de Programación

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 4: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

4

Conceptos Previos de Algoritmia Algortimo

Algoritmo (del árabe al-Khowârizmî sobrenombre del célebre matemático árabe Mohámed ben Musa) según la Real Academia Española (http://www.rae.es/):

•  Conjunto ordenado y finito de operaciones que permite hallar la solución a un problema.

•  Método y notación en las distintas formas del cálculo.

Entérminosllanos,unAlgoritmoesunasucesióndeinstruccionesopasosquepermitenresolverunproblema.

Un Programa es la especificación de un algoritmo en un lenguaje deprogramaciónparaquepuedaserejecutadoporunprocesador

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 5: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

5

Conceptos Previos de Algoritmia Algortimo

Algoritmo (del árabe al-Khowârizmî sobrenombre del célebre matemático árabe Mohámed ben Musa) según la Real Academia Española (http://www.rae.es/):

•  Conjunto ordenado y finito de operaciones que permite hallar la solución a un problema.

•  Método y notación en las distintas formas del cálculo.

Entérminosllanos,unAlgoritmoesunasucesióndeinstruccionesopasosquepermitenresolverunproblema.

Un Programa es la especificación de un algoritmo en un lenguaje deprogramaciónparaquepuedaserejecutadoporunprocesador

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 6: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

6

Conceptos Previos de Algoritmia ParadigmasdeProgramación

Los lenguajes de programación proporcionan un modelo abstracto de lacomputadoraque lepermitenal programador concentrarse en el diseñode losalgoritmos independientemente de las características de la arquitectura de lacomputadora.

Sehandesarrolladovariosparadigmasdeprogramaciónqueofrecendiferentesmodelospara visualizar qué es unproblemay cómo representar el procesodesoluciónatravésdeunprograma.

De acuerdo al paradigma seleccionado, el programador modifica suconceptualizacióndelosproblemasaresolver,delosresultadosesperadosydelosposiblesalgoritmos.

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 7: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

7

Conceptos Previos de Algoritmia ParadigmasdeProgramación

• Programación Estructurada

• Programación Orientada a Objetos

• Programación Lógica

• Programación Funcional

• Programación Orientada a eventos

• Programación a aspectos

• Programación Concurrente

Estructuras de Control

Secuencia

Repetición

Selección

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 8: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

8

Conceptos Previos de Algoritmia EstructurasdeControl

•  Secuencia

Instrucciones ordenadas en una sucesión, es decir, después de ejecutar la acción n se continua con la acción n+1

•  Selección (Condicional)

Permite o impide la ejecución de instrucciones según el valor que se obtiene al evaluar una condición

•  Repetición (Iteración)

Permite ejecutar instrucciones repetidamente dependiendo del valor de una condición que se evalúa también repetidamente.

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 9: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

9

Conceptos Previos de Algoritmia EstructurasdeControl-Ejemplo

Escriba la primer nota (A) Escriba la segunda nota (B)

Escriba la tercer nota (C)

•  Hacer un algoritmo que calcule el promedio de 3 notas de un alumno

Sumar A, B y C (SUMAR) Dividir al resultado SUMAR por 3 (PROMEDIO) •  Modificar el algoritmo de manera

tal que informe si aprueba o no Si PROMEDIO es mayor o igual que 7 entonces

Informar “APRUEBA” •  Modificar el algoritmo de manera

tal que, para cada uno de los alumnos del curso, calcule el promedio e informe si aprueba.

Mientras haya alumno del curso a quien considerar

Repita desde “Mientras” Sino Informar “NO APRUEBA”

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 10: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

10

Cuando se formula la resolución de un problema, no sólo se expresa el conjunto de tareas a realizar sino que también se define implícitamente un orden en ellas. Dicho orden se puede bosquejar gráficamente y de esta manera abstraerse del detalle de las tareas y concentrarse en el orden en que estas deberían realizarse.

DIAGRAMA DE FLUJO DEL ALGORITMO

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 11: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

11

El diagrama de flujo de un algoritmo muestra gráficamente la estructura de la resolución del problema.

Estructura que adquieren el conjunto de tareas o acciones a realizar para la resolución de un problema.

ESTRUCTURAS DE CONTROL

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 12: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

12

AKKleasigno2

IngresounvalorenI

APP[K]leasignoI

AIleasigno15

I<=20

MuestrePP[I]

AIleasignoI+2

V

F

C

F

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 13: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

13

Tipos de estructuras de Control

4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben, es decir primero una, luego otra desde la primera hasta la última (o de arriba hacia abajo).

Gráfica asociada:

tarea i

tarea i+1

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 14: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

14

4 Condicional: las tareas (acciones) se realizaran dependiendo de cierta situación, estado previo o condición que se debe cumplir.

Gráfica asociada:

tarea i tarea j

? F V

Tipos de estructuras de Control

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 15: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

15

4 Repetición (Iteración): una tarea o conjunto de tareas (acciones) se deben realizar en forma repetitiva.

tarea i

? V

F

Gráfica asociada:

Tipos de estructuras de Control

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 16: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

16

Ejemplo: Dibujar la figura.

Dibujar la base, que es un rectángulo.

Dibujar el poste, que es una línea.

Dibujar el farol, que es un rombo.

C

F

Algoritmo: t1 - Dibujar la base, que es un rectángulo. t2 - Dibujar el poste, que es una línea. t3 - Dibujar el farol, que es un rombo.

Tipos de estructuras de Control

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 17: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

17

t1 - Repetir 2 veces, (t111 - t112 - t121 - t122). t211 - Girar a la derecha 90 grados. t212 - Avanzar 20 pasos. t213 - Girar a la izquierda 90 grados. t22 - Avanzar 30 pasos. t31 - Dibujar el borde inf. derecho del rombo. t32 - Dibujar el borde sup. derecho del rombo. t33 - Dibujar el borde sup. izquierdo del rombo. t34 - Dibujar el borde inf. izquierdo del rombo.

Algoritmo:

Repetir 2 veces, (t111 - t112 - t121 - t122).

Girar a la derecha 90 grados.

C

F

Avanzar 20 pasos.

Girar a la izquierda 90 grados.

Avanzar 30 pasos.

Dibujar el borde inf. derecho del rombo.

Dibujar el borde inf. izq. del rombo.

Dibujar el borde sup. izq. del rombo.

Dibujar el borde sup. derecho del rombo.

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 18: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

18

t1 - Repetir 2 veces, (t111 - t112 - t121 - t122). t211 - Girar a la derecha 90 grados. t212 - Avanzar 20 pasos. t213 - Girar a la izquierda 90 grados. t22 - Avanzar 30 pasos. t31 - Dibujar el borde inf. derecho del rombo. t32 - Dibujar el borde sup. derecho del rombo. t33 - Dibujar el borde sup. izquierdo del rombo. t34 - Dibujar el borde inf. izquierdo del rombo.

Versión 4:

Diagrama de Flujo C

t111

2 V

F

t112

t121

t122

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 19: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

19

Ejemplo: Dados cuatro números A,B,C y D determinar cual es el mayor de ellos e informarlo. Algoritmo t1 - Si A es mayor que B, C y D, informar A. t2 - Si B es mayor que A, C y D, informar B. t3 - Si C es mayor que A,B y D, informar C. t4 - Si D es mayor que A,B y C, informar D.

Si A es mayor que B, C y D, informar A.

Si B es mayor que A,C y D, informar B.

C

F

Si C es mayor que A,B y D, informar C.

Si D es mayor que A,B y C, informar D.

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 20: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

20

informar A A > (B,C y D)

C

B > (A,C y D) informar B

F

V F

V F

C > (A,B y D) informar C

V F

D > (A,B y C) informar D

V F

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Esta solución se podría mejorar

Inconveniente: Si A es el valor mayor, luego de informarlo, el algoritmo obliga a evaluar las 3 condiciones siguientes.

Page 21: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

21

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

informar A A > (B,C y D)

C

B > (A,C y D) informar B

F

V F

V F

C > (A,B y D) informar C

V F

D > (A,B y C) informar D

V F

Page 22: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

Definiciones asociadas: Enunciado: descripción del trabajo a realizar. Procesador: Computadora Ambiente: los objetos del universo del problema.

22

Algoritmos Computacionales

Cómo son esos objetos? Cuáles son esos objetos?

Objetos capaces de almacenar datos propios de la computadora

los objetos

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 23: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

23

Suponemos que los objetos son contenedores de datos, por ejemplo CAJAS Como puedo pretender trabajar con varios de estos objetos (cajas)

Es necesario, distinguirlos unos de otros, identificarlos unívocamente, o lo que es lo mismo asignarles un Nombre o Identificador.

pepe juan casa estrella Todos ellos van a contener datos propios de una computadora, en principio números o letras.

estrella 123

estrella oso

Datos

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 24: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

24

Restricción: Solamente podrán contener información de un solo tipo. estrella estrella 123 oso

estrella estrella 123 oso

CATEGORIZAR LOS OBJETOS

pepe juan

Objetos que almacenan números

casa

estrella

Objetos que almacenan letras o caracteres

Datos

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 25: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

25

reales

Datos

numéricos

caracteres

lógica

enteros

Objetos que almacenan valores lógicos

pepe juan

Objetos que almacenan enteros casa estrella

Objetos que almacenan caracteres

Objetos que almacenan reales jose luis tomas lucas

Datos

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 26: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

26

Debido a que una computadora procesa datos, (datos categorizados como entero, real, carácter o lógico) es altamente probable que ese procesamiento implica que los datos, que se le entregue a la entrada, deban ser modificados para poder entregar un resultado.

La datos almacenados en los objetos (contenedores) puede variar, es decir, los objetos van a variar su contenido durante el proceso de resolución de un problema.

VARIABLES DE INFORMACIÓN A los objetos se los denomina:

Datos

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 27: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

27

Variables Ensíntesis

Variable

Atributos Nombre

Tipo de Datos

Funcionalidad

Almacena un dato temporalmente

Es posible cambiar su contenido durante el ciclo de vida de un proceso

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 28: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

28

Ejemplo Nº 1: Procesador: computadora.

Variables

Ambiente: ¿Variables?

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Escriba la primer nota (A) Escriba la segunda nota (B)

Escriba la tercer nota (C) Sumar A, B y C (SUMAR) Dividir al resultado SUMAR por 3 (PROMEDIO)

Si PROMEDIO es mayor o igual que 7 entonces Informar “APRUEBA”

Mientras haya alumno del curso a quien considerar

Repita desde “Mientras” Sino Informar “NO APRUEBA”

Page 29: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

29

Ejemplo Nº 2: Enunciado: Realice un algoritmo que calcule la suma de los 15 primeros números naturales. Procesador: computadora.

Variables

Ambiente: ¿Variables?

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

1+2+3+4+5+6+…+12+13+14+15

Page 30: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

30

Ejemplo Nº 3: Enunciado: dados dos números enteros positivos, digamos m y n, encontrar el algoritmo que determine la potencia n-ésima de m. Con n > 1. Procesador: computadora. Acciones primitivas:

4 Dar un valor a un objeto. 4 Calcular la suma de dos números. 4 Calcular el producto de dos números. 4 conjunto repetitivo de acciones expresado:

Mientras <condición> Hacer <acciones-primitivas> Repetir.

Variables

Ambiente: ¿Variables?

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 31: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

31

Análisis del problema:

•  Si se tiene que m representa el valor 4 y n representa el valor 3, entonces se calcula: 43 = 4 x 4 x 4 = 64. •  Si se tiene que m representa el valor 2 y n representa el valor 6, entonces se calcula: 26 = 2 x 2 x 2 x 2 x 2 x 2 = 64.

Generalizando

mn = m x m x … x m

Variables

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 32: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

(mn-1 x m)

(mn-2 x m)

(mn-3 x m)

(m2 x m) (m x m)

n veces se repite m

•  Cuantas veces se realizó la operación? •  Cada operación es igual a la anterior?

Si mn = m x m x … x m

mn =

Variables

32 UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 33: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

33

8 x 82

8 8 x 81

83 = 8 x 8 x 8

Número a multiplicar (base de la potencia)

Cálculo previo a ser reutilizado

Número de veces que se realizó la multiplicación

Realizar: 83

2

83

3 índice de la potencia

Variables

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 34: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

34

Determinación de las variables que contienen información necesaria: 1- objeto conteniendo el entero positivo al cual se le

calcula la potencia (base de la potencia).

2- objeto conteniendo el entero positivo que indica la potencia (exponente de la potencia).

3- objeto que determine cuantas multiplicaciones se deben realizar. 4- objeto que mantenga los cálculos previos para poder

realizar los nuevos cálculos.

Ambiente: 4 variables

Variables

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 35: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

Versión 2: t1 - Determinar nombres y tipos de las variables. t2 - Dar valores iniciales a las variables. t31 - Comenzar con el entero 1. t32 - Para todo entero positivo menor que el valor indicado como índice, multiplicar el número dado por el resultado anterior.

35

Algoritmo: (Solución en Lenguaje de Problemas) Versión 1:

t1 - Determinar nombres y tipos de las variables. t2 - Dar valores iniciales a las variables. t3 - Contando desde 1, multiplico el entero por la potencia anterior, tantas veces como lo indica el índice de la potencia.

Variables

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 36: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

36

Determinar nombres y tipos a las variables.

Dar valores iniciales a las variables.

C

tomar el número y multiplicarlo por el resultado anterior. .

F

entero < índice pot.

Comenzar con el entero 1.

Tomar un nuevo entero.

V F

Diagrama de Flujo

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 37: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

37

1 - Variable con el valor de la base (NUMERO) 2 - Variable con el valor del índice (POTENCIA) 3 - Variable conteniendo el entero que indica las veces que se debe multiplicar (VECES). 4- Variable que que guarda cálculos previos (PREVIO)

Variables

UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación

Page 38: Teoría Nº 4 - UNSLdirinfo.unsl.edu.ar/.../a8ee4-tr4-algoritmia-1c-2021.pdf · 2021. 4. 23. · 4 Secuencial: las tareas (acciones) se deben realizar en el orden en que se escriben,

38 UNSL - Fund. de la Informática -Int. a la Computación - Int.a la Programación – Res. De Problemas y Algortimos