ejercicios de repaso java

21
FUNDAMENTOS DE PROGRAMACIÓN Ejercicios 1 1.EJERCICIOS BÁSICOS DE METODOLOGIA 1.Hacer un programa que calcule el 10% de un número que introduzcamos p 2.Calcular el área de un triángulo pidiendo la base y la altura. ARA!" +.,rograma que lee un número que corresponde al radio de una circun-e imprime la longitud de la misma y el área del c rculo correspondiente /.,rograma que lee dos números y calcula e imprime su suma resta pro 3.$acar la media de cinco números que entran por teclado. 4.Hacer un programa que calcule descuentos en el precio de enta de un 8eto67) 9.Hacer un programa que tras introducir un número calcule el cuadrado d ;.,rograma para resol er una ecuaci n de primer grado "<!A =>#) ?.Hacer programa que pida nombre y sueldo de los empleados de un introducidos dic:os datos calcular retenci n que será un 10 % del s menor que 100.000 y de un 12 % si este es superior a las 100.000. 10. ,rograma que lee dos números y los isualiza en orden ascendente. 11. ,rograma que lee + números y los isualiza ordenados ascendentemen 12. ,rograma que lee una cali-icaci n entre 0 y 10 y la trans-orma en 1+. Hacer un programa que tras introducir un número cualquiera nos de será si el número es múltiplo de dos B,AR y si no es múltiplo de dos BDE,AR . "R$'F!5i idendoG"5i isor Cociente)). 1/. Hacer el algoritmo que dados n pares de coordenadas cartesianas " puntos están dentro del c rculo limitado por la circun-erencia de ecu 2 >y 2 !3. 13. ,rograma que lea un número correspondiente a un aIo y escriba si e bisiestos los múltiplos de / e cepto los múltiplos de 100 que no lo 14. ,rograma que obtenga e imprima la lista de los di isores de un núm 19. ,rograma que calcule e imprima la edad de una persona a partir nacimiento y la -ec:a actual. 1;. ,rograma que lea una -ec:a en -ormato 55 EE AA y la isualiza en - d a 8 de E$ del AJF 1?. Hacer programa que nos permita introducir los siguientes datos6 C digo empresaK dic:o c digo :a de ser num@rico y no :a de ser caso de teclear un c digo superior dar mensa e de error y ol e C digo art culoK igual que en el caso anterior el c digo no : $tocL m nimoK igual que en los anteriores no :a de ser mayor d ,recio de compraK idem no :a de ser mayor de 3000. EargenK tanto por ciento de ganancia en art culo e-ectuar igua anteriores el margen no :a de ser superior a 100. (na ez introducidos dic:os datos dar el precio de enta al públic calculando el tanto por ciento "margen) del precio de compra y sumándos una opci n de continuaci n "5$A CF8'D8(AR"$*8)) si se teclea programa en caso contrario -inalizar.

Upload: pepe

Post on 05-Oct-2015

32 views

Category:

Documents


0 download

DESCRIPTION

Repaso de ejercicios java. DAW

TRANSCRIPT

1

FUNDAMENTOS DE PROGRAMACINEjercicios2

1. EJERCICIOS BSICOS DE METODOLOGIA

1. Hacer un programa que calcule el 10% de un nmero que introduzcamos por teclado.

2. Calcular el rea de un tringulo pidiendo la base y la altura. AREA=(BASE*ALTURA)/2

3. Programa que lee un nmero que corresponde al radio de una circunferencia y calcula e imprime la longitud de la misma y el rea del crculo correspondiente.

4. Programa que lee dos nmeros y calcula e imprime su suma, resta, producto y divisin.

5. Sacar la media de cinco nmeros que entran por teclado.

6. Hacer un programa que calcule descuentos en el precio de venta de un artculo. (Cant.Dcto:? Neto:?)

7. Hacer un programa que tras introducir un nmero calcule el cuadrado de dicho nmero.

8. Programa para resolver una ecuacin de primer grado (Y=A*X+B)

9. Hacer programa que pida nombre y sueldo de los empleados de una empresa. Una vez introducidos dichos datos calcular retencin, que ser un 10 % del sueldo si este es igual o menor que 100.000 y de un 12 % si este es superior a las 100.000.

10. Programa que lee dos nmeros y los visualiza en orden ascendente.

11. Programa que lee 3 nmeros y los visualiza ordenados ascendentemente.

12. Programa que lee una calificacin entre 0 y 10 y la transforma en nota alfabtica.

13. Hacer un programa que tras introducir un nmero cualquiera nos de un mensaje que ser, si el nmero es mltiplo de dos PAR y si no es mltiplo de dos IMPAR. (RESTO=Dividendo-(Divisor*Cociente)).

14. Hacer el algoritmo que dados n pares de coordenadas cartesianas (x,y), determine qu puntos estn dentro del crculo limitado por la circunferencia de ecuacin x2+y2=5.

15. Programa que lea un nmero correspondiente a un ao y escriba si es o no bisiesto (son bisiestos los mltiplos de 4, excepto los mltiplos de 100 que no lo son de 400).

16. Programa que obtenga e imprima la lista de los divisores de un nmero N entero positivo.

17. Programa que calcule e imprima la edad de una persona a partir de la fecha de su nacimiento y la fecha actual.

18. Programa que lea una fecha en formato DD MM AA y la visualiza en formato:

da N de MES del AO

19. Hacer programa que nos permita introducir los siguientes datos:

Cdigo empresa; dicho cdigo ha de ser numrico y no ha de ser superior a 500, en caso de teclear un cdigo superior dar mensaje de error y volver a solicitar dato.

Cdigo artculo; igual que en el caso anterior, el cdigo no ha de ser mayor de 100.

Stock mnimo; igual que en los anteriores, no ha de ser mayor de 2000.

Precio de compra; idem, no ha de ser mayor de 5000.

Margen; tanto por ciento de ganancia en artculo, efectuar igual tratamiento que en los anteriores, el margen no ha de ser superior a 100.

Una vez introducidos dichos datos dar el precio de venta al pblico, que se obtendr calculando el tanto por ciento (margen) del precio de compra y sumndoselo. A continuacin dar una opcin de continuacin (DESEA CONTINUAR(S/N)) si se teclea S volver a ejecutar el programa, en caso contrario finalizar.

23. Hacer programa que tras introducir dos nmeros, si uno de esos nmeros es negativo lo restamos, si ambos son positivos los sumamos.

24. Programa para resolver la ecuacin de segundo grado: Y= A*X2+B*X+C

25. Programa que obtenga el nmero decimal correspondiente a una cifra en nmeros romanos.

26. Calcular la suma de los cien primeros nmeros.

27. Escribir en pantalla los 50 primeros nmeros, 10 por lnea, con este formato: 1 2 10

28. Calcular el nmero de das que hay en tres aos normales (365 das). Hacer este programa sin emplear frmulas matemticas.

29. Calcular la suma de los 50 primeros nmeros impares.

30. Programa que calcule y visualice la suma y el producto de los nmeros pares comprendidos entre el 10 y el 30 (ambos inclusive).

31. Programa que lea una secuencia de 100 nmeros y visualice cuntos hay positivos, negativos y nulos.

32. Programa que lea N nmeros y saque el mayor y el menor de todos.

33. Se desea escribir un algoritmo que genere los n primeros trminos de la sucesin de Fibonacci. La sucesin de Fibonacci es 0,1,1,2,3,5,8,13,21,34,

34. Programa que lea una secuencia de nmeros no nulos, terminada con la introduccin de un 0, y obtenga e imprima el mayor, visualizando un mensaje de si se ha ledo algn nmero negativo.

35. Hacer programa que calcule el cubo de un nmero introducido por teclado. Calcular el cubo mediante contador y acumulador.

36. Programa que obtenga el producto de dos nmeros enteros positivos mediante sumas sucesivas.

37. Programa que obtenga el cociente y el resto de dos nmeros enteros positivos mediante restas.

38. Programa que genere la lista de los N primeros nmeros primos.

39. Programa que imprima la tabla de multiplicar de un nmero entero positivo.

40. Programa que lee un nmero entero positivo N y calcula e imprime cuntas cifras tiene.

41. Calcular el factorial de un nmero que entre por teclado o de varios dando un mensaje al final: DESEA CONTINUAR (S/N).

42. Calcular la suma de los nmeros comenzando en X y finalizando en Y que entrarn por teclado. Y ha de ser superior a X.

