elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Curso de javascript por TickTack


  Mostrar Mensajes
Páginas: [1]
1  Programación / Ejercicios / Re: programa java en: 3 Junio 2011, 12:49 pm
gracias por la respuesta

te comento: return me suena de algo a recursividad, y no lo hemos dado en clase, por tanto no sé si me conviene utilizarlo para resolverlo

por otro lado he montado un código pero, evidentemente, no me entra en el bucle que deseo y la verdad no encuentro manera de solucionarlo

import java.util.*;
public class p6ej2 {

    public static void main(String[] args) {
        // Declaro variables
        double m,f1,f2,f3,E,pi,b,a;
        int i,nIt;

        //Se crea el objeto 'teclado' de clase Scanner
        Scanner teclado = new Scanner(System.in);

        //Se invoca al método println() del objeto System.out para
        //mostrar en pantalla un mensaje informativo sobre el programa
        System.out.println ("Raíz de la ecuación trascendenteal"
                + "x-cos(x)");

        //Pido al usuario que introduzca desde teclado el número máximo
        //de iteraciones a realizar y el error
        System.out.println("Introducir número máximo de iteraciones:");
        nIt = teclado.nextInt();
        System.out.println ("Introducir error:");
        E = teclado.nextDouble();

        //Inicializo
            a = 0;
            pi = 3.1416;
            b = pi/2;
            i = 0;
            m = (a+b)/2;
            f1 = m - Math.cos (m);

        //Estructura para resolver el problema
        while ((i< nIt) && (Math.abs(f1)>E)){

            f2 = a - Math.cos (a);
            f3 = b - Math.cos (b);

            if((f1>0 && f2<0)||(f2>0 && f1<0)) {
                //La raíz se encuentra en (a,m)
                b = m;
            }else {
                //La raíz se encuentra en (m,b)
                a = m;
            }
            i = i +1;
        }

            //Escribo la aproximación a la raíz de x-cos(x)
            System.out.println("La aproximación a la raíz de x-cos(x) es:"
                    + m);
            }

        }

simplemente se me queda en la primera aproximación..
2  Programación / Ejercicios / programa java en: 23 Mayo 2011, 23:52 pm
hola a todos!
veréis se me resiste un ejercicio, y no sé ni por dónde pillarlo
trabajo en netbeans y se supone que debo ser capaz de resolverlo con selectivas e iterativas...pero no soy capaz de meterle mano :S

agradecería cualquier tipo de ayuda/consejo, gracias de antemano!!


Supongamos una ecuación f(x)=0, con raíz única en el intervalo (a, b). Obteniendo el punto medio del intervalo, m=(a+b)/2, pueden darse tres casos:
- Si f(m)=0 entonces m es la raíz.
- Si f(a) y f(m) tienen signos contrarios, como en la figura, la raíz está en el intervalo (a, m).
- Si no se cumple la condición anterior, la raíz estaría en el intervalo (m, b).
En los dos últimos casos se puede repetir el proceso para el nuevo intervalo, cada vez más pequeño.
Teniendo esto en cuenta, realizar un programa para obtener una aproximación a la raíz de la ecuación trascendente x-cos(x)=0 en el intervalo (0, π/2). El algoritmo finalizará cuando se encuentre un valor de m tal que |x-cos(x)|<ε o el número de iteraciones realizadas supere un determinado valor.
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines