大一下学期刚开始学c语言 求n次方根 用牛顿迭代法 别用一些不懂的知识 就用牛顿迭代法前面和后面一点点的要n次方根都能求

来源:学生作业帮助网 编辑:作业帮 时间:2024/11/06 06:37:22

大一下学期刚开始学c语言 求n次方根 用牛顿迭代法 别用一些不懂的知识 就用牛顿迭代法前面和后面一点点的要n次方根都能求
大一下学期刚开始学c语言 求n次方根 用牛顿迭代法 别用一些不懂的知识 就用牛顿迭代法前面和后面一点点的
要n次方根都能求

大一下学期刚开始学c语言 求n次方根 用牛顿迭代法 别用一些不懂的知识 就用牛顿迭代法前面和后面一点点的要n次方根都能求

请参考:百度百科之牛顿迭代法.

#include <stdio.h>

#include <stdlib.h> 

#include <string.h> 

#include <stdio.h>

#include <stdio.h>

#include <math.h>

int n;

int y;

double func(double x) //函数   

{

    double k = 1;

    int i;

    

    for(i = 0; i < n; i++)

    {

        k *= x;

    }

    return k-y;

}

double func1(double x) //导函数   

{

    double k = 1;

    int i;

    for(i = 0; i < n-1; i++)

    {

        k *=x;

    }

    return n*k;

}

int Newton(double *x,double precision,int maxcyc) //迭代次数   

{

      double x1,x0;

      int k;

      x0=*x;

      for(k=0;k<maxcyc;k++)

      {

            if(func1(x0)==0.0)//若通过初值,函数返回值为0   

            {

                  printf("迭代过程中导数为0!\n");

                  return 0;

            }

            x1=x0-func(x0)/func1(x0);//进行牛顿迭代计算   

            if(fabs(x1-x0)<precision || fabs(func(x1))<precision) //达到结束条件   

            {

                  *x=x1; //返回结果   

                  return 1;

            }

            else //未达到结束条件   

                x0=x1; //准备下一次迭代   

    }

    printf("迭代次数超过预期!\n"); //迭代次数达到,仍没有达到精度   

    return 0;

}

int main()

{

    double x,precision;

    int maxcyc;

    printf("输入被开方数:");

    scanf("%d",&y);

    printf("输入开方数:");

    scanf("%d",&n);

    printf("输入初始迭代值x0(不为0):");

    scanf("%lf",&x);

    printf("输入最大迭代次数:");

    scanf("%d",&maxcyc);

    printf("迭代要求的精度:");

    scanf("%lf",&precision);

    if(Newton(&x,precision,maxcyc)==1) //若函数返回值为1   

        printf("该值附近的根为:%lf\n",x);

    else //若函数返回值为0   

        printf("迭代失败!\n");

    getchar();

    system("pause");

}

大一下学期刚开始学c语言 求n次方根 用牛顿迭代法 别用一些不懂的知识 就用牛顿迭代法前面和后面一点点的要n次方根都能求 我是大一下学期 电路 高数 英语 VFP C语言都挂了 能不能用一个暑假补回来啊 现在好担心 C语言编程:输入一个整数,求各位数字之和..刚开始学c语言, 求(C+1/n)开n次方根的极限 求大一下学期高等数学期末试题,越多越好!大一下学期的,含多元函数微分、重积分、曲线积分、曲面积分、无穷级数. 求大一下学期高等数学期末试题《同济四版》,越多越好!大一下学期的,含多元函数微分、重积分、曲线积分、曲面积分、无穷级数 a的n次方的n次方根怎么求 求一些大一下学期大学物理的例题!关于如何用积分求质心的题目! 大一下学期线性代数复习方法求大神帮助急,平时不努力,现在,求复习方法! 求一篇大一下学期自我鉴定500字,不要和已经存在的提问答案重复 求1的n次方根的和与积? 大一微积分求证:当n趋向于无穷时,n的n次方根趋向于1. n次方根的定义 判断:A正数的n次方根是一个正数 B负数的n次方根是一个负数 C、a的正n次方根是a的n次方根 C语言求2的n次幂. 求一篇大一下学期自我鉴定``~急期末又到了```自我鉴定还没写```我是计算机高技的````求一篇自我鉴定``` 太原理工大学大一下学期英语成绩出来了吗? 求大专生考英语六级计划书!大一下学期、大二、大三分别做什么准备,才能顺利过六级(我现在上大一下学期).大专生要先考过‘B级’‘A级’‘四级’后才能考六级.