43. Sumar nmeros entre 5 y X, pero sumar slo los que acaben en 5.

44. Calcular los granos de trigo que entran en un tablero de ajedrez poniendo un grano en la primera casilla, dos en la segunda, cuatro en la tercera y as sucesivamente.

45. Hacer un programa que ofrezca 4 opciones (sumas, restas, multiplicaciones, divisiones). Visualizar 1.- Sumas, 2.- Restas, 3.- Multiplicaciones, 4.- Divisiones, 5.- Fin de proceso. En cada pantalla de operacin se pedirn 2 nmeros, se realizar la operacin y se visualizar el resultado. Pedir continuacin.

46. Visualizar: SUELDO: E.CIVIL: RETENCION (%): TOTAL RETENCION: LIQUIDO:

Pedir sueldo y e.civil, a continuacin calcular retencin que ser de un 5% si es casado y su sueldo es menor que 100.000 pts, de un 7% si es casado y su sueldo es mayor de 100.000 pts, de un 8% si es soltero y su sueldo es menor de 100.000 pts y de un 10 % si es soltero y su sueldo es mayor de 100.000 pts. Visualizar resultados y pedir opcin de continuacin.

1. EJERCICIOS BSICOS DE METODOLOGIA (de repaso)

47. Calcular el nmero de aprobados de una clase de 50 alumnos (una nota por alumno).

48. Disear un algoritmo para calcular la suma de los nmeros pares y de los nmeros impares, comprendidos entre 1 y 200.

49. Disear un algoritmo para calcular la media aritmtica de 50 nmeros introducidos por teclado, imprimir el resultado. Realizar el pseudocdigo con la estructura "mientras" y la estructura "repetir".

50. Calcular el factorial de un nmero que se pide por teclado. Utilizar las tres estructuras: "repetir", "mientras", "para".

51. Construir un algoritmo que lea una serie de nmeros distintos de cero y obtenga el mayor de ellos, si este es negativo aparecer el mensaje "es negativo". Se finalizar cuando introduzca el 99 (no se procesa).

52. Construir un algoritmo para calcular la suma de los cuadrados de los 100 primeros nmeros naturales.

53. Construir un algoritmo para visualizar los mltiplos de 4, comprendidos entre 4 y N (se dar por teclado). N es un nmero entero positivo y mayor que 4

54. Construir un algoritmo para saber el nmero de profesores y el n de profesoras mayores de 45 aos que hay en un centro de enseanza. Se leern las variables SEXO y EDAD para cada uno de ellos. El n de profesores estar en una variable que se lee por teclado.

55. Construir un algoritmo para calcular las tablas de multiplicar desde el 1 hasta el 10. Se visualizar con el formato:

Tabla del ......1Tabla del ......2

Tabla del ......10

1*1=1

2*1=2

10*1=10

1*2=2

2*2=4

10*2=20

56. Realizar un algoritmo que escriba los N primeros nmeros de la serie de Fibonacchi. El valor de N se introduce por teclado. N es un nmero entero positivo y mayor que 2. La serie de fibonacchi se genera as:

Fib(1)=1

Fib(2)=1

Fib(3)=Fib(1)+Fib(2)=2

Fib(4)=Fib(2)+Fib(3)=3

57. Construir un algoritmo que lea un nmero entero positivo y muestre si es primo o no.

58. Construir un algoritmo que me permita saber el mayor de tres nmeros, introducidos por teclado y me visualice el mayor de ellos.

59. Disear un algoritmo para un proceso que calcule y muestre por pantalla la nota media de una serie de notas introducidas por teclado. Estas notas debern estar comprendidas entre 0 y 10, y finalizar su proceso cuando se teclee el nmero 99.

60. Construir un algoritmo para un proceso en el que se introducen por teclado una serie de nmeros enteros positivos y mayores o iguales a 0(comprobarlo). La introduccin de nmeros finaliza con 0. Mostrar por pantalla:

Media aritmtica de los nmeros que sean mltiplos de dos.

Media aritmtica de los nmeros que sean mltiplos de tres.

Media aritmtica de los nmeros que sean mltiplos de cinco.

Los tres resultados anteriores ordenados de mayor a menor.

61. Construir un algoritmo para un proceso que nos calcule y muestre por pantalla la suma de los nmeros impares menores o iguales a otro nmero entero que ha de ser introducido previamente por teclado.

62. Disear un algoritmo para un proceso que calcule y muestre por pantalla el valor mximo y el valor mnimo de una serie de N nmeros que debern ser introducidos por teclado.

63. Construir un algoritmo que calcule el producto de dos nmeros enteros positivos mediante el denominado algoritmo ruso del producto. El algoritmo consiste en duplicar el primer factor y dividir (cociente entero) por 2 el segundo, obteniendo un producto equivalente, salvo si el segundo factor es impar, en cuyo caso es necesario acumular previamente el primero en dnde se va a obtener el resultado. El proceso termina cuando el segundo factor se hace 0.

Ejemplo: 25*6

Primer factor

Segundo factorAcumulador

25

6

0

50

3

50

100

1

150

200

0

150

64. Construir un algoritmo para un proceso que lea por teclado un nmero entero positivo N comprendido entre 100 y 999, ambos inclusive(comprobarlo) y lo muestre por pantalla con los dgitos en orden inverso.

Ejemplo Si N=427 se mostrar por pantalla 724

65. Construir un algoritmo para un proceso que nos calcule el valor aproximado del nmero e (base de los logaritmos neperianos) , mediante la siguiente aproximacin:

1 1 1 1 1

e = 1 + ------ + ------ + ------ + ------ + ------ +

1! 2! 3! 4! 5!

Efectuar el clculo de 10 trminos y mostrar el resultado final por pantalla.

66. Construir un algoritmo para un proceso que lea por teclado el valor de un nmero real positivo (x), en radianes, y calcule el valor aproximado de su funcin trigonomtrica seno mediante la siguiente aproximacin:

x x3 x5 x7 x9

sen x = ------ - ------ + ------ - ------ + ------ -

1! 3! 5! 7! 9!

Realizar el clculo para sucesivos trminos hasta que se encuentre uno cuyo valor absoluto sea menor de 0.001, mostrando entonces la aproximacin obtenida por pantalla.

67. La raz cuadrada de un nmero real positivo Q se puede aproximar mediante el siguiente mtodo:

x1=1 ; x2= (Q/x1 + x1) / 2 ; x3= (Q/x2 + x2) / 2 ; x4= (Q/x3 + x3) / 2 ; ..

Construir un algoritmo para un proceso que lea por teclado un nmero real positivo Q (comprobarlo) y nos calcule y muestre por pantalla la raz cuadrada del mismo mediante el mtodo indicado anteriormente. Realizar el clculo cuando dos trminos calculados consecutivos se diferencien en menos de 0.01, o bien cuando se hayan calculado 10 trminos.

68. Construir el algoritmo de un proceso para descomponer un nmero entero y positivo, que se ha de introducir por teclado(comprobarlo), en sus factores primos. Procedimiento a seguir: Se toma el nmero y se comprueba si el 2 lo divide, inclusive varias veces, luego el 3, y as sucesivamente. En caso afirmativo, se anota el factor y se divide el nmero por el antes de seguir, finalizando cuando se llegue a obtener el 1. El resultado sern los factores primos obtenidos que han de ir mostrndose por pantalla.

2. SOLUCIONES A LOS EJERCICIOS (de repaso)

47.

PROGRAMA: Aprobados

ENTORNO:

Aprob, Nota, I son numricas enteras

ALGORITMO

Inicio

Aprob=0

Para I=1 hasta 50 hacer

Escribir (Introduce una nota:)

Leer (Nota)

Si (Nota>5) Entonces

Aprob=Aprob+1

Fin Si

Fin Para

Escribir (El nmero de aprobados es,Aprob)

Fin48.

PROGRAMA: SumaParesImpares

ENTORNO:

SumaPares, SumaImpares, I son numricas enteras

ALGORITMO

Inicio

SumaPares=0

SumaImpares=0

Para I=1 hasta 200 hacer

Si (I MOD 2=0) Entonces

SumaPares=SumaPares+I

Sino

SumaImpares=SumaImpares+I

Fin Si

Fin Para

Escribir (La suma de los pares es,SumaPares, y la de los impares es,SumaImpares)

Fin49.PROGRAMA: MediaMientras

ENTORNO:

Num, Acum, Media, I son numricas enteras

ALGORITMO

Inicio

I=1

Acum=0

