Foro no oficial de la UPCT
Solución a la práctica 3 - Versión para impresión

+- Foro no oficial de la UPCT (https://foroupct.es)
+-- Foro: 1º GIT (https://foroupct.es/Forum-1%C2%BA-GIT)
+--- Foro: Fundamentos de Programación (https://foroupct.es/Forum-Fundamentos-de-Programaci%C3%B3n)
+--- Tema: Solución a la práctica 3 (/Thread-Soluci%C3%B3n-a-la-pr%C3%A1ctica-3)



Solución a la práctica 3 - alfonso - 06-02-2013

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);
    
        

    }




RE: Solución a la práctica 3 - alfonso - 06-02-2013

  • 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;
    }