Вычисляет кубический корень числа с плавающей запятой без использования библиотечных функций. Один десятичный знак.

Идея этого вопроса состоит в том, чтобы судить, больше ли число 0 или меньше 0. Мы знаем, что f(x)=x^3 монотонно возрастает на R, поэтому чем меньше значение функции, тем меньше переменная . Итак, классифицируйте обсуждение

<скрипт>

        функция cubeRoot ( n ) { ;

            //Определить, является ли это число положительным целым числом или отрицательным числом.Поскольку предусмотрено, что десятичное число должно быть зарезервировано, оно будет увеличиваться или уменьшаться в виде 0,1 каждый раз, когда оно увеличивается и уменьшается.

            если (п >= 0) {

                для (var i = 0; ; i += 0,1) {

                   //Это аналогично знанию нулевой точки школьной функции f(x1)<0 f(x2)>0, тогда на (x1,x2) должна быть нулевая точка (функция непрерывна)

                    если (i ** 3 <= n && (i + 0.1) ** 3 >= n) {

                        перерыв;

                    }

                }

                //Поскольку оно кубическое, оно округляется в соответствии с процентилем, поэтому, если куб значения после добавления 0,05 меньше n, это означает, что куб i+1 ближе к n, поэтому верните i+1 и сохранить один десятичный знак

                если ((i + 0,05) ** 3 <= n) {

                    возврат (i + 0,1).toFixed(1)

                }

                вернуть i.toFixed(1)

            }

            если (n < 0) {

                для (var i = 0; ; i -= 0,1) {

                    //x^3 монотонно возрастает на (-бесконечность, 0), поэтому чем меньше, тем меньше. Оно в начале больше n, а после вычитания третья степень меньше n

                    если (i ** 3 >= n && (i - 0.1) ** 3 <= n) {

                        перерыв;

                    }

                }

                //Аналогично, если третья степень меньше n после добавления 0,05, это означает, что i+1 ближе к кубическому корню из n

                если ((i + 0,05) ** 3 <= n) {

                    возврат (i + 0,1).toFixed(1)

                }

                вернуть i.toFixed(1)

            }

        }

    </скрипт>

Supongo que te gusta

Origin blog.csdn.net/weixin_68067009/article/details/124458134
Recomendado
Clasificación