MANUAL DEPRÁCTICAS EN JAVA En este manual encontrarás una lista de prácticas que realizarás a lo largo de tu semestre en la materia de Programación. 2 Alumno: Te doy la bienvenida a tu curso de programación en Java, este es un breve manual de ejercicios que realizarás en las prácticas a lo largo del semestre, recuerda que las prácticas son parte de tu evaluación y tu derecho a examen, cada una de las secciones que encuentres en este manual debe de ir fundamentadacon una investigación de tu parte referente a la información que se requiere para adquirir el conocimiento teórico de cada tema; esta investigación puedes formarla de los apuntes que tomas en clase, investigaciones personales que realices en libros y/o Internet. Recuerda que las prácticas debes realizarlas de manera personal y basándote lo menos posible en soluciones que encuentres en libros o la red para que fortalezcas tu conocimiento en este lnguaje. Te deseo el mejor de los aprendizajes. Tu profesora. 3 4 Elaborar los programas para cada uno de los siguientes problemas, considerando que el tipo de dato idóneo, los cuales pueden o no estar especificados en el problema, además los resultados deberán ser desplegados en pantalla. 1. Calcular la suma de 2 números. 2. Calcular el promedio de 2 números 3. Calcular el área de un rectángulo 4. Calcular el área de un circulo 5. Calcular el perímetro de un circulo 6. Calcular el perímetro de un hexágono 7. Convertir de dólares a pesos 8. Convertir de pesos a dólares 9. Calcular del número de salarios mínimos que gana un trabajador 10. Calcular el importe a pagar 11. Calculo del sueldo neto de un trabajador 12. Un vendedor recibe un sueldo base más un 10% extra por comisión de sus ventas. El vendedor desea saber cuanto dinero obtendrá por concepto de comisiones por tres ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones. 13. Una tienda ofrece un descuento de 15% sobre el total de la compra y un cliente desea saber cuánto deberá pagar después de hecho el descuento. 14. Un alumno desea saber cuál será su calificación definitiva en la Materia de Programación, tomando en cuenta que presentó 3 exámenes parciales que deberán promediarse. 15. Un maestro desea saber que porcentaje de hombres y mujeres hay en un grupo de estudiantes, tomando como base el número de alumnos que existen de cada sexo: 16. Calcular la edad en años cumplidos de una persona, tomando como base el año de nacimiento y el año actual. 17. Calcular el valor absoluto de un número. 5 18. Calcular el número de pulsaciones que debe tener una persona por cada 10 segundos de ejercicio en base a la fórmula: 10 / 220-edad) ( s pulsacione número de = 19. Calcular el nuevo salario de un obrero, pidiendo por teclado el salario del obrero antes del aumento y el porcentaje de aumento obtenido. 20. Una persona corre la misma ruta todos los lunes, miércoles y viernes, cronometrando los tiempos que obtiene cada día, calcular el tiempo promedio en que la persona recorre la ruta en una semana cualquiera. 21. Tres personas deciden invertir su dinero para fundar una empresa. Cada una de ellas invierte una cantidad distinta. Obtener el porcentaje que cada quien invierte. 22. La calificación de una materia se obtiene con el 80% de examen, 10% de tareas y 10% de participación, si la calificación máxima es 10 y se desarrollaron 5 tareas, y se debieron alcanzar 6 participaciones. Calcular la calificación de un alumno solicitando por teclado la calificación del examen, el número de tareas entregadas y el total de participaciones obtenidas. 6 7 Utiliza las instrucciones if, if-else o switch, según sea necesario. 1. En un almacén se hace un 20% de descuento a los clientes cuya compra supere los $1,000 de compra, determina la cantidad que cada cliente deberá pagar pidiendo del teclado el importe total de su compra. 2. Un aspirante desea saber si aprobó el curso propedéutico requerido para ingresar al TESE, cursó las materias de matemáticas, administración e informática y debe sacar un promedio de al menos 7. Pedir por teclado las calificaciones de cada una de las materias y enviar un mensaje que indique si el aspirante aprobó o reprobó el curso. 3. Pedir por teclado un número y enviar un mensaje que indique si es par o impar. 4. Pedir por teclado un número y enviar un mensaje que indique si es primo o no primo. 5. Determinar si un alumno aprobará un curso y enviar un mensaje que lo indique. Considerando que aprobará si su promedio de 3 calificaciones (solicitadas por teclado) es mayor o igual a 7.0 6. En una empresa con diferentes turnos se debe determinar el número de horas que un trabajador debe laborar a la semana, de acuerdo con el artículo 61 de la Ley Federal del Trabajo que dice: “La duración máxima de la jornada será: ocho horas diurna, siete la nocturna y siete horas y media la mixta”, considerar además que por cada seis días laborables corresponde uno de descanso. Se debe pedir el turno del trabajador. 7. Calcular el sueldo semanal de un trabajador de jornada diurna en base a su sueldo por hora y las horas que trabajó a la semana, considerando el artículo 66 de la Ley Federal del Trabajo que dice: ”podrá también prolongarse la jornada de trabajo por circunstancias extraordinarias, sin exceder nunca de tres horas diarias ni de tres veces en una semana”, las primeras 8 horas extras se pagarán al doble y las demás al triple. 8. En una tienda se lleva a cabo una promoción en la cual se hace un descuento sobre el total de la compra según el color de la esfera que el cliente saque al pagar en caja. Si la esfera es azul el descuento es del 10%, si es roja el descuento es del 20%, si es verde 30% y si es dorada 50%. Pedir por teclado el total de la compra y el color de la esfera para calcular el porcentaje de descuento, el importe del descuento y la cantidad total que el cliente pagará. 9. Dados tres números, deducir cuál es el central. 8 10. Elaborar el programa que lea cuatro números y, determine cual es el mayor de los cuatro. 11. Leer una cadena de caracteres y determinar si está situada antes o después de la palabra “PROGRAMA” en orden alfabético. 12. Un programa que permita emitir una factura correspondiente a una compra de varios artículos. El IVA a aplicar es del 12% y si el precio bruto (precio de venta+IVA) es mayor de $5,000.00, se aplicará un descuento del 5%. 13. Realizar un programa que averigüe si dados dos números introducidos por teclado, uno es divisor del otro. 14. Diseñar un programa en el que a partir de una fecha introducida por teclado con el formato DIA, mes y año, se obtenga la fecha del DIA siguiente. 15. Determinar el precio de un billete de ida y vuelta en ferrocarril, conociendo la distancia a recorrer y sabiendo que si el número de días de estancia es superior a siete y la distancia superior a 800 km. El billete tiene una reducción del 30%. El precio por km. es de $15.00. 16. Desarrollar un programa que convierta un número del sistema decimal comprendido entre 1 y 10 a número romano. 17. Desarrollar un programa que lea una palabra en español y la convierta a inglés. Deberá programar para 5 palabras mínimo. 18. Determine el valor de f(x) si: ¦ ¹ ¦ ´ ¦ > < > + < = 15 x si 6 15 y x 5 x si 3 0 x si ) ( 2 4 x x x x x f 19. Una agencia automotriz está realizando descuentos a todos sus clientes que realicen una compra de un automóvil último modelo, estos descuentos dependen del modelo de automóvil. Calcular el costo de pago dependiendo de la modalidad de pago. Tome en cuenta la siguiente tabla: Tipo de Automóvil Crédito Contado Chevy 6% 13% Cutlas 8% 15% 9 Fiesta 9% 15% Cavalier 10% 16% Taurus 9% 15% 20. Una empresa aumentará los salarios de sus empleados de acuerdo a la siguiente tabulación: Ingresos Actuales Aumento Xs1000 12% 1000<Xs2500 10% 2500< Xs3500 9% 3500 < X<5000 8% X>5000 5% 21. Construya un programa, que dado como dato una temperatura en grados Fahrenheit, determine el deporte que es apropiado practicar a esa temperatura, teniendo en cuenta la siguiente tabla: Deporte Temperatura Natación >85 Tenis 70<temp≤85 Golf 32<temp≤70 Esquí 10<temp≤32 Marcha ≤10 11 Aplicar las instrucciones for, while o do while, según el caso a resolver. 1. Generar números del 1 al 10 y mostrarlos en pantalla. 2. Imprimir los números pares comprendidos entre 1 y 10. 3. Imprimir los números múltiplos de 5. 4. Imprimir los números múltiplos de 9 comprendidos entre 1 y 100. 5. Imprimir todos los números primos positivos menores que 50. 6. Imprimir las tablas de multiplicar del 1 al 10. 7. Calcular el factorial de un número. 8. Generar la tabla de multiplicar que el usuario indique por teclado. 9. Calcular el importe a pagar (pidiendo el precio unitario del artículo y la cantidad comprada) para 10 artículos. 10. Cálculo del sueldo neto de un trabajador (pidiendo por teclado el sueldo diario y los días trabajador) para 10 empleados. 11. Calculo del importe a pagar (pidiendo el precio unitario del artículo y la cantidad comprada), preguntar al usuario si desea calcular otro importe o terminar, al final deberá desplegarse la suma de todos los importes para saber el total que deberá pagar el cliente. 12. Ampliar el programa anterior preguntando al final al usuario si desea repetir el proceso para un nuevo cliente. 13. Pedir n números por teclado y encontrar al mayor de todos ellos. 14. Pedir n números por teclado y encontrar al menor de todos ellos. 15. Pedir n números por teclado y encontrar el promedio de todos ellos. 16. Solicitar por pantalla un número entero positivo. Calcular y presentar el total de la suma de los números enteros positivos desde el 1 hasta el número solicitado. 17. Solicitar por pantalla un número entero positivo mayor a 3. Calcular y presentar el promedio de los números enteros positivos desde el 3 hasta el número solicitado. 12 18. Una institución bancaria calcula el interés que cobra a sus clientes de la siguiente manera: Saldo a pagar Porcentaje de interés mensual 0 a $100,000 1% $100,001 a $1'000,000 2% $1'000,001 a $10'000,000 4% Más de $10,000,000 5% Esta opción debe simular los pagos mensuales que se realicen al banco y calcular el interés correspondiente. Primero debe solicitar por pantalla el monto total del préstamo. Por cada mes debe calcular y mostrar los intereses generados y solicitar el pago que hace el cliente. El pago del cliente pagará los intereses generados y el restante se aplicará a disminuir la deuda del cliente (lo que pidió prestado). Si el pago del cliente no alcanza para pagar los intereses del mes, el banco cargará la diferencia al préstamo que se le hizo originalmente al cliente. Esta opción deberá proseguir hasta que el cliente pague el total de su deuda. 19. Solicitar por pantalla el número de empleados de la universidad. Por cada empleado, solicitar el tipo de empleado y el número de días trabajados. Si el empleado es de tipo Mantenimiento, pagarle $100,000.00 por día trabajado; si es de tipo Maestro, pagarle $150,000.00 por día; si es de tipo Administrativo, pagarle $200,000.00 diarios. Mostrar en pantalla la cantidad que se le pagará al empleado y, al final, mostrar el total que se le pagará a todos los empleados. 20. Realizar un programa para determinan si una palabra es un palíndromo. Nota: un palíndromo es una palabra que se lee igual de izquierda a derecha que de derecha a izquierda. Por ejemplo radar. 21. Desarrollar un programa para determinar el máximo común divisor de dos números enteros, por el algoritmo de Euclides. Nota: Para hallar el máximo común divisor de dos números se debe dividir uno entre otro. Si la división es exacta, es decir si el residuo es cero, el máximo común divisor es el divisor. Si no, se deben dividir otra vez los números, pero en este caso el dividendo será el antiguo divisor y el divisor el resto de la división anterior. El proceso se repetirá hasta que la división sea exacta. 13 22. Desarrollar un programa que lea e imprima una serie de números distintos de cero. El algoritmo debe terminar con un valor cero que no se debe imprimir. Finalmente se desea obtener la cantidad de valores leídos distintos de cero. 23. Desarrollar un programa que imprima y sume la serie de números 3,6,7,10,11,14,15,18,…,80. 24. Elaborar el programa que lea cuatro números y, a determine cual es el mayor de los cuatro. 25. Desarrollar un programa para determinar si un número N es primo (un número primo sólo es divisible por el mismo y por la unidad). Nota: una forma de averiguar si un número es primo es por tanteo. Para ello se divide sucesivamente el número por los números comprendidos entre 2 y N. si antes de llegar a N encuentra un divisor exacto, el número no será primo. Si el primer divisor es N el número será primo. 26. Se desea calcular independientemente la suma de los números pares e impares comprendidos entre 1 y 200. 27. Diseñar un programa que permita obtener el valor absoluto de un número. 28. Desarrollar un programa que obtenga la división entera y el residuo de la misma utilizando únicamente los operadores suma y resta. 29. Escribir un programa que convierta un número en sistema decimal a los sistemas binario, hexadecimal y octal. 30. El número de combinaciones de m elementos de n en n es: ( )! ! ! n m n m n m ÷ = | . | \ | Diseñar una función que permita calcular el número combinatorio. 31. Implementar tres funciones que permitan averiguar los valores de e X ,cos(x) y sen(x) a partir de las series siguientes: 14 ¿ = + + + + + = = n i n i x n x x x x x i x e 1 3 2 1 0 ! ..... ! 3 ! 2 ! 1 ! 0 ! ( ) ( ) ( ) .... ! 6 ! 4 ! 2 1 1 1 cos 6 4 2 ! 2 1 2 + ÷ + ÷ + = ÷ + = ¿ = x x x x x i x n i i ( ) ( ) ( ) .... ! 7 ! 5 ! 3 1 7 5 3 ! 1 2 1 1 2 + ÷ + ÷ = ÷ = + = + ¿ x x x x x sen i x n i i El programa debe solicitar por pantalla el valor de X y el número de iteraciones (n) y debe mostrar el resultado de la sumatoria. 32. Programa que transforma un número introducido por teclado en notación decimal a romano. El número será entero positivo y no excederá de 3000. Nota: Tome en cuenta las siguientes tablas: Dígito Escribir De 1 a 3 De 1 a 3 veces p1 4 p1 seguido de p2 De 5 a 8 p2 seguido por, de 0 a 3 veces p1 9 p1 y a continuación p3 Tenga en cuenta que, en las distintas llamadas que se realizan al procedimiento, se pasarán diferentes parámetros: Parámetro 1 (p1) Parámetro 2 (p2) Parámetro 3 (p3) Unidades ‘I’ ‘V’ ‘X’ Decenas ‘X’ ‘L’ ‘C’ Centenas ‘C’ ‘D’ ‘M’ 15 Miles ‘M’ ‘ ’ ‘ ’ 33. Elaborar una función recursiva que Calcular la potencia de un número entero positivo. 34. Escribir una función recursiva que Calcular la serie de Fibonacci. 35. Escribir las funciones recursivas para convertir un número del sistema decimal a los sistemas binario, hexadecimal y octal. 36. Elaborar un procedimiento recursivo que nos permita invertir una cadena. 37. Desarrollar un programa recursivo para las Torres de Hanoi. 17 Resuelva los siguientes ejercicios utilizando arreglos. 1. Almacenar en un vector 5 números y desplegar los elementos en el orden que fueron introducidos. 2. Almacenar en un vector 5 números y desplegar los elementos en el orden inverso al que fueron introducidos. 3. Almacenar en un vector 5 números y los sume. 4. Almacenar en un vector 5 números y los ordene. 5. Almacenar en vectores el nombre y teléfono de 5 personas, para posteriormente ordenarlos y mostrarlos en pantalla. 6. Almacenar el un vector de n elementos números leídos por teclado. El tamaño del arreglo también deberá ser leído por teclado. 7. Define un arreglo unidimensional de diez elementos y solicita por pantalla el valor de cada elemento. El contenido de cada elemento debe ser un valor numérico. Y realizar lo siguiente: a. En un procedimiento ordena, en forma ascendente el arreglo. b. Haz una función que reciba como parámetro un valor X y regrese la posición donde se encuentra dicho elemento en el arreglo. c. Haz un procedimiento que reciba como parámetros un valor X y una posición P. Inserte el valor X en la celda indicada por el parámetro P y recorra todos los demás elemento una posición hacia abajo. 8. Almacenar números en una matriz de 2 renglones por 3 columnas, borrar la pantalla y desplegar los números en el orden en que fueron introducidos. 9. Almacenar en una matriz cuadrada 9 números y desplegar los números en el orden en que fueron introducidos. 10. Define un arreglo bidimensional de cinco renglones por cuatro columnas y solicita, por pantalla, el valor de cada uno de sus elementos. 18 11. Define un arreglo bidimensional de cuatro renglones por cinco columnas. Copia las columnas del arreglo del ejercicio anterior como renglones del nuevo arreglo. 12. Se tienen N temperaturas almacenadas en un array. Se desea calcular su media y obtener el número de temperaturas mayores o iguales que la media. 13. Calcular el número de elementos negativos, cero y positivos de un vector de 60 elementos. Los 60 elementos deberán ser generados en forma aleatoria, dentro de un intervalo de -10 y 10. 14. Rellenar una matriz identidad de 4 por 4 elementos. 15. Desarrollar un programa que Calcular el mayor de una lista L de N elementos, así como su posición. 16. Rellenar un vector a de N elementos con enteros consecutivos de forma que cada elemento A i =i. 17. Hacer diferentes listados de una lista de 25 números según el siguiente criterio: a. Si número >=0 y número<50, ponerlo en Lista1 b. Si número >=50 y número<100, ponerlo en Lista2 c. Si número >=100 y número<150, ponerlo en Lista3 Nota: llenar lista con números aleatorios comprendidos entre 0 y 150. 18. Desarrollar un programa que Calcular la suma de matrices de tamaño n x n. 19. ELaborar un programa que Calcular la resta de matrices de tamaño n x n 20 Realizar los siguientes ejercicios utilizando archivos secuenciales. 1. Se desea almacenar los datos de un producto en un registro. Cada producto debe guardar la información concerniente a su código de producto, nombre y precio. Diseñar la estructura de datos correspondientes y un procedimiento que permita cargar los datos en un archivo. 2. Una farmacia desea almacenar sus productos en una estructura de registros. Cada registro tiene los campos código, nombre, descripción del medicamento (antibiótico, analgésico, etc), laboratorio, proveedor, precio, porcentaje de IVA y Fecha de Caducidad. La fecha deberá ser guardada por separado el día, mes y año. Diseñar la estructura de datos y un procedimiento que permita escribir los datos, ordenarlos por: nombre, campos código, descripción, modifica datos y eliminar. 3. Desarrollar un programa que ordene los datos de un archivo secuencial. 4. Elaborar un programa que localice un dato dentro de un archivo secuencial. 5. Elaborar un programa que elimine un dato dentro de un archivo secuencial. 6. Suponga que tiene un archivo de texto llamado "alumnos.dat" almacenado en su disco duro o en el servidor, cada grupo de datos contiene un total de 25 alumnos, donde se tiene el nombre completo de cada alumno y en la siguiente línea tres calificaciones. Escribir un programa para calcular e imprimir el nombre de cada alumno, sus calificaciones y el promedio. Ejemplo del archivo "alumnos.dat" Jorge Rivero 10.0 8.5 9.7 Lidia Limón Lara 10.0 8.5 9.7 Raquel Escandón López 8.6 8.0 5.9 21 7. Tiene un archivo de texto llamado "sorpresa1.dat", que contiene datos numéricos de tipo entero. Escribir un programa para traducir e imprimir dicho archivo, las claves de traducción son: 0 equivale a * 1 equivale a . 2 equivale a ^ 3 equivale a _ 4 equivale a ^ 5 equivale a – 6 equivale a _ 7 y 10 equivalen a \ 8 equivale a / 9 equivale a espacio en blanco El archivo "sorpresa1.dat" es el siguiente: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 9 9 9 9 9 9 9 9 9 9 9 9 9 1 5 5 5 1 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 0 0 9 9 9 1 5 5 5 1 9 9 9 9 8 6 9 9 6 9 7 9 9 9 9 9 9 9 1 5 5 5 1 9 9 9 0 0 9 9 8 9 6 9 9 6 7 9 9 9 7 7 8 7 8 9 8 9 9 9 9 9 9 8 6 9 9 6 9 7 9 9 0 0 9 9 7 9 7 8 7 8 8 9 9 9 7 7 10 9 9 8 8 9 9 9 9 9 9 7 7 8 7 8 9 8 9 9 0 0 9 9 9 7 9 9 10 8 9 9 9 9 9 7 7 7 8 8 9 9 9 9 9 9 9 9 7 10 9 9 8 9 9 9 0 0 9 9 9 6 7 2 8 9 9 9 9 9 9 9 8 9 9 7 9 9 9 9 9 9 9 9 9 7 2 8 6 9 9 9 0 0 9 6 8 8 9 9 7 7 6 9 9 9 9 9 7 6 6 8 9 9 9 9 9 9 9 6 8 8 9 9 7 7 6 9 0 0 9 9 9 7 6 6 8 9 9 7 9 9 9 9 9 7 6 7 6 6 9 9 9 9 8 9 9 7 6 6 8 9 9 9 0 0 9 9 9 9 7 9 7 9 9 9 10 1 9 9 9 9 9 9 9 9 9 9 1 10 9 9 9 9 8 9 7 9 9 9 0 0 9 9 9 9 8 6 8 6 9 9 9 9 10 5 5 1 1 1 1 5 5 10 9 9 9 9 9 6 7 9 8 6 9 9 0 0 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 8. Suponga que tiene un archivo de texto llamado "clientes.dat" almacenado en su disco duro o en el servidor, cada grupo de datos contiene el nombre completo del cliente, dirección, sexo y balance de pagos en una cuenta de una tienda. Escribir un programa que: 1. Mande a desplegar dos resumenes en forma separada, el de varones y el de mujeres con todos los datos de los clientes. 22 2. Desplegar un tercer resumen con la siguiente información: Número total de clientes = ___________ Número de varones = ___________ Número de mujeres = ___________ Promedio de cuentas para hombres = ___________ Promedio de cuentas para mujeres = ___________ 24 Realizar los siguientes ejercicios utilizando base de datos. 1. Desarrollar un programa con las operaciones básicas de una base de datos (altas, bajas, cambios y consultas). Cada registro debe contener código de producto, nombre y precio. 2. Una farmacia desea almacenar sus productos en una base de datos. Cada registro tiene los campos código, nombre, descripción del medicamento (antibiótico, analgésico, etc), laboratorio, proveedor, precio, porcentaje de IVA y Fecha de Caducidad. La fecha deberá ser guardada por separado el día, mes y año. Diseñar la los programas necesarios para manejar las operaciones básicas de una base de datos (altas, bajas, cambios, consultas y ordenar). 26 Realizar las soluciones de los siguientes ejercicios. 1. Implementar un programa en Java que Calcular la distancia recorrida por la luz en un determinado número de días. 2. Implementar un programa en Java que Calcular el área de un círculo con un radio determinado. 3. Implementar un programa en Java que Calcular la pendiente de una recta a partir de dos puntos en dos dimensiones. 4. Implementar un programa en Java que calcula la potencia de un número. 5. Implementar un programa en Java que ordena, de mayor a menor, tres números introducidos por teclado. 6. Desarrollar una clase Lista que contenga un array de n enteros. La clase tendrá dos constructores: Lista(int n) Creará un array de n enteros distribuidos aleatoriamente. Lista(int n, boolean ascendente) Creará un array de n enteros generados aleatoriamente y ordenados ascendentemente si ascendente es true, y descendentemente si ascendente es false. 7. Desarrollar un programa que Calcular la edad de una persona, indicandole la fecha de nacimiento con el formato dd/mm/aa. 8. Calcular el factorial de un número. 9. Calcular el factorial de un número, utilizando funciones recursivas. 10. Liste los números enteros en orden inverso, entre dos números que se leen desde teclado: por ejemplo entre 8 y 5 serían 8,7,6,5. 11. Desarrollar un programa que con la fecha del sistema, la imprima con el siguiente formato. Ejemplo: Lunes 16, de Agosto del 2002. 27 12. Desarrollar un programa que imprima los números nones, entre dos números proporcionados por teclado. 13. Dibuje una línea de asteriscos. La longitud de la línea se lee desde el teclado. 14. Pinte un rectángulo lleno de asteriscos. La longitud de la base y la altura se leen desde teclado. 15. Elaborar una tabla de Convertir de grados Centigrados a Fahrenheit. 16. El servicio médico del TESE desea obtener el promedio de pesos y estaturas de los alumnos de informática. Elaborar un programa que solicite el peso y estatura de cada alumno y entregue como resultado el promedio de peso y estaturas de hombres y mujeres, así como los promedios generales de peso y estatura. 17. Hacer un programa que lea los tres coeficientes de una ecuación cuadrática y determine sus raices. El programa deberá informar si las raices son iguales o diferentes y si son de solución real o imaginaria. 18. Un trabajador recibe su sueldo normal por las primeras 30 horas y se le paga 1 ½ veces su sueldo normal por cada hora después de las primeras 30. Elaborar el programa para calcular su pago. 19. Desarrollar un programa que imprima con letras el valor de un número. El valor máximo será 2000. 20. Un empresa dedicada la venta de artículos escolares, desea saber que articulos fueron los más vendidos durante cada uno de los meses del año, asi como cuales fueron los menos vendidos y cuales son los que tienen mayor venta en forma anual, para ello han solicitado a sus vendedores que registren en un programa sus ventas mensuales de cada uno de los productos vendidos. Los productos que vende esta empresa son: cuadernos, mochilas, libros y boligrafos. Elaborar el programa que Calcular los datos mencionados en el problema. 21. Un restaurant desea determinar cuales fueron las ventas semanales de sus platillos, al igual saber cual de los cuatro platillos que se elaboran es el más consumido y cual es el que se consume menos. 22. Realizar un programa que Calcular el volumen de una esfera, que viene dado por la formula: 28 3 3 4 r v t = 23. Realizar un programa que pregunte el nombre y el año de nacimiento y dé como resultado: “Hola nombre, en el año 2030 tendrás n años” 24. Realizar un programa que evalué el polinomio 7 2 5 3 3 5 ÷ + ÷ = x x x p y visualizar el resultado con el siguiente formato: Para x= valor, 3x^5 – 5x^3 + 2x – 7 = resulado 25. Realizar la solución al programa 23, pero empleando ahora coeficientes variables a, b, c 26. Realizar un programa que a través de un menú permita realizar las operaciones de sumar, restar, multiplicar, dividir y salir. Las operaciones constaràn solamente de dos operandos. 27. Realizar un programa que Calcular e imprima la suma de los múltiplos de 5 comprendidos entre dos valores a y b. El programa no permitirá introducir valores negativos para a y b, y verificará que a es menor que b. Si a es mayor que b, intercambiará estos valores. 28. Realizar un programa que permita evaluar la serie: ¿ = + b a ay x 0 1 29. Si quiere averiguar su número de Tarot, sume los números de su fecha de nacimiento y a continuación redúzcalos a un único dígito; por ejemplo si su fecha de nacimiento fuera 17 de Octubre de 1970, los cálculos a realizar serían: 17+10+1970=»1997=»1+9+9+7=»26=»2+6=»8 30. Realizar un programa que Calcular las raices de la ecuación: 0 2 = + + c bx ax teniendo en cuenta los siguientes casos: 1. Si a es igual a 0 y b es igual a 0, imprimiremos un mensaje diciendo que la ecuación es degenerada. 29 2. Si a es igual a 0 y b no es igual a 0, existe una raíz única con valor b c / ÷ 3. En los demás casos, utilizaremos la formula siguiente: a ac b b x i 2 4 2 ÷ ± ÷ = La expresión ac b d 4 2 ÷ = se denomina discriminante. - Si d es mayor o igual a 0 entonces hay dos raíces reales. - Si d es menor que 0 entonces hay dos raíces complejas de la forma: yj x yj x ÷ + , Indicar con literales apropiados los datos a introducir, así como los resultados obtenidos. 31. Realizar un programa que lea una lista de valores introducidos por teclado. A continuación, y sobre la lista, buscar los valores máximo y mínimo, y escribirlos. 32. Escribir un programa que cuente el número de veces que aparece cada una de las letras de un texto introducido por el teclado y a continuación imprima el resultado. Para hacer el ejercicio más sencillo, vamos a suponer que el texto sólo contiene letras minúsculas del alfabeto inglés (no hay ni letras acentuadas, ni la ll, ni la ñ). 33. Se desea realizar un histograma con los pesos de los alumnos de un determinado curso. Peso Número de alumnos 21 ** 22 ***** 23 **************** 24 *** …. ……. 30 El número de asteriscos se corresponde con el número de alumnos del peso especificado. Realizar un programa que lea los pesos e imprima el histograma correspondiente. Suponer que los pesos están comprendidos entre los valores 10 y 100 Kg. En el histograma sólo aparecerán los pesos que se corresponden con 1 o más alumnos. 34. Realizar un programa que lea una cadena de n caracteres e imprima el resultado que se obtiene cada vez que se realice una rotación de un carácter a la derecha sobre dicha cadena. El proceso finalizará cuando se haya obtenido nuevamente la cadena de caracteres original. Por ejemplo: HOLA AHOL LAHO OLAH HOLA 35. La mediana de una lista de n números se define como el valor que es menor o igual que los valores correspondientes a la mitad de los números, y mayor o igual que lo valores correspondientes a la otra mitad. Por ejemplo, la mediana de: 16 12 99 95 18 87 10 es 18, porque este valor es menor que 99, 95 y 87 (mitad de los números) y mayor que 16,12 y 10 (otra mitad). Realizar un programa que lea un número impar de valores y dé como resultado la mediana. La entrada de valores finalizará cuando se detecte la marca de fin de fichero. 36. Realizar un programa que se comporte como un diccionario Inglés- Español; esto es, solicitará una palabra en inglés y escribirá la correspondiente palabra en español. El número de parejas de palabras es variable, pero limitado a un máximo de 100. La longitud de cada palabra será de 40 caracteres. Por ejemplo, suponen que introducimos las siguientes parejas de palabras: book libro green verde mouse ratón 31 Una vez finalizada la introducción de las listas de palabras pasaremos al modo traducción, de forma que si tecleamos green, la respuesta ha de ser verde. Si la plabra no se encuentra se emitirá un mensaje que lo indique. El programa constará al menos de dos métodos: a. crearDiccionario. Este método creará el diccionario. b. traducir. Este método realizará la labor de traducción. 37. Realizar un programa que: 1. Lea dos cadenas de caracteres denominadas cadena1 y cadena2 y un número entero n. 2. Llame a un método: static int compcads(cadena1, cadena2,n) que compare los n primeros caracteres de cadena1 y de cadena2, y devuela como resultado un valor entero: 0 si cadena1 y cadena2 son iguales 1 si cadena1 es mayor que cadena2(los n primeros caracteres) -1 si cadena1 es menor que cadena2(los n primeros caracteres) Si n es menor que 1 o mayor que la longitud de la menor de las cadenas, la comparación se hará sin tener en cuenta este parámetro. 3. Escribir la cadena que sea menor según los n primeros caracteres (esto es, la que esté antes por orden alfabético). 38. Escribir un programa para evaluar la expresión n by ax ) ( + . Para ello, tenga en cuenta las siguientes expresiones: 32 ¿ = ÷ | | . | \ | = + n k k k n n by ax k n by ax 0 ) ( ) ( ) ( ( )! ! ! k n k n k n ÷ = | | . | \ | 1 * 2 * .. * ) 2 ( * ) 1 ( * ! ÷ ÷ = n n n n a. Escribir un método cuyo prototipo sea: static long factorial(int n) El método del factorial recibe como parámetro un entero y devuelve el factorial del mismo. b. Escribir un método con el prototipo static long combinaciones(int n, int k) El método combinaciones recibe como parámetro dos enteros n y k, y devuelve como resultado el valor de | | . | \ | k n c. Escribir un método que tenga el prototipo static long potencia(int base, int exponente) El método potencia recibe como parámetro dos enteros base y exonente, y devuelve como resultado el valor de la onente base exp 33 d. El método main leerá los valores de a,b,n,x e y, y utilizará los método anteriores escribirá como resultado el valor de n by ax ) ( + 39. Elaborar un programa que controle las ventas diarias de una tienda (durante un semana) y que sea capaz de determinar: a) Día de la semana que hubo mayor venta b) Día de la semana que hubo menor venta c) Promedio de ventas semanales d) Total de ventas realizadas en la semana 40. Elaborar un programa que lea un conjunto de datos enteros positivos y Calcular. a) El dato mayor b) El dato menor c) El Promedio de los datos d) La sumatoria de los elementos e) El total de elementos leidos 2 Alumno: Te doy la bienvenida a tu curso de programación en Java, este es un breve manual de ejercicios que realizarás en las prácticas a lo largo del semestre, recuerda que las prácticas son parte de tu evaluación y tu derecho a examen, cada una de las secciones que encuentres en este manual debe de ir fundamentadacon una investigación de tu parte referente a la información que se requiere para adquirir el conocimiento teórico de cada tema; esta investigación puedes formarla de los apuntes que tomas en clase, investigaciones personales que realices en libros y/o Internet. Recuerda que las prácticas debes realizarlas de manera personal y basándote lo menos posible en soluciones que encuentres en libros o la red para que fortalezcas tu conocimiento en este lnguaje. Te deseo el mejor de los aprendizajes. Tu profesora. 3 Calcular el perímetro de un hexágono 7. Convertir de dólares a pesos 8. El vendedor desea saber cuanto dinero obtendrá por concepto de comisiones por tres ventas que realiza en el mes y el total que recibirá en el mes tomando en cuenta su sueldo base y comisiones. los cuales pueden o no estar especificados en el problema. considerando que el tipo de dato idóneo. Calcular el área de un circulo 5. Un alumno desea saber cuál será su calificación definitiva en la Materia de Programación. Calcular del número de salarios mínimos que gana un trabajador 10. además los resultados deberán ser desplegados en pantalla. Calcular el área de un rectángulo 4. Calcular la edad en años cumplidos de una persona. Una tienda ofrece un descuento de 15% sobre el total de la compra y un cliente desea saber cuánto deberá pagar después de hecho el descuento. 1. 14. tomando en cuenta que presentó 3 exámenes parciales que deberán promediarse. Calcular el importe a pagar 11. tomando como base el número de alumnos que existen de cada sexo: 16. 17. Calcular el promedio de 2 números 3. Calculo del sueldo neto de un trabajador 12. . 13. Calcular la suma de 2 números. Convertir de pesos a dólares 9. Calcular el valor absoluto de un número.4 Elaborar los programas para cada uno de los siguientes problemas. Calcular el perímetro de un circulo 6. 2. Un vendedor recibe un sueldo base más un 10% extra por comisión de sus ventas. tomando como base el año de nacimiento y el año actual. 15. Un maestro desea saber que porcentaje de hombres y mujeres hay en un grupo de estudiantes. . Una persona corre la misma ruta todos los lunes.5 18. 21. si la calificación máxima es 10 y se desarrollaron 5 tareas. cronometrando los tiempos que obtiene cada día. y se debieron alcanzar 6 participaciones. Calcular el nuevo salario de un obrero. el número de tareas entregadas y el total de participaciones obtenidas. Calcular la calificación de un alumno solicitando por teclado la calificación del examen. La calificación de una materia se obtiene con el 80% de examen. Tres personas deciden invertir su dinero para fundar una empresa. Cada una de ellas invierte una cantidad distinta. 10% de tareas y 10% de participación. Calcular el número de pulsaciones que debe tener una persona por cada 10 segundos de ejercicio en base a la fórmula: número de pulsaciones ( 220-edad) / 10 19. pidiendo por teclado el salario del obrero antes del aumento y el porcentaje de aumento obtenido. 22. Obtener el porcentaje que cada quien invierte. calcular el tiempo promedio en que la persona recorre la ruta en una semana cualquiera. miércoles y viernes. 20. 6 . Pedir por teclado un número y enviar un mensaje que indique si es par o impar. según sea necesario. Un aspirante desea saber si aprobó el curso propedéutico requerido para ingresar al TESE. siete la nocturna y siete horas y media la mixta”. 7. el importe del descuento y la cantidad total que el cliente pagará. 8. Determinar si un alumno aprobará un curso y enviar un mensaje que lo indique. Pedir por teclado las calificaciones de cada una de las materias y enviar un mensaje que indique si el aspirante aprobó o reprobó el curso. Pedir por teclado un número y enviar un mensaje que indique si es primo o no primo. Considerando que aprobará si su promedio de 3 calificaciones (solicitadas por teclado) es mayor o igual a 7. si es verde 30% y si es dorada 50%. administración e informática y debe sacar un promedio de al menos 7. 4. if-else o switch. cursó las materias de matemáticas.0 6. 1. En una empresa con diferentes turnos se debe determinar el número de horas que un trabajador debe laborar a la semana. 5. En un almacén se hace un 20% de descuento a los clientes cuya compra supere los $1. considerar además que por cada seis días laborables corresponde uno de descanso. determina la cantidad que cada cliente deberá pagar pidiendo del teclado el importe total de su compra. 3. . 9. En una tienda se lleva a cabo una promoción en la cual se hace un descuento sobre el total de la compra según el color de la esfera que el cliente saque al pagar en caja. Pedir por teclado el total de la compra y el color de la esfera para calcular el porcentaje de descuento. considerando el artículo 66 de la Ley Federal del Trabajo que dice: ”podrá también prolongarse la jornada de trabajo por circunstancias extraordinarias. sin exceder nunca de tres horas diarias ni de tres veces en una semana”. deducir cuál es el central. Se debe pedir el turno del trabajador. Calcular el sueldo semanal de un trabajador de jornada diurna en base a su sueldo por hora y las horas que trabajó a la semana.000 de compra.7 Utiliza las instrucciones if. Dados tres números. las primeras 8 horas extras se pagarán al doble y las demás al triple. 2. si es roja el descuento es del 20%. Si la esfera es azul el descuento es del 10%. de acuerdo con el artículo 61 de la Ley Federal del Trabajo que dice: “La duración máxima de la jornada será: ocho horas diurna. 16. uno es divisor del otro. conociendo la distancia a recorrer y sabiendo que si el número de días de estancia es superior a siete y la distancia superior a 800 km. mes y año. 17. Elaborar el programa que lea cuatro números y. Determinar el precio de un billete de ida y vuelta en ferrocarril. Deberá programar para 5 palabras mínimo. Desarrollar un programa que lea una palabra en español y la convierta a inglés. se obtenga la fecha del DIA siguiente. El IVA a aplicar es del 12% y si el precio bruto (precio de venta+IVA) es mayor de $5.00. 11. es de $15. estos descuentos dependen del modelo de automóvil. Una agencia automotriz está realizando descuentos a todos sus clientes que realicen una compra de un automóvil último modelo. Determine el valor de f(x) si: x4 f ( x) x 2 3x 6x si x 0 si x 5 y x 15 si x 15 19. determine cual es el mayor de los cuatro. 13.00. 14. Un programa que permita emitir una factura correspondiente a una compra de varios artículos.000. se aplicará un descuento del 5%. El precio por km.8 10. El billete tiene una reducción del 30%. 12. Tome en cuenta la siguiente tabla: Tipo de Automóvil Chevy Cutlas Crédito 6% 8% Contado 13% 15% . Calcular el costo de pago dependiendo de la modalidad de pago. 15. Leer una cadena de caracteres y determinar si está situada antes o después de la palabra “PROGRAMA” en orden alfabético. 18. Desarrollar un programa que convierta un número del sistema decimal comprendido entre 1 y 10 a número romano. Diseñar un programa en el que a partir de una fecha introducida por teclado con el formato DIA. Realizar un programa que averigüe si dados dos números introducidos por teclado. Una empresa aumentará los salarios de sus empleados de acuerdo a la siguiente tabulación: Ingresos Actuales X1000 1000<X2500 2500< X3500 3500 < X<5000 X5000 Aumento 12% 10% 9% 8% 5% 21. que dado como dato una temperatura en grados Fahrenheit. teniendo en cuenta la siguiente tabla: Deporte Natación Tenis Golf Esquí Marcha Temperatura >85 70<temp≤85 32<temp≤70 10<temp≤32 ≤10 . determine el deporte que es apropiado practicar a esa temperatura. Construya un programa.9 Fiesta Cavalier Taurus 9% 10% 9% 15% 16% 15% 20. . 7. 17. 9. Pedir n números por teclado y encontrar al mayor de todos ellos. Solicitar por pantalla un número entero positivo. 2. Calcular y presentar el total de la suma de los números enteros positivos desde el 1 hasta el número solicitado. Calcular el importe a pagar (pidiendo el precio unitario del artículo y la cantidad comprada) para 10 artículos. según el caso a resolver.11 Aplicar las instrucciones for. 4. Calculo del importe a pagar (pidiendo el precio unitario del artículo y la cantidad comprada). 16. Ampliar el programa anterior preguntando al final al usuario si desea repetir el proceso para un nuevo cliente. 8. 10. 14. 12. preguntar al usuario si desea calcular otro importe o terminar. Imprimir los números pares comprendidos entre 1 y 10. Imprimir todos los números primos positivos menores que 50. Pedir n números por teclado y encontrar al menor de todos ellos. 1. Calcular y presentar el promedio de los números enteros positivos desde el 3 hasta el número solicitado. 5. al final deberá desplegarse la suma de todos los importes para saber el total que deberá pagar el cliente. 6. Generar números del 1 al 10 y mostrarlos en pantalla. . Generar la tabla de multiplicar que el usuario indique por teclado. Solicitar por pantalla un número entero positivo mayor a 3. Imprimir los números múltiplos de 5. Imprimir los números múltiplos de 9 comprendidos entre 1 y 100. while o do while. Pedir n números por teclado y encontrar el promedio de todos ellos. 3. 13. 11. Imprimir las tablas de multiplicar del 1 al 10. 15. Calcular el factorial de un número. Cálculo del sueldo neto de un trabajador (pidiendo por teclado el sueldo diario y los días trabajador) para 10 empleados. Por cada empleado. es decir si el residuo es cero. el máximo común divisor es el divisor.000. Por cada mes debe calcular y mostrar los intereses generados y solicitar el pago que hace el cliente.000 $1'000.000.00 diarios. Nota: Para hallar el máximo común divisor de dos números se debe dividir uno entre otro. 20. pagarle $200.000.12 18.000 $100. Si el pago del cliente no alcanza para pagar los intereses del mes. .000 Más de $10. Nota: un palíndromo es una palabra que se lee igual de izquierda a derecha que de derecha a izquierda. El pago del cliente pagará los intereses generados y el restante se aplicará a disminuir la deuda del cliente (lo que pidió prestado). 19. Desarrollar un programa para determinar el máximo común divisor de dos números enteros. Si no. al final.00 por día trabajado. el banco cargará la diferencia al préstamo que se le hizo originalmente al cliente. Solicitar por pantalla el número de empleados de la universidad. pagarle $150.001 a $10'000.00 por día. pero en este caso el dividendo será el antiguo divisor y el divisor el resto de la división anterior. El proceso se repetirá hasta que la división sea exacta. si es de tipo Maestro. por el algoritmo de Euclides. solicitar el tipo de empleado y el número de días trabajados.001 a $1'000. Por ejemplo radar.000. si es de tipo Administrativo. Si el empleado es de tipo Mantenimiento. Esta opción deberá proseguir hasta que el cliente pague el total de su deuda. Si la división es exacta. se deben dividir otra vez los números. Realizar un programa para determinan si una palabra es un palíndromo. mostrar el total que se le pagará a todos los empleados. pagarle $100. 21.000 Porcentaje de interés mensual 1% 2% 4% 5% Esta opción debe simular los pagos mensuales que se realicen al banco y calcular el interés correspondiente. Una institución bancaria calcula el interés que cobra a sus clientes de la siguiente manera: Saldo a pagar 0 a $100. Mostrar en pantalla la cantidad que se le pagará al empleado y. Primero debe solicitar por pantalla el monto total del préstamo. 13 22. 30. Desarrollar un programa que imprima y sume la serie de números 3. Desarrollar un programa que lea e imprima una serie de números distintos de cero. 27. El número de combinaciones de m elementos de n en n es: m! m n n!m n ! Diseñar una función que permita calcular el número combinatorio. Nota: una forma de averiguar si un número es primo es por tanteo. El algoritmo debe terminar con un valor cero que no se debe imprimir.10.11. Implementar tres funciones que permitan averiguar los valores de eX. Finalmente se desea obtener la cantidad de valores leídos distintos de cero. 23. 25. Desarrollar un programa que obtenga la división entera y el residuo de la misma utilizando únicamente los operadores suma y resta.18. 26. Elaborar el programa que lea cuatro números y.6. Desarrollar un programa para determinar si un número N es primo (un número primo sólo es divisible por el mismo y por la unidad). 28. a determine cual es el mayor de los cuatro. 29. Escribir un programa que convierta un número en sistema decimal a los sistemas binario.7.…. si antes de llegar a N encuentra un divisor exacto. Diseñar un programa que permita obtener el valor absoluto de un número. 24. Si el primer divisor es N el número será primo.cos(x) y sen(x) a partir de las series siguientes: .15. Se desea calcular independientemente la suma de los números pares e impares comprendidos entre 1 y 200. el número no será primo. 31.14. hexadecimal y octal.80. Para ello se divide sucesivamente el número por los números comprendidos entre 2 y N. .. en las distintas llamadas que se realizan al procedimiento....14 xi x 0 x1 x 2 x3 xn e . se pasarán diferentes parámetros: Parámetro 1 (p1) Unidades Decenas Centenas ‘I’ ‘X’ ‘C’ Parámetro 2 (p2) ‘V’ ‘L’ ‘D’ Parámetro 3 (p3) ‘X’ ‘C’ ‘M’ . 3! 5! 7! El programa debe solicitar por pantalla el valor de X y el número de iteraciones (n) y debe mostrar el resultado de la sumatoria.. 0! 1! 2! 3! n! i 1 i! n x cosx 1 1 i 1 n x 2i 2i ! x 2 x 4 x6 1 x ... 2! 4! 6! senx 1 i 1 n x 2 i 1 2i 1! x3 x5 x7 x . de 0 a 3 veces p1 p1 y a continuación p3 Tenga en cuenta que. 32. Programa que transforma un número introducido por teclado en notación decimal a romano... Nota: Tome en cuenta las siguientes tablas: Dígito De 1 a 3 4 De 5 a 8 9 Escribir De 1 a 3 veces p1 p1 seguido de p2 p2 seguido por. El número será entero positivo y no excederá de 3000. 35. 37. 34. Desarrollar un programa recursivo para las Torres de Hanoi. hexadecimal y octal. . Elaborar una función recursiva que Calcular la potencia de un número entero positivo. Escribir una función recursiva que Calcular la serie de Fibonacci. Elaborar un procedimiento recursivo que nos permita invertir una cadena. 36. Escribir las funciones recursivas para convertir un número del sistema decimal a los sistemas binario.15 Miles ‘M’ ‘ ’ ‘ ’ 33. . Almacenar el un vector de n elementos números leídos por teclado. En un procedimiento ordena. 1. Almacenar en un vector 5 números y desplegar los elementos en el orden que fueron introducidos. Define un arreglo bidimensional de cinco renglones por cuatro columnas y solicita. Almacenar en una matriz cuadrada 9 números y desplegar los números en el orden en que fueron introducidos. por pantalla. Haz un procedimiento que reciba como parámetros un valor X y una posición P. Almacenar en un vector 5 números y los sume. Inserte el valor X en la celda indicada por el parámetro P y recorra todos los demás elemento una posición hacia abajo. para posteriormente ordenarlos y mostrarlos en pantalla. Almacenar en un vector 5 números y los ordene. 9. 5. 3.17 Resuelva los siguientes ejercicios utilizando arreglos. 2. Define un arreglo unidimensional de diez elementos y solicita por pantalla el valor de cada elemento. El contenido de cada elemento debe ser un valor numérico. el valor de cada uno de sus elementos. Almacenar números en una matriz de 2 renglones por 3 columnas. 7. siguiente: a. borrar la pantalla y desplegar los números en el orden en que fueron introducidos. 4. 8. en forma ascendente el arreglo. c. Haz una función que reciba como parámetro un valor X y regrese la posición donde se encuentra dicho elemento en el arreglo. b. Y realizar lo . Almacenar en un vector 5 números y desplegar los elementos en el orden inverso al que fueron introducidos. Almacenar en vectores el nombre y teléfono de 5 personas. 6. El tamaño del arreglo también deberá ser leído por teclado. 10. ponerlo en Lista3 Nota: llenar lista con números aleatorios comprendidos entre 0 y 150. cero y positivos de un vector de 60 elementos. Copia las Se tienen N temperaturas almacenadas en un array. ELaborar un programa que Calcular la resta de matrices de tamaño n x n . 16. Si número >=100 y número<150. Desarrollar un programa que Calcular el mayor de una lista L de N elementos. 19. Si número >=50 y número<100. Rellenar una matriz identidad de 4 por 4 elementos. ponerlo en Lista2 c. 18. 13. 15. Desarrollar un programa que Calcular la suma de matrices de tamaño n x n. 14. Define un arreglo bidimensional de cuatro renglones por cinco columnas. Rellenar un vector a de N elementos con enteros consecutivos de forma que cada elemento Ai=i. dentro de un intervalo de -10 y 10. 12. Hacer diferentes listados de una lista de 25 números según el siguiente criterio: a. así como su posición. columnas del arreglo del ejercicio anterior como renglones del nuevo arreglo. ponerlo en Lista1 b.18 11. Calcular el número de elementos negativos. Se desea calcular su media y obtener el número de temperaturas mayores o iguales que la media. Si número >=0 y número<50. Los 60 elementos deberán ser generados en forma aleatoria. 17. . sus calificaciones y el promedio. Escribir un programa para calcular e imprimir el nombre de cada alumno. campos código. Elaborar un programa que elimine un dato dentro de un archivo secuencial. ordenarlos por: nombre. descripción del medicamento (antibiótico.7 Raquel Escandón López 8.0 8. Se desea almacenar los datos de un producto en un registro.6 8. Ejemplo del archivo "alumnos. donde se tiene el nombre completo de cada alumno y en la siguiente línea tres calificaciones.9 .0 8. Cada producto debe guardar la información concerniente a su código de producto.5 9. Cada registro tiene los campos código. analgésico. Diseñar la estructura de datos y un procedimiento que permita escribir los datos. Desarrollar un programa que ordene los datos de un archivo secuencial. proveedor. etc).0 5. porcentaje de IVA y Fecha de Caducidad. modifica datos y eliminar. precio. laboratorio.7 Lidia Limón Lara 10. 3. Una farmacia desea almacenar sus productos en una estructura de registros. cada grupo de datos contiene un total de 25 alumnos. Suponga que tiene un archivo de texto llamado "alumnos. 5. Diseñar la estructura de datos correspondientes y un procedimiento que permita cargar los datos en un archivo. 1. descripción. La fecha deberá ser guardada por separado el día.dat" almacenado en su disco duro o en el servidor. nombre y precio. 4. Elaborar un programa que localice un dato dentro de un archivo secuencial.20 Realizar los siguientes ejercicios utilizando archivos secuenciales.dat" Jorge Rivero 10. 6.5 9. 2. nombre. mes y año. Escribir un programa que: 1.dat" almacenado en su disco duro o en el servidor. Tiene un archivo de texto llamado "sorpresa1.21 7. Suponga que tiene un archivo de texto llamado "clientes. Mande a desplegar dos resumenes en forma separada.dat". el de varones y el de mujeres con todos los datos de los clientes. . que contiene datos numéricos de tipo entero. dirección. sexo y balance de pagos en una cuenta de una tienda. Escribir un programa para traducir e imprimir dicho archivo. las claves de traducción son: 0 equivale a * 1 equivale a . 2 equivale a ^ 3 equivale a _ 4 equivale a ^ 5 equivale a – 6 equivale a _ 7 y 10 equivalen a \ 8 equivale a / 9 equivale a espacio en blanco El archivo "sorpresa1. cada grupo de datos contiene el nombre completo del cliente.dat" es el siguiente: 000000000000000000000000000000000000 099999999999991555199999999999999990 099915551999986996979999999155519990 099896996799977878989999998699697990 0 9 9 7 9 7 8 7 8 8 9 9 9 7 7 10 9 9 8 8 9 9 9 9 9 9 7 7 8 7 8 9 8 9 9 0 0 9 9 9 7 9 9 10 8 9 9 9 9 9 7 7 7 8 8 9 9 9 9 9 9 9 9 7 10 9 9 8 9 9 9 0 099967289999999899799999999972869990 096889977699999766899999996889977690 099976689979999976766999989976689990 0 9 9 9 9 7 9 7 9 9 9 10 1 9 9 9 9 9 9 9 9 9 9 1 10 9 9 9 9 8 9 7 9 9 9 0 0 9 9 9 9 8 6 8 6 9 9 9 9 10 5 5 1 1 1 1 5 5 10 9 9 9 9 9 6 7 9 8 6 9 9 0 099999999999999999999999999999999990 000000000000000000000000000000000000 8. Desplegar un tercer resumen con la siguiente información: Número total de clientes = ___________ Número de varones = ___________ Número de mujeres = ___________ Promedio de cuentas para hombres = ___________ Promedio de cuentas para mujeres = ___________ .22 2. . cambios y consultas). Cada registro tiene los campos código. . mes y año. descripción del medicamento (antibiótico. etc). bajas. Una farmacia desea almacenar sus productos en una base de datos. Diseñar la los programas necesarios para manejar las operaciones básicas de una base de datos (altas. nombre. 2. porcentaje de IVA y Fecha de Caducidad.24 Realizar los siguientes ejercicios utilizando base de datos. nombre y precio. precio. laboratorio. consultas y ordenar). cambios. La fecha deberá ser guardada por separado el día. Cada registro debe contener código de producto. bajas. 1. proveedor. Desarrollar un programa con las operaciones básicas de una base de datos (altas. analgésico. . Desarrollar un programa que con la fecha del sistema. 6. 8. boolean ascendente) Creará un array de n enteros generados aleatoriamente y ordenados ascendentemente si ascendente es true. 2. Desarrollar una clase Lista que contenga un array de n enteros. 3. 10. La clase tendrá dos constructores: Lista(int n) Creará un array de n enteros distribuidos aleatoriamente. nacimiento con el formato dd/mm/aa. 11. indicandole la fecha de Calcular el factorial de un número. 7. tres números introducidos por teclado. 5. de Agosto del 2002. Liste los números enteros en orden inverso. y descendentemente si ascendente es false.26 Realizar las soluciones de los siguientes ejercicios. Implementar un programa en Java que Calcular la pendiente de una recta a partir de dos puntos en dos dimensiones. Implementar un programa en Java que Calcular la distancia recorrida por la luz en un determinado número de días. entre dos números que se leen desde teclado: por ejemplo entre 8 y 5 serían 8. Ejemplo: Lunes 16.7. la imprima con el siguiente formato.5. Lista(int n. . de mayor a menor. Implementar un programa en Java que ordena.6. Desarrollar un programa que Calcular la edad de una persona. Implementar un programa en Java que Calcular el área de un círculo con un radio determinado. Calcular el factorial de un número. 9. Implementar un programa en Java que calcula la potencia de un número. 4. utilizando funciones recursivas. 1. que viene dado por la formula: . 22. Desarrollar un programa que imprima los números nones. Un restaurant desea determinar cuales fueron las ventas semanales de sus platillos. Un trabajador recibe su sueldo normal por las primeras 30 horas y se le paga 1 ½ veces su sueldo normal por cada hora después de las primeras 30. Realizar un programa que Calcular el volumen de una esfera. 13. entre dos números proporcionados por teclado.27 12. Elaborar una tabla de Convertir de grados Centigrados a Fahrenheit. Los productos que vende esta empresa son: cuadernos. 16. asi como cuales fueron los menos vendidos y cuales son los que tienen mayor venta en forma anual. desea saber que articulos fueron los más vendidos durante cada uno de los meses del año. Elaborar el programa para calcular su pago. 18. Elaborar un programa que solicite el peso y estatura de cada alumno y entregue como resultado el promedio de peso y estaturas de hombres y mujeres. 19. mochilas. El servicio médico del TESE desea obtener el promedio de pesos y estaturas de los alumnos de informática. libros y boligrafos. El programa deberá informar si las raices son iguales o diferentes y si son de solución real o imaginaria. 20. 15. Elaborar el programa que Calcular los datos mencionados en el problema. 17. Desarrollar un programa que imprima con letras el valor de un número. Hacer un programa que lea los tres coeficientes de una ecuación cuadrática y determine sus raices. 14. así como los promedios generales de peso y estatura. Un empresa dedicada la venta de artículos escolares. La longitud de la línea se lee desde el teclado. Pinte un rectángulo lleno de asteriscos. para ello han solicitado a sus vendedores que registren en un programa sus ventas mensuales de cada uno de los productos vendidos. 21. El valor máximo será 2000. La longitud de la base y la altura se leen desde teclado. Dibuje una línea de asteriscos. al igual saber cual de los cuatro platillos que se elaboran es el más consumido y cual es el que se consume menos. y verificará que a es menor que b. Realizar un programa que Calcular las raices de la ecuación: ax 2 bx c 0 teniendo en cuenta los siguientes casos: 1. Realizar la solución al programa 23.28 4 v r3 3 23. Si quiere averiguar su número de Tarot. imprimiremos un mensaje diciendo que la ecuación es degenerada. restar. 28. Realizar un programa que permita evaluar la serie: x ay a 0 b 1 29. . Si a es mayor que b. 3x^5 – 5x^3 + 2x – 7 = resulado 25. dividir y salir. 24. intercambiará estos valores. Si a es igual a 0 y b es igual a 0. c Realizar un programa que a través de un menú permita realizar las operaciones de sumar. sume los números de su fecha de nacimiento y a continuación redúzcalos a un único dígito. por ejemplo si su fecha de nacimiento fuera 17 de Octubre de 1970. 27. b. Realizar un programa que pregunte el nombre y el año de nacimiento y dé como resultado: “Hola nombre. en el año 2030 tendrás n años” Realizar un programa que evalué el polinomio p 3x 5 5 x 3 2 x 7 y visualizar el resultado con el siguiente formato: Para x= valor. los cálculos a realizar serían: 17+10+1970=»1997=»1+9+9+7=»26=»2+6=»8 30. Las operaciones constaràn solamente de dos operandos. Realizar un programa que Calcular e imprima la suma de los múltiplos de 5 comprendidos entre dos valores a y b. El programa no permitirá introducir valores negativos para a y b. 26. multiplicar. pero empleando ahora coeficientes variables a. A continuación. Si d es menor que 0 entonces hay dos raíces complejas de la forma: x yj . y sobre la lista. vamos a suponer que el texto sólo contiene letras minúsculas del alfabeto inglés (no hay ni letras acentuadas. Si d es mayor o igual a 0 entonces hay dos raíces reales. Se desea realizar un histograma con los pesos de los alumnos de un determinado curso. Para hacer el ejercicio más sencillo. Escribir un programa que cuente el número de veces que aparece cada una de las letras de un texto introducido por el teclado y a continuación imprima el resultado. Peso 21 22 23 24 …. ni la ll. buscar los valores máximo y mínimo. así como los resultados obtenidos. 31. ni la ñ). utilizaremos la formula siguiente: xi b b 2 4ac 2a La expresión d b 2 4ac se denomina discriminante. Si a es igual a 0 y b no es igual a 0. 32. . 33. x yj Indicar con literales apropiados los datos a introducir.29 2. Realizar un programa que lea una lista de valores introducidos por teclado. Número de alumnos ** ***** **************** *** ……. En los demás casos. existe una raíz única con valor c / b 3. y escribirlos. Español. la mediana de: 16 12 99 95 18 87 10 es 18. La longitud de cada palabra será de 40 caracteres. Realizar un programa que lea los pesos e imprima el histograma correspondiente. Por ejemplo: HOLA AHOL LAHO OLAH HOLA 35.30 El número de asteriscos se corresponde con el número de alumnos del peso especificado. La entrada de valores finalizará cuando se detecte la marca de fin de fichero. esto es. El número de parejas de palabras es variable. Realizar un programa que lea una cadena de n caracteres e imprima el resultado que se obtiene cada vez que se realice una rotación de un carácter a la derecha sobre dicha cadena. Por ejemplo. 34. Realizar un programa que se comporte como un diccionario Inglés. 95 y 87 (mitad de los números) y mayor que 16. pero limitado a un máximo de 100. solicitará una palabra en inglés y escribirá la correspondiente palabra en español. Suponer que los pesos están comprendidos entre los valores 10 y 100 Kg. Realizar un programa que lea un número impar de valores y dé como resultado la mediana. La mediana de una lista de n números se define como el valor que es menor o igual que los valores correspondientes a la mitad de los números. porque este valor es menor que 99. suponen que introducimos las siguientes parejas de palabras: book green mouse libro verde ratón . El proceso finalizará cuando se haya obtenido nuevamente la cadena de caracteres original.12 y 10 (otra mitad). Por ejemplo. y mayor o igual que lo valores correspondientes a la otra mitad. 36. En el histograma sólo aparecerán los pesos que se corresponden con 1 o más alumnos. Lea dos cadenas de caracteres denominadas cadena1 y cadena2 y un número entero n. tenga en cuenta las siguientes expresiones: .n) que compare los n primeros caracteres de cadena1 y de cadena2. Realizar un programa que: 1. Para ello. 3. de forma que si tecleamos green. Escribir la cadena que sea menor según los n primeros caracteres (esto es. Escribir un programa para evaluar la expresión (ax by) n . Si la plabra no se encuentra se emitirá un mensaje que lo indique. cadena2. 37. la comparación se hará sin tener en cuenta este parámetro. traducir.31 Una vez finalizada la introducción de las listas de palabras pasaremos al modo traducción. la respuesta ha de ser verde. 2. b. Llame a un método: static int compcads(cadena1. 38. Este método creará el diccionario. y devuela como resultado un valor entero: 0 si cadena1 y cadena2 son iguales 1 si cadena1 es mayor que cadena2(los n primeros caracteres) -1 si cadena1 es menor que cadena2(los n primeros caracteres) Si n es menor que 1 o mayor que la longitud de la menor de las cadenas. Este método realizará la labor de traducción. crearDiccionario. la que esté antes por orden alfabético). El programa constará al menos de dos métodos: a. Escribir un método que tenga el prototipo static long potencia(int base. y devuelve como resultado el valor de la baseexp onente .32 n n (ax by) n (ax) n k (by ) k k 0 k n n! k k!n k ! n! n * (n 1) * (n 2) * . Escribir un método con el prototipo static long combinaciones(int n.. * 2 *1 a. int k) El método combinaciones recibe como parámetro dos enteros n y k. Escribir un método cuyo prototipo sea: static long factorial(int n) El método del factorial recibe como parámetro un entero y devuelve el factorial del mismo. b. y devuelve como resultado el valor de k n c. int exponente) El método potencia recibe como parámetro dos enteros base y exonente. Elaborar un programa que lea un conjunto de datos enteros positivos y Calcular.b. Elaborar un programa que controle las ventas diarias de una tienda (durante un semana) y que sea capaz de determinar: a) Día de la semana que hubo mayor venta b) Día de la semana que hubo menor venta c) Promedio de ventas semanales d) Total de ventas realizadas en la semana 40.x e y. y utilizará los método anteriores escribirá como resultado el valor de (ax by) n 39.33 d. El método main leerá los valores de a.n. a) El dato mayor b) El dato menor c) El Promedio de los datos d) La sumatoria de los elementos e) El total de elementos leidos .