¡Descarga Ejercicios de POO: Ecuaciones, Números Perfectos y Divisas y más Ejercicios en PDF de Programación Java solo en Docsity!
1. Escribe el pseudocódigo y programación con orientación a objetos de las
siguientes ecuaciones matemáticas con base a las reglas de negocios que se
muestran en la parte inferior.
y = 4x^2 + 3x + 1
Reglas de negocio
- El valor de x va de - 5 a 5, es decir se debe considerar todos los números
que abarca dicho proceso.
- Como resultado final se debe imprimir la siguiente tabla (No es necesario
colocar los bordes de la tabla).
Nota: Los espacios en blanco deben ser sustituidos con los valores que se
generan a partir de la solución de la ecuación.
X Y
**- 5
- Adjuntar código fuente (texto no imagen) y pantallas que muestren la
corrida del programa.
2. Un número perfecto es un entero positivo igual a la suma de sus divisores
propios. Un divisor propio es un entero positivo distinto que el número en sí mismo,
que divide al número de forma exacta (es decir sin resto). Escriba el diagrama de
flujo y programa mediante programación orientada a objetos que acepte un entero
positivo y determine si es un número perfecto. Igualmente, muestre todos los
divisores propios del número con base a las reglas de negocios que se muestran en
la parte inferior.
Reglas de negocio
- Por ejemplo, 6 es un número perfecto, porque la suma de sus divisores
propios 1, 2 y 3 es igual a 6. En cambio 8 no es un número perfecto por
que la suma de sus divisores propios, 1 + 2 + 4 es distinto de 8.
- El usuario deberá de ingresar un número entero positivo y se debe guardar
en la variable entera numPos.
- Implementar una función recursiva para determinar los divisores del
número ingresado.
- Mostrar un mensaje en pantalla que indique si el número ingresado es un
número perfecto o no.
- Controlar la excepción en caso de que el usuario ingrese algo diferente a
un número. En caso de que esto se cumpla, deberá imprimir el mensaje
"El tipo de dato es incompatible con la solución de este programa”.
- Adjuntar código fuente (texto no imagen) y pantallas que muestren la
corrida del programa.
Diagrama Pseudocódigo
Proceso Numero_perfecto
definir n,c,s,r Como Entero
escribir "numeros perfectos"
escribir "escribe un numero"
leer n
s<- 0
escribir "divisores..."
para c<-1 hasta n- 1
r<- n mod c
si r = 0 entonces
s<-s + c
escribir c
Finsi
finpara
si s= n Entonces
escribir "es perfecto"
Pantallas
3. Realice el pseudocódigo y programa mediante programación orientada a
objetos que examine e imprima la equivalencia de dinero en pesos de la cantidad
ingresada por el usuario en dólares. Además de decir cuántos billetes y monedas
de 500, 200, 100, 50, 20, 10, 5, 2, 1, 0.5 se deben entregar al usuario, con base a
las reglas de negocios que se muestran en la parte inferior.
Reglas de negocio
- El tipo de cambio a utilizar es de 1 dólar = 13.15 pesos.
- Para la solución del problema deberá utilizar un ciclo do - while y la
sentencia switch.
- Mostrar en pantalla la equivalencia en pesos de los dólares ingresados,
además de cómo se debe entregar dicho dinero en la denominación
especificada.
- Adjuntar código fuente (texto no imagen) y pantallas que muestren la
corrida del programa
Pseudocódigo
Algoritmo cambio
Definir es Como Caracter;
definir dol, tot Como real;
escribir 'Quieres ingresar una cantidad en dólares s/n';
leer res;
segun res hacer
s,S:
escribir 'Introduce la cantidad de Dolares:';
leer dol;
tot= dol*13.15;
escribir 'Su monto ingresado equivale a: $ ',tot;
repetir
dimension monedas[10]
monedas[1]=
monedas[2]=
monedas[3]=
monedas[4]=
monedas[5]=
monedas[6]=
monedas[7]=
monedas[8]=
monedas[9]=
monedas[10]=0.
dimension devolver[10]
devolver[1]=
devolver[2]=
devolver[3]=
devolver[4]=
devolver[5]=
devolver[6]=
devolver[7]=
devolver[8]=
devolver[9]=
Código Fuente
package cambio; import java.util.Scanner; public class cambio { private static Scanner teclado ; public static void main(String[] ar) { teclado = new Scanner(System. in ); String res; double dol, tot; System. out .println("Quieres ingresar una cantidad en dolares s/n"); res = teclado .nextLine(); switch (res) { case "s" : case "S": System. out .println("Introduce la cantidad de Dólares: "); dol = teclado .nextDouble(); tot= dol13.15; System. out .println("Su monto ingresado equivale a: $ "+tot); do { calcular (tot); } while (tot<=0); break ; case "n": case "N": System. out .println("Eligio NO"); break ; default : System. out .println("No es opcion valida"); break ; } } public static void calcular( double tot) { double [] monedas={500, 200, 100, 50, 20, 10, 5, 2, 1, 0.5}; double [] devolver={0,0,0,0,0,0,0,0,0,0}; for ( int i=0;i< 10 ;i++) { if (tot>=monedas[i]) { devolver[i]=Math. floor (tot/monedas[i]); tot=tot-(devolver[i]monedas[i]); } } for ( int i=0;i< 10 ;i++) { if (devolver[i]>0) { if (monedas[i]>10) { System. out .println("Damos "+devolver[i]+" billetes de: $ "+monedas[i]);
} else { System. out .println("Damos "+devolver[i]+" monedas de: $ "+monedas[i]); } } } } }
Pantallas