Mientras (I=50)

Media=Acum/I

Escribir (La media es,Media)

Fin

50.PROGRAMA: FactorialRepetir

ENTORNO:

Fact, I, Num son num. enteras

ALGORITMO

Inicio

Fact=1

Escribir (Introduce un nm:)

Leer (Num)

I=Num

Repetir

Fact=Fact*I

I=I-1

Hasta que (I1)

Fact=Fact*I

I=I-1

Fin Mientras

Escribir (Factorial:,Fact)

FinPROGRAMA: FactorialPara

ENTORNO:

Fact, I, Num son num. enteras

ALGORITMO

Inicio

Fact=1

Escribir (Introduce un nm:)

Leer (Num)

Para I=Num hasta 1 increm. -1

Fact=Fact*I

Fin Para

Escribir (Factorial:,Fact)

Fin

51.PROGRAMA: MayorDe0

ENTORNO:

Mayor, Num son numricas enteras

ALGORITMO

Inicio

Escribir (Introduce un Numero: (99 Acabar):)

Leer (Num)

Mayor=Num

Mientras (Num99) hacer

Si (MayorB) AND (A>C) Entonces

Escribir (El mayor es ,A)

Fin Si

Si (B>A) AND (B>C) Entonces

Escribir (El mayor es ,B)

Fin Si

Si (C>B) AND (C>A) Entonces

Escribir (El mayor es ,C)

Fin Si

Fin

59.

PROGRAMA Nota

ENTORNO:

Nota, Cn, Sn, Media son numricas flotantes

ALGORITMO

Inicio

Sn=0

Cn=0

Escribir (Introducir nota:)

Leer (Nota)

Mientras (Nota99)

Si (nota >=0) AND (Nota0)

Si (Num MOD 2 = 0) Entonces

Sdos=Sdos+Num

Cdos=Cdos+Num

Fin Si

Si (Num MOD 3 = 0) Entonces

Stres=Stres+Num

Ctres=Ctres+Num

Fin Si

Si (Num MOD 5 = 0) Entonces

Scinco=Scinco+Num

Ccinco=Ccinco+Num

Fin Si

Hasta que (Num=0)

MediaDos=Sdos/Cdos

MediaTres=Stres/Ctres

MediaCinco=Scinco/Ccinco

Si (MediaDos>MediaTres)AND(MediaTres>MediaCinco) Entonces

Escribir(MediaDos,MediaTres,MediaCinco)

Fin Si

Si (MediaDos>MediaCinco)AND(MediaCinco>MediaTres) Entonces

Escribir(MediaDos,MediaCinco,MediaTres)

Fin Si

Si (MediaTres>MediaDos)AND(MediaDos>MediaCinco) Entonces

Escribir(MediaTres,MediaDos,MediaCinco)

Fin Si

Si (MediaTres>MediaCinco)AND(MediaCinco>MediaDos) Entonces

Escribir(MediaTres,MediaCinco,MediaDos)

Fin Si

Si (MediaCinco>MediaTres)AND(MediaTres>MediaDos) Entonces

Escribir(MediaCinco,MediaTres,MediaDos)

Fin Si

Si (MediaCinco>MediaDos)AND(MediaDos>MediaTres) Entonces

Escribir(MediaCinco,MediaDos,MediaTres)

Fin Si

Fin

61.

PROGRAMA: SumaImpares

ENTORNO:

Suma, Num, ,Tope, I son numricas enteras

ALGORITMO

Inicio

Suma=0

Escribir (Introduce un nmero:)

Leer (Num)

Si (Num MOD 0 = 0)

Tope=Num-1

Sino

Tope=Num

Fin Si

Para I=Tope hasta 1 con incremento 2 hacer

Suma=Suma+I

Fin Para

Escribir (La suma de los impares es;Suma)

Fin

62.

PROGRAMA: MaximoMinimoENTORNO:

Max, Min, Num, ,Total, I son numricas enteras

ALGORITMO

Inicio

Escribir (Cuntos nmeros quieres introducir?)

Leer (Total)

Escribir (Introduce un nmero:)

Leer (Num)

Max=Num

Min=Num

Para I=2 hasta Total hacer

Escribir (Introduce un nmero:)

Leer (Num)

Si (Num>Max) Entonces

Max=Num

Fin Si

Si (Num