P. 1
arreglotrabajo

arreglotrabajo

|Views: 56|Likes:
Published by Alberto Mora

More info:

Published by: Alberto Mora on Jun 03, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

04/07/2013

pdf

text

original

ARREGLOS DE UNA DIMENSIÓN

Los ejercicios de programación deben resolverse utilizando funciones que modularicen las soluciones. 1. Suponga las siguientes declaraciones: int int puntos [500]; prueba, menor, indice;

¿Cuál segmento de programa encontrará el valor más pequeño de este arreglo y almacenará el subíndice del elemento donde está guardado este valor? a) for (prueba = 0; prueba < 500; prueba++) if (puntos[prueba] < menor) menor = puntos[menor]; for (prueba = 0; prueba < 500; prueba++) if (puntos[prueba] < menor) menor = prueba; menor = puntos[0]; for (prueba = 1; prueba < 500; prueba++) if (puntos[prueba] < menor) menor = puntos[prueba]; indice = 0; for (prueba = 1; prueba < 500; prueba++) if (puntos[prueba] < puntos[indice]) indice = prueba; indice = 0; for (prueba = 1; prueba < 500; prueba++) if (puntos[prueba] < indice) indice = prueba;

b)

c)

d)

e)

Arreglos de Una Dimensión

42

respectivamente. . . Elabore un programa que lea los datos de cada arreglo y calcule e imprima las sumatorias de todos sus elementos. así. y y z. . an-1 Copiar los datos a otro arreglo llamado inverso. y |k| lugares a la izquierda si k < 0 Al correr los elementos. . an-3 Los tres arreglos reales x. para lo cual deberá contar con una función para sumar todos los elementos de un arreglo y una función para leer los datos de un arreglo. . Sean los datos enteros: n. Elabore entrar ceros a los lugares vacíos.o ≤ 50. k a0 a1 . .2. .n. . de tal forma que queden almacenados como se indica a continuación: inverso an-1 . Considere que las dimensiones de los arreglos se leen en el programa principal con 1 ≤ m. an-1 Con: (en la primera línea) (en la segunda línea) (en la tercera línea) (en la última línea) |k| ≤ n. n. de tal manera que queden: vec a0 b) a1 . Arreglos de Una Dimensión 43 . si k = 2 se pierden los dos últimos datos (an-2 y an-1) y el arreglo quedaría: 0 3. 1 ≤ n ≤ 50 Elabore un programa completo que resuelva progresivamente por funciones cada uno de los siguientes incisos: a) Leer los datos y almacenarlos en un arreglo vec. tienen almacenados m. d) Correr los elementos del vec anterior |k| lugares a la derecha si k > 0. a0 c) Reemplazar cada ai en vec por (ai * 2i) sin utilizar la función de potencia y optimizando el número de operaciones: vec ao* 20 (a1* 21) . y o valores. 0 ao a1 .

Se tiene el arreglo ventas 0 vene 1 vfeb 2 vmar . Una fábrica de llantas quiere un programa para calcular el costo total de producción de los n modelos de llantas que produce. .. cn-1. bi reales Elabore funciones por separado para calcular: n -1 ∑ i=0 a i * bi ∑ i=0 n -1 a i * bn −1−i ¿Requiere de arreglos? ¿Cuántos? ¿Por qué? 6. 10 vnov 11 vdic donde se almacenan las ventas mensuales de una empresa. . Los datos con que cuenta son los siguientes: n. . . a0. . entero ai. c0. con: 1 ≤ n ≤ 50. Elabore una función que regrese los siguientes datos: a) b) c) d) 5. . ¿En qué mes se dieron las ventas máximas de la empresa? ¿A cuánto ascendieron las ventas máximas? ¿Cuál fue el total de las ventas? ¿Cuál fue el promedio de las ventas? Dados los datos: n.. c1.an-1.b1. ..4.. ao..bn-1 1 ≤ n ≤ 50. con: b0..a1. .. a1. entero ai enteros ci enteros Donde: ai ci representa la cantidad de llantas producidas del modelo i representa el costo de producción de una llanta del modelo i Arreglos de Una Dimensión 44 .. an-1. .

