python 实现harmonic series调和级数算法

ops/2024/9/25 9:08:36/

harmonic series调和级数算法介绍

调和级数(Harmonic Series)是一个在数学中非常重要的级数,其形式为无穷级数:
H n = ∑ k = 1 n 1 k H_n=\sum_{k=1}^{n}\frac{1}{k} Hn=k=1nk1

其中,
𝑛
n 是正整数。这个级数是由调和数列(Harmonic sequence)的各元素相加所得的和。调和级数的名字源于泛音及泛音列,即一条振动的弦的泛音的波长依次是基本波长的 1 2 、 1 3 、 1 4 \frac{1}{2}、\frac{1}{3}、\frac{1}{4} 213141 等。

调和级数的性质

发散性:调和级数是一个发散的无穷级数,也就是说,它的部分和随着项数的增加而无限增长。这个性质最早由中世纪后期的数学家Oresme证明,随后在17世纪由皮耶特罗·曼戈里、约翰·伯努利和雅各布·伯努利等人完成了全部证明工作。

增长速度:尽管调和级数是发散的,但其发散的速度非常缓慢。例如,调和序列前10项的和还不足2.9(具体为 1 1 + 1 2 + 1 3 + … + 1 10 ≈ 2.928968 \frac{1}{1}+\frac{1}{2}+\frac{1}{3}+…+\frac{1}{10}≈2.928968 11+21+31++1012.928968),这是因为调和数列的部分和呈对数增长。

调和级数的计算

由于调和级数是发散的,因此无法直接计算出其“总和”到一个具体的有限值。然而,数学家们通过不同的方法(如积分判别法、柯西并项判别法等)研究了其发散的性质,并发现了一些与之相关的常数和性质。

例如,调和级数的部分和与欧拉常数(Euler-Mascheroni constant)有关。欧拉常数是一个数学常数,大约等于0.5772156649,它表示了调和级数与自然对数之间的某种联系。

调和级数的推广

调和级数可以推广到更一般的形式:

H n ( α ) = ∑ k = 1 n 1 k α H_n(α)=\sum_{k=1}^{n}\frac{1}{k^α} Hn(α)=k=1nkα1

其中,α 是任意实数。当 α>1 时,$H_n(α) 是收敛的;当 0 < α ≤ 1 时, 是收敛的;当 0<α≤1 时, 是收敛的;当0<α1时,H_n(α)$是发散的。

结论

调和级数的算法主要在于理解其发散性和增长速度,以及如何通过数学方法(如积分判别法)来研究其性质。由于调和级数是发散的,因此无法直接计算其总和,但可以通过研究其部分和的性质来深入了解这个重要的数学对象。

python_31">harmonic series调和级数算法python实现样例

下面是使用Python实现调和级数算法的代码:

python">def harmonic_series(n):result = 0for i in range(1, n+1):result += 1/ireturn resultn = int(input("请输入一个正整数: "))
print("调和级数的值为:", harmonic_series(n))

在上面的代码中,我们定义了一个名为harmonic_series的函数,接受一个正整数n作为参数。该函数使用一个循环来计算调和级数的值,循环从1到n遍历每个整数,然后将其倒数加到结果中。最后,函数返回计算出的调和级数的值。

在主程序中,我们首先通过input函数获取用户输入的正整数n,然后调用harmonic_series函数来计算调和级数的值,并将结果打印出来。


http://www.ppmy.cn/ops/115721.html

相关文章

【C++】融合菜之C++、C# 和 CLR、CLI

在一个项目中同时使用 C、C# 和 CLR 的典型场景是利用 C/CLI 作为桥梁&#xff0c;允许 C 和 C# 互操作。这种场景通常发生在需要使用现有的 C 库&#xff0c;并希望将其与 C# 项目集成的情况下。C/CLI 是 Microsoft 提供的一种托管扩展&#xff0c;可以用来编写托管&#xff0…

OpenAI最新GPT-o1-preview测评

OpenAI最新GPT-o1-preview测评 测试之后感觉这个相对GPT4o&#xff0c;能力上升了一个大的台阶&#xff0c;思考能力极强的最强GPT模型 之前用GPT4o测试过类似的题目&#xff0c;做的效果极差&#xff0c;答案直接就是错&#xff0c;这次GPT-o1-preview居然做对了&#xff0c;逻…

01DSP学习-了解DSP外设-以逆变器控制为例

(由于是回忆自己简单的DSP学习过程&#xff0c;所以博客看起来有些没有章法&#xff0c;请见谅~) 上一篇博客介绍了学习DSP需要的软件和硬件准备&#xff0c;以及一个DSP的工程包含了哪些东西。我的学习方法是目的导向&#xff0c;即我需要用什么我就学什么&#xff0c;并没有…

ubuntu22.04磁盘挂载(多磁盘和单磁盘挂载)

多磁盘挂载到同一个目录 # 如果没有安装逻辑卷管理系统工具sudo apt install lvm2 # 查看磁盘分区sudo fdisk -l # 新建物理卷sudo pvcreate /dev/nvme0n1 /dev/nvme1n1 # 查看现有物理卷信息sudo pvdisplay # 新建物理卷sudo vgcreate dnyjy_vg /dev/nvme0n1 /dev/nvme1n1…

详细分析Canvas基本知识(以Vue3为基础)

目录 1. 基本知识2. Demo2.1 填充矩形和描边矩形2.2 清空矩形区域2.3 绘制直线和路径2.4 绘制圆形2.5 绘制图像2.6 多个形状组合3. 彩蛋1. 基本知识 以下是关于 Canvas 的基本知识和对应 API 的详细分析,以表格形式呈现,并附上多个可以直接执行的 Demo 示例 Canvas 是一个 …

Java位集合之BitMap

文章目录 Java位集合之BitMap一、引言二、BitMap原理1、BitMap简介2、BitMap存储原理 三、BitMap实现1、IntMap实现2、LongMap实现 四、BitMap应用1、快速排序2、快速去重3、快速查找 五、总结 Java位集合之BitMap 一、引言 在计算机科学中&#xff0c;位图&#xff08;BitMa…

PlayerPerfs-不同平台的存储位置

一 .PlayerPrefs存储的数据存在哪里 不同平台存储位置不一样 Windows PlayerPrefs 存储在 HKCU\Software\[公司名称]\[产品名称] 项下的注册表中 其中公司和产品名称是 在“Project Settings”中设置的名称。 查看方法&#xff1a; 运行 regedit HKEY…

学习大数据DAY60 多表数据清洗

当前会有已抽取好的数据存放在 ODS 层 通过数据清洗, 把数据存放在 DWD 层 数据清洗的规范 crm_user_base_info_his_full erp_u_memcard_reg_full erp_u_sale_m_inc erp_u_sale_pay_inc erp_c_memcard_class_group_full his_chronic_patient_info_new_full 从简单到复…