当前位置: 首页 > news >正文

谈谈数学和式的理解和应用

和式占用了一个很高大尚的希腊字母Σ(sigma),对于一个数列 a1​,a2​,a3​,…,an​,它们的和可以表示为:
∑i=1nai=a1+a2+⋯+an \sum_{i=1}^{n} a_i = a_1 + a_{2} + \cdots + a_n i=1nai=a1+a2++an

不要被公式吓倒,其实它只是一个**“累加”指令**。它的核心动作就是:“把符合条件的一项一项东西,全部加起来。”


一、 谈谈和式在程序设计中的应用(就像老板让你汇总数据)

在程序里,和式其实就是 循环(Loop) 加上 累加(Accumulation)。想象一下你是公司的新人,老板给你布置任务。

1. 基础应用:汇总与统计

场景:老板给你一张表格,上面是公司5个部门本月的开支。让你算总开支。

  • 数学表达总开支 = Σ(i=1 到 5) 部门i开支
  • 程序实现
    # 五个部门的开支,放在一个“列表”(一维货架)里
    department_expenses = [12000, 8500, 15000, 9000, 11000]total_expense = 0  # 初始化一个“总和盒子”,现在是空的# 开始“循环遍历”(和式里的 Σ)
    for expense in department_expenses:total_expense = total_expense + expense  # 把每一项开支放进“总和盒子”print(total_expense)  # 输出最终结果
    
    通俗解释:这就是最单纯的“和式”。程序做的就是和式规定的事:遍历一个集合,并把每个元素加到一起。
2. 进阶应用:带条件的求和(和式 + 过滤器)

场景:老板说:“刚才不算数,重新算!只统计开支超过1万元的部门的总开支。”

  • 数学表达总开支 = Σ(部门开支) ,但仅当 部门开支 > 10000 时才加
    (数学上会用一个叫“艾弗森括号”的符号 [条件] 来表示,条件为真时取1,为假时取0)
  • 程序实现
    department_expenses = [12000, 8500, 15000, 9000, 11000]
    total_expense = 0for expense in department_expenses:if expense > 10000:       # 这就是“条件”total_expense = total_expense + expense  # 只加满足条件的项print(total_expense)  # 输出:12000 + 15000 + 11000 = 38000
    
    通俗解释:这相当于在和式里加了一个“if判断”。程序在累加前会先检查:“这个东西符合要求吗?” 符合才加,不符合就跳过。这就像你在汇总发票时,只把“餐饮类”的发票挑出来加在一起。
3. 核心应用:多重和式(嵌套循环)

场景:老板给你一个更复杂的任务:公司有3个项目组,每个组有若干成员,给出了每个成员的工时。计算公司的总工时。

  • 数学表达总工时 = Σ(i=1 到 3) Σ(j=1 到 第i组人数) 成员_ij_工时
  • 程序实现
    # 用一个“列表的列表”来模拟(二维表格)
    # 三个子列表代表三个项目组,子列表里的数字是每个成员的工时
    working_hours = [[8, 7, 9],    # 第一组有3个成员,工时分别是8,7,9[6, 8],       # 第二组有2个成员[7, 8, 8, 6]  # 第三组有4个成员
    ]total_hours = 0# 外层循环 Σ(i):遍历每个组
    for group in working_hours:# 内层循环 Σ(j):遍历当前组里的每个成员for hours in group:total_hours = total_hours + hours  # 把每个成员的工时加进去print(total_hours)  # 输出:8+7+9 + 6+8 + 7+8+8+6 = 67
    
    通俗解释:这就像你拿到一张总表(公司),里面有很多分表(项目组),分表里还有详细数据(成员)。你先处理第一个分表,把它下面的所有数据加完;然后处理第二个分表…直到所有分表处理完毕。 这种“循环套循环”的结构,就是程序实现多重和式的方式。

二、谈谈和式在实际生活中的应用(无处不在的“算总账”)

和式在生活中的应用比程序里更直观,因为它本质上就是我们每天都在做的“合计”行为。

1. 购物结算:最经典的单重和式
  • 场景:你在超市购物,篮子里有苹果、牛奶、面包。
  • 过程:收银员扫描每件商品的价格(价格₁, 价格₂, 价格₃),收款机执行 总价 = 价格₁ + 价格₂ + 价格₃
  • 通俗解释你的购物小票就是一个完美的和式清单。 最后的“总计”就是和式的结果。
2. 计算月度总开销:带条件的多重和式
  • 场景:月底了,你翻看微信/支付宝账单,想算算这个月在“餐饮”上花了多少钱。
  • 过程
    1. 第一重和式(遍历时间):你把本月的每一天都过一遍(Σ(日=1 到 30))。
    2. 第二重和式(遍历当天交易):对于每一天,你把当天的所有交易记录过一遍(Σ(交易))。
    3. 条件判断:在遍历每笔交易时,你只关注那些“商户类型”为“餐饮”的交易。
    4. 累加:把所有满足条件的交易金额加起来。
  • 通俗解释:这比超市结算多了一个“筛选”步骤。你不是把所有的钱都加起来,而是只加某一类的钱。这其实就是Excel里的SUMIFSUMIFS函数做的事情。
3. 评估项目总工作量:多重和式
  • 场景:你是一个包工头,要盖一栋楼。你需要计算总共需要多少块砖。
  • 过程
    1. 这栋楼有5层(i=1 到 5)。
    2. 每一层有10个房间(j=1 到 10)。
    3. 每个房间需要 a_ij 块砖。
    4. 你计算总砖数的思维过程就是:总砖数 = 一层所有房间的砖 + 二层所有房间的砖 + ... + 五层所有房间的砖
  • 通俗解释你在心里已经完成了一个二重和式的计算。 你先算出一层的总量(内层和),再把各层的总量加起来(外层和)。
4. 计算班级平均分:和式的组合
  • 场景:老师计算全班50个学生的数学平均分。
  • 过程
    1. 先做和式总分 = Σ(k=1 到 50) 学生k的分数
    2. 再做除法平均分 = 总分 / 50
  • 通俗解释平均分是建立在“和式”基础之上的。 很多复杂的统计概念(如方差、标准差)的第一步,也都是一个和式计算。

三、谈谈公式定理

和式,又称求和,其核心思想是将一系列有规律的项相加

1. 基本定义

对于一个数列a1,a2…ana_nan,它们的和可以表示为:
∑i=1nai=a1+a2+a3+⋯+an \sum_{i=1}^{n} a_i = a_1 + a_2 + a_3 + \dots + a_n i=1nai=a1+a2+a3++an

  • 求和符号:Σ(大写希腊字母 Sigma,代表“Sum”即“和”)
  • 求和索引(i(i(i) (也称为下标或索引变量)。它只是一个“计数器”,本身没有实际意义,可以用任何字母(j, k, m…)代替。
  • 索引下界(i=1(i=1(i=1) (索引 (i) 从 1 开始)。
  • 索引上界(n(n(n) (索引 (i) 到 n 结束)。
  • 通项(ai(a_i(ai) (依赖于索引 (i) 的表达式)。

理解:索引 (i(i(i) 依次取遍从下界到上界的所有整数值(1, 2, 3, …, n),并将每个值代入通项 (ai(a_i(ai),然后将得到的所有结果加起来。

2. 推广定义

和式的定义可以非常灵活,不一定要从1开始。
∑i=mnai=am+am+1+⋯+an \sum_{i=m}^{n} a_i = a_m + a_{m+1} + \dots + a_n i=mnai=am+am+1++an
其中 (m(m(m) 和 (n(n(n) 是整数,且 (m≤n(m \le n(mn)。

示例

  • (∑k=35k2=32+42+52=9+16+25=50(\sum_{k=3}^{5} k^2 = 3^2 + 4^2 + 5^2 = 9 + 16 + 25 = 50(k=35k2=32+42+52=9+16+25=50)
  • (∑i=032i=20+21+22+23=1+2+4+8=15(\sum_{i=0}^{3} 2^i = 2^0 + 2^1 + 2^2 + 2^3 = 1 + 2 + 4 + 8 = 15(i=032i=20+21+22+23=1+2+4+8=15)
3. 多重和式定义

当通项依赖于多个索引时,就需要多重和式。计算顺序是从右向左

∑i=1m∑j=1naij=∑i=1m(∑j=1naij) \sum_{i=1}^{m} \sum_{j=1}^{n} a_{ij} = \sum_{i=1}^{m} \left( \sum_{j=1}^{n} a_{ij} \right) i=1mj=1naij=i=1m(j=1naij)

理解

  1. 先固定外层的索引 (i(i(i)(例如令 (i=1(i=1(i=1))。
  2. 然后计算内层关于 (j(j(j) 的和式 (∑j=1na1j=a11+a12+⋯+a1n(\sum_{j=1}^{n} a_{1j} = a_{11} + a_{12} + \dots + a_{1n}(j=1na1j=a11+a12++a1n)。这个结果可以看作一个只与 (i(i(i) 有关的量 (Si(S_i(Si)。
  3. 然后让 (i(i(i) 取下一个值,重复步骤2。
  4. 最后,将所有 (Si(S_i(Si)(即 (S1,S2,…,Sm(S_1, S_2, \dots, S_m(S1,S2,,Sm))加起来。

好的,我们来系统地介绍和式的定义和核心定理。我会保持通俗的语言,但会使用准确的数学表述。

四、和式的核心定理与法则

这些定理是和式运算的基石,它们看起来简单,但威力巨大。

定理1:常数倍法则

一个常数因子可以提到和式外面。
∑k=1nc⋅ak=c⋅∑k=1nak \sum_{k=1}^{n} c \cdot a_k = c \cdot \sum_{k=1}^{n} a_k k=1ncak=ck=1nak
(其中(c(c(c) 是一个与索引 (k(k(k) 无关的常数)

通俗理解:如果你要算“5个苹果 + 5个橘子 + 5个香蕉”的总数,你可以先算水果种类(1苹果+1橘子+1香蕉=3个),再乘以5(5×3=15),而不是5+5+5=15。结果一样,但有时先提公因数再计算更简便。

示例
∑k=11005k=5×1+5×2+⋯+5×100=5×(1+2+⋯+100)=5×∑k=1100k \sum_{k=1}^{100} 5k = 5 \times 1 + 5 \times 2 + \dots + 5 \times 100 = 5 \times (1+2+\dots+100) = 5 \times \sum_{k=1}^{100} k k=11005k=5×1+5×2++5×100=5×(1+2++100)=5×k=1100k

定理2:加法分配律(和式的和等于和的合式)

两个数列之和的和式,等于各自和式的和。
∑k=1n(ak+bk)=∑k=1nak+∑k=1nbk \sum_{k=1}^{n} (a_k + b_k) = \sum_{k=1}^{n} a_k + \sum_{k=1}^{n} b_k k=1n(ak+bk)=k=1nak+k=1nbk

通俗理解:如果你每天生活费收入是(a元+父母资助b元),那么三天总收入 = 所有天工资之和 + 所有天父母资助之和。你可以分开算,再加起来。

示例
∑k=13(ak+bk)=(a1+b1)+(a2+b2)+(a3+b3) \sum_{k=1}^{3} (a_k + b_k) = (a_1+b_1) + (a2+b2) + (a_3+b_3) k=13(ak+bk)=(a1+b1)+(a2+b2)+(a3+b3)
∑k=13a+∑k=13b=(a1+a2+a3)+(b1+b2+b3) \sum_{k=1}^{3} a + \sum_{k=1}^{3} b = (a_1+a_2+a_3) + (b_1+b_2+b_3) k=13a+k=13b=(a1+a2+a3)+(b1+b2+b3)

定理3:指标变换法则

改变求和索引的名称和范围,不会改变和式的值,只要遍历的集合不变。

  1. 变量替换:索引名可以任意更改。
    ∑i=1nai=∑k=1nak \sum_{i=1}^{n} a_i = \sum_{k=1}^{n} a_k i=1nai=k=1nak

  2. 平移变换:通过改变索引的起始点来重写和式。
    ∑k=mnak=∑k=m+pn+pak−p \sum_{k=m}^{n} a_k = \sum_{k=m+p}^{n+p} a_{k-p} k=mnak=k=m+pn+pakp
    示例:令(j=k+1(j = k+1(j=k+1),则当(k(k(k) 从 0 到(n(n(n) 时,(j(j(j) 从 1 到(n+1(n+1(n+1)。
    ∑k=0nak=∑j=1n+1aj−1 \sum_{k=0}^{n} a_k = \sum_{j=1}^{n+1} a_{j-1} k=0nak=j=1n+1aj1
    这个技巧在推导公式时极其重要。

定理4:分裂与组合

一个和式可以拆成几个部分,反之亦然。
∑k=1nak=∑k=1mak+∑k=m+1nak(1≤m<n) \sum_{k=1}^{n} a_k = \sum_{k=1}^{m} a_k + \sum_{k=m+1}^{n} a_k \quad (1 \le m < n) k=1nak=k=1mak+k=m+1nak(1m<n)

示例
∑k=1100k=∑k=150k+∑k=51100k \sum_{k=1}^{100} k = \sum_{k=1}^{50} k + \sum_{k=51}^{100} k k=1100k=k=150k+k=51100k

定理5:交换求和次序(富比尼定理的特例,非常重要!)

对于绝对收敛的二重和式,求和顺序可以交换。
∑i=1m∑j=1naij=∑j=1n∑i=1maij \sum_{i=1}^{m} \sum_{j=1}^{n} a_{ij} = \sum_{j=1}^{n} \sum_{i=1}^{m} a_{ij} i=1mj=1naij=j=1ni=1maij

通俗理解:在计算一个矩阵(或表格)所有元素的和时:

  • 左边 (∑i∑j(\sum_i \sum_j(ij):先横着加每一行的值,再把所有行的和加起来。
  • 右边 (∑j∑i(\sum_j \sum_i(ji):先竖着加每一列的值,再把所有列的和加起来。
    最终总和是相等的。

示例:计算下面表格所有数字之和。

列1列2
行112
行234
  • (∑i=12∑j=12aij=(a11+a12)+(a21+a22)=(1+2)+(3+4)=3+7=10(\sum_{i=1}^{2} \sum_{j=1}^{2} a_{ij} = (a_{11}+a_{12}) + (a_{21}+a_{22}) = (1+2) + (3+4) = 3+7=10(i=12j=12aij=(a11+a12)+(a21+a22)=(1+2)+(3+4)=3+7=10)
  • (∑j=12∑i=12aij=(a11+a21)+(a12+a22)=(1+3)+(2+4)=4+6=10(\sum_{j=1}^{2} \sum_{i=1}^{2} a_{ij} = (a_{11}+a_{21}) + (a_{12}+a_{22}) = (1+3) + (2+4) = 4+6=10(j=12i=12aij=(a11+a21)+(a12+a22)=(1+3)+(2+4)=4+6=10)

注意:当求和范围相互依赖时(例如 (∑i=1n∑j=1iaij(\sum_{i=1}^{n} \sum_{j=1}^{i} a_{ij}(i=1nj=1iaij)),交换次序需要特别小心,必须重新确定索引范围,但其思想仍然是简化计算的核心工具。

http://www.dtcms.com/a/418229.html

相关文章:

  • 【Linux指令 (一)】Linux 命令行入门:从零开始理解Linux系统理论核心概念与基础指令
  • 网站建设案例赏析网站制作比较好的制作公司
  • 线上JVM问题定位常用命令
  • 通过配置 GitLab 自动触发项目自动化构建与部署
  • 【qml-12】Quick3D实现机器人鼠标拖拽转换视角(无限角度)与滚轮缩放
  • h5实现一个吸附在键盘上的工具栏
  • 解决 sqlplus / as sysdba 登录缓慢问题
  • Mysql DBA学习笔记(主从复制)
  • 网站开发的交付文档企业策划是什么意思
  • 个人网站主机选择上海品牌全案设计公司
  • 布谷娱乐直播系统源码开发实用功能:技术驱动更迭的创新体验
  • ArcGIS JSAPI 高级教程 - 高亮效果优化之开启使用多高亮样式
  • 元宇宙的搜索引擎:如何在虚拟世界中查找信息
  • Unity-AB包
  • Rust开发环境配置
  • 【mdBook】5.2.1 通用配置
  • Rust自定义函数引用
  • Java 集合体系 —— List 篇
  • 操作系统应用开发(十一)RustDesk在线编译自己客户端——东方仙盟筑基期
  • 【mdBook】5.2 配置
  • 网站建设难么让网站快速收录
  • h5游戏网站建设游戏软件开发培训学校
  • 扩散模型-图像编辑【An Edit Friendly DDPM Noise Space: Inversion and Manipulations】
  • 开源 C# 快速开发(九)通讯--Tcp客户端
  • 大黄蜂云课堂vep格式加密视频录屏截图翻录转换为mp4
  • 【Python办公】批量图片转PDF工具
  • Python爬虫实战:获取北京市交管局最新车检信息与数据分析
  • ubuntu24.04 实现DLNA音频推送
  • 企业网站的建设规划网站建站前期准备工作
  • Docker搭建ESPIDF环境,程序下载