x1. . . entero xi reales Elabore un programa que realice funciones por cada inciso y la función principal que las mande llamar e imprima los resultados: a) b) Lea los datos y almacene los xi en un arreglo. Elabore una función para calcular e imprimir el ingreso per cápita promedio de la República. así como para escribir cuántas entidades tienen un ingreso menor que este promedio y cuántas lo tienen mayor o igual. . Sean los datos: n. icn-1 con: 1 ≤ n ≤ 32. .. xn con: 1 ≤ n ≤ 25. ic0.. Se solicita un programa modular que cuente el número de veces que cada número es ganador en una jornada y al final del día imprima un reporte con lo siguiente: a) b) c) d) ¿Cuántas veces resultó ganador cada elemento de la ruleta? ¿Cuáles elementos no resultaron ganadores en toda la jornada? ¿Cuál fue el número de cada color que ganó más veces?(suponga que sólo hay uno) ¿Cuál fue el elemento que ganó en más ocasiones? Arreglos de Una Dimensión 45 . ∑ (x i =1 i − x) 2 − n Un casino desea llevar a cabo unas estadísticas sobre el juego de ruleta. Se tienen los siguientes datos: n. 8.7. Calcule e imprima la media de los datos dada por la fórmula: x= c) n − i =1 ∑ xi n n Calcule e imprima la desviación estándar dada por la fórmula: a= 9.. ic1. x2. entero ici reales Donde: ici representa el ingreso per cápita de cada entidad federativa de la República Mexicana. .

entonces debe cambiar al grupo 2. en lugar de una clave. actualizando el grupo si es el caso. a partir de ahora. proporcione un cero. Arreglos de Una Dimensión 46 .X 10.00 a la semana sobre su sueldo actual. N = negro representan el fin de la jornada color -1. La información que se proporciona de cada empleado es: clave del empleado (comprendida entre 100 y 2500. color número. un aumento de $250. Los datos que el casino proporcionará son los siguientes: número. Elabore un programa modular que: a) b) c) Lea la información de los n empleados e imprima la clave. Cada empleado del grupo 1 recibirá.00 y $6000. Existen del 1 al 34 rojos. mientras que a cada uno de los del grupo 2 sólo se le dará $150.00 adicionales por semana. 11. Calcule el sueldo promedio de los empleados por grupo y calcule también el promedio general de todos. El casino desconoce el número de juegos de una jornada. grupo y sueldo semanal nuevo para cada empleado. sin considerar el grupo. inclusive). X Donde: número representa el número correspondiente al elemento ganador con 0 ≤ número≤ 34 donde el 0 se representa como un 0 rojo y el 00 se representa como un 0 negro. Se tienen n alumnos (1 ≤ n ≤ 50) de los cuales se conoce la clave y la calificación final. Elabore un programa modular que: a) b) c) Lea dicha información. la cual se da ya ordenada en forma descendente. el 0 y el 00. Utilice búsqueda binaria para buscar las claves que el usuario solicita.Recuerde que la ruleta está formada por 70 elementos. Se sabrá que el usuario ya no quiere conocer más calificaciones cuando. con: R = rojo. del 1 al 34 negros. con respecto a la clave. representa el color correspondiente al elemento ganador.. grupo al que pertenece (1 o 2) y sueldo semanal actual (entre $300. Imprima la calificación que obtuvieron los alumnos cuyas claves proporcionará el usuario.00). Una compañía ha clasificado a sus n (1 ≤ n ≤ 50) empleados dentro de los grupos 1 y 2. Indique cuántos empleados cambiaron del grupo 1 al 2.. Si un empleado del grupo 1 con el nuevo sueldo gana semanalmente más que el sueldo promedio del grupo. color . Imprima la clave y calificación de todos los alumnos que obtuvieron calificación superior al promedio del grupo. -1.

