Please enable / Bitte aktiviere JavaScript!
Veuillez activer / Por favor activa el Javascript![ ? ]
Este foro usa cookies
Este foro usa cookies para almacenar tu sesión de inicio si estás registrado, y de tu última visita si no lo estás. Las Cookies son un pequeños documento de texto almacenado en tu PC; las cookies de este foro sólo pueden ser usadas en el mismo y no suponen ninguna amenaza para tu seguridad. Estas Cookies también anotan los hilos que has leído y cuándo lo has hecho. Por favor, confirma si aceptas o declinas el uso de estas cookies.

Una cookie será almacenada en tu navegador a pesar de tu decisión para prevenir que este mensaje te vuelva a aparecer. Podrás cambiar la configuración de las cookies en cualquier momento siguiendo el enlace de la parte inferior.

Calificación:
  • 3 voto(s) - 2.33 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Soluciones Examen 1º Parcial (Grupo B)
#1
Sorprendido 
Aporte que le gustará a mas de uno. Son las soluciones (hechas por mi) del primer parcial. Realizado en eclipse. Yo creo que no tiene ningún fallo. Así se hacen una idea de la dificultad (poca Astuto) del examen.

Aquí están los enunciados del examen:

[Para ver los enlaces debes registrate]

Aprobecho y le doy promocion a dropbox (menudo servidor), ya hemos conseguido las 25 GB. Gracias chicos.

Código PHP:
public class Ejercicio1 {

    public static 
double calcPi(long n){
        if (
n<=0)
            return -
1;
        
double sumatorio=0;
        for (
int i=1;i<=n;i++){
            
sumatorio+=(double)1/(i*i);
        }
        return 
Math.sqrt(6*sumatorio);
    }

Código PHP:
public class Ejercicio2 {

    public static 
int[] calcularFactoriales(int a[]){
        if(
a==null)
            return 
null;
        
int b[]=new int [a.length];
        if(
a.length==0)
            return 
b;
        for (
int i=0;i<a.length;i++){
            
int fact=1;
            for(
int j=a[i];j>=1;j--)
                
fact*=j;
            
b[i]=fact;
        }
        return 
b;
    }
    public static 
void main(String[] args) {
        
int a[]={5,6,7,8};
        
int b[]=calcularFactoriales(a);
        for(
int i=0;i<a.length;i++){
            if(
i==a.length-1)
                
System.out.println(a[i]);
            else 
System.out.print(a[i]+" ");
        }
        for(
int i=0;i<b.length;i++){
            if(
i==b.length-1)
                
System.out.println(b[i]);
            else 
System.out.print(b[i]+" ");
        }
    }

Código PHP:
public class Ejercicio3 {
    
    public static 
int[][] devolverDiagonales(int a[][]){
        if(
a==null || a.length==0)
            return 
null;
        for(
int i=0;i<a.length;i++){
            if(
a.length!=a[i].length)
                return 
null;
        }
        
int b[][]= new int [2][a[0].length];
        for(
int i=0;i<a.length;i++){
            for(
int j=0;j<a[0].length;j++){
                if(
i==j)
                    
b[0][j]=a[i][j];
                if(
i==a[0].length-1-j)
                    
b[1][i]=a[i][j];
            }
        }
        return 
b;
    }
    
    public static 
void main(String[] args) {
        
int a[][]={{1,2,3},{4,5,6},{7,8,9}};
        
int b[][]= devolverDiagonales(a);
        for(
int i=0;i<b.length;i++){
            for(
int j=0j<b[0].length;j++){
                if (
j==b[0].length-1)
                    
System.out.println(b[i][j]);
                else 
System.out.print(b[i][j]+" ");
            }
        }
    }

Responder
#2
Creo que en el primer ejercicio no es necesario el upcasting a double ya que java lo hace automáticamente.

Buen aporte.

Enviado desde mi LG-P920
"Que yo sepa, el español medio no es más honrado que los políticos que lo gobiernan" Cool
Responder
#3
Gran aporte Jesus!! Se agradece!! Gran sonrisa
Responder
#4
Dedo arriba 
(06-12-2012, 01:28)admin escribió:

[Para ver los enlaces debes registrate]

Creo que en el primer ejercicio no es necesario el upcasting a double ya que java lo hace automáticamente.

Buen aporte.

Enviado desde mi LG-P920
Creo que si que hace falta el upcasting. Aunque java lo haga automáticamente, la operación se realiza con el mayor tipo de dato de la operación. Y las "i" son long, por lo que la operación se va a realizar como un long (independientemente de que luego se convierta a double). En este caso, al ser una fracción 1/(i*i), java va a realizar la operación como si fuera un long (repito, independientemente de que luego se almacene como un double), por ejemplo: 1/4 = 1 o 0, porque long son enteros. Si embargo, si haces el upcasting a double de cualquier operando, la operación se realiza como un double, por ejemplo: 1/4 = 0.25

Gracias por los comentarios. Sonrisa
Responder
#5
Dios, excelente aporte al foro, cosas así hay que seguir intentando subir el foro Sonrisa .
Responder


Salto de foro:


Usuarios navegando en este tema: 2 invitado(s)