Tarea1

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Tarea1 as PDF for free.

More details

  • Words: 1,221
  • Pages: 5
Introducci´ on a la Computaci´ on ING1310 2/2006 Tarea 1 Profesores: Vanny Smith y Ricardo Zilleruelo. Auxiliares: Francisco Claude y Daniel P´erez Fecha de entrega: 14/09/06

Primera parte: El Ahorcado. Para esta pregunta usted deber´a hacer un programa que juegue al juego del “Ahorcado” con el usuario. En el juego del ahorcado hay dos jugadores y se juega de la siguiente forma: - El primer jugador (en este caso el programa) escoge una palabra y le dice al segundo jugador (el usuario) que debe adivinar una palabra de n letras. Por ejemplo si la palabra es camaron, al segundo jugador se le muestra: _ _ _ _ _ _ _ - El segundo jugador tiene 2·n oportunidades para adivinar la palabra. Por cada oportunidad se le pregunta al segundo jugador si desea adivinar la palabra o si desea adivinar una letra. Independiente de la opci´on que elija, el jugador pierde una oportunidad. - Si el segundo jugador desea adivinar la palabra, se le pregunta por la palabra, si adivina gana el juego. Si no adivina y todav´ıa le quedan oportunidades se le vuelve a preguntar si desea adivinar una palabra o una letra. - Si el segundo jugador desea adivinar una letra, se le pregunta por la letra, si esta se encuentra en la palabra se le muestra en que posiciones de la palabra est´a la letra. Por ejemplo, si el segundo jugador dice a, se le muestra: _ a _ a _ _ _ 1

Si al jugador todav´ıa le quedan oportunidades se le vuelve a preguntar si desea adivinar una palabra o una letra. El juego termina cuando cualquiera de las siguientes condiciones se cumple: 1. El jugador agota todas las oportunidades. 2. El jugador adivina la palabra. 3. El jugador adivina todas las letras de la palabra. Por ejemplo, supongamos que al jugador le quedan tres oportunidades y ya tiene: _ a m a r o n Si el jugador decide adivinar una letra y escoge la letra c se acaba el juego pues completa la palabra. Escriba un programa llamado Ahorcado que represente al primer jugador. Las especificaciones para este programa son: 1. La palabra que se usar´a para el juego la proveer´a el m´etodo obtienePalabra() de la clase Util (esta clase esta en el Sitio Web del curso). Este m´etodo retorna una palabra al azar. 2. Si el jugador gana se le debe decir que gan´o y mostrar una figura adecuada, por ejemplo puede ser una carita feliz hecha con alg´ un car´acter. Para la impresi´on de la figura debe implementar un m´etodo llamado ImprimeGanador() que lo u ´nico que hace es imprimir en pantalla la figura que usted elija. Por lo tanto el encabezado del m´etodo debe ser: public static void ImprimeGanador() 3. Si al jugador se le acaban las oportunidades le debe decir que perdi´o y debe mostrar una figura adecuada, por ejemplo puede ser la t´ıpica figura del ahorcado hecha con caracteres. Para la impresi´on de la figura debe implementar un m´etodo llamado ImprimePerdedor() que lo u ´nico que hace es imprimir en pantalla la figura que usted elija. Por lo tanto el encabezado del m´etodo debe ser: public static void ImprimePerdedor() 4. Cada vez que el jugador trata de adivinar una palabra o una letra se le deben decir cuantas oportunidades le quedan. 5. Para adivinar una palabra el jugador debe ingresar 1 y para adivinar una letra 2. Aqu´ı hay un ejemplo de c´omo su programa debe funcionar (no incluye la figura): 2

Debe adivinar una palabra de 9 letras _ _ _ _ _ _ _ _ _ Usted tiene 18 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra a Dada la letra que ingreso le podemos dar _ _ _ _ _ _ _ _ _ Le quedan 17 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra e Dada la letra que ingreso le podemos dar _ _ _ _ _ _ _ e _ Le quedan 16 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra i Dada la letra que ingreso le podemos dar _ _ _ _ i _ _ e _ Le quedan 15 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra o Dada la letra que ingreso le podemos dar _ _ _ _ i o _ e _ Le quedan 14 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra u Dada la letra que ingreso le podemos dar _ u _ _ i o _ e _ Le quedan 13 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra c Dada la letra que ingreso le podemos dar _ u _ c i o _ e _ Le quedan 12 oportunidades

una letra(2)?

las siguientes pistas

una letra(2)?

las siguientes pistas

una letra(2)?

las siguientes pistas

una letra(2)?

las siguientes pistas

una letra(2)?

las siguientes pistas

una letra(2)?

las siguientes pistas

3

Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra s Dada la letra que ingreso le podemos dar _ u _ c i o _ e s Le quedan 11 oportunidades Desea adivinar la palabra (1) o adivinar 2 Ingrese una letra n Dada la letra que ingreso le podemos dar _ u n c i o n e s Le quedan 10 oportunidades Desea adivinar la palabra (1) o adivinar 1 Cual cree usted que es la palabra? funciones GANO!!!!!

una letra(2)?

las siguientes pistas

una letra(2)?

las siguientes pistas

una letra(2)?

Segunda parte: Similitud de vectores. 1. En esta parte se pide que escriba la clase SimilitudVectores, que tiene como objetivo proveer un conjunto de funciones para determinar la similitud entre vectores. Dentro de la clase SimilitudVectores usted debe implementar los siguientes m´etodos: static public double producto punto(double[] v1, double[] v2): Este m´etodo debe calcular el producto punto entre los vectores v1 y v2. < v1, v2 >=

n X

xi · y i

i=1

Donde xi es la componente i-´esima del vector v1 e yi es la componente i-´esima del vector v2. static public double norma(double[] v): Este m´etodo debe calcular la norma del vector v. kvk =



< v, v >

static public double coseno(double[] v1, double[] v2): Este m´etodo debe calcular el coseno entre los vectores v1 y v2. coseno(v1, v2) =

4

< v1, v2 > kv1k · kv2k

Note que los m´etodos se pueden escribir usando los anteriores. Se pide que aproveche eso para ahorrar trabajo y hacer un programa m´as legible. 2. Escriba un programa llamado Tarea1b que genere un conjunto de vectores con valores aleatorios entre (-1,1). Luego su programa debe imprimir la similitud entre todos los pares posibles de vectores. Como medida de similitud debe usar la funci´on coseno definda en la clase de la parte anterior. Su programa deber´a preguntar por el numero de vectores a crear y su dimensi´on. Ejemplo de como su programa debe funcionar: (huemul:~/Desktop/Tarea1) rzilleru% java Tarea1b numero de vectores? 4 dimension? 100 Sim(v0,v1): 0.10160542092528488 Sim(v0,v2): -0.07162425946623514 Sim(v0,v3): -0.0120584226031247 Sim(v1,v2): -0.03781158026074955 Sim(v1,v3): -0.0977656133598262 Sim(v2,v3): 0.014507254236147038 (huemul:~/Desktop/Tarea1) rzilleru% Nota. Su programa como m´ınimo debe compilar y respetar los nombres de clases y m´etodos definidos en el enunciado. Recuerde que es case sensetive. De no ser as´ı su tarea tendr´a nota 1.0.

5

Related Documents

Tarea1
November 2019 23
Tarea1
May 2020 15
Tarea1
May 2020 20
Tarea1
November 2019 20
Tarea1.docx
April 2020 4
Vise2 Tarea1
April 2020 5