Foro no oficial de la UPCT

Versión completa: Solución a la práctica 3
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Hola,

Como mucha gente me ha estado pidiendo, pongo aquí la solución de la práctica 3.
  • Clase Calculadora.java
Código PHP:
package p3;
import utilidades.Teclado;

public class 
Calculadora {
    public static 
void main (String[]args){
        
int op1,op2,suma,resta,producto,division,modulo,abs,opcion;
        
System.out.println("Introduce Operando1:");
        
op1=Teclado.readInt();
        
System.out.println("Introduce Operando2:");
        
op2=Teclado.readInt();
        
System.out.println("------------------");
        
System.out.println("1. Suma");
        
System.out.println("2. Resta");
        
System.out.println("3. Producto");
        
System.out.println("4. Módulo");
        
System.out.println("5. Valor absoluto");
        
System.out.println("6. División");
        
System.out.println("------------------");
        
opcion=Teclado.readInt();
        if(
opcion<|| opcion >6){
            
System.out.println("Valor introducido incorrecto");
        } else{
            switch(
opcion){
            case 
1:
                
suma=op1+op2;
                if(
suma<op1 && suma<op2){
                    
System.out.println("Desbordamiento");
                }else 
System.out.println("El resultado de la suma es:"+suma);
                break;
            case 
2:
                
resta=op1-op2;
                if(
resta>op1 || resta>op2){
                    
System.out.println("Desbordamiento");
                } else 
System.out.println("El resultado de la resta es:"+resta);
                break;
            case 
3:
                
producto=op1*op2;
                if(
producto/op1!=op2){
                    
System.out.println("Desbordamiento");
                }else 
System.out.println("El restultado del producto es"+producto);
                break;
            case 
4:
                if(
op2==0){
                    
System.out.println("Imposible dividir por 0");
                }else{
                    
modulo=op1%op2;
                    
System.out.println("El resultado del modulo2: "+modulo);
                }
                break;
            case 
5:
                
abs=Math.abs(op1);
                
System.out.println("El valor absoluto del Operando1 es:"+abs);
                break;
            case 
6:
                if(
op2==0){
                    
System.out.println("Imposible dividir por 0");
                }else{
                    
division=op1/op2;
                    
System.out.println("El resultado de la division entera es: "+division);
                }
                break;
            }
        }
        
            
        
    }


  • Clase DivisiblePor11.java
Código PHP:
package p3;

import utilidades.Teclado;

public class 
DivisiblePor11 {

    
/**
     * @param args
     */
    
public static void main(String[] args) {
        
int n,contador;
        
System.out.print("Introduzca un valor para N: ");
        
Teclado.readInt();
        if(
n>=11){
            
System.out.println("BUCLE FOR:");
            for(
contador=11;contador<=n;contador++){
                if(
contador%11 == 0System.out.print(contador+" ");
            }
            
System.out.println();
            
contador=11;
            
System.out.println("BUCLE WHILE:");
            while(
contador<=n){
                if(
contador%11 == 0System.out.print(contador+" ");
                
contador++;                
            }
            
System.out.println();
            
contador=11;
            
System.out.println("BUCLE DO WHILE:");
            do{
                if(
contador%11 == 0System.out.print(contador+" ");
                
contador++;                    
            }while(
contador<=n);
            
System.out.println("BUCLE FOR(PARES):");
            for(
contador=11;contador<=n;contador++){
                if(
contador%11 == 0){
                    if(
contador%2==0System.out.print(contador+" ");
                }
            }
            
System.out.println();
            
contador=11;
            
System.out.println("BUCLE WHILE(PARES):");
            while(
contador<=n){
                if(
contador%11 == 0){
                    if(
contador%2==0System.out.print(contador+" ");
                }
                
contador++;                
            }
            
System.out.println();
            
contador=11;
            
System.out.println("BUCLE DO WHILE(PARES):");
            do{
                if(
contador%11 == 0){
                    if(
contador%2==0System.out.print(contador+" ");
                }
                
contador++;                    
            }while(
contador<=n);
        }else{
            
System.out.println("Nigún numero menor que 11 es divisible por 11");
        }
        

    }


  • Clase Fibonacci.java
Código PHP:
package p3;

public class 
Fibonacci {

    
/**
     * @param args
     */
    
public static void main(String[] args) {
        
long a=1;
        
long b=0;
        
long c;
        for(
int i =0;i<100;i++){
            
c=a+b;
            
a=b;
            
b=c;
            
System.out.println(c);
        }

    }


  • Clase Calculos.java
Código PHP:
package p3;

import utilidades.Teclado;

public class 
Calculos {
    
    
// EJERCICIO 7................................................................    
    
public static float piLeibniz(long iters){
        if(
iters<0) return -1;
        
float t=0;
        
int e;
        for(
float n=0;n<=iters;n++){
            
//System.out.println(t);
            //System.out.println((Math.pow(-1, n))/((2*n)+1));
            //e=Teclado.readInt();
            //if( (t-((Math.pow(-1, n))/((2*n)+1))>0)) n= iters-1;
            
t+= (Math.pow(-1n))/((2*n)+1);
            
            
        }
        return 
4*t;
    }
    

    
// EJERCICIO 8................... ............................................
    
public static long factorial(long n){
        if(
n<0) return -1;
        if(
n==|| n==1) return 1;
        
long h=1;
        for(
long t=n;t>1;t--){
            
hh*t;
        }
        return 
h;
        
        
//A rellenar por los alumnos
    
}
    
    
    
// EJERCICIO 9.........................................  ......................
    
public static long potenciaEntera(long baseint exp){
        if(
exp<0) return -1;
        if(
exp==0) return 1;
        
long n=1;
        for (
int h=0;h<exp;h++){
            
n*base;
        }
        return 
n;
        
        
//A rellenar por los alumnos
    
}
    
    
    
// EJERCICIO 10..............................................................
    
public static float piEuler(int iteraciones){
        
        
//A rellenar por los alumnos
        
    
}
    
    
// EJERCICIO 11..............................................................
    
public static void main(String[] args) {
        
int op;
        do{
            
System.out.println("1. pi segun Leibniz");
            
System.out.println("2. pi segun Euler");
            
System.out.println("3. potencia entera");
            
System.out.println("4. factorial");
            
System.out.println("5. salir");
            
op Teclado.readInt();
            switch (
op){
            case 
1:
                
System.out.println("pi segun Leibniz con 10 interacciones:");
                
Test3.testP01();
                break;
            case 
2:
                
System.out.println("pi segun Euler con 10 interacciones:");
                
System.out.println(piEuler(10));
                break;
            case 
3:
                
System.out.println("potencia entera");
                
Test3.testP03();
                break;
            case 
4:
                
System.out.println("factorial");
                
Test3.testP02();
                break;
            }
                
        }while(
op<5);
    
        

    }

  • Clase Ecuacion.java
Código PHP:
package p3;

import utilidades.Teclado;

public class 
Ecuacion {

    
/**
     * @param args
     */
    
public static void main(String[] args) {
        
double a,b,c;
        
double X1,X2,tmp;
        
System.out.println("Introduzca un numero:");
        
a=Teclado.readDouble();
        
System.out.println("Introduzca un segundo numero:");
        
b=Teclado.readDouble();
        
System.out.println("Introduzca un tercer numero:");
        
c=Teclado.readDouble();
        
tmp=Math.pow(b2)-4*a*c;
                
        if(
tmp<0){
            
System.out.println("----------------------------------");
            
System.out.println("La ecuación tiene raices complejas");
            
System.out.println("----------------------------------");
        } else {
            
X1=-b+Math.sqrt(tmp)/(2*a);
            
X2=-b-Math.sqrt(tmp)/(2*a);
            
System.out.println("X1="+X1);
            
System.out.println("X2="+X2);
        }
        
                
        

    }


  • Clase MCD_1.java
Código PHP:
package p3;
import utilidades.Teclado;

public class 
MCD_1 {
    public static 
void main (String[]args){
        
System.out.println("Introduzca un numero entero,m:");
        
int m=Teclado.readInt();
        
System.out.println("Introduzca otro numero entero,n:");
        
int n=Teclado.readInt();
        
        
System.out.print("El maximo comun divisor de "+m+" y "+n+" es: ");
        
System.out.println(mcd(m,n));
    }
        
        public static 
int mcd(int a,int b){
            if(
a%b==0){
                return 
b;
            }
            if(
b%a==0){
                return 
a;
            }
            if(
b==0) {
                return 
a;
            } else return 
mcd(ba%b);
            
            
    }

  • Clase MCD_2.java
Código PHP:
package p3;

import utilidades.Teclado;

public class 
MCD_2 {

    
    public static 
void main(String[] args) {
        
System.out.println("Introduzca un numero entero,m:");
        
int m=Teclado.readInt();
        
System.out.println("Introduzca otro numero entero,n:");
        
int n=Teclado.readInt();
        
        
System.out.print("El maximo comun divisor de "+m+" y "+n+" es: ");
        
System.out.println(mcd(m,n));

    }
    public static 
int mcd(int a,int b){

        while (
a!=b){
            if (
a>b){
                
a=a-b;
            }   else{
                
b=b-a;

            }
        }
        return 
a;
    }