Está en la página 1de 6

Universidad Nacional Experimental de Guayana Vice-Rectorado Acadmico Coordinacin de Ingeniera en Informtica

Asignatura: Programacin II Docente: Ing. Andrs Caniumilla Lapso: 2012-I Pg: 1

Gua de Ejercicios I (Obj. 1 8)


Bsicos (Objetivos 1, 2, 3 y 4) 1. Una persona desea invertir su dinero en un banco, el cual le otorga un 2% de inters mensual. Cual ser la cantidad de dinero que esta persona tendr al cabo de n meses si la ganancia de cada mes es reinvertida?. En un supermercado se hace una promocin, mediante la cual el cliente obtiene un descuento dependiendo de un nmero que se escoge al azar. Si el numero escogido es menor que 74 el descuento es del 15% sobre el total de la compra, si es mayor o igual a 74 el descuento es del 20%. Obtener cuanto dinero se le descuenta. Escriba un programa que lea tres nmeros enteros y los imprima en orden ascendente. Escriba un programa que lea un nmero entero n mayor a cero que identifica un nmero de segundos, y calcule e imprima el nmero de horas, minutos y segundos contenidos en ella. Ejemplo: Para n igual 15723 se debe imprimir 4 horas, 22 minutos y 3 segundos. Escriba un programa que dada una hora en formato (horas, minutos, segundos) indiqu cual ser el tiempo dentro de un segundo. Escriba un programa que lea una secuencia de nmeros enteros y calcule el mayor, menor y el promedio de la secuencia. La secuencia termina cuando se ingresa el nmero cero. Escriba un programa que multiplique dos nmeros por medio de sumas sucesivas. Escriba un programa que divida dos nmeros por medio de restas sucesivas. Escriba un programa que dado dos nmeros x y n, permita calcular la suma de la progresin geomtrica: 1 + x + x2 + ... + Xn. Escriba un programa que lea una secuencia de caracteres y cuente la frecuencia de un carcter n. La secuencia terminar cuando se lea el carcter punto (.). Escriba un programa que lea una secuencia de caracteres y cuente el nmero de veces que cada vocal se repite. El texto se lee carcter a carcter. El texto acaba con un carcter ;. Una vez ledo, hay que imprimir el nmero de apariciones de cada tipo de vocal junto con el nmero total de consonantes. A continuacin se imprimir el porcentaje de cada tipo de letra considerado en relacin con el total de letras ledas.

2.

3. 4.

5.

6.

7. 8. 9.

10.

11.

Funciones (Objetivos 1, 2, 3, 4 y 5)

Universidad Nacional Experimental de Guayana Vice-Rectorado Acadmico Coordinacin de Ingeniera en Informtica

Asignatura: Programacin II Docente: Ing. Andrs Caniumilla Lapso: 2012-I Pg: 2

NOTA: No se pueden utilizar funciones predefinidas del Lenguaje C que realicen lo mismo que se pide hacer. 12. Escriba una funcin que dado un nmero x calcule el seno del mismo mediante la serie: x - x 3/3! + x5/5! - x 7/7! + Escriba una funcin que dado un nmero entero n cuente el nmero de cifras o dgitos. Escriba una funcin que reciba el valor de n (el cual es mayor a cero), calcule y devuelva la suma: 1 + 1/2 + 1/3 +.....+ 1/n. (Serie Armnica). Escriba una funcin que dados dos nmeros enteros a y b realice la operacin de potencia ab. Escriba una funcin para determinar si un valor n es un nmero primo. Escriba una funcin que permita calcular el factorial de un nmero n. Escriba una funcin que dado un nmero entero positivo n produzca el nmero invertido. Escriba una funcin lgica que reciba un nmero natural y compruebe si la suma de sus cifras pares es igual a la suma de las cifras impares. Por ejemplo, el nmero: 3547863 cumple esta propiedad. Escriba una funcin lgica que determine si un valor n es un nmero perfecto. Un nmero perfecto es un entero positivo, que es igual a la suma de todos los enteros positivos (excluido el mismo) que son divisores del nmero. Ejemplo: 6 es un nmero perfecto, ya que 1+2+3 = 6. Escriba una funcin que reciba un nmero entero (en base binaria) y devuelva su equivalente en base decimal. Ejemplo: Para n igual a 11010 se debe devolver el valor de 26. Nota: No es necesario el uso de cadenas de caracteres. Escriba una funcin que reciba un nmero entero mayor a cero y determine si el mismo es palndromo, es de destacar que un palndromo es un nmero o una frase de texto, que se lee igual hacia delante y hacia atrs. Por ejemplo, cada uno de los siguientes nmeros son palndromos: 12321 y 4554. No se debe usar vectores para dar solucin al problema.

