17
INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

Embed Size (px)

Citation preview

Page 1: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

INVESTIGACIÓN

Melissa Cerezo 10085Laura Solórzano 10030

Page 2: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030
Page 3: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

¿CUÁL ES LA META?

Hacer que Reeborg pueda recoger y ordenar beepers en cualquier

mundo que se le ponga.

Page 4: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

¿CUÁLES SON LOS DATOS?

Se puede definir, para no ser repetitivo. Se puede utilizar def, if, else o while. Reeborg puede recoger y dejar beepers. Reeborg puede ser adaptado para funcionar

en cualquier mundo Puede haber más de un Reeborg. Se puede cambiar de color Reeborg al igual

que su rastro. Se pueden agregar notas utilizando # para

que una persona entienda que es lo que se esta haciendo.

Page 5: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

Las ordenes que ya estan definidas por RUR PLE: move() turn_left() put_beeper() pick_beeper() Turn_off() TESTS: Front_is_clear() Left_is_clear() Right_is_clear() Facing_north() Carries_beepers() On_beeper() # equivalent to: next_to_a_beeper. repeat(function, numer_of_times)

Page 6: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

¿CUÁLES SON LAS CONDICIONES?

Reeborg solo puede cruzar a la izquierda. Reeborg no se puede chocar con paredes. Debe de recoger y ordenar todos los beepers. Reeborg solo sigue ordenes que estén definidas y

tengan paréntesis al final. Por ejemplo: move() turn_left()

Para definir algo se tiene que poner def al inicio seguido del nombre de lo que se quiere definir y por ultimo un parentesis y 2 puntos, luego se debe presionar enter y poner las ordenes para que cada ves que se ponga lo definido se haga lo que se quiere. Por ejemplo: def moving():

repeat(move,5).

Page 7: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

Cada ves que se ponga moving() Reeborg se moverá 5 veces.

Siempre se debe de apagar a Reeborg, para que ahorre energía.

Page 8: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

¿CUÁL ES EL PROCEDIMIENTO?

Se deben de definir varias acciones para que Reeborg pueda recoger y ordenar beepers en cualquier mundo.

Page 9: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030
Page 10: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

¿CÓMO SE LLEVO ACABO LA SOLUCIÓN?

La solución se llevo acabo por medio de: De primero Reeborg recorre todo el mundo,

en el que recoge cualquier beeper que este presente.

Evita paredes por medio de la funcion jump_hurdle .

Por ultimo los ordena conforme se le pida.

Page 11: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

DESCRIPCIÓN DE LA SOLUCIÓN DEL PROBLEMA

El robot debía de recoger todos los beepers que encontraba y luego tratar de ordenarlos de la forma que se le pedía.

Para esto se definieron funciones para que el robot pudiera recoger los beepers sin importar que existieran paredes u obstáculos que se lo impidieran.

Dichas funciones ayudan ha hacer el trabajo que se le pide de manera más óptima.

Page 12: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

FUNCIONES DESARROLLADA POR EL PROGRAMADOR

Utilizamos las siguientes acciones definidas: def turn_right(): debido a que el robot no puede

cruzar a la derecha esta se define. def look_up(): esta se utiliza para que el robot mire

hacia arriba def walk(): si el frente esta libre, le indica al reeborg

que se mueva. def move_right(): para que Reeborg cruse a la

derecha, se mueva, cruse de nuevo a la derecha, se mueva si esta libre el frente y que se quede viendo hacia arriba.

def move_left(): cuando reeborg llega a la otra esquina mientras recorre todo el mundo debe de girar a la izquirda, moverse y volver a girar hacia la derecha, si esta libre debe seguir moviendose.

Page 13: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

def left2(): debe cruzar a la derecha, caminar si esta libre el frente y quedarse viendo hacia el norte.

def movement(): Reeborg, se mueve utilizando lo definido move_left() y left2()

def move_up(): reeborg cruza a la izquierda y camina si esta libre el frente, luego cruza a la derecha y se mueve.

def zigzag(): consiste en que reeborg cruza ala derecha, se mueve un espacio y 8 espacios mas, luego cruza hacia la izquierda y se mueve.

def zigzag_move(): esta definido por move_up() y zigzag()

def all(): se repite el zigzag 4 veces, luego se mueve reeborg hacia arriba, luego se va hacia la derecha. Se mueve 1 ves y 8 mas, por ultimo cruza a la derecha denuevo.

def picking(): si Reeborg se encuentra encima de un beeper lo recoge.

def jump_hurdle(): Reeborg salta cualquier pared que se le presente.

Page 14: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030
Page 15: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

Se aprendió como programar a un robot utilizando RUR PLE.

Este proyecto nos beneficio debido que aprendimos aplicar lo aprendido en clase (los algoritmos sobre programación, preguntas insustituibles, mientras, si, fin, etc).

Page 16: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030
Page 17: INVESTIGACIÓN Melissa Cerezo 10085 Laura Solórzano 10030

BIBLIOGRAFÍA Y CITAS

RUR PLE lessons Notas sobre algoritmos y programación

dadas en clase.