Está en la página 1de 28

EJERCICIOS RESUELTOS EN JAVA

1.Hacer una aplicacion que me permita visualizar la suma de dos numeros


ingresados

public static void main(String[] args) {
int n1,n2,suma;
n1= Integer.parseInt(JOptionPane.showInputDialog("ingrese el numero"));
n2= Integer.parseInt(JOptionPane.showInputDialog("ingrese el segundo numero"));
suma=n1+n2;
JOptionPane.showMessageDialog(null,"La suma es"+ suma);


2.Calcular el promedio ingresando tres notas:

public static void main(String[] args) {
int n1,n2,promedio;
n1= Integer.parseInt(JOptionPane.showInputDialog("ingrese el numero"));
n2= Integer.parseInt(JOptionPane.showInputDialog("ingrese el segundo numero"));
promedio=(n1+n2)/3;
JOptionPane.showMessageDialog(null,"El promedio es"+ promedio);

3.Ingresar dos numeros y detreminar el n.mayor y menor ademas visializar el
nombre del ejecutante

public static void main(String[] args) {
int n1,n2;
double max,min;
n1= Integer.parseInt(JOptionPane.showInputDialog("ingrese el numero uno"));
n2= Integer.parseInt(JOptionPane.showInputDialog("ingrese el numero dos"));
min=Math.min(n1,n2);
max=Math.max(n1,n2);
JOptionPane.showMessageDialog(null,"el numero mayor es " +max);
JOptionPane.showMessageDialog(null,"el numero menor es " +min);
JOptionPane.showMessageDialog(null,"Claudia");

4.Escribe un programa Java que realice lo siguiente: declarar una variable N
de tipo int, una variable A de tipo double y una variable C de tipo char y
asigna a cada una un valor. A continuacin muestra por pantalla:
El valor de cada variable.
La suma de N + A
La diferencia de A - N
El valor numrico correspondiente al carcter que contiene la variable C.
Si por ejemplo le hemos dado a N el valor 5, a A el valor 4.56 y a C el valor a, se
debe mostrar por pantalla:
Variable N = 5
Variable A = 4.56
Variable C = a
5 + 4.56 = 9.559999999999999
4.56 - 5 = -0.4400000000000004
Valor numrico del carcter a = 97

package bi1;

public class Main {

public static void main(String[] args) {
int N = 5;
double A = 4.56;
char C = 'a';
System.out.println("Variable N = " + N);
System.out.println("Variable A = " + A);
System.out.println("Variable C = " + C);
System.out.println(N + " + " + A + " = " + (N+A));
System.out.println(A + " - " + N + " = " + (A-N));
System.out.println("Valor numrico del carcter " + C + " = " + (int)C);
}
}

5.Crear una lista de nmeros enteros, la cantidad de elementos de la lista
DEBE ser un numero aleatorio dentro del intervalo [10; 20].
Los valores que se agregan a la lista DEBEN ser nmeros enteros dentro del
intervalo [10; 100]
Se pide una aplicacin en Java que permita cumplir con los siguientes
requerimientos:

Imprimir la lista de nmeros generados.
Imprimir la suma de los nmeros PARES que fueron generados.
Imprimir la cantidad de nmeros impares que fueron generados.



6.Se desea manejar una lista de robots. Cada robot tiene un nmero y un
porcentaje de vida. El nmero de elementos de la lista ser un valor aleatorio
entre 5 y 10. El porcentaje de vida de cada ROBOT ser un valor aleatorio entre
1 y 100.
Se pide construir una aplicacin en java que permita cumplir con la siguiente
funcionalidad:

Imprimir la lista de robot ordenada por porcentaje de vida de los robots. Al principio de
la lista DEBEN estar los robots con menos porcentaje de vida.
Imprimir la cantidad de robot que tiene ms del 50% de vida.
Imprimir el nmero de los TRES robots que tienen mayor porcentaje de vida.




1. Reportar nmeros del 1 al 10.
o Resolvemos el problema usando while
1
2
3
4
5
6
7
8
9
10
public static void main (String args [])
{
int n=0;
while(n<10)
{
n++;
System.out.print(n+"n");

}
}
o Resolvemos el problema usando do while
1
public static void main (String args [])
2
3
4
5
6
7
8
9
{

int n=0;
do{
n++;
System.out.print(n+" ");
}while(n<10);
}
o Resolvemos el problema usando for
1
2
3
4
5
6
7
8
9
public static void main (String args [])
{

int n=0;
for(int i=1;i<=10;i++)
{
System.out.print(i+" ");
}
}
2. Reportar los siguiente serie:
20 25 30 35 70 75 80
1
2
3
4
5
6
7
8
public class Ejemplo
{
public static void main(String[] args)
{
for (int i = 20; i < 80; i = i + 5)
System.out.print(i + " ");
}
}
3. Reportar la siguiente serie:
100 98 96 94 56 54 52 50
1
2
3
4
5
6
7
8
9
public class Ejemplo
{

public static void main(String[] args)
{
for(int i=100;i>=50;i=i-2)
System.out.print(i+" ");
}
}
4. Ingresar N nmeros enteros y reportar la cantidad de pares y la cantidad de impares.
1
2
3
4
5
6
import java.util.Scanner;

public class Ejemplo
{

public static void main(String[] args)
{
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Scanner scan = new Scanner(System.in);
int n, x, cp = 0, ci = 0;
System.out.print("Ingrese la cantidad de numeros a revisar: ");
n = scan.nextInt();
for (int i = 1; i <= n; i++)
{
System.out.print(i + ") Ingrese un numero: ");
x = scan.nextInt();
if (x % 2 == 0)
cp++;
else
ci++;
}
System.out.println("La cantidad de pares son: " + cp);
System.out.println("La cantidad de impares son: " + ci);
}
}
5. Ingresar N nmeros y reportar la cantidad de positivos, negativos y ceros.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.util.Scanner;

public class Ejemplo
{

public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int n, x, cp = 0, cn = 0, c=0;
System.out.print("Ingrese la cantidad de numeros a revisar: ");
n = scan.nextInt();
for (int i = 1; i <= n; i++)
{
System.out.print(i + ") Ingrese un numero: ");
x = scan.nextInt();
if (x==0)
c++;
else
{
if(x>0)
cp++;
else
cn++;

}
}
System.out.println("La cantidad de positivos son: " + cp);
System.out.println("La cantidad de negativos son: " + cn);
System.out.println("La cantidad de ceros son: " + c);
}
}
28
29
30
31
6. Ingresar el sexo de n personas y reportar el porcentaje de hombres y el porcentaje de
mujeres.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.util.Scanner;

public class Ejemplo
{

public static void main(String[] args)
{
Scanner scan = new Scanner(System.in);
int n, x, cv = 0, cm = 0;
double pv,pm;
System.out.print("Ingrese numero de personas : ");
n = scan.nextInt();
System.out.print("Ingrese sexo n"
+ "[1] Varon n"
+ "[2] Mujer n");
for (int i = 1; i <= n; i++)
{
System.out.print("Persona " + i + " : ");
x = scan.nextInt();
if (x==1)
cv++;
else
{
if(x==2)
cm++;
}
}
pv=(cv*100)/n;
pm=(cm*100)/n;
System.out.println("El porcentaje de varones es : " + pv + "%");
System.out.println("El porcentaje de mujeres es : " + pm + "%");
}
}
7. Calcular el siguiente producto:
P = 1*2*3*4*5*6**50
1
2
3
4
5
public class Ejemplo
{

public static void main(String[] args)
{
double prodt=1;
6
7
8
9
10
11
for(int i=1;i<=50;i++)
prodt=prodt*i;
System.out.println("El producto es : " + prodt);
}
}
8. Calcular la sumatoria de los nmeros enteros del 1 al 100.
1
2
3
4
5
6
7
8
9
10
11
public class Ejemplo
{

public static void main(String[] args)
{
int sum=0;
for(int i=1;i<=100;i++)
sum=sum+i;
System.out.println("La suma es : "+sum);
}
}
9. Calcular la suma de los cuadrados de los 15 primeros nmeros naturales.
1
2
3
4
5
6
7
8
9
10
public class Ejemplo
{
public static void main(String[] args)
{
int i,sc=0;
for(i=1;i<=15;i++)
sc=sc+i*i;
System.out.println("La suma de los cuadrados de los primeros 15 nmeros es : "+sc);
}
}
10. Se desea calcular independientemente la suma de los pares e impares comprendidos
entre 1 y 50.
1
2
3
4
5
6
7
8
9
10
11
12
public class Ejemplo
{
public static void main(String[] args)
{
int i,sp=0,si=0;
for(i=1;i<=50;i++)
if(i%2==0) sp=sp+i;
else si=si+i;
System.out.println("La suma de pares es : "+sp);
System.out.println("La suma de impares es : "+si);
}
}
11. Se desea calcular independientemente la suma de los impares y el producto de todos los
impares comprendidos entre 20 y 80
1
public class Ejemplo
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
public static void main(String[] args)
{
int i,si=0;
double pi=1;
for(i=20;i<=80;i++)
if(i%2!=0)
{
si=si+i;
pi=pi*i;
}
System.out.println("La suma es : "+si);
System.out.println("El producto es : "+pi);
}
}
12. Ingresar un nmero entero positivo y reportar su tabla de multiplicar.
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Ejemplo
{
public static void main(String[] args)
{
Scanner sc= new Scanner(System.in);
int n;
System.out.print("Ingresa un numero entero positivo : ");
n=sc.nextInt();
System.out.println("Tabla de multiplicar del "+n);
for(int i=1;i<=12;i++)
System.out.println(n+"x"+i+"="+n*i);
}
}
13. Calcular el factorial de un nmero entero mayor o igual que cero.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{

Scanner in = new Scanner(System.in);
int n,i;
double f=1;
do{
System.out.print("Ingrese numero positivo o cero : ");
n=in.nextInt();
}while(n<0);
for(i=1;i<=n;i++)
f=f*i;
System.out.println("El factorial es : "+f);
}
}
17
18
19
14. Ingresar n nmeros. Se pide calcular el promedio de ellos
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int n,i;
double x,s=0,p;
do{
System.out.print("Valor de n : ");
n=in.nextInt();
}while(n<=0);
for(i=1;i<=n;i++)
{
System.out.print("Ingrese numero : ");
x=in.nextDouble();
s=s+x;
}
p=s/n;
System.out.println("El Promedio es : "+p);
}
}
15. Ingresar n nmeros enteros, visualizar la suma de los nmeros pares de la lista, cuantos
pares existen y cul es la media de los nmeros impares.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
Scanner in =new Scanner(System.in);
int n,i,x,sp=0,si=0,cp=0,ci=0;
double mi;
do{
System.out.print("Valor de n : ");
n=in.nextInt();
}while(n<=0);
for(i=1;i<=n;i++)
{
System.out.print("Ingrese numero : ");
x=in.nextInt();
if(x%2==0)
{
cp++;
sp=sp+x;
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
}
else
{
ci++;
si=si+x;
}
}
if(cp>0)
{
System.out.println("La suma de los numeros pares es : "+sp);
System.out.println("La cantidad de numeros pares es : "+cp);
}
else
System.out.println("No se Ingresaron numeros pares");
if(ci>0)
{
mi=(double)si/ci;
System.out.println("La media de los impares es : "+mi);
}
else
System.out.println("No se Ingresaron numeros impares");
}
}
16. Ingresar n nmeros y reportar el promedio de los positivos y el promedio de los
negativos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.Scanner;