La función debe regresar como resultado 1 si se hizo la sustitución.. por último. Insertar un valor x en el arreglo de tal forma que se siga conservando el orden ascendente de los valores. Elabore una serie de funciones para leer una serie de n datos desordenados.+ (Xn-1+X0)*(Yn-1-Y0)]/2 Suponga que los Xi . utilizando el algoritmo de selección directa. . almacenarlos en el arreglo val (de máximo 50 localidades).. en ese mismo arreglo y. b) c) d) e) Arreglos de Una Dimensión 47 . n-1 vn-1 49 . 14. Yi donde cada pareja representa las coordenadas del punto i de un polígono irregular de n lados. En el arreglo final no debe haber datos repetidos.Yi son reales y n es entero con 1 ≤ n ≤ 50. ordenarlos de manera creciente. La función debe regresar como resultado 1 si se insertó x en el arreglo. leer las coordenadas de los puntos y obtener el área del polígono irregular utilizando la siguiente fórmula: Area = [(X0+X1)*(Y0-Y1 ) + (X1+X2)*(Y1-Y2)+. 0 si x ya existía en el arreglo y –1 si no existe espacio libre en el arreglo. Al insertar se debe verificar que haya espacio libre y que x no exista en el arreglo. La función debe regresar como resultado 1 si se eliminó x. elabore un programa que contenga funciones para: a) Buscar un valor x dentro del arreglo utilizando el algoritmo de búsqueda secuencial. 0 si x no se encontraba en el arreglo y –1 si el arreglo estaba vacío. . Eliminar un valor x del arreglo.12. Buscar un valor x dentro del arreglo utilizando el algoritmo de búsqueda binaria. 13. la función calcula la posición en la que debería encontrarse y regresa: (– posición –1). . Se tiene un conjunto de n parejas de datos Xi. 0 si x no se encontraba en el arreglo y –1 si el arreglo estaba vació. Suponga que las coordenadas se proporcionarán en orden adyacente. imprimirlos en orden. La función debe regresar como resultado la posición en la que se encuentra el valor buscado. Sustituir un valor x ya existente en el arreglo con un valor y de tal manera que el arreglo siga conservando su orden creciente. Si x no se encuentra en el arreglo. Partiendo del ejercicio anterior. compactando si es necesario para que no haya espacios libres entre valores. val 0 vo Variante: 1 v1 2 v2 . Elabore una función para leer el número de lados del polígono.

Los datos que el usuario proporcionará son los coeficientes (reales) y los exponentes (enteros.4X2 + 6. observando el siguiente formato: ± cX ^e Donde: ± c ^ e representa el signo del término representa el coeficiente del término significa exponenciación representa el valor del exponente Por ejemplo. imprimir el arreglo resultante. los ordene y posteriormente los mezcle en un tercer arreglo guardando el orden. Elabore un programa modular para leer un arreglo cuyos datos se proporcionan en orden ascendente. mezclarlos en un tercer arreglo cuyos datos aparezcan en orden ascendente. Al seleccionar el usuario una de estas tres opciones dará los polinomios sobre los cuales se realizará la operación solicitada.3X4 + 9. leer un segundo arreglo cuyos datos se proporcionan en orden descendente. es decir.1 1 1 3 6. los cuales pueden o no estar ordenados.5 9. suponga que los datos son: 2.5X1 + 3X4 -2X2 .15.9 4 8 -1 -1 -1 -1 Entonces. utilizando un menú. Elabore un programa modular que lea los datos de dos polinomios como se explica posteriormente y que.9X8 Arreglos de Una Dimensión 48 . Restricción: no se deben unir los arreglos en desorden.1X1 + 6. El final de cada polinomio está dado por un –1 como coeficiente y como exponente. 17. ni copiar un arreglo completo.5X3 . 16. Elabore un programa modular que lea dos arreglos de diferente número de elementos. Los términos del polinomio resultante deberán ser desplegados en orden descendente. Multiplicación. los polinomios que se van a operar son: +2. ≥ 0 y ≤ 15) de ambos polinomios. Resta. los elementos que se almacenen en el tercer arreglo se deben ir guardando en orden. y por último. efectúe las siguientes operaciones sobre polinomios: a) b) c) Suma.5 -2 3 2 -4 -3 2 4 6.

6X2 + 15.5X3 . de 1000 enteros.9X^8 + 2. se les pidió que votaran indicando su preferencia. Para conocer cuántos alumnos hay interesados en cada uno de ellos. del elemento i+1 al último. En principio se han establecido 10 grupos para la misma. Comience con el índice i=2 del arreglo. Arreglos de Una Dimensión 49 . con 1 (verdadero). -1 -1 donde: clavealumno es un entero positivo que representa la clave única del alumno. Los elementos con índices 0 y 1 deben inicializarse con 0 (falso).9X8 + 2. pero ahora considerando el primer elemento que sea 1 y cuyo índice sea mayor a i. .5X^3 .6X^1 18. si n = 6174.6X^2 + 15. para saber cuáles grupos se abren o se cancelan. no todas iguales. votogrupo es un entero entre 1 y 10 para elegir al grupo que prefiere el alumno. Recorra el arreglo. y cada vez que encuentre un elemento cuyo valor sea 1. Por ejemplo. póngale 0 si su índice es múltiplo de i. 19. Se desea conocer el total de alumnos que votaron por cada grupo de la materia.6X1 y se desplegaría como: + 6. Continúe este proceso hasta que haya probado todos los elementos iguales a 1. los índices del arreglo cuyos elementos sean 1 son primos. Vuelva a hacer lo mismo. Dado un número natural n de 4 cifras. 20. b) Cuando se haya terminado este proceso.De tal forma que el resultado de la suma es: 6. Elabore un programa que utilizando “la criba de Eratóstenes” encuentre los números primos entre 1 y 999. encuentre e imprima el número mayor y el menor que se puede formar con las mismas cifras. . Se necesita programar una materia para el próximo semestre. entonces el número mayor que se puede formar es 7641 y el menor 1467. La información se proporciona de la siguiente manera: clavealumno votogrupo clavealumno votogrupo . la cual funciona como sigue: a) Inicialice todos los elementos de un arreglo (comenzando en el índice 2).

6.xk-1) ) Arreglos de Una Dimensión 50 . inserte este nuevo valor de x (valx) así como el valor calculado f(valx) en sus respectivos arreglos manteniendo el orden creciente de las x´s sin utilizar ningún algoritmo de ordenamiento. calcule f(valx) de acuerdo a la fórmula que se da a continuación. otra función que reciba como parámetro la serie de números y arroje la moda o si no la hay –1 y la función principal que mande llamar las anteriores e imprima la moda (número que mas veces se repitió en caso de haber dos iguales o más mencione el primero). Suponiendo que valx debe insertarse en la posición k. e imprima el valor calculado de f(valx) .7. Calcule e imprima la moda.a) Haga una función que calcule las suma de votos y regrese cuántos alumnos votaron en total. donde: n es el número de xi y f(xi) que se proporcionarán (1<= n <= 50) xi son los valores de x (en orden creciente) f(xi) es el valor de una función para xi valx es el valor de x con el que se va a trabajar. Haga un programa completo en C que deberá tener una función que lea la serie de números. b) Haga una función que elimine los grupos que tienen menos de 25 alumnos.4.3. . xn-1 f (xn-1) valx 22. Si existe una xi = valx.xk-1)* (f(xk) – f(xk-1))/(xk. (son aquellos que tienen 25 o más alumnos) d) Haga la función principal que mande llamar las dos funciones anteriores.2. dada la lista 1. imprima f(valx).4. Realiza un programa en C que: Lea en arreglos paralelos los valores de x y f(x).6. En estadística.9.2.5. . Si todos los números son diferentes entonces no hay moda. 21. Por ejemplo. la moda es 4. Si no existe una xi = valx. la moda de una serie de números es aquel número que aparece con más frecuencia.4. c) Haga una función que imprima los grupos que pertenecerán abiertos. ya que aparece tres veces. Se tienen los siguientes datos n x0 f (x0) x1 f (x1) . con lo cual se debe indicar que hubo error. si k=0 entonces f(valx)=f(x0) si k=n entonces f(valx)=f(xn-1) en cualquier otro caso f(valx) = f(xk-1) + ( (valx .

. entonces habrá 0.23. MAX . Se conoce el total de toneladas cosechadas de cada uno de los tipos de naranjas. Se le pide que haga un programa en C. Una cooperativa de productores de naranjas almacena el total de toneladas cosechadas durante el último año en N parcelas (1≤ N ≤ 50). durante el último año su producción total fue 0. que pueda: a) Leer la información: N (1≤ N ≤ 50) y las toneladas por tipo de naranja de cada una las parcelas. Si en una parcela no se hubiera cosechado alguno de los tipos. La información se almacena en un arreglo como se muestra en el siguiente ejemplo: Naranjas para Naranjas para jugo comer 100 500 600 2 0 3 800 4 700 5 . El dato requerido para esta opción es el número de parcela a eliminar. d) Buscar e imprimir el número de una parcela (si hubiera) que no haya tenido producción de ninguno de los tipos de naranjas. c) Eliminar la información de una parcela. En la parcela 2 se cosecharon: 600 toneladas de naranjas para jugo y 0 toneladas de naranjas para comer. Arreglos de Una Dimensión 51 .2N2N-2 2N-1 Parcela N .1 0 1 Parcela 1 Parcela 2 Parcela 3 • • En la parcela 1 se cosecharon: 100 toneladas de naranjas para jugo y 500 toneladas de naranjas para comer.. NOTA: Observe que la información de una misma parcela ocupa posiciones consecutivas en el arreglo.. usando módulos. 2N. b) Calcular e imprimir el total de la producción por parcela.. En cada parcela se pueden cultivar dos tipos de naranjas: para jugo y para comer. Es decir.

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->