13. 14.

15. 16. 17. 18. 19.

20.

21.

22.

Recursividad (Objetivos 1, 2, 3, 4, 5, 6, 7) 23. 24. 25. Escriba una rutina recursiva que imprima en forma invertida los dgitos de un nmero entero. Escriba una funcin recursiva que calcule el factorial de un nmero entero (n). Escriba una funcin recursiva que encuentre el mximo comn divisor (mcd) de dos nmeros a y b. a y b son enteros mayores que 0.

Universidad Nacional Experimental de Guayana Vice-Rectorado Acadmico Coordinacin de Ingeniera en Informtica

Asignatura: Programacin II Docente: Ing. Andrs Caniumilla Lapso: 2012-I Pg: 3

26.

Escriba una funcin recursiva que reciba dos enteros a y b tales que a, b >= 1 y calcule la divisin entera de dichos nmeros. Escriba una funcin recursiva que sume los (n) primeros nmeros enteros positivos. Escriba una funcin recursiva que calcule los (n) primeros nmeros de la serie de Fibonacci. Se conoce que un nmero de Fibonacci se compone por la suma de los dos trminos anteriores, los dos primeros trminos son F1=F2=1. Escriba una funcin recursiva exponente tal que dada la base y el exponente como nmeros enteros devuelva su resultado (potencia). La base ser mayor que cero y el exponente mayor o igual a cero.

27. 28.

29.

Cadenas (Objetivos 1, 2, 3, 4, 5, 6 y 7) 30. 31. Escriba una funcin que reciba una cadena de caracteres y devuelva su longitud. Escriba una funcin que reciba una cadena de caracteres y retorne la cadena sin espacios en blanco. Escriba una funcin que reciba una cadena de caracteres y retorne la cadena en maysculas. Escriba una funcin que reciba una cadena de caracteres y retorne la cadena invertida. Escriba una funcin que reciba una cadena de caracteres cad y una variable ch de tipo char. La funcin devolver la posicin de la primera ocurrencia de ch en cad. Escriba una funcin que reciba una cadena de caracteres cad y una variable ch de tipo char. La funcin devolver la posicin de la ltima ocurrencia de ch en cad. Escriba una funcin que permita comparar dos cadenas de caracteres. Escriba una funcin que reciba dos cadenas de caracteres y devuelve una nueva cadena que contenga la concatenacin de ambas. Escriba una funcin que reciba dos cadenas de caracteres, cad1 y cad2, y un entero p. La funcin retornar la posicin de la primera ocurrencia de cad1 en cad2 a partir de la posicin p. Escriba una funcin que permita eliminar una secuencia de caracteres dentro de una cadena de caracteres a partir de una determinada posicin (p), un nmero determinado de dgitos (num). Escriba una funcin que reciba una cadena de caracteres y retorne la cadena encriptada sumando 2 al cdigo ASCII de cada uno de sus caracteres.

32. 33. 34.

35.

36. 37.

38.

39.

40.

Universidad Nacional Experimental de Guayana Vice-Rectorado Acadmico Coordinacin de Ingeniera en Informtica

Asignatura: Programacin II Docente: Ing. Andrs Caniumilla Lapso: 2012-I Pg: 4

41.

Escriba una funcin lgica que reciba una cadena de caracteres y determine si esta cadena es palndrome. Escriba una rutina que reciba una cadena de caracteres y devuelva el carcter que se repite con mayor frecuencia dentro de la cadena de caracteres. La cadena debe ser recibida y manejada como apuntador. La misma no debe ser modificada. Escriba una rutina que reciba una cadena de caracteres y proceda a contar el nmero de palabras que contiene. Se supone que las palabras estn separadas por uno o ms espacios en blanco. La cadena debe ser recibida y manejada como apuntador. La misma no debe ser modificada. Ejemplo: Para La casa de la mujer debe devolver 5.

42.

43.

Vectores (Objetivos 1, 2, 3, 4, 5, 6 y 7) 44. representa la media de los nmeros x1 , x 2 ,..., x n , entonces la varianza es la media de los 1 n v = ( x i x) 2 y la desviacin cuadrados de las desviaciones de los nmeros de la media: n i =1 estndar es la raz cuadrada de la varianza. Escriba un programa que lea una secuencia de nmeros flotantes, los almacene y a continuacin calcule e imprima su media, valor mnimo, valor mximo, varianza y desviacin estndar. Si
x

45.

Escriba una rutina que reciba un precio de un producto y una cantidad para pagarlo, calcule la cantidad de monedas y billetes (vuelto a devolver). Monedas: 1, 2, 5, 10, 20, 50, 100 y 500 Bs. Billetes: 1000, 2000, 5000, 10000 y 50000 Bs. Escriba una rutina que reciba un arreglo de N nmeros flotantes y lo invierta. Escriba una rutina que reciba un arreglo de N nmeros enteros y un nmero entero num, y luego proceda a calcular la ocurrencia de num dentro del arreglo. Escriba una rutina que reciba un arreglo de N nmeros flotantes, y luego calcule la media de los elementos que se encuentran en las posiciones pares y la media de los elementos que se encuentran en las posiciones impares. Escriba una rutina que reciba un arreglo de N nmeros enteros y proceda a verificar si el mismo se encuentra ordenado en forma descendente. Escriba una rutina que reciba un arreglo de N nmeros enteros y proceda a calcular el nmero de valores diferentes que se encuentran en el mismo. Escriba una rutina que reciba un vector de N nmeros enteros positivos y proceda a eliminar (sustituir por -1) los elementos duplicados. Es de destacar que los elementos sustituidos o duplicados deben quedar a la izquierda del vector. Adicionalmente la funcin debe devolver el

46. 47.

48.

49.

50.

51.

Universidad Nacional Experimental de Guayana Vice-Rectorado Acadmico Coordinacin de Ingeniera en Informtica

Asignatura: Programacin II Docente: Ing. Andrs Caniumilla Lapso: 2012-I Pg: 5

nmero de elementos eliminados o sustituidos. Es de destacar que los elementos del vector no tienen un orden en particular. 52. Escriba una rutina que reciba un arreglo de N nmeros enteros y lo ordene por el mtodo de Burbuja en forma ascendente. (Ordenacin por Burbuja) Escriba una rutina que reciba un vector vaco de nmeros enteros (sin valores) de tamao N y proceda a realizar la lectura de N valores, al tiempo que los va ordenando en forma ascendente en el arreglo. Al finalizar la rutina el vector est completamente lleno y ordenado de menor a mayor. Nota: Se ordena mientras se van leyendo los valores uno a uno. (Ordenacin Por Insercin) Escriba una rutina que reciba dos (02) vectores A y B de nmeros enteros de tamao M que no contienen elementos duplicados, los cuales se encuentran ordenados en forma ascendente y un tercer vector C (vaco) igualmente de tamao M+M. Se desea que Ud. realice la ordenacin en forma ascendente de los vectores A y B en el vector vaco C, siguiendo para tal efecto el siguiente algoritmo: Tomar uno a uno los elementos de cada vector, cuando ambos sean iguales copiar ambos hasta el vector C y tomar uno nuevo de cada vector, en caso contrario tomar el menor valor y copiar hasta el vector C y tomar uno nuevo de ese vector, repetir esto hasta que se alcance el final de alguno de los vectores. Al finalizar el algoritmo el vector C contendr los elementos de ambos vectores en orden ascendente. (Ordenacin por Mezcla). Escriba una rutina entera que reciba un arreglo de N nmeros enteros y un valor entero num. Se debe determinar si el valor (num) se encuentra en el arreglo. Se debe buscar de forma secuencial hasta que lo encuentre o llegue al final del arreglo. La funcin debe retornar la posicin en el arreglo si el valor (num) fue encontrado o -1 de lo contrario. El vector no se encuentra ordenado. (Bsqueda Secuencial). Repetir el ejercicio anterior, pero considerando que el arreglo se encuentra ordenado ascendentemente (Bsqueda Secuencial Mejorada). Escriba una rutina entera que reciba un arreglo de N nmeros enteros y un valor entero num. Se debe determinar si el valor (num) se encuentra en el arreglo utilizando una bsqueda binaria. La funcin debe retornar la posicin en el vector si el valor (num) fue encontrado o -1 de lo contrario. El vector debe encontrarse ordenado en forma ascendentemente. (Bsqueda Binaria)

53.

54.

55.

56.

57.

Matrices (Objetivos 1, 2, 3, 4, 5, 6 y 7) 58. Escriba una rutina que reciba una matriz de NxN de nmeros enteros y proceda a determinar y devolver la posicin (i,j) de la matriz en la que se encuentra el valor mximo. Escriba una rutina que reciba dos matrices de NxM y realice la suma de estas matrices almacenando el resultado en una tercera matriz resultante. Las matrices para que puedan sumarse deben tener las mismas dimensiones.

59.

Universidad Nacional Experimental de Guayana Vice-Rectorado Acadmico Coordinacin de Ingeniera en Informtica

Asignatura: Programacin II Docente: Ing. Andrs Caniumilla Lapso: 2012-I Pg: 6

60.

Escriba una rutina lgica que reciba una matriz de NxN de nmeros enteros y luego verifique si es simtrica. Una matriz es simtrica si A(i,j) = A(j,i) para todo i, j. Escriba una rutina lgica que reciba una matriz de NxM de nmeros enteros y luego verifique si es mgica. Una matriz mgica es aquella en que la suma de cada una de sus filas, columnas y diagonales tienen el mismo valor. Escriba una rutina que reciba una matriz de NxM de nmeros enteros y luego imprima todos los puntos de silla de la matriz. Un punto de silla es el mximo de su fila y el mnimo de su columna. Escriba una rutina lgica que reciba una matriz de NxM de nmeros flotantes y luego verifique si es triangular superior. Una matriz triangular superior es aquella en la cual todos los elementos situados bajo su diagonal principal son cero. Escriba una rutina que reciba dos matrices A y B de nmeros flotantes, realice la multiplicacin de estas dos matrices y la almacene en una matriz C resultante. Para multiplicar dos matrices debe cumplirse que el nmero de columnas de A debe ser igual al nmero de filas de B. Escriba una rutina que reciba una matriz de nmeros enteros de dimensin M x N y luego calcule la suma de los elementos situados en la parte superior de la diagonal principal y la suma de los elementos situados en la parte inferior de la diagonal principal. Escriba una funcin que reciba una matriz de nmeros flotantes de dimensin M x N, y devuelva la suma de los elementos de la diagonal principal y la suma de los elementos de la diagonal secundaria en forma independiente. Escriba una rutina que reciba una matriz de NxM de nmeros enteros, y luego calcule la suma de sus componentes cuya suma de subndices sean par e impar respectivamente. Escriba una rutina que reciba una matriz de NxN de nmeros enteros, y luego invierta los elementos de la diagonal secundaria. Escriba un programa que tome las N primeras palabras de un texto ingresado por teclado carcter a carcter, las ordene en forma ascendente y las imprima. Las palabras han de tener 40 caracteres como mximo. Escriba una rutina que reciba una Matriz de MxN nmeros flotantes previamente ya ledos, y desarrolle un algoritmo que permita ordenar los elementos de la matriz en forma descendente, es decir de mayor a menor. Es de destacar que no se deben ordenar las filas de la matriz en forma independiente.

61.

62.

63.

64.

65.

66.

67.

68.

69.

70.

También podría gustarte