Advertisement
Ewerlost

Lab3_Java

Sep 23rd, 2023 (edited)
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.74 KB | None | 0 0
  1. package com.company;
  2. import java.util.Scanner;
  3. public class Main {
  4.     public static void main(String[] args) {
  5.         int It = 0;
  6.         double X = 0, Y = 1, Y0;
  7.         float EPS = 0;
  8.         boolean isNotCorrect = true;
  9.         Scanner scan = new Scanner( System.in );
  10.         System.out.println( "Эта программа вычислит значение кубического корня с точностью EPS с использованием итерационной формулы Ньютона" );
  11.         System.out.println( "Введите X и EPS" );
  12.         do {
  13.             try {
  14.                 X = Double.parseDouble( scan.next() );
  15.                 EPS = Float.parseFloat( scan.next() );
  16.                 if ( EPS < 0 || EPS > 1 ) {
  17.                     System.out.println( "Введите допустимую погрешность(от 0 до 1)" );
  18.                 }
  19.                 if ( X > 10000000 || X < -10000000 ) {
  20.                     System.out.println( "Введите допустимое значение X(от -10000000 до 10000000)");
  21.                 }
  22.                 else {
  23.                     isNotCorrect = false;
  24.                 }
  25.             }
  26.             catch ( Exception err) {
  27.                 System.out.println( "Данные введены неверно, повторите ввод " );
  28.                 scan.nextLine();
  29.             }
  30.         }while ( isNotCorrect );
  31.         do {
  32.             Y0 = Y;
  33.             Y = ( 2 * Y0 + X / Y0 / Y0 ) / 3;
  34.             It++;
  35.         } while ( Math.abs( Y - Y0 ) > EPS );
  36.         System.out.println( "Значение кубического корня : " + Y);
  37.         System.out.println("Количество итераций : " + It);
  38.     }
  39. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement