Introducción a la Programación
Trimestre 2006 Invierno --- Examen 5

Viernes 17 de marzo de 2006 a las 16:00 hrs

Instrucciones: A diferencia de todos los demás exámenes, este examen tendrá una duración de 16:00 a 17:30 y contiene dos problemas, por lo que deberán escribir dos programas. Cada programa tendrá un valor de 0 a 10 puntos, por lo que pueden pensar que este examen en realidad corresponde a un examen normal y un examen de reposición. Al terminar, no olviden enviar sus programas en C a la dirección franz usando pine desde su cuenta en ce.azc.uam.mx

Problema 1: Girando un vector

Escriba un programa que lea dos enteros positivos N y G y un vector X de N componentes enteras y que escriba el vector Y de N componentes formado al girar G veces el vector X hacia la derecha. Al hacer esto, la componente de más a la derecha de X se debe colocar en la componente más a la izquierda de Y. Por ejemplo, si N = 5 y X = (3, 1, 4, 1, 5) entonces al girarlo una vez (G = 1) se obtiene el vector Y = (5, 3, 1, 4, 1), y si se girara una vez más (G = 2) se obtendría el vector Y = (1, 5, 3, 1, 4), etc.

Especificación

La entrada consiste de dos números enteros N y G, con valores entre 1 y 100, seguidos de N números enteros cada uno con valor entre 0 y 9 (las componentes de X). La salida consiste de N números enteros separados por un espacio (las componentes de Y). El nombre de su programa deberá ser giraNN.c, donde NN es el número de cuenta ip-7-NN que le fue asignado. Los archivos gira, giraNN.o y giraNN.exe no deben ser entregados. Notas: (a) Su programa no deberá leer ni escribir nada además de los datos mencionados anteriormente. (b) Su programa no deberá usar nada que no hayamos visto en clase. (c) Para compilar su programa en UNIX usen la instrucción gcc giraNN.c -o gira y para probarlo usen la instrucción ./gira y tecleen la entrada deseada seguida de un enter.

Ejemplo

ENTRADA: 5 2 3 1 4 1 5     observe que esto quiere decir que N = 5, G = 2 y X = (3,1,4,1,5)
SALIDA:  1 5 3 1 4         observe que esto quiere decir que Y = (1,5,3,1,4)

Problema 2: Consonantes y vocales

Escriba un programa que lea una palabra S formada exclusivamente por letras mayúsculas y que escriba el número C de consonantes y el número V de vocales que contiene. Por ejemplo, la palabra CONSONANTES contiene 7 consonantes y 4 vocales.

Especificación

La entrada consiste de una cadena S formada por un máximo de 80 letras mayúsculas. La salida consiste de dos números enteros C y V separados por un espacio. El nombre de su programa deberá ser covoNN.c, donde NN es el número de cuenta ip-7-NN que le fue asignado. Los archivos covo, covoNN.o y covoNN.exe no deben ser entregados. Notas: (a) Su programa no deberá leer ni escribir nada además de los datos mencionados anteriormente. (b) Su programa no deberá usar nada que no hayamos visto en clase. (c) Para compilar su programa en UNIX usen la instrucción gcc covoNN.c -o covo y para probarlo usen la instrucción ./covo y tecleen la entrada deseada seguida de un enter.

Ejemplo

ENTRADA: CONSONANTES
SALIDA:  7 4