Advertisement
Guest User

Untitled

a guest
Nov 21st, 2018
81
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.68 KB | None | 0 0
  1. public class NewTone {
  2.  
  3.     public static double x; //неизвастная в уравнении
  4.     public static double xn = 10; //предыдущее значение неизвестной, 10ка для остановки в случае ошибки
  5.     public static double E = 0.01; //условие останова
  6.     public static int i = 0; //число итераций
  7.  
  8.     public NewTone(double a, double b){
  9.  
  10.         if(NewTone.f0(a)*NewTone.f2(a)>0){
  11.             x=a;
  12.         }
  13.         else{
  14.             if(NewTone.f0(b)*NewTone.f2(b)>0){
  15.                 x=b;
  16.             }
  17.             else{
  18.             System.out.println("Ниодно из условий не соблюдается");
  19.             x=0;xn=0;
  20.             }
  21.         }
  22.         while ((Math.abs(x-xn) > E) & (Math.abs(NewTone.f0(x)) > E) ) {
  23.             xn=x;
  24.             x=x-(NewTone.f0(x)/NewTone.f1(x));
  25.             i++;
  26.         }
  27.         System.out.println("Корень уравнения: x = " + x);
  28.         System.out.println("Количество итераций: i = " + i);
  29.         i=0; //обнуляем число итераций
  30.     }
  31.  
  32.     public static double f0(double c){
  33.         return Math.sqrt(4*c+7)-3*Math.cos(c); //искомая функция
  34.     }
  35.  
  36.     public static double f1(double c){
  37.         return 2/Math.sqrt(4*c+7)+3*Math.sin(c); //первая производная
  38.     }
  39.  
  40.     public static double f2(double c){
  41.             return 3 * Math.cos(c) - (4 / Math.pow(4 * c + 7, 1.5)); //вторая производная
  42.     }
  43.  
  44.     public static void main(String[] args){
  45.         NewTone L = new NewTone(-1.1,-0.4);
  46.         NewTone B = new NewTone(0,1.2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement