Para los siguientes ejercicios elabore la especificacin del algoritmo y el programa y/o funcin requerida.
Ejercicio 1: Un juego denominado TailHead requiere que dos jugadores elija una una nica secuencia de tres monedas, tales como Head, Tail y Head (HTH). Se lanza una moneda al aire de forma secuencial un cierto nmero de veces hasta que una de las dos secuencias aparece. El jugador que eligi la primera secuencia que aparece es el ganador. Para este problema, se le pide escribir un programa que implementa un algoritmo eficiente para una variacin de este juego. Para esto usted va a leer una secuencia de 40 lanzamientos de la moneda y determinar cuntas veces cada secuencia de tres monedas aparece. Es obvio que hay ocho secuencias de tres monedas validad: TTT, TTH, THT, THH, HTT, HTH, HHT y HHH. Las secuencias se pueden solapar. Por ejemplo, si todos los 40 lanzamientos de monedas son Head (H), entonces la secuencia HHH aparece 38 veces. Entrada: La primera lnea contiene un entero P, (1 s P s 1000), que determina el nmero de casos de prueba, las siguientes representan cada uno de los P casos. Cada caso consiste de dos lneas. La primera lnea contiene el numero de caso N. la segunda lnea contiene la secuencia de 40 lanzamientos de una moneda. El resultado de cada lanzamiento se representa como una H mayscula o una T mayscula
Salida Para cada caso de prueba, se debe de mostrar el nmero del caso seguido por el numero de ocurrencias de cada secuencia de tres monedas en el orden que se dio anteriormente
Algoritmos y Estructura de Datos I Mgter. Karim Guevara Puente de la Vega Pgina 2 Ejercicio 2: La suma de fracciones se define por:
Se le pide implementar un procedimiento recursivo que permita hallar la suma de las fracciones dado un nmero n.
Ejercicio 3: La potencia de un real X elevado a un entero positivo n est definida por:
Se le pide implementar un procedimiento recursivo que permita hallar la potencia de un nmero X elevado a un n. Ambos, X y n son valores ingresados cualesquiera.
n n n 1 1 1 ... 2 1 1 1 ... 2 1 1 + | . |
\ |
+ + + = | . |
\ | + + + ( ) ( ) impar es y 0 n si , * par es y 0 n si , 1 1 ) 2 ( 0 * > = > = =