14 deber2 funciones listas

Upload: javier-mejia

Post on 19-Feb-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/23/2019 14 Deber2 Funciones Listas

    1/2

    Deber 2 de Fundamentos de Programacin

    Realizar los siguientes ejercicios en Python, aplicando los conocimientos adquiridosdurante las clases y los que usted investigue.

    Para cada ejercicio debe realizar por lo menos un script de Python donde debe colocarla/las funciones, es decir, crear su propio mdulo, el cual ser llamado desde elprograma principal con import.

    1. El International Standard Book Number , abreviado ISBN, es unidentificador nico para libros, previsto para uso comercial.El ISBN est compuesto de 13 dgitos y consiste de 5 partes:

    1. La industria. (978 identifica la publicacin de un libro)2. El cdigo de pas o lengua de origen.3. El cdigo del editor. (Asignado por la agencia nacional

    del ISBN)4. El nmero del libro. (Asignado por el editor)5. El dgito verificador.

    Implemente:

    a) La funcin ISBN (cdigo, A)que recibe el nmero ISBN de 13 dgitos (cdigo) y una listaA vaca de tamao 13. El procedimiento llena la lista A con el ISBN, y la retorna.

    b) La funcin ISBNValido (A)que recibe una lista A con el ISBN y retorna verdadero si eldgito verificador es vlido, de lo contrario retorna falso.

    c)

    Un programa completo que realice la validacin de un ISBN, utilizando las funcionessolicitadas.

    El clculo del dgito verificador empieza con los primeros 12 dgitos del ISBN:

    1.

    Cada dgito de izquierda a derecha es multiplicado alternadamente por 1 3.

    2.

    Se suman estos nuevos dgitos entre s, en el ejemplo:suma = 9+21+8 +9+1+18+1+12+8+12+1+0= 100

    3. Se obtiene el residuo de dividir esta suma por 10, en el ejemplo residuo es 0.

    4. Se calcula resultado, el cual es 10residuo, en el ejemplo resultado es 10.

    5. Finalmente se obtiene el verificador. Si resultado es 10 el dgito verificador es 0, caso

    contrario verificador es resultado. En el ejemplo el dgito verificador que se obtiene es 0.

  • 7/23/2019 14 Deber2 Funciones Listas

    2/2

    2. Una compaa desea implementar la simulacin de una carrera de dos caballos. La pista decarrera tiene un tamao constante de 50 casillas y se rige de acuerdo a las siguientes reglas:

    La pista tiene casillas que representan tres tipos de terreno: llano (0), con obstculo (-1) y

    con premio (1). Antes de iniciar la carrera la pista deber ser llenada aleatoriamente con 2 casillas distintas

    con premio, 2 casillas distintas con obstculos y el resto de casillas con terreno llano. Al iniciar el juego el caballo 1 y el caballo 2 se encuentran al inicio de la pista.

    Los caballos se mueven por turnos. En cada turno: se deber generar un nmero aleatorio entre 1 y 5 que representa el

    nmero de casillas que el caballo deber moverse. Si el caballo cae en una casilla con premio avanzar dos posiciones ms. Si el caballo cae en una casilla con obstculo retroceder tres posiciones. Si el caballo cae en una casilla ocupada (por el otro caballo) su posicin final ser una

    casilla menos de la posicin generada. En cada turno se debe mostrar la posicin inicial y la posicin final del caballo.

    El juego termina cuando uno de los caballos pasa la ltima casilla de la pista (meta). Al final del juego se muestra por pantalla el nmero de turnos jugados y el caballo

    ganador.

    a)

    Escriba el procedimiento llenarPista (pista)el cual llena la lista pistacon valores 0, -1 y1, de acuerdo al segundo punto de las reglas del juego.

    b) Implemente el programa completo que desarrolle el juego y utilice el procedimientollenarPista

    3.Avance del proyecto

    a)

    Implementar el funcionamiento completode las opciones del men del proyecto

    b) Implementar lo solicitado en el archivo del proyecto, hasta cumplir mnimo las siguientesespecificaciones, en la opcinNuevo Juegodel men:

    Al inicio, en pantalla se muestran los nmeros del 1 al 12 que representan las opciones

    para el jugador.

    El jugador debe escoger dos posiciones en cada oportunidad.

    En las posiciones seleccionadas, se giran los nmeros, y en su lugar se mostrar el

    nombre o la figura que representa cada uno, durante 5 segundos.

    Si las figuras coinciden, se quedan en el tablero; caso contrario se vuelven a girar y

    quedan los nmeros originales.

    NOTA: A pesar de que el proyecto es en grupo, TODOS los integrantes deben enviar este avancecomo respuesta a la presente tarea.