ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
SEGUNDO PARCIAL
1. Dado un lote de números, contar cuantos numero dígitos tiene longitud 3 (3 digitos)
Si N=10
123, 4, 567, 345, 3, 45, 34, 2343, 4, 45
Total=3
Conta longitud 3
LongitudNumero cuentaDig3 leeDatos principal
LeeDatos() inicio
N=563 L=3 cuentaDigitos(N)
563 10
3 56 10
LeeDatos()
6 5 10 CD3 = 0 N
5 0
cuentaDigitos(N) fin
i = 1, N, 1
LongitudNumero(N)
return
L=0 A
L= LongitudNumero(A)
N ≠ 0
f v
L= L + 1 L=3
N= N/10
CD3 = CD3 + 1
Return L
CD3
GABRIEL TITO DURAN
return
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
import [Link];
public class CuentaDigiitosLongitud3 {
Scanner lee = new Scanner([Link]);
long LongitudNumero(long N) {
long L;
L = 0;
while (N != 0) {
L = L + 1;
N = N / 10;
}
return L;
}
void cuentaDigitos(long N) {
int CD3;
long i, A, L;
CD3 = 0;
for (i = 1; i <= N; i++) {
[Link]("Ingrese Numero :");
A = [Link]();
L = LongitudNumero(A);
if (L == 3) {
CD3 = CD3 + 1;
}
}
[Link]("Total Numeros con longitud 3 =" + CD3);
}
void leeDatos() {
long N, Dm;
[Link]("Ingrese cantidad de numeros :");
N = [Link]();
cuentaDigitos(N);
public static void main(String arg[]) {
CuentaDigiitosLongitud3 cuenta = new CuentaDigiitosLongitud3();
[Link]();
}
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
2. Dado un numero N verificar si un numero capicúa (nota debe resolver utilizando la estructura do while)
Ejemplo
N = 1234 no es capicúa
N=121 es capicúa
N = 1234 se tiene que invertir el numero NI= 4321
N = 42124 se tiene que invertir el numero NI= 42124
Comparar N=NI
Como se invierte un numero
NI= 0
N=1234 10 NI= NI*10 + R
4 123 10 NI= 0*10 + 4 = 4
NI= 4*10 + 3 = 43
3 12 10
NI=43*10+2 = 432
2 1 10 NI= 432*10 + 1 = 4321
1 0
Problema de la verificación de números capicua
Invertir(N) Capicúa(N) leeDatos() Principal()
Invertir(N) Capicua(N) leeDato() inicio
NI=0
N leeDato()
NI=invertir(N)
N ≠ 0
f v Capicúa(N)
fin
R= N mod 10 N=NI
N=N/10
import [Link];
return
NI=NI * 10 + R No capicua
capicua
Return (NI)
GABRIEL TITO DURAN return
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
public class NumeroCapicua {
Scanner lee = new Scanner([Link]);
long invertir(int N) {
long NI;
int R;
NI = 0;
while (N != 0) {
R = N % 10;
N = N / 10;
NI = NI * 10 + R;
}
return (NI);
}
void capicua(int N) {
long ni;
ni = invertir(N);
if (ni == N) {
[Link]("el Numero es capicua");
} else {
[Link]("El numero no es capicua");
}
}
void leeDatos()
{
int N;
do{
[Link]("Ingrese un numero ");
N=[Link]();
}while(N<=0);
capicua(N);
}
public static void main(String arg[])
{
NumeroCapicua cap = new NumeroCapicua();
[Link]();
}
}
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
3. Calcular la siguiente sumatoria: (leer X y N)
S= 1-X+X2-X3+X4-……+Xn
Si N = 4 y X=2
S=X0-X1+X2-X3 = 20-21+22-23 = 1-2+4-8 = -5
Serie
Potencia(X,Y) Sumatoria(N,X) leeDatos() principal
Potencia(X,Y) Sumatoria(N,X) leeDato() inicio
P=1 S=0 N,X
leeDato()
i = 1, Y, 1 i = 0, N-1, 1 Sumatoria(N,X)
fin
P=P*X P=potencia(X,i) return
f v
i mod 2=0
Return P
S=S-P S=S+P
return
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
import [Link];
public class Serie1 {
Scanner lee = new Scanner([Link]);
long potencia(int x, int y) {
long p;
int i;
p = 1;
for (i = 1; i <= y; i++) {
p = p * x;
}
return p;
}
void sumatoria(int N, int X) {
long p, s;
int i;
s = 0;
for (i = 0; i <= N - 1; i++) {
p = potencia(X, i);
if (i % 2 == 0) {
s = s + p;
} else {
s = s - p;
}
}
[Link]("La sumatoria es:" + s);
}
void leeDatos() {
int N, X;
[Link]("Ingrese valor de N:");
N = [Link]();
[Link]("Ingrese valor de X:");
X = [Link]();
sumatoria(N, X);
}
public static void main(String arg[]) {
Serie1 ser = new Serie1();
[Link]();
}
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
4. Determinar si dos números son amigos (Dos números amigos son dos números
enteros positivos a y b tales que la suma de los divisores propios de uno es igual al otro número y
viceversa).
A=10 , B=8 los numero son amigos
A = 10 B=8
1 1
2 2
5 4
SA= 8 SB=7
Numero amigos
sumaDivisores(N) Amigos(A,B) leeDatos principal
sumaDivisor(N) Amigos(A,B) leeDato() inicio
S=0 SA=sumaDivisor(A) A,B
leeDato()
i = 1, N-1, 1 SB=sumaDivisor(B) Amigos(A,B)
fin
v f v return
f SA=B y
N mod i =0 SB = A
No Amigos
S=S+i
amigos
Return(S) return
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
import [Link];
public class NumeroAmigos {
Scanner lee = new Scanner([Link]);
int sumaDivisor(int N) {
int S, i;
S = 0;
for (i = 1; i <= N - 1; i++) {
if (N % i == 0) {
S = S + i;
}
}
return (S);
}
void amigos(int A,int B){
int SA,SB;
SA=sumaDivisor(A);
SB=sumaDivisor(B);
if(SA==B && SB==A)
[Link]("son amigos");
else
[Link]("No son amigos");
}
void leeDatos()
{
int A,B;
do{
[Link]("Ingrese un numero A ");
A=[Link]();
}while(A<=0);
do{
[Link]("Ingrese un numero B ");
B=[Link]();
}while(B<=0);
amigos(A,B);
}
public static void main(String arg[])
{
NumeroAmigos am = new NumeroAmigos();
[Link]();
}
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
5. Calcular la siguiente serie
S = X1/1! + X2/2! + X3/3! + X4/4! + X5/5! + … … Xn/n! +
Si n = 3 , x=2
S = 21/1! + 22/2! + 23/3! = 2/1 + 4/2 + 8/6 = 2+2+1.33 = 5.33
Calcular la serie
Potencia
factorial sumar leerdatos principal
2 3 = 2*2*2
Potencia(x,y) Factorial(n) sumar(n,x) leerDatos() inicio
P=1 F=1 s=0 n,x leerDatos()
i=1,n,1 i=1,n,1 S=sumar(n,x) Fin
i=1,y,1
P= P * x S
F= F * i P=Potencia(x,i)
F=factorial(i) return
Return(P) Return(P)
S = S + P/F
Return(S)
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
import [Link];
public class SumarSerie {
Scanner lee = new Scanner([Link]);
long potencia(int x, int y) {
long p;
int i;
p = 1;
for (i = 1; i <= y; i++) {
p = p * x;
}
return p;
}
long factorial(int n) {
long f;
int i;
f = 1;
for (i = 1; i <= n; i++) {
f = f * i;
}
return f;
}
double sumar(int n,int x)
{
double s;
long p,f;
int i;
s=0;
for(i=1;i<=n;i++){
p=potencia(x,i);
f=factorial(i);
s=s+((double)p/f);
}
return s;
}
void leeDatos()
{
int n,x;
double s;
[Link]("Ingrese el valor de n:");
n=[Link]();
[Link]("Ingrese el valor de x:");
x=[Link]();
GABRIEL TITO DURAN
ESCUELA INDUSTRIAL PEDRO DOMINGO MURILLO
s=sumar(n,x);
[Link]("La suma es :"+s);
public static void main(String arg[])
{
SumarSerie ser = new SumarSerie();
[Link]();
}
}
GABRIEL TITO DURAN