prob. 1-29
-
Upload
erick-villanueva -
Category
Documents
-
view
30 -
download
0
Transcript of prob. 1-29
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
1. Leer dos números por el teclado e intercambiar sus valores.
import javax.swing.JOptionPane;public class prob1 {public static void main(String[] args) {int a,b;a=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer valor: "));b=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo valor: "));JOptionPane.showMessageDialog(null,"El primer valor es: "+b++);JOptionPane.showMessageDialog(null,"El segundo valor es: "+a++);}}
2. Leer dos números y decir cuál es el menor.
import javax.swing.JOptionPane;public class prob2 {public static void main(String[] args) {int a,b;a=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer valor: "));b=Integer.parseInt(JOptionPane.showInputDialog("ingrese el segundo valor: "));if (a!=b)if(a>b)
{JOptionPane.showMessageDialog(null,"El menor valor es : "+b++);}else
{JOptionPane.showMessageDialog(null,"El menor valor es : "+a++);}else
JOptionPane.showMessageDialog(null,"Los números son iguales");}}
3. Leer tres números y decir cuál es el mayor.
import javax.swing.JOptionPane;public class prob3 {public static void main(String[] args) {int a,b,c;a=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer valor: "));b=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo valor: "));c=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el tercer valor: "));
if (a>b && a>c)JOptionPane.showMessageDialog(null,"El mayor valor es : "+a);
if (b>c && b>a)JOptionPane.showMessageDialog(null,"El mayor valor es : "+b);
if (c>b && c>a)JOptionPane.showMessageDialog(null,"El mayor valor es : "+c);
if (a==b && b==c)JOptionPane.showMessageDialog(null,"Los números son iguales");}}
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
4. Leer tres números y escribirlos en orden decreciente.
import javax.swing.JOptionPane;public class prob4 {public static void main(String[] args) {int n1, n2, n3;n1 =Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer número ")); n2 =Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer número ")); n3 =Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer número ")); if (n1>n2 && n1>n3)
{if (n2>n3){JOptionPane.showMessageDialog(null,"Los números en forma decreciente
son: "+n1+"-"+n2+"-"+n3);} else
{JOptionPane.showMessageDialog(null,"Los números en forma decreciente son: "+n1+"-"+n3+"-"+n2);}}if (n2>n3 && n2>n1)
{if (n3>n1){JOptionPane.showMessageDialog(null,"Los números en forma decreciente
son: "+n2+"-"+n3+"-"+n1);}else
{JOptionPane.showMessageDialog(null,"Los números en forma decreciente son: "+n2+"-"+n1+"-"+n3);}}if (n3>n2 && n3>n1)
{if (n2>n1){JOptionPane.showMessageDialog(null,"Los números en forma decreciente
son: "+n3+"-"+n2+"-"+n1);}else
{JOptionPane.showMessageDialog(null,"Los números en forma decreciente son: "+n3+"-"+n1+"-"+n2);}}if (n1==n2 && n2==n3)
JOptionPane.showMessageDialog(null,"Los números son iguales " );}}
5. ¿Los siguientes fragmentos de código son equivalentes?
A.- if (n>10) n=n-1;else n=n+1;
B.- if (n>10) n=n-1;if (n<=10) n=n+1;
import javax.swing.JOptionPane;public class prob5 {public static void main(String[] args) {int n,m;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese primer caso (a): "));m=Integer.parseInt(JOptionPane.showInputDialog("Ingrese segundo caso (b): "));if(n>10)
{n=n-1;}
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
else{n=n+1;}
if(m>10){m=m-1;}
if(m<=10){m=m+1;}
if(n==m){JOptionPane.showMessageDialog(null,"Son casos iguales");}
else{JOptionPane.showMessageDialog(null,"Son casos diferentes");}}}
6. ¿Los siguientes fragmentos de código son equivalentes?
A.- if (n>10) n=n+1;else n=n-1;
B.- if (n>10) n=n+1;if (n<=10) n=n-1;
import javax.swing.JOptionPane;public class prob6 {public static void main(String[] args) {int n,m;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese primer caso (a): "));m=Integer.parseInt(JOptionPane.showInputDialog("Ingrese segundo caso (b): "));if(n>10)
{n=n+1;}else
{n=n-1;}if(m>10)
{m=m+1;}if(m<=10)
{m=m-1;}if(n==m)
{JOptionPane.showMessageDialog(null,"Son casos iguales");}else
{JOptionPane.showMessageDialog(null,"Son casos diferentes");}}}
7. Leer una nota (número entre 0 y 10) y escribir la correspondiente nota numérica (suspenso, aprobado, notable, sobresaliente o matrícula).
import javax.swing.JOptionPane;public class prob7 {public static void main(String[] args) {int nota;nota=Integer.parseInt(JOptionPane.showInputDialog("Ingrese Nota: "));if(nota<=10)
{if(nota<=9){if(nota<=7)
{if(nota<=5)
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
{if(nota==0){JOptionPane.showMessageDialog(null,"Matricula
condicional");}else{JOptionPane.showMessageDialog(null,"Suspenso");}}
else{JOptionPane.showMessageDialog(null,"Aprovado");}}
else{JOptionPane.showMessageDialog(null,"Notable ");}}
else{JOptionPane.showMessageDialog(null,"Sobresaliente");}}}}
8. Leer dos números y decir si uno es múltiplo del otro.
import javax.swing.JOptionPane;public class prob8 {public static void main(String[] args) {int a,b,c;a=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el primer número: "));b=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el segundo número: "));if(a>b)
{c=a%b;if(c==0)
{JOptionPane.showMessageDialog(null,+a+" es múltiplo de "+b++);}else
{JOptionPane.showMessageDialog(null,"No son múltiplos");}}if(b>a)
{c=b%a;if(c==0)
{JOptionPane.showMessageDialog(null,+b+" es múltiplo de " +a++);}else{JOptionPane.showMessageDialog(null," No son múltiplos ");}}}}
9. Leer 3 números (día, mes y año) y decir si corresponde a una fecha correcta. Un año es bisiesto si es divisible por 4 excepto si acaba en 00 en cuyo caso es bisiesto sólo si es divisible por 400.
import javax.swing.JOptionPane;public class prob9 {public static void main(String[] args) {int año,a,b,c,dia,mes;dia=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el día: "));mes=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el mes: "));año=Integer.parseInt(JOptionPane.showInputDialog("Ingrese el año: "));a=año%400;b=año%4;c=año%100;if(mes<=12)
{if(mes==1||mes==3||mes==5||mes==7||mes==8||mes==10||mes==12){if(dia<=31)
{JOptionPane.showMessageDialog(null,"La fecha existe");
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
if(b==0 && (a==0||c!=0)){JOptionPane.showMessageDialog(null,"y es bisiesto");}
else{JOptionPane.showMessageDialog(null,"y no es bisiesto");}}
else{JOptionPane.showMessageDialog(null,"La fecha no existe");}}
if(mes==4||mes==6||mes==9||mes==11){if(dia<=30)
{JOptionPane.showMessageDialog(null,"La fecha existe"); if(b==0 && (a==0||c!=0))
{JOptionPane.showMessageDialog(null,"y es bisiesto");}else
{JOptionPane.showMessageDialog(null,"y no es bisiesto");}}else
{JOptionPane.showMessageDialog(null,"La fecha no existe");}}if(mes==2)
{if(dia<=28){JOptionPane.showMessageDialog(null,"La fecha existe");
if(b==0 && (a==0||c!=0)){JOptionPane.showMessageDialog(null,"y es bisiesto");}
else{JOptionPane.showMessageDialog(null,"y no es bisiesto");}} else{JOptionPane.showMessageDialog(null,"La fecha no existe");}}}
else{JOptionPane.showMessageDialog(null,"La fecha no existe");}}}
10.Leer 3 números (día, mes y año) y decir si corresponde a una fecha correcta. Programarlo utilizando la instrucción de selección múltiple: switch.
import javax.swing.JOptionPane;public class prob10 {public static void main(String[] args) {int dia,mes,año,a=0;dia=Integer.parseInt(JOptionPane.showInputDialog("Ingrese día: "));mes=Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes: "));año=Integer.parseInt(JOptionPane.showInputDialog("Ingrese año: "));switch(mes){case 1: a=31; case 2: if(año%4==0 && (año%400==0||año%100!=0))
a=29;else
a=28;break;
case 3: a=31;break; case 4: a=30;break; case 5: a=31;break; case 6: a=30;break; case 7: a=31;break; case 8: a=31;break; case 9: a=30;break; case 10: a=31;break;
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
case 11: a=30;break; case 12: a=31;break;}if(año>0 && (mes>0 && mes<=12) && (dia>=1 && a>=dia))
JOptionPane.showMessageDialog(null,"La fecha existe");else
JOptionPane.showMessageDialog(null,"La fecha no existe");}}
11.Dadas tres variables enteras (v1, v2 y v3) escribir condiciones que expresen lo siguiente:
import javax.swing.JOptionPane;public class prob11 {public static void main(String[] args) {int v1,v2,v3;v1=Integer.parseInt(JOptionPane.showInputDialog("Ingrese primera variable: "));v2=Integer.parseInt(JOptionPane.showInputDialog("Ingrese segunda variable: "));v3=Integer.parseInt(JOptionPane.showInputDialog("Ingrese tercera variable: "));
a) Todas las variables son cero.
if (v1==v2 && v2==v3 && v3==0)JOptionPane.showMessageDialog(null,"Todas las variables son cero");
elseJOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
b) Todas las variables son positivas.
if (v1>0 && v2>0 && v3>0)JOptionPane.showMessageDialog(null,"Todas las variables son positivas");
elseJOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
c) Todas las variables tienen el mismo signo.
if (v1>0 && v2>0 && v3>0)JOptionPane.showMessageDialog(null,"Todas las variables tienen el mismo
signo");else if (v1<0 && v2<0 && v3<0)
JOptionPane.showMessageDialog(null,"Todas las variables tienen el mismo signo");else
JOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
d) Todos sus valores son distintos.
if (v1!=v2 && v2!=v3 && v3!=v1)JOptionPane.showMessageDialog(null,"Todas las variables son distintas");
else
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
JOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
e) Dos de sus valores coinciden.
if (v1==v2 && v2==v3 && v3==v1)JOptionPane.showMessageDialog(null,"No cumplen la condición inicial");
else if (v1==v2 || v2==v3 || v3==v1)JOptionPane.showMessageDialog(null,"Dos de las variables coinciden");
elseJOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
f) Como máximo dos de sus valores coinciden.
if (v1==v2 && v2==v3 && v3==v1)JOptionPane.showMessageDialog(null,"Todas las variables coinciden");
else if (v1==v2 || v2==v3 || v3==v1)JOptionPane.showMessageDialog(null,"Dos de las variables coinciden");
elseJOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
g) El valor de v2 está comprendido entre los de v1 y v3.
if (v1<v2 && v2<v3)JOptionPane.showMessageDialog(null,"v2 está comprendido entre v1 y v3");
else if (v3<v2 && v2<v1)JOptionPane.showMessageDialog(null,"v2 está comprendido entre v3 y v1");
elseJOptionPane.showMessageDialog(null,"No cumplen la condición inicial");}}
12.Leer un número de mes y un número de año y escribir el número de días que tiene dicho mes, teniendo en cuenta que el año puede ser bisiesto.
import javax.swing.JOptionPane;public class prob12 {public static void main(String[] args) {int dia,mes,año,a=0;año=Integer.parseInt(JOptionPane.showInputDialog("Ingrese año: "));mes=Integer.parseInt(JOptionPane.showInputDialog("Ingrese mes: "));if(año>0 && 0<mes && mes<13){switch(mes) {case 1: a=31; case 2: if(año%4==0 && (año%400==0||año%100!=0))
a=29; else a=28; break;
case 3: a=31;break;
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
case 4: a=30;break;case 5: a=31;break;case 6: a=30;break;case 7: a=31;break;
case 8: a=31;break;case 9: a=30;break;case 10: a=31;break;case 11: a=30;break;case 12: a=31;break;}
JOptionPane.showMessageDialog(null,"El número de días del mes ("+mes+") es : "+a++);}else
JOptionPane.showMessageDialog(null,"La fecha no existe");}}
13.Dado un número decir si es primo.
import javax.swing.JOptionPane;public class prob13 {public static void main (String[] args) {int n,c=0,i;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));for(i=1;i<=n;i++)
{if(n%i==0)c++;}
if(c<=2)JOptionPane.showMessageDialog(null,"El número es primo");
elseJOptionPane.showMessageDialog(null,"El número no es primo");}}
14.Escribir los 50 primeros números primos.
import javax.swing.JOptionPane;public class prob14 {public static void main(String[] args) {int i,j,m=0;for(j=1;j<=1000;j++)
{int n=0;for(i=1;i<=j;i++) {if(j%i==0) {n=n+1;}}
if(n==2) {m=m+1; if(m<=50)
{JOptionPane.showMessageDialog(null," "+j+" ");}}}}}
15.Dados dos números enteros, realizar el algoritmo que calcule el cociente y el resto (sin utilizar las operaciones de cociente y resto en Java, esto es, / y %).
import javax.swing.JOptionPane;public class prob15 {
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
public static void main(String[] args) {int c,d,n,a=0,b,x,y;d=Integer.parseInt(JOptionPane.showInputDialog("Ingrese denominador: "));n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese numerador: "));
for(b=1;(b*n)<=d;b++){c=b*n;
if(c<=d){a++;}}
x=a;y=d-(x*n);JOptionPane.showMessageDialog(null,+x+" = Cociente\n"+y+" = Resto");}}
16.Leer una lista de números por teclado (hasta que se lea el 0) y calcular la suma y la media entera de todos ellos.
import javax.swing.JOptionPane;public class prob16 {public static void main(String[] args) {float s=0,n,p;int c=0;do
{n=Integer.parseInt(JOptionPane.showInputDialog("(NOTA: ingrese 0 para finalizar)\n Ingrese número: "));
if(n!=0){s=s+n; c++;}}
while(n!=0);if(c>0)
{p=s/c;JOptionPane.showMessageDialog(null,"La suma es: " +s+"\nLa media es: "
+p++);}}}
17.Diseñar un algoritmo que permita al usuario la introducción de 50 números enteros y encuentre el máximo y el mínimo.
import javax.swing.JOptionPane;public class prob17 {public static void main(String[] args) {int max,min,numero,i;numero=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));max=numero;min=numero;for(i=2;i<=50;i++)numero=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));
if(numero<min)min=numero;
if(numero>max)max=numero;
if(max!=min){JOptionPane.showMessageDialog(null,"El mayor número es: "+max++);
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
JOptionPane.showMessageDialog(null,"El menor número es: "+min++);}else
JOptionPane.showMessageDialog(null,"Los números son iguales");}}
18.Modificar el algoritmo anterior para que además de calcular el máximo y el mínimo, calcule también el valor medio (entero).
import javax.swing.JOptionPane;public class prob18 {public static void main(String[] args) {int max,min,numero,i;float med;numero=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));max=numero;min=numero;for(i=2;i<=50;i++)numero=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));
if(numero<min)min=numero;
if(numero>max)max=numero;
med=(max+min)/2;if(max!=min)
{JOptionPane.showMessageDialog(null,"El mayor número es: "+max++); JOptionPane.showMessageDialog(null,"El menor número es: "+min++);JOptionPane.showMessageDialog(null,"El valor medio es: "+med++);}
else{JOptionPane.showMessageDialog(null,"Los números son iguales");
JOptionPane.showMessageDialog(null,"No tiene valor medio");}}}
19.Leer un número n por teclado y escribir el sumatorio de todos los números entre 1 y n.
import javax.swing.JOptionPane;public class prob19 {public static void main(String[] args) {int n,s;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));s=(n*(n+1))/2;JOptionPane.showMessageDialog(null,"La sumatoria de los "+n+" primeros números es: "+s++);}}
20.Se considera la siguiente serie definida por:a1= 0; a2 = 1; ...; an= 3*an-1 + 2*an-2; con n>=3
Los primeros términos de la serie son: 0, 1, 3, 11, 39,...; se desea obtener el valor y rango del primer término de esta serie superior o igual a 1000.
import javax.swing.JOptionPane;
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
public class prob20 {public static void main(String[] args) {int r=2,a1=0,a2=1,an;
for(an=0;an<=1000;r++){an=(3*a2)+(2*a1); a1=a2; a2=an;}
JOptionPane.showMessageDialog(null," número = "+an+" de rango n"+r+" ");}}
21.Leer un número y decir si es capicúa. En una primera versión supondremos que como máximo es un número de 6 cifras (entre 0 y 999.999).
import javax.swing.JOptionPane;public class prob21 {public static void main(String[] args) {int n,i=0,r;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número menor a seis cifras: "));if (n>=1 && n<=9)
JOptionPane.showMessageDialog(null,"No es capicúa");else if (n<=999999){r=n;while(r>0){i=(i*10)+(r%10);
r/=10;}if(n==i)
{JOptionPane.showMessageDialog(null,"Es capicúa");}else
{JOptionPane.showMessageDialog(null,"No es capicúa");}}else
JOptionPane.showMessageDialog(null,"Número incorrecto");}}
22.Leer un número y decir si es capicúa. No supondremos que es como máximo de 6 cifras sino cualquier número. NOTA: no es exactamente cierto ya que se lee un número de tipo long y tiene un límite.
import javax.swing.JOptionPane;public class prob22 {public static void main(String[] args) {int n,i=0,r;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));if (n>=1 && n<=9)
JOptionPane.showMessageDialog(null,"No es capicúa");else if (n>=10){r=n;while(r>0){i=(i*10)+(r%10);
r/=10;}if(n==i)
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
{JOptionPane.showMessageDialog(null,"Es capicúa");}else
{JOptionPane.showMessageDialog(null,"No es capicúa");}}}}
24.Leer dos números n y m y escribir el número combinatorio n sobre m.
import javax.swing.JOptionPane;public class prob24 {public static void main(String[] args) {int n=0,i,m=0,j,k,c,fact1,fact2,fact3;fact1=1;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese índice superior: "));if(n!=0)
for(i=n;i>=1;i--)fact1*=i;
fact2=1;m=Integer.parseInt(JOptionPane.showInputDialog("Ingrese índice inferior: "));if(m!=0)
for(j=m;j>=1;j--)fact2*=j;
fact3=n-m;fact3=1;if((n-m)!=0)
for(k=(n-m);k>=1;k--)fact3*=k;
c=(fact1)/((fact2)*(fact3));if(n>=m)JOptionPane.showMessageDialog(null,"La combinatoria es: "+c++);elseJOptionPane.showMessageDialog(null,"Los números son incorrectos");}}
25.Leer un número n y escribir el triángulo de Tartaglia hasta la fila n-ésima.
import javax.swing.JOptionPane;public class prob25 {public static void main(String[] args) {int[] a = new int[1];int n;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número de elementos: "));
for (int i=1; i<=n; i++){int[] x = new int[i]; for (int j=0; j<i; j++) {if(j==0 || j== (i-1))
{x[j]=1;} else {x[j]=a[j]+a[j-1];}System.out.print(x[j]+" ");}
a = x;
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
System.out.println();}}}
26.Realizar un programa que lea un número por teclado y lo escriba como número romano (aparecen en negrita los números que se han introducido por teclado).
import javax.swing.JOptionPane;public class prob26 {public static void main(String[] args) {int n;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));switch(n/1000){case 1: System.out.print("M");break;case 2: System.out.print("MM");break;case 3: System.out.print("MMM");break;case 4: System.out.print("__\nIV");break;case 5: System.out.print("_\nV");break;case 6: System.out.print("__\nVI");break;case 7: System.out.print("___\nVII");break;case 8: System.out.print("____\nVIII");break;case 9: System.out.print("__\nIX");break;}switch((n/100)%10){case 1: System.out.print("C");break;case 2: System.out.print("CC");break;case 3: System.out.print("CCC");break;case 4: System.out.print("CD");break;case 5: System.out.print("D");break;case 6: System.out.print("DC");break;case 7: System.out.print("DCC");break;case 8: System.out.print("DCCC");break;case 9: System.out.print("CM");break;}switch((n/10)%10){case 1: System.out.print("X");break;case 2: System.out.print("XX");break;case 3: System.out.print("XXX");break;case 4: System.out.print("XL");break;case 5: System.out.print("L");break;case 6: System.out.print("LX");break;case 7: System.out.print("LXX");break;case 8: System.out.print("LXXX");break;case 9: System.out.print("XC");break;}switch(n%10){case 1: System.out.print("I");break;case 2: System.out.print("II");break;case 3: System.out.print("III");break;case 4: System.out.print("IV");break;case 5: System.out.print("V");break;case 6: System.out.print("VI");break;case 7: System.out.print("VII");break;case 8: System.out.print("VIII");break;case 9: System.out.print("IX");break;}}
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
27.Leer un número del teclado y decir si es un número perfecto. Un número es perfecto si es igual a la suma de todos sus divisores (incluyendo al 1 pero excluyéndose a él mismo).
import javax.swing.JOptionPane;public class prob27 {public static void main(String[] args) {int n,c=0,i,x,a;n=Integer.parseInt(JOptionPane.showInputDialog("Ingrese número: "));for(i=1;i<=n;i++)
{x=n%i;if(x==0)
{c=c+i;}} a=c-n;
if(n==a){JOptionPane.showMessageDialog(null,"El número "+n+" es perfecto");}
else{JOptionPane.showMessageDialog(null,"El número "+n+" no es perfecto");}}}
28.Realizar un programa que escriba todos los números perfectos entre el 1 y el 10000.
import javax.swing.JOptionPane;public class prob28 {public static void main(String[] args) {int j,i,a;for(j=2;j<=1000;j++)
{int n=0;for(i=1;i<=j;i++)
{if(j%i==0){n=n+i;}}
a=n-j;if(j==a)
{JOptionPane.showMessageDialog(null," "+j+" ");}}}}
29.Realizar un programa que escriba los 4 primeros números perfectos.
import javax.swing.JOptionPane;public class prob29 {public static void main(String[] args) {int n,p,c,i;n=1;p=0;do {c=0;
for(i=1;i<=n-1;i++)if(n%i==0) c+=i;if(c==n)
PROGRAMACIÓN DIGITAL II
UNIVERSIDAD NACIONAL DEL CALLAO FACULTAD DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA ESCUELA PROFESIONAL DE INGENIERÍA ELECTRÓNICA
{JOptionPane.showMessageDialog(null," es perfecto: "+n++);p++;} n++;}
while(p<4);}}
PROGRAMACIÓN DIGITAL II