Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.company;
- import java.util.Scanner;
- public class Main {
- public static void main(String[] args) {
- int It = 0;
- double X = 0, Y = 1, Y0;
- float EPS = 0;
- boolean isNotCorrect = true;
- Scanner scan = new Scanner( System.in );
- System.out.println( "Эта программа вычислит значение кубического корня с точностью EPS с использованием итерационной формулы Ньютона" );
- System.out.println( "Введите X и EPS" );
- do {
- try {
- X = Double.parseDouble( scan.next() );
- EPS = Float.parseFloat( scan.next() );
- if ( EPS < 0 || EPS > 1 ) {
- System.out.println( "Введите допустимую погрешность(от 0 до 1)" );
- }
- if ( X > 10000000 || X < -10000000 ) {
- System.out.println( "Введите допустимое значение X(от -10000000 до 10000000)");
- }
- else {
- isNotCorrect = false;
- }
- }
- catch ( Exception err) {
- System.out.println( "Данные введены неверно, повторите ввод " );
- scan.nextLine();
- }
- }while ( isNotCorrect );
- do {
- Y0 = Y;
- Y = ( 2 * Y0 + X / Y0 / Y0 ) / 3;
- It++;
- } while ( Math.abs( Y - Y0 ) > EPS );
- System.out.println( "Значение кубического корня : " + Y);
- System.out.println("Количество итераций : " + It);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement