【实用性程序】弧微分计算圆周长
最近学了学关于微积分的知识(当然,这还是最简单的),于是想到利用微分进行近似计算圆周长(除以2倍半径就是圆周率pi)
思路:
首先把圆放在直角坐标系中,不妨设圆心(0,0),半径r = 1。 因而,圆的标准方程为 x^2+y^2 = 1 (1)
下面开始微积分大法:(对圆方程这个隐函数求导数)
对方程(1)两边对x求导数: 2*x + 2*y * y′ = 0 (解释一下:x^2 的导数为 2x , y^2 的导数为 2y * y′ , y′就是y对x的导数 , 右边常数1的导数为 0)
解出 y' = - x/y
根据微分 : dy = y' * dx , 再由弧微分的计算公式(实际上就是勾股定理), dx 对应的弧长约为 √dx^2+dy^2 . 图中MM' 近似用MT 表示。
然后让dx取一个趋近于0的数,一段一段求和即可(类似割圆法的思想)
代码:
#include<bits/stdc++.h>
using namespace std;double dx = 1,sum = 0,x,y,dy;int main()
{int n;cin >> n; //精确程度 for (int i = 1 ; i <= n ; i ++) {sum = 0; dx *= 0.1;printf("delta x = %llf ... sum = ",dx);for (x = dx ; x <= 1-dx ; x += dx){y = sqrt(1-x*x);dy = -x/y*dx;sum += sqrt(dx*dx+dy*dy);// printf("%.5f %.5f %.5f\n",x,y,sum);}sum += 2*sqrt(dx*dx+dy*dy);printf("%lf\n",sum*4); }return 0;
}
实际测试结果:
理论结果:
转载于:https://www.cnblogs.com/YMY666/p/10827397.html
【实用性程序】弧微分计算圆周长相关推荐
- html计算圆周长,【实用性程序】弧微分计算圆周长
最近学了学关于微积分的知识(当然,这还是最简单的),于是想到利用微分进行近似计算圆周长(除以2倍半径就是圆周率pi) 思路: 首先把圆放在直角坐标系中,不妨设圆心(0,0),半径r = 1. 因而,圆 ...
- 用PHP编写圆的半径和周长,在C++中编写程序输入半径计算圆的周长和面积
现在计算机语言应用是很多的,如果你使用电脑又会使用计算机语言那就是更加的吃香了,今天我们就来说说C语言,在C++中编写程序输入半径计算圆的周长和面积. 工具/材料 电脑.VC++软件 我们首先要下载安 ...
- C语言-函数案例-计算圆周长
C语言-函数案例-计算圆周长 任务要求 设圆半径r=1.5,圆柱高h=3,求圆周长.圆面积.圆球表面积.圆球体积.圆柱体积. 用scanf()输入数据, 输出计算结果.输出时要有说明,结果取小数点后两 ...
- php编写半径为4圆的周长,在C++中编写程序输入半径计算圆的周长和面积,来学习吧...
C语言的应用很广泛.今天举一个很简单的例子来学习C++的基本格式和基本知识.从键盘输入半径,输出周长和面积.以VC++为例. 工具/材料 安装成功的VC++软件 普通电脑 操作方法 01 打开VC++ ...
- java组合类,对象组合,定义一个点类,将圆的圆心用点类的对象表示,则圆类定义为一个组合类,仍然能计算圆的面积和周长,并能对圆进行移动。
对象组合的概念 如果一个对象中的域是其他类的对象,则称这个对象是组合对象,组合对象所在的类是组合类.例如计算机是由其他部件(对象)组成的.通过组合的方式,可以简化对象的创建过程,提高对象的创建效率.从 ...
- java类求圆的面积周长_java编程 1. 设计一个求圆的面积和周长的类,要求:1计算当半径r,JAVA编程题。编写一个应用程序计算圆的周长和面积,设圆的半...
问题标题 java编程 1. 设计一个求圆的面积和周长的类,要求:1计算当半径r,JAVA编程题.编写一个应用程序计算圆的周长和面积,设圆的半 2019-5-23来自ip:15.196.194.53的 ...
- 编写程序计算圆的面积和周长
# 学习目标: 编写程序计算圆的面积和周长 学习内容: c语言练习每日一练 编写程序计算圆的面积和周长.已知pi定义为3.14. **输入格式要求:"" 提示信息:"请输 ...
- 编写程序计算圆的面积和周长。
编写程序计算圆的面积和周长.已知pi定义为3.14. **输入格式要求:"%f" 提示信息:"请输入半径的值:" **输出格式要求:"半径为%5.2f ...
- python输入半径求圆的面积、保留三位小数_编写程序,输入圆的半径,求该圆的面积与周长(保留三位小数)。 /* 程序功能:输入圆的半径,计算圆的面积与周长*/_学小易找答案...
[编程题]从字符串中删除指定的字符.同一字母的大小写按不同字符处理. 例如:若程序执行时,输入字符串为: turbo c and Borland c++ ,从键盘上输入字符: n ,则输出后变为: t ...
- Linux编写c程序计算圆的面积,c语言如何计算圆面积和周长
c语言计算圆的面积和周长,可能对于新手来说,有一定的难度.但其实只要了解圆面积和周长的计算原理,也就很容易实现了. 在几何中,圆的面积等于πr²,圆周长等于2πr.这里的希腊字母π是一个常数约等于3. ...
最新文章
- 干货丨深度学习VGG模型核心拆解
- Web开发中的相对路径和绝对路径
- prometheus+grafana+pushgateway+node-exporter+consul搭建监控系统
- 网页制作获得用户喜爱才是重点!
- how tomcat works 1 simple web server
- mysql group by join_mysql – GROUP BY之后的LEFT JOIN?
- linux docker导入镜像,Docker镜像的导入和导出
- UVA 10173 旋转卡壳
- 台式计算机内存是什么意思,电脑提示计算机内存不足是什么意思
- Oracle中的单行函数
- htaccess文件是什么
- winformlabel自动换行
- 2022年美容师(初级)操作证考试题库及模拟考试
- 第2次作业—— 时事点评
- ASP.NET Web——GridView完整增删改查示例(全篇幅包含sql脚本)大二结业考试必备技能
- html文本框柔化边缘,html – CSS模糊并使用绝对div保留锐利边缘
- 云与瘦客户机 未来IT数据安全延续
- 常用的时间复杂度所耗费的时间由小到大
- python black_如何使用Black自动格式化Python代码
- 现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上?