3Eva_IIT2018_T1 texto aleatorio

3ra Evaluación II Término 2018-2019. 15-Febrero-2019 /CCPG001

Tema 1. (30 puntos) Asuma que tiene una lista T de Términos. Un Término puede  ser una palabra o un o de los siguientes tres símbolos:
punto (.), coma (,) y guión(-).

Desarrolle un programa que forme un texto usando las siguientes reglas:

  • El texto debe estar compuesto de 73 términos seleccionados aleatoriamente
  • El primer término debe ser una palabra
  • No se puede seleccionar dos símbolos de manera consecutiva. Si eso pasa, seleccione un nuevo término aleatoriamente hasta que sea una palabra.
  • Dos Palabras seguidas deben estar separadas por un espacio.
    Ejemplo: palabra1 palabra2
  • La coma debe estar pegada a la palabra izquierda y separada por un espacio de la palabra a su derecha.
ejemplo palabra1, palabra2
  • El guión debe estar pegado a sus dos palabras.
Ejemplo: palabra1-palabra2
  • El punto debe estar pegado a la palabra de la izquierda y seguido de un salto de línea.
Ejemplo: Palabra 1.

  • No elimine términos de la lista T.

Escriba este texto resultante en un archivo de nombre: literatura.txt

1Eva_IT2015~T3 Juego acumula tesoros

1ra Evaluación I Término 2015-2016. Julio, 2015 /FIEC

Tema 3. (45 puntos) En el juego de tablero acumula-tesoros, dos jugadores atraviezan un corredor de 50 metros de largo. 

En cada turno, un jugador avanza lanzando un dado de 6 caras y avanza las casillas de 1 metro correspondiente.

En la nueva posición debe considerar si debe retroceder considerando la reglas de movimiento:

  • Si la nueva posición no ha sido visitada aún, se queda en la casilla y el jugador puede recoger algún elemento siguiendo las reglas de tesoros.
  • Si la nueva posición ya ha sido visitada por el otro jugador, debe retroceder 10 metros.
  • En caso de retroceder, el jugador puede volver al inicio si su posición es menor de 10 metros. El jugador puede evitar retroceder deshaciéndose de un tesoro de los que haya recogido.

Al llegar a cada casilla o posición, a cada jugador se le asigna aleatoriamente uno de los estados mostrados en la tabla.

estado elemento
fortaleza (-1) armas (1)
hambre (-2) víveres (2)
súper-héroe (-3) tesoros (3)

Algunas casillas pueden tener asignado uno los elementos de la tabla. Las reglas de tesoro para recoger el elemento indica que:

  • Para recoger armas, el jugador debe estar en el estado de fortaleza.
  • Para recoger víveres, el jugador debe estar en el estado de hambre.
  • Para recoger tesoros, el jugador debe estar en el estado de súper-héroe.

Al inicio del juego, se ubican los jugadores en la casilla 1. Luego se distribuyen aleatoriamente 8 armas, 8 víveres y 8 tesoros a lo largo del corredor, desde la posición 2 en adelante.

El juego termina cuando uno de los jugadores llega exactamente al final del corredor. Gana el jugador que acumula la mayor riqueza de elementos recogidos durante el juego, calculada como:

Riqueza = \frac{armas}{2}+1)100 + 0.5 víveres+ tesoros

Se requiere implementar las siguientes procedimientos y funciones:

  1. asignarPosicionElementos() que retorna una colección que contiene 3 listas, cada una representando las posiciones en el corredor de las 8 armas, víveres y tesoros, respectivamente.
  2. LanzarDado() que retorna aleatoriamente el valor de una de las caras del dado.
  3. generarEstado() que retorna aleatoriamente uno de los posibles estados.
  4. mostrarElemento(posicion, coleccion) que dada una posición y la colección de posiciones de los elementos imprime en pantalla el tipo de elemento que existe en esa posición.
  5. recogerElemento(estado, posicion,colección) que dada una posición, el estado de un jugador y la colección de posiciones de los elementos retorna el tipo de elemento que se ha recogido (1, 2 ó 3) o 0 si no ha sido posible.
  6. mostrarMensaje(jugador), la cual recibe como parámetro un jugador e muestra en pantalla el estado y posición del jugador.
  7. calcularRiqueza(armas,viveres,tesoreos) que dada una cantidad de armas, víveres y tesoros retorna la riqueza obtenida.

Realice un programa que simule el juego y que siguiendo las reglas del juego descritas, use las funciones implementadas anteriormente.

En cada turno se mostrarán por pantalla:

  • El jugador al que corresponde el turno
  • El resultado del lanzamiento del dado
  • Si se avanza o retrocede
  • la nueva posición del jugador

Al finalizar el juego, se debe declarar al ganador y la riqueza de cada uno.

Rúbrica: inicializar tablero con premios (5 puntos), uso de aleatorios, (5 puntos), control de posiciones (5 puntos), implementar reglas de movimiento (5 puntos), reglas de tesoros (5 puntos), control de fin de juego (5 puntos), seleccion de ganador y riqueza(5 puntos), funciones estructuradas (5 puntos), algoritmo estructurado(5 puntos).

Nota: Enunciado original editado y adaptado para taller en clases.

1Eva_IIT2015_T2 Monopolio simplificado

1ra Evaluación II Término 2015-2016. Diciembre 8, 2015 /ICM00794

Tema 2. (30 puntos) Para una versión simplificada de Monopolio con 4 jugadores se tiene que:

monopolio simplificado

  • Al inicio, todos los jugadores ubican su ficha en la casilla 1 con $1500.
  • El tablero es de recorrido cíclico de 24 casillas.
  • Se juega por turnos avanzando con la suma del lanzamiento de dos dados.
  • Un jugador al caer en las casillas de “Casualidad” (4, 10, 16) debe pagar $100 a otro jugador escogido aleatoriamente.
  • Cada jugador tiene cinco casillas como “propiedades”; si un jugador cae en la propiedad de otro le deberá pagar del derecho de ocupación un valor determinado al lanzar un dado y multiplicarlo por 10.

Considere que:

  • El jugador 1 es propietario de las casillas 2, 8, 13, 19, 22.
  • El jugador 2 es propietario de las casillas 3, 7, 11, 17 y 24.
  • El jugador 3 es propietario de las casillas 5, 9, 15, 20 y 23.
  • El jugador 4 es propietario de las casillas 6, 12, 14, 18 y 21
  • Cada vez que un jugador pase por “Inicio” recibirá $200.

Realice un algoritmo que simule el juego hasta que uno de los jugadores quede en bancarrota (sin dinero). Al final, indique el jugador que se quedó en la bancarrota y el dinero que obtuvo cada jugador.

Rúbrica: control de saldos de jugadores y turnos (5 puntos), ubicación de jugadores (5 puntos), uso apropiado de aleatorios (5 puntos), casualidades y paso por inicio (5puntos), control de propiedades (5 puntos). Respuesta y Algoritmo estructurado (5 puntos).

1Eva_IIT2015_T1 Conjetura múltiplo de 3

1ra Evaluación II Término 2015-2016. Diciembre 8, 2015 /ICM00794

Tema 1. (25 puntos) “Si partimos de un número natural que sea múltiplo de 3 y sumamos los cubos de sus cifras, a este resultado le aplicamos la misma operación sucesivamente, llegaremos siempre al número 153.”

Elabore un algoritmo que permita ingresar un número entero de cuatro cifras que sea múltiplo de 3 y verifique si se cumple esta conjetura.

Ejemplo: 1375
 No es múltiplo de 3
 Respuesta: No cumple
Ejemplo: 1374
 Si es múltiplo de 3
 1374 → 13 + 33 + 73 + 43 = 435
 435 → 43 + 33 + 53 = 216
 216→ 225 → 141 → 66 → 432 → 99 → 1458 → 702 → 351 → 153
 Respuesta: Si cumple

Referencia: https://en.wikipedia.org/wiki/Narcissistic_number. Los 153 peces en la red. Juan 21:11 NVI

Rúbrica: Ingreso y validación (5 puntos), acumular cubos de dígitos (10 puntos), control de secuencia (5 puntos). Respuesta y algoritmo estructurado (5 puntos).

1Eva_IT2015_T2 Impuesto a herencia

1ra Evaluación I Término 2015-2016. Julio 7, 2015 /ICM00794

Tema 2. (25 puntos) El 5 de junio de 2015, la Asamblea Nacional recibió un proyecto de ley en materia económica con calidad de urgente conocido como “Ley de Herencias”.

El proyecto reformaría el porcentaje del impuesto sobre las herencias, el cual es progresivo basado en equivalentes al salario básico (SB). Al Año 2015, el salario básico (SB) se estableció en $354,00.

Para el impuesto, considerando solo el caso por cada heredero directo, dado un valor de herencia y el número de herederos, se calcula el valor equivalente en salarios básicos (SB). Usando la tabla se determina el rango aplicable, para calcular el impuesto se suman: el “impuesto a fracción básica” y la “tarifa” multiplicada por el excedente; el resultado buscado es el valor convertido a dólares.

Elabore un algoritmo que dado el valor de herencia, el número de herederos y el salario básico en dólares ($), calcule el valor propuesto del impuesto en dólares.

“Artículo 4. Tarifas para liquidar este impuesto son: a. En caso de los beneficiarios sea legitimarios del causante o donante, según corresponda, se aplicará la siguiente tabla:”

Tabla expresada en número de Salarios Básicos (SB)
Rango Aplicable impuesto tarifa
Fracción Básica Exceso hasta fracción básica fracción excedente
100
100 200 2,50 %
200 400 2,5 7,50 %
400 800 17,5 17,50 %
800 1600 87,5 32,50 %
1600 en adelante 347,5 47,50 %
Ejemplo:
Valor de herencia ($) $ 200.000,00
Número de herederos: 2
Salario básico $ 354,00
Equivale (SB): (200.000,00/2) /354,00= 282,4859
rango aplicable (SB) 200 a 400
Fracción Excedente (SB) 282,4859-200= 82,4859
Impuesto en SB 2,5+82,4859*(7,50%)= 8,6864
Impuesto por heredero en ($) 8,6864*$354= $3.074,99

Nota: Se usa solo un escenario para la evaluación algorítmica tomando como referencia de cálculo un literal del artículo.

Referencias: Oficio No. MINFIN-DM-2015-0333, 05-jun-2015, Quito. www.eluniverso.com. Conozca el proyecto de ley para el impuesto a las herencias en Ecuador, 2015/06/05. http://www.eluniverso.com/sites/default/files/archivos/2015/06/rd_215732correa_215732_304958.pdf

Rúbrica: ingreso (5 puntos), transformar unidades (5 puntos), determinar parámetros por rangos (10 puntos), resultado (5 puntos)

1Eva_IT2015_T1 algoritmo multiplicar

1ra Evaluación I Término 2015-2016. Julio 7, 2015 /ICM00794

Tema 1. (25 puntos) Un procedimiento matemático para multiplicar dos números enteros con valores entre 1 y 1000 se describe en el siguiente ejemplo:

Se desea conocer el producto de dos números: 997 y 991
Obtenga los resultados de las restas: 1000-997 = 3
1000-991 = 9
Sume los resultados de las restas: 3 + 9 = 12
Reste de 1000 el resultado de la suma anterior: 1000-12 = 988
Multiplique este resultado por 1000: 988 x 1000 = 988000
Multiplique los resultados de las restas iniciales: 3 x 9 = 27
La suma de los dos últimos resultados es el producto deseado: 988000+27 = 988027

Escriba un algoritmo que verifique que esta regla se cumple para cada producto a x b. Las variables a y b son enteros positivos entre 1 y un valor que puede llegar hasta 1000. Muestre la respuesta mediante un mensaje.

Rúbrica: ingreso y validación (5 puntos), procedimiento matemático (5 puntos), comprobar que cumple para a (5 puntos), comprobar que cumple para b (5 puntos), Algoritmo estructurado (5 puntos)

1Eva_IIT2014_T2 Triángulos aleatorios en rectángulo

1ra Evaluación II Término 2014-2015. Diciembre 9, 2014 /ICM00794

Tema 2. (25 puntos) Una imagen para protector de pantalla en computadora se puede generar dibujando triángulos de tamaño y posición aleatorias.

triangulos01

Para formar un triángulo se generan tres pares ordenados dentro de un rectángulo de lados a y b.

Elabore un algoritmo que genere aleatoriamente los vértices para n triángulos y determine la cantidad de figuras generadas clasificadas como:

  • triángulos equiláteros, todos sus lados de iguales
  • triángulos escalenos, todos sus lados diferentes
  • triángulos isósceles, dos lados iguales y uno desigual
  • puntos colineales, la suma de dos lados es igual al tercer lado y NO forma un triángulo.
Ejemplo:
>>> ¿cuántos triángulos?: 5
 ¿lado a?: 10
 ¿lado b?: 10
 equiláteros: 0
 escaleno: 3
 isósceles: 1
 colineales: 1

Rúbrica: Ingreso y validación (5 puntos), triángulos aleatorios en el plano (5 puntos), contar por tipo (10 puntos), contar colineales (5 puntos)

1Eva_IIT2014_T1 Números amigos

1ra Evaluación II Término 2014-2015. Diciembre 9, 2014 /ICM00794

Tema 1. (20 puntos) Dos números enteros positivos a y b son amigos sí solo sí la suma de los divisores de a es igual al número b, y la suma de los divisores de b es igual al número a.

Ejemplo:
números: a = 220 b = 284
divisores de número: 1, 2, 4, 5, 10, 11, 20,
22, 44, 55 y 110,
1, 2, 4, 71 y 142,
suma de divisores 284 220

Escriba un algoritmo para determinar si dos números enteros a y b son amigos o no.

Rúbrica: ingresar y validar positivos (5 puntos), buscar divisores (10 puntos), acumular divisores (3 puntos) determinar si son amigos (2 puntos).

1Eva_IT2014_T3 Pirámide Publifast

1ra Evaluación I Término 2014-2015. Julio 1, 2014 /ICM00794

Tema 3. (25 puntos) Nuevamente el juego de la pirámide fue usado como una estafa para muchos ciudadanos, en ésta ocasión usando publicidad en redes sociales. negociopiramide

Para demostrar que éste tipo de negocios es limitado, escriba un algoritmo que simule la situación conforme a la siguiente descripción:

  • Inicialmente hay una persona en la pirámide conocida como el promotor
  • En cada mes, para recibir los beneficios cada persona en la pirámide debe invitar un número fijo de k personas. Suponga que la pirámide crece uniforme cada mes con los invitados.
  • Cada persona al ingresar a la pirámide debe aportar una cuota en dólares.
  • El crecimiento ya no es posible cuando la cantidad de personas en la pirámide resulta ser mayor al número de personas en capacidad de aportar dinero a la pirámide. Ej: los habitantes m de un país.

Al final muestre cuántos meses funcionó la pirámide, cuántas personas formaron parte y el dinero recaudado.

Observación: La pirámide termina cuando ya no quedan suficientes nuevos aportantes. Por lo que lo recaudado es solo hasta ese mes.
Ref: http://www.eluniverso.com/noticias/2014/06/11/nota/3066307/sedujo-forma-facil-duplicar-su-dinero-web

Rúbrica: control de ciclos (5 puntos), control de crecimiento (10 puntos), resultados (10 puntos)