首页 > 其他分享 >第六天打卡

第六天打卡

时间:2023-04-20 19:45:11浏览次数:47  
标签:f1 int float x0 第六天 打卡 迭代法

1.问题:编写用牛顿迭代法求方程根的函数。方程为a*x*x*x+b*x*x+c*x+d=0,系数a,b,c,d由主函数输入。求x在1附近的一个实根。求出根后,有主函数输出。

牛顿迭代法的公式是:x=x0-f(x0)/f'(x0),设迭代到|x-x0|<=1/100000结束。

2.思路:定义好x与x0两个变量,通过do-while循环进行迭代,每次循环都通过x=x0-f(x0)/f'(x0)公式得到的x再次赋值给x0,并判断|x-x0|<=1/100000的条件是否成立,最终输出x的值。

3.程序流程图:

 

4.代码实现:

#include <iostream>
#include<math.h>
using namespace std;

int main()
{
float x=1.5,x0;
int a,b,c,d;
cin>>a>>b>>c>>d;
do{
x0=x;
float f=a*x0*x0*x0+b*x0*x0+c*x0+d;
float f1=3*a*x0*x0+2*b*x0+c;
x=x0-f/f1;
}while(fabs(x-x0)>=0.00001);
cout<<x;
return 0;
}

标签:f1,int,float,x0,第六天,打卡,迭代法
From: https://www.cnblogs.com/Hugo-Martin/p/17338096.html

相关文章

  • 每天打卡一小时 第十一天 编译四部曲
     第一部曲自然语言创建函数,对函数进行定义声明第二部曲流程图不用了吧第三部曲代码#include<iostream>usingnamespacestd;classComplex{public:Complex(doubler=0,doublei=0):real(r),imag(i){}Complexoperator+(Complex&c......
  • 打卡第八天
    运用dowhile语句求1~10的和一、1.定义变量n sum用于累加以及输出和2.运用dowhile语句作为累加二、三、#include<iostream>usingnamespacestd;intmain(){ intn=1,sum=0; do{ sum+=n; n++; }while(n<=10); cout<<sum<<endl; return0;} 四、#include<iostr......
  • 第四天打卡
    一、问题描述一辆卡车违反交通规则,撞人之后逃跑。现场有三个目击该事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同的;丙是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索求出车号。二、设计......
  • 打卡 复数的加减运算(运算符重载)
    ###复数加减(运算符重载)声明一个复数类CComplex(类私有数据成员为double型的real和image)定义构造函数,用于指定复数的实部与虚部。重载<<运算符,以格式real+imagei的格式输出当前对象(当虚部为非负数时,实部虚部中间用+号连接,当虚部为负数时,实部虚部用-号连接:如3+4i,3-4i,3+0i)。重载......
  • 打卡4
    问题描述:一俩卡车违反交通规则,撞人后逃跑。现场有三人目击该事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同:丙是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索求出车号。流程图: 伪代码:fo......
  • 打卡7
    1、最佳存款方案#include<stdio.h>intmain(){ doublemoney=0.0; for(inti=0;i<5;i++) money=(money+1000.0)/(1+0.063*12); printf("应存入的钱为%0.2f\n",money); return0;}2、冒泡排序法#include<stdio.h>#defineN10intmain(){ inta[N],temp; printf......
  • c++打卡第四天
    一、问题描述。有一对兔子,第三个月开始每月生一对兔子,刚出生的兔子经过三个月又可以生一对兔子,问从1月开始到n月,每月兔子的数量。二、设计思路。①、第一二个月都是一对兔子,第三个月是2对,3个月是三对,第四个月就是5对。②、由此可知,这个月兔子对数的总量等于前一个月和前两个月......
  • 编程打卡
    #include<iostream>usingnamespacestd;#include<vector>#include<algorithm>typedefpair<int,int>PIIconstintN=300010;inta[N],s[N];vector<int>alls;//存储所有待离散化的值vector<PII>adds,query;//二分求出x对应的离散化的值intfind(in......
  • 4.20打卡
    #include<iostream>#include<iomanip>#include<cmath>usingnamespacestd;intmain(){inti,j;for(i=1;i<=9;i++){for(j=1;j<=i;j++){if(j<i){if(i*j/10!=0)......
  • 每日打卡
    #include<iostream>usingnamespacestd;structqueue{ intdata[100];inthead;inttail;};intmain(){ structqueueq; inti; q.head=1; q.tail=1; for(i=1;i<=9;i++) { cin>>q.data[q.tail]; q.tail++; } whil......