public class Ejemplo
{

public static void main(String[] args)
{

Scanner in = new Scanner(System.in);
int n,i,x,sp=0,sn=0,cp=0,cn=0;
double pp,pn;
do{
System.out.print("Valor de n : ");
n=in.nextInt();
}while(n<=0);
for(i=1;i<=n;i++)
{
System.out.print("Ingrese numero : ");
x=in.nextInt();
if(x>0)
{
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
cp++;
sp=sp+x;
}
else
if(x<0)
{
cn++;
sn=sn+x;
}
}
if(cp>0)
{
pp=(double)sp/cp;
System.out.println("El Promedio de positivos es : "+pp);
}
else
System.out.println("No se Ingresaron Positivos");
if(cn>0)
{
pn=(double)sn/cn;
System.out.println("El Promedio de Negativos es : "+pn);
}
else
System.out.println("No se Ingresaron Negativos");
}
}
17. Ingresar n nmeros, Calcular el mayor y el menor de ellos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{

int n,i;
double x,maximo,minimo;
Scanner in = new Scanner(System.in);
do{
System.out.print("Valor de n : ");
n=in.nextInt();
}while(n<=0);
maximo=-1e30;
minimo=1e30;
for(i=1;i<=n;i++)
{
System.out.print("Ingrese numero : ");
16
17
18
19
20
21
22
23
24
25
26
27
x=in.nextDouble();
if(x>maximo) maximo=x;
if(x<minimo) minimo=x;
}
System.out.println("El maximo es : "+maximo);
System.out.println("El minimo es : "+minimo);
}
}
18. Calcular la suma de los n trminos de la serie:
S=1 1/2 + 1/3 1/4 + 1/5 1/6 + 1/n
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;

public class Ejemplo
{

public static void main(String[] args)
{
Scanner sc= new Scanner(System.in);
int n,i;
double s=0;
do{
System.out.print("Valor de n : ");
n=sc.nextInt();
}while(n<=0);

for(i=1;i<=n;i++)
{
if(i%2==0) s=s-1.0/i;
else s=s+1.0/i;
}
System.out.println("La sumatoria es : "+s);
}
}
19. Realizar un programa que escriba los n trminos de la serie de Fibonacci
1, 1, 2, 3, 5, 8, 13, 21,
1
2
3
4
5
6
7
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args) {

Scanner in = new Scanner(System.in);
int n,i;
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
double p=1,s=0,t;
do{
System.out.print("Numero de terminos : ");
n=in.nextInt();
}while(n<=2);
for(i=1;i<=n;i++)
{
t=p+s;
System.out.print(t+" ");
p=s;
s=t;
}
System.out.println();
}
}
20. Leer nmeros hasta que el ltimo nmero ingresado sea -99 (este no se toma en cuenta
para el clculo) y reportar el mayor.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
Scanner sc= new Scanner(System.in);
int n,i=0;
double x,mayor;
mayor=-1e30;
do{
System.out.print("Ingrese numero (-99 para finalizar) : ");
x=sc.nextDouble();
if(x!=-99)
{
i++;
if(x>mayor) mayor=x;
}
}while(x!=-99);
if(i>0)
System.out.println("El mayor es : "+mayor);
else
System.out.println("No se ingresaron numeros");
}
}
21. Calcular la sumatoria:
S= 1 + x + x^2/2! + x^3/3! + x^4/4! + + x^n/n!
Se debe ingresar x real y n entero positivo
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int n,i;
double p=1,x,f=1,s=1;
System.out.print("Ingrese valor de x : ");
x=sc.nextDouble();
do{
System.out.print("Valor de n : ");
n=sc.nextInt();
}while(n<0);
for(i=1;i<=n;i++)
{
f=f*i;
p=p*x;
s=s+p/f;
}
System.out.println("La sumatoria es : "+s);
}
}
22. Programa para ingresar un nmero entero positivo y reportar todos sus divisores.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.util.Scanner;

public class Ejemplo
{
public static void main(String args[])
{
Scanner in = new Scanner(System.in);
int num;
do{
System.out.print("Ingrese numero :");
num=in.nextInt();
}while(num<=0);
int d;
System.out.println("Los divisores del numero son :");
for(d=1;d<=num;d++)
if(num%d==0) System.out.print(d+" ");
System.out.println();
}
}
23. Ingresar un nmero entero y reportar si es primo. Un nmero es primo cuando es
divisible por si mismo y la unidad.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.util.Scanner;

public class Ejemplo
{
public static void main(String args[])
{
Scanner in = new Scanner(System.in);
int num;
do{
System.out.print("Ingrese numero :");
num=in.nextInt();
}while(num<=0);
int n;
int d=1;
do{
d=d+1;
}while( num%d!=0 && d*d<=num);
if(d*d>num) n=1;
else n=0;
if(n==1)
System.out.println("El numero es primo");
else
System.out.println("El numero no es primo");
}

}
24. Ingresar un nmero entero positivo y reportar si es perfecto. Un nmero es perfecto si es
igual a la suma de divisores menores que l. Por ejemplo 6 es perfecto pues es igual 1 +
2 + 3.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
int num;
do{
System.out.print("Ingrese numero :");
num=in.nextInt();
}while(num<=0);
int d,sum=0;
for(d=1;d<num;d++)
if(num%d==0) sum=sum +d;
if(sum==num)
System.out.print("El numero es Perfecto!!");
else
System.out.print("El numero NO es Perfecto!!");
System.out.println();
}
18
19
20
21
22
}
25. Ingresar un nmero y reportar todos sus factores primos. Por ejemplo si ingresamos 12
debe reportar 2x2x3. Si ingresamos 25 se debe reportar 55.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;

public class Ejemplo
{
public static void main(String args[])
{
Scanner in = new Scanner(System.in);
int num;
do{
System.out.print("Ingrese numero :");
num=in.nextInt();
}while(num<=0);
int d=2;
System.out.print("Factores primos : ");
while(num>1)
{
while(num % d !=0) d=d+1;
System.out.print(d+" ");
num=num/d;
}
System.out.println("");
}
}
26. Ingresar 2 nmeros enteros positivos y reportar su mximo comn divisor.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.Scanner;

public class Ejemplo
{
public static void main(String args[])
{
Scanner in=new Scanner(System.in);
int x,y;
do{
System.out.print("Ingrese primer numero :");
x=in.nextInt();
}while(x<0);
do{
System.out.print("Ingrese el segundo numero : ");
y=in.nextInt();
}while(y<0);
int d=2,p=1,a,b;
a=x;
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
b=y;
while(d<=a && d<=b)
if(a%d==0 && b%d==0)
{
p=p*d;
a=a/d;
b=b/d;
}
else
d++;
System.out.println("El m.c.d de "+x+" y "+y+" es : "+p);
}
}
27. Ingresar un nmero entero positivo y reportar su suma de dgitos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{

Scanner sc = new Scanner(System.in);
int num, sum=0, digit;
do
{
System.out.print("Ingrese un numero : ");
num = sc.nextInt();
}while(num<0);
while(num>0)
{
digit=num%10;
sum=sum+digit;
num=num/10;
}
System.out.println("La suma de sus digitos es : "+sum);
}
}
28. Ingresar un numero entero positivo y reportar si es capica
1
2
3
4
5
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Scanner sc = new Scanner(System.in);
int num, invert=0,aux, digit;
System.out.print("Ingresa numero : ");
num = sc.nextInt();
aux=num;
while(aux>0)
{
digit=aux%10;
invert=invert*10 + digit;
aux=aux/10;
}
if(num==invert)
System.out.println("El numero es Capicua!!");
else
System.out.println("El numero NO es Capicua!!");
}
}
29. Ingresar un numero entero en base 10 y reportar el numero en base b ( entre 2 y 9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.util.Scanner;

public class Ejemplo
{
public static void main(String[] args)
{
Scanner sc= new Scanner(System.in);
int num,base;
String result=" ";
System.out.print("Ingrese el numero en base 10 : ");
num= sc.nextInt();
do{
System.out.print("Ingrese la base : ");
base= sc.nextInt();
}while(base>=9);
if(num<base)
result= num + result;
while(num>=base)
{
result= num%base + result;
num=num/base;
if(num<base)
result= num + result;
}
System.out.println("El numero en base "+base+" es : "+result);
}
}
30. Se desea calcular independientemente la suma de los pares e impares comprendidos
entre 1 y 50 (incluidos los extremos).
31. Calcular y visualizar la suma y el producto de los nmeros impares comprendidos entre
20 y 80.
32. Leer n nmeros enteros y obtener el promedio de los positivos y el promedio de los
negativos.
33. Calcular la suma de los cuadrados de los nmeros desde el 1 hasta el 15.
34. Se ingresan n nmeros. Se pide calcular el promedio de ellos
35. Ingresar n nmeros enteros, visualizar la suma de los nmeros pares de la lista, cuantos
pares existen y cul es la media de los nmeros impares.
36. Desarrolle un programa que determine en un conjunto de nmeros naturales.
o Cuantos son menores de 15
o Cuantos son mayores de 50
o Cuantos estn comprendidos entre 25 y 45.
37. Calcular el factorial de un numero n>=0
38. Ingresar un valor de x y un valor n positivo reportar la potencia de x elevado a la n.
39. Imprimir las 10 primeras potencias de 4.
40. Ingresar n nmeros, Calcular el mximo y el mnimo de ellos.
41. Realizar un programa que escriba los n trminos de la serie de Fibonacci
1, 1, 2, 3, 5, 8, 13, 21,
42. Leer Nmeros (el ultimo numero es -99) y obtener el mayor.
43. Calcular la sumatoria
s = 1 + x + x^2/2! + x^3/3! + x^4/4! + + x^n/n!
Se debe ingresar x real y n entero positivo
44. un programa para calcular el factorial de un nmero
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import java.util.Scanner;

class Ejercicio{

public static int factorial(int n)
{
if(n==0) return 1;
else return n*factorial(n-1);
}

public static void main(String args[])
{
Scanner in =new Scanner(System.in);
int num;
do{
System.out.print("Ingrese numero :");
num=in.nextInt();
}while(num<=0);
System.out.println("El factorial es : "+factorial(num));
}
}
19
20
21
45. Calcular la potencia de x elevado a la n en forma recursiva. x real y n entero
positivo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.util.Scanner;

class Ejercicio{

public static double potencia(double x, double n)
{
if(n==0) return 1;
else return x*potencia(x,n-1);
}

public static void main(String args[])
{
Scanner in = new Scanner(System.in);
int n;
double x;
System.out.print("Valor de x :");
x= in.nextDouble();
do{
System.out.print("valor de n : ");
n=in.nextInt();
}while(n<=0);
System.out.println(x+" elevado a la "+n+
" es igual a "+potencia(x,n));
}
}
46. Hacer un programa para que reporte los n trminos de la serie de Fibonacci
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
import java.util.Scanner;

class Ejercicio{

public static int fibonacci(int n)
{
if(n==1) return 1;
else
if(n==2)
return 1;
else
return fibonacci(n-1) + fibonacci(n-2);
}

public static void main(String args[])
{
Scanner in = new Scanner(System.in);
int n,i ;
16
17
18
19
20
21
22
23
24
25
26
27
do{
System.out.print("Nmero de terminos de la serie : ");
n=in.nextInt();
}while(n<=0);
for(i=1;i<=n;i++)
System.out.print(fibonacci(i) + " ");
System.out.println();
}
}
47. Programa para calcular el mximo comn divisor de dos nmeros.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.util.Scanner;

class Ejercicio{

public static int mcd(int a,int b)
{
if(a%b==0) return b;
else return mcd(b,a%b);
}

public static void main(String args[])
{
Scanner in = new Scanner(System.in);
int x,y;
do{
System.out.print("Ingrese primer numero :");
x=in.nextInt();
}while(x<=0);
do{
System.out.print("Ingrese segundo numero :");
y=in.nextInt();
}while(y<=0);
System.out.println("El mcd de "+x+" y "+y+" es : "+mcd(x,y));
}
}
48. Programa para reportar un numero al revs
1
2
3
4
5
6
7
import java.util.*;

class Ejercicio{

public static void reves(int n)
{
System.out.print(n % 10);
if( n/10!=0 )
reves(n/10);
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
}

public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
int num;
do{
System.out.print("Ingrese numero :");
num=sc.nextInt();
}while(num<=0);
System.out.print("Numero al reves :");
reves(num);
System.out.println();
}
}
49. Programa para convertir un numero de base 10 a base b (entre 2 y 9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
import java.util.*;

class Ejercicio{

public static void conversionBase(int n, int b)
{
if(n<b)
System.out.print(n);
else
{
conversionBase(n/b,b);
System.out.print(n%b);
}
}

public static void main(String args[])
{
Scanner sc = new Scanner(System.in);
int num,b;
do{
System.out.print("Ingrese numero :");
num=sc.nextInt();
}while(num<=0);
do{
System.out.print("Base a la que quiere convertir : ");
b=sc.nextInt();
}while(b<2 || b>9);
System.out.print("El numero "+num+" en base "+b+" es : ");
conversionBase(num,b);
System.out.println();
}
29
30
31
32
1. Hacer un programa que ingrese una cadena de caracteres y determine el nmero de
maysculas y el nmero de minsculas.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.util.Scanner;

public class Ejercicio {

public static int contarMayusculas(String cadena) {
int n = 0;
for (int i = 0; i < cadena.length(); i++) {
if(cadena.charAt(i)> 64 && cadena.charAt(i)<91)
n++;
}
return n;
}

public static int contarMinusculas(String cadena) {
int n = 0;
for (int i = 0; i < cadena.length(); i++) {
if(cadena.charAt(i)> 96 && cadena.charAt(i)<123)
n++;
}
return n;
}

public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String chain;
System.out.print("Ingrese una cadena de caracteres: ");
chain = in.nextLine();
System.out.println("El numero de Mayusculas de la cadena es : " +
contarMayusculas(chain));
System.out.println("El numero de Minusculas de la cadena es : " +
contarMinusculas(chain));
}
}
2. Escribir un programa que reciba como datos una cadena de caracteres y un carcter y
reporta el nmero de veces que se encuentra el carcter en la cadena.
1
2
3
4
5
import java.util.Scanner;

public class Ejercicio {

public static int contarCaracter(String cadena, char caracter) {
int n = 0, pos = -1;
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
while ((pos = cadena.indexOf(caracter, pos + 1)) > -1)
n++;
return n;
}

public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String chain;
char caracter;
System.out.print("Ingrese una cadena de caracteres: ");
chain = in.nextLine();
System.out.print("Ingrese un caracter: ");
caracter = in.next().charAt(0);
System.out.println("El numero de ocurrencias de " + caracter
+ " es : " + contarCaracter(chain, caracter));
}
}
3. Implemente un programa que indique si una palabra es un palndrome . Una palabra es
palidrome si se lee igual de izquierda a derecha que de derecha a izquierda.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.Scanner;

public class Ejercicio {

public static boolean palindrome(String cadena) {
for (int i = 0, j = cadena.length() - 1; i < cadena.length() / 2; i++, j--)
if (cadena.charAt(i) != cadena.charAt(j))
return false;
return true;
}

public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String chain;
System.out.print("Ingrese una cadena de caracteres: ");
chain = in.nextLine();
if (palindrome(chain))
System.out.println("La cadena ES PALINDROME");
else
System.out.println("La cadena NO ES PALINDROME");

}
}
4. Implemente un programa que reciba una cadena S y una letra X, y coloque en
maysculas cada ocurrencia de X en S. (la funcin debe modificar la variable S).
1
import java.util.Scanner;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

public class Ejercicio {

public static String colocarMayuscula(String cadena,
char minuscula, char mayuscula) {

return cadena.replace(minuscula, mayuscula);
}

public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String chain;
char caracter;
System.out.print("Ingrese una cadena de caracteres: ");
chain = in.nextLine();
do {
System.out.print("Ingrese una letra: ");
caracter = in.next().charAt(0);
} while (!Character.isLetter(caracter));
chain = colocarMayuscula(chain, Character.toLowerCase(caracter),
Character.toUpperCase(caracter));
System.out.println("La cadena modificada es: " + chain);
}
}
5. Hacer un programa que reciba un string S y devuelva el mismo string S al cual se le han
eliminado los espacios.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import java.util.Scanner;

public class Ejercicio {
public static String eliminarEspacios(String cadena) {
String temp="";
char caracter;
for(int i=0;i<cadena.length();i++){
caracter=cadena.charAt(i);
if(!Character.isWhitespace(caracter))
temp=temp+caracter;
}
return temp;
}

public static void main(String args[]) {
Scanner in = new Scanner(System.in);
String chain;
System.out.print("Ingrese una cadena de caracteres: ");
chain = eliminarEspacios(in.nextLine());
System.out.println("La cadena sin espacios es: "+chain);
}
}
21
22