Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.lang.Math;
- public class analise{
- public static int iterations = 0;
- public static void main(String[] args) {
- double x0 = 1.7; //a
- double epsilon = epsilon_value(); //erro para alinea a
- System.out.println("Alinea a");
- System.out.println("Valor aproximado da raiz com erro epsilon: " + newton(x0,epsilon));
- System.out.println("iterações: "+ iterations);
- System.out.println();
- System.out.println("Alinea d");
- System.out.println("Valor aproximado da raiz com erro 5*10^-12: " + newton(x0,5.0*Math.pow(10,-12)));
- System.out.println("iterações: "+ iterations);
- System.out.println();
- System.out.println("Alinea e");
- System.out.println("Valor aproximado da raiz com erro 5*10^-14: " + newton(x0,5.0*Math.pow(10,-14)));
- System.out.println("iterações: "+ iterations);
- }
- public static double f(double x) {
- return Math.cosh(x)-Math.cos(x)-3;
- }
- public static double fdev(double x){
- return Math.sinh(x)+Math.sin(x);
- }
- public static float epsilon_value(){
- float eps = 1;
- while((eps+1)>1){
- eps = eps/2;
- }
- eps = eps*2;
- return eps;
- }
- //a)
- public static double newton(double x0,double epsilon){
- iterations = 0;
- double x1 = x0 - f(x0)/fdev(x0);
- while(Math.abs(x1 - x0) > epsilon){
- x1 = x0 - f(x0)/fdev(x0);
- x0 = x1;
- iterations++;
- }
- return x0;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement