ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Proyecto final. Análisis de Algoritmos


Enviado por   •  10 de Diciembre de 2018  •  Tareas  •  2.754 Palabras (12 Páginas)  •  547 Visitas

Página 1 de 12

PROYECTO FINAL.

Nicolás Román Valenzuela.

Análisis de Algoritmos.

Instituto IACC.

Santiago, 17 de noviembre de 2018.


INTRODUCCIÓN

En este ramo se ha logrado revisará diferentes conjuntos de algoritmos y las estructuras de datos que entregar diferentes tipos de soluciones con otros algoritmos y estructuras y otros datos, para diversos problemas. Dado que muchos de estos algoritmos y estructuras existen dentro de las bibliotecas de desarrollo de los diversos lenguajes, A conocer el diferente proceder y procesamiento de ellos.


DESARROLLO

Instrucciones: Lea el siguiente caso y en base a los contenidos abordados en el curso, realice las acciones solicitadas.

  1. Suponga que está cocinando un queque, haga el diagrama de flujo para la receta de cocina.
  • Entrada: Ingredientes utilizados para crear un queque.
  • Proceso: Producción desde una receta de cocina para un queque.
  • Salida: Finiquita la creación de un queque.

Ingredientes

•        1 cucharadas de mantequilla.

•        1 taza de azúcar.

•        2 huevos.

•        ralladura naranja.

•        2 tazas de harina sin polvos de hornear.

•        1 cucharaditas de polvos de hornear.

•        1 yogurt sabor a gusto.

Preparación

  1. Precalentar el horno a 300F máximo.
  2. En una fuente batir la mantequilla y el azúcar hasta que forme una masa, agregar un huevo, con movimientos circulares mezclar, agregar huevo, batir.
  3. 1 taza de harina y polvo de hornear batir 5 veces.
  4. Agregar leche y batir hasta obtener masa.
  5. Agregar la harina restante y mezclar.

  1. Suponga que Ud. es programador experto en del nuevo lenguaje Phlayt v3.0 (Como aclaración, este nombre de lenguaje informático es ficticio) y necesita saber si una función matemática tiene sus paréntesis balanceados (es decir tiene tantos símbolos de abre paréntesis como de cierre paréntesis), lo que es un problema clásico de pilas. Lamentablemente, Phlayt no tiene dentro de sus bibliotecas una implementación de pilas y solo tiene la estructura de datos cola. Implemente, en pseudocódigo, una pila utilizando la estructura de datos cola.

Cree las funciones pop() y push() en términos de encolar() y desencolar().

Notas:

  1. Asuma que encolar() y desencolar() existen.
  2. ii. Solamente preocúpese que haya tantos símbolos “(“como símbolos”)”. No se preocupe si hay expresiones incorrectas como “( 9 + ) -3”.

En pseudocódigo

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

pop(símbolo)

        {

Si símbolo == '('   y contadorParsimbolo ==1

Entonces //verifica condición

        nodo n;

                n<-new nodo();

                n.dato<- símbolo;

                n.siguiente<-null;

                auxiliar.siguiente<-n;

                auxiliar<-n;

FinSi

Si símbolo == ')'   y contadorParsimbolo ==2

Entonces    //verifica condición

        nodo n;

                n<-new nodo();

                n.dato<- símbolo;

                n.siguiente<-null;

                auxiliar.siguiente<-n;

                auxiliar<-n;

FinSi

        }

push(símbolo)

        {

                nodo actual<-primero;

                nodo anterior<-null;

                mientras actual!=null                {

                        Si actual.dato== símbolo Entonces

                                Si actual==primero Entonces //verifica condición

                                        Primero<-primero.siguiente;

                                        nodo segundo;

                                        segundo<-new nodo();

                                        segundo.dato<-actual.dato;

                                        segundo.siguiente<-cabeza;

                                        cabeza<-segundo;

                                Sino

                                        anterior.siguiente<-actual.siguiente;

                                        nodo segundo;

                                        segundo<-new nodo();

                                        segundo.dato<-actual.dato;

                                        segundo.siguiente<-cabeza;

                                        cabeza<-segundo;

                                Finsi

                        Fin mientras

                        Anterior<-actual;

                        Actual<-actual.siguiente;

                }

        }

...

Descargar como (para miembros actualizados)  txt (9.6 Kb)   pdf (305.8 Kb)   docx (1.1 Mb)  
Leer 11 páginas más »
Disponible sólo en Clubensayos.com