【组合数学】【Python】【小练习】一、斯特灵近似式求阶乘

embedded/2024/9/22 19:21:15/

一、问题介绍

斯特灵(Stirling)近似式,是数学分析中,用于求阶乘近似值的一个常用公式,其简单的表述形式为:

在这里插入图片描述

二、Python实现

使用Python,循环从n=1至n=98,分别输出n的阶乘值、斯特灵公式近似值,以及二者的比值。程序如下:

python">import mathans = 1
appro = 1
for n in range(1, 99):appro = math.sqrt(2 * math.pi * n) * math.pow(n / math.e, n)print("斯特灵近似值:", appro)ans *= nprint("真实值:", ans)print("比值:", appro / ans)

程序输出:

python">"C:\Program Files\Python312\python.exe" "C:\Users\lycbu\Desktop\Python组合数学\第 4 章  《生成排列和组合》\generating_sequence.py" 
斯特灵近似值: 0.9221370088957891
真实值: 1
比值: 0.9221370088957891
斯特灵近似值: 1.9190043514889832
真实值: 2
比值: 0.9595021757444916
斯特灵近似值: 5.836209591345864
真实值: 6
比值: 0.972701598557644
斯特灵近似值: 23.506175132893294
真实值: 24
比值: 0.9794239638705539
斯特灵近似值: 118.0191679575901
真实值: 120
比值: 0.9834930663132508
斯特灵近似值: 710.078184642185
真实值: 720
比值: 0.9862197008919236
斯特灵近似值: 4980.395831612462
真实值: 5040
比值: 0.9881737761135837
斯特灵近似值: 39902.39545265671
真实值: 40320
比值: 0.9896427443615256
斯特灵近似值: 359536.87284194835
真实值: 362880
比值: 0.9907872377699194
斯特灵近似值: 3598695.6187410373
真实值: 3628800
比值: 0.9917040395560619
斯特灵近似值: 39615625.05057755
真实值: 39916800
比值: 0.9924549325240889
斯特灵近似值: 475687486.47277606
真实值: 479001600
比值: 0.993081205726194
斯特灵近似值: 6187239475.19272
真实值: 6227020800
比值: 0.9936114996103306
斯特灵近似值: 86661001740.59883
真实值: 87178291200
比值: 0.9940663042108221
斯特灵近似值: 1300430722199.468
真实值: 1307674368000
比值: 0.9944606654548023
斯特灵近似值: 20814114415223.137
真实值: 20922789888000
比值: 0.994805880412765
斯特灵近似值: 353948328666101.1
真实值: 355687428096000
比值: 0.9951105962917827
斯特灵近似值: 6372804626194313.0
真实值: 6402373705728000
比值: 0.9953815442689276
斯特灵近似值: 1.2111278659229419e+17
真实值: 121645100408832000
比值: 0.9956240422775042
斯特灵近似值: 2.422786846761135e+18
真实值: 2432902008176640000
比值: 0.9958423473771203
斯特灵近似值: 5.088861732550975e+19
真实值: 51090942171709440000
比值: 0.9960399077096737
斯特灵近似值: 1.1197514946282378e+21
真实值: 1124000727777607680000
比值: 0.996219545909217
斯特灵近似值: 2.575852537052931e+22
真实值: 25852016738884976640000
比值: 0.9963835947771517
斯特灵近似值: 6.182979270227948e+23
真实值: 620448401733239439360000
比值: 0.9965339991134844
斯特灵近似值: 1.5459594834691181e+25
真实值: 15511210043330985984000000
比值: 0.9966723931598105
斯特灵近似值: 4.020009930609553e+26
真实值: 403291461126605635584000000
比值: 0.9968001602066026
斯特灵近似值: 1.0855315170319531e+28
真实值: 10888869450418352160768000000
比值: 0.9969184789796951
斯特灵近似值: 3.0398232624334186e+29
真实值: 304888344611713860501504000000
比值: 0.9970283601049891
斯特灵近似值: 8.81639210537749e+30
真实值: 8841761993739701954543616000000
比值: 0.9971306750419006
斯特灵近似值: 2.6451709592296516e+32
真实值: 265252859812191058636308480000000
比值: 0.9972261792398889
斯特灵近似值: 8.200764697241122e+33
真实值: 8222838654177922817725562880000000
比值: 0.9973155308202983
斯特灵近似值: 2.6244651408193303e+35
真实值: 263130836933693530167218012160000000
比值: 0.9973993057608336
斯特灵近似值: 8.661418381417958e+36
真实值: 8683317618811886495518194401280000000
比值: 0.9974780103233257
斯特灵近似值: 2.9451009609982435e+38
真实值: 295232799039604140847618609643520000000
比值: 0.9975520912915815
斯特灵近似值: 1.0308575166584033e+40
真实值: 10333147966386144929666651337523200000000
比值: 0.9976219444566121
斯特灵近似值: 3.711332490874158e+41
真实值: 371993326789901217467999448150835200000000
比值: 0.9976879216895974
斯特灵近似值: 1.3732789283357648e+43
真实值: 13763753091226345046315979581580902400000000
比值: 0.9977503368693503
斯特灵近似值: 5.218769211900575e+44
真实值: 523022617466601111760007224100074291200000000
比值: 0.9978094708750969
斯特灵近似值: 2.0354344348300693e+46
真实值: 20397882081197443358640281739902897356800000000
比值: 0.9978655758120651
斯特灵近似值: 8.142172644946236e+47
真实值: 815915283247897734345611269596115894272000000000
比值: 0.9979188786040203
斯特灵近似值: 3.3384604069916416e+49
真实值: 33452526613163807108170062053440751665152000000000
比值: 0.9979695840606352
斯特灵近似值: 1.4022212235243676e+51
真实值: 1405006117752879898543142606244511569936384000000000
比值: 0.9980178775072052
斯特灵近似值: 6.029829470665712e+52
真实值: 60415263063373835637355132068513997507264512000000000
比值: 0.9980639270478056
斯特灵近似值: 2.6532418206505554e+54
真实值: 2658271574788448768043625811014615890319638528000000000
比值: 0.9981078855202017
斯特灵近似值: 1.1940090686044361e+56
真实值: 119622220865480194561963161495657715064383733760000000000
比值: 0.9981498921903026
斯特灵近似值: 5.492662822140226e+57
真实值: 5502622159812088949850305428800254892961651752960000000000
比值: 0.9981900742259572
斯特灵近似值: 2.5816510284825745e+59
真实值: 258623241511168180642964355153611979969197632389120000000000
比值: 0.9982285479826416
斯特灵近似值: 1.2392382664425307e+61
真实值: 12413915592536072670862289047373375038521486354677760000000000
比值: 0.9982654201287052
斯特灵近似值: 6.072482645765103e+62
真实值: 608281864034267560872252163321295376887552831379210240000000000
比值: 0.9983007886329174
斯特灵近似值: 3.036344593938168e+64
真实值: 30414093201713378043612608166064768844377641568960512000000000000
比值: 0.9983347436336244
斯特灵近似值: 1.5485863474941077e+66
真实值: 1551118753287382280224243016469303211063259720016986112000000000000
比值: 0.99836736820575
斯特灵近似值: 8.052902038388715e+67
真实值: 80658175170943878571660636856403766975289505440883277824000000000000
比值: 0.9983987390393719
斯特灵近似值: 4.268167130531859e+69
真实值: 4274883284060025564298013753389399649690343788366813724672000000000000
比值: 0.9984289270415383
斯特灵近似值: 2.3048773586655146e+71
真实值: 230843697339241380472092742683027581083278564571807941132288000000000000
比值: 0.9984579978713181
斯特灵近似值: 1.267718115662497e+73
真实值: 12696403353658275925965100847566516959580321051449436762275840000000000000
比值: 0.9984860124164401
斯特灵近似值: 7.099413522574659e+74
真实值: 710998587804863451854045647463724949736497978881168458687447040000000000000
比值: 0.9985130272189967
斯特灵近似值: 4.04677135197153e+76
真实值: 40526919504877216755680601905432322134980384796226602145184481280000000000000
比值: 0.9985390948563266
斯特灵近似值: 2.3471865464234703e+78
真实值: 2350561331282878571829474910515074683828862318181142924420699914240000000000000
比值: 0.9985642642825379
斯特灵近似值: 1.3848737857596246e+80
真实值: 138683118545689835737939019720389406345902876772687432540821294940160000000000000
比值: 0.9985885811353248
斯特灵近似值: 8.3094383149767e+81
真实值: 8320987112741390144276341183223364380754172606361245952449277696409600000000000000
比值: 0.9986120880121295
斯特灵近似值: 5.068872779161898e+83
真实值: 507580213877224798800856812176625227226004528988036003099405939480985600000000000000
比值: 0.9986348247191474
斯特灵近似值: 3.1427703689082454e+85
真实值: 31469973260387937525653122354950764088012280797258232192163168247821107200000000000000
比值: 0.9986568284963022
斯特灵近似值: 1.9799875733185862e+87
真实值: 1982608315404440064116146708361898137544773690227268628106279599612729753600000000000000
比值: 0.9986781342207176
斯特灵近似值: 1.2672182368568135e+89
真实值: 126886932185884164103433389335161480802865516174545192198801894375214704230400000000000000
比值: 0.9986987745912168
斯特灵近似值: 8.237083539630221e+90
真实值: 8247650592082470666723170306785496252186258551345437492922123134388955774976000000000000000
比值: 0.9987187802957616
斯特灵近似值: 5.436580738355171e+92
真实值: 544344939077443064003729240247842752644293064388798874532860126869671081148416000000000000000
比值: 0.9987381801636844
斯特灵近似值: 3.6425777374886635e+94
真实值: 36471110918188685288249859096605464427167635314049524593701628500267962436943872000000000000000
比值: 0.9987570013042998
斯特灵近似值: 2.476998166605485e+96
真实值: 2480035542436830599600990418569171581047399201355367672371710738018221445712183296000000000000000
比值: 0.9987752692332945
斯特灵近似值: 1.709159089950092e+98
真实值: 171122452428141311372468338881272839092270544893520369393648040923257279754140647424000000000000000
比值: 0.9987930079881316
斯特灵近似值: 1.1964320047337557e+100
真实值: 11978571669969891796072783721689098736458938142546425857555362864628009582789845319680000000000000000
比值: 0.9988102402335611
斯特灵近似值: 8.494809664319491e+101
真实值: 850478588567862317521167644239926010288584608120796235886430763388588680378079017697280000000000000000
比值: 0.9988269873582672
斯特灵近似值: 6.1163626615111185e+103
真实值: 61234458376886086861524070385274672740778091784697328983823014963978384987221689274204160000000000000000
比值: 0.9988432695633732
斯特灵近似值: 4.465015533351977e+105
真实值: 4470115461512684340891257138125051110076800700282905015819080092370422104067183317016903680000000000000000
比值: 0.9988591059437687
斯特灵近似值: 3.3041624646270324e+107
真实值: 330788544151938641225953028221253782145683251820934971170611926835411235700971565459250872320000000000000000
比值: 0.9988745145628006
斯特灵近似值: 2.4781590571159635e+109
真实值: 24809140811395398091946477116594033660926243886570122837795894512655842677572867409443815424000000000000000000
比值: 0.9988895125210016
斯特灵近似值: 1.8834284182269836e+111
真实值: 1885494701666050254987932260861146558230394535379329335672487982961844043495537923117729972224000000000000000000
比值: 0.9989041160193974
斯特灵近似值: 1.4502605334563188e+113
真实值: 145183092028285869634070784086308284983740379224208358846781574688061991349156420080065207861248000000000000000000
比值: 0.9989183404178815
斯特灵近似值: 1.1312189114037986e+115
真实值: 11324281178206297831457521158732046228731749579488251990048962825668835325234200766245086213177344000000000000000000
比值: 0.9989322002890937
斯特灵近似值: 8.936750255667243e+116
真实值: 894618213078297528685144171539831652069808216779571907213868063227837990693501860533361810841010176000000000000000000
比值: 0.998945709468257
斯特灵近似值: 7.14949447318118e+118
真实值: 71569457046263802294811533723186532165584657342365752577109445058227039255480148842668944867280814080000000000000000000
比值: 0.998958881099184
斯特灵近似值: 5.791164996507119e+120
真实值: 5797126020747367985879734231578109105412357244731625958745865049716390179693892056256184534249745940480000000000000000000
比值: 0.9989717276769705
斯特灵近似值: 4.748814876499388e+122
真实值: 475364333701284174842138206989404946643813294067993328617160934076743994734899148613007131808479167119360000000000000000000
比值: 0.9989842610875203
斯特灵近似值: 3.941564607394658e+124
真实值: 39455239697206586511897471180120610571436503407643446275224357528369751562996629334879591940103770870906880000000000000000000
比值: 0.9989964926442252
斯特灵近似值: 3.310953843822257e+126
真实值: 3314240134565353266999387579130131288000666286242049487118846032383059131291716864129885722968716753156177920000000000000000000
比值: 0.9990084331220233
斯特灵近似值: 2.8143436137448937e+128
真实值: 281710411438055027694947944226061159480056634330574206405101912752560026159795933451040286452340924018275123200000000000000000000
比值: 0.9990200927890578
斯特灵近似值: 2.4203630992044694e+130
真实值: 24227095383672732381765523203441259715284870552429381750838764496720162249742450276789464634901319465571660595200000000000000000000
比值: 0.9990314814361174
斯特灵近似值: 2.1057393492558477e+132
真实值: 2107757298379527717213600518699389595229783738061356212322972511214654115727593174080683423236414793504734471782400000000000000000000
比值: 0.999042608404093
斯特灵近似值: 1.8530707971086265e+134
真实值: 185482642257398439114796845645546284380220968949399346684421580986889562184028199319100141244804501828416633516851200000000000000000000
比值: 0.9990534826094823
斯特灵近似值: 1.6492505573148788e+136
真实值: 16507955160908461081216919262453619309839666236496541854913520707833171034378509739399912570787600662729080382999756800000000000000000000
比值: 0.9990641125682085
斯特灵近似值: 1.4843409438918685e+138
真实值: 1485715964481761497309522733620825737885569961284688766942216863704985393094065876545992131370884059645617234469978112000000000000000000000
比值: 0.9990745064179393
斯特灵近似值: 1.3507640027413541e+140
真实值: 135200152767840296255166568759495142147586866476906677791741734597153670771559994765685283954750449427751168336768008192000000000000000000000
比值: 0.9990846719388152
斯特灵近似值: 1.2427152520695737e+142
真实值: 12438414054641307255475324325873553077577991715875414356840239582938137710983519518443046123837041347353107486982656753664000000000000000000000
比值: 0.9990946165728123
斯特灵近似值: 1.155736440826705e+144
真实值: 1156772507081641574759205162306240436214753229576413535186142281213246807121467315215203289516844845303838996289387078090752000000000000000000000
比值: 0.9991043474420477
斯特灵近似值: 1.086402610369289e+146
真实值: 108736615665674308027365285256786601004186803580182872307497374434045199869417927630229109214583415458560865651202385340530688000000000000000000000
比值: 0.9991138713656339
斯特灵近似值: 1.0320921110167377e+148
真实值: 10329978488239059262599702099394727095397746340117372869212250571234293987594703124871765375385424468563282236864226607350415360000000000000000000000
比值: 0.9991231948757692
斯特灵近似值: 9.908174799577235e+149
真实值: 991677934870949689209571401541893801158183648651267795444376054838492222809091499987689476037000748982075094738965754305639874560000000000000000000000
比值: 0.9991323242325261
斯特灵近似值: 9.611015563513046e+151
真实值: 96192759682482119853328425949563698712343813919172976158104477319333745612481875498805879175589072651261284189679678167647067832320000000000000000000000
比值: 0.9991412654380193
斯特灵近似值: 9.41887782059826e+153
真实值: 9426890448883247745626185743057242473809693764078951663494238777294707070023223798882976159207729119823605850588608460429412647567360000000000000000000000
比值: 0.9991500242494132Process finished with exit code 0

可以看出,随着n值的增长,斯特灵近似值和真实的阶乘值之间的比值越来越接近1.我们也有如下推论:

在这里插入图片描述


http://www.ppmy.cn/embedded/90713.html

相关文章

Serverless Knative冷启动与自动扩缩容研究:从原理到实践

最近一个研究生网页的提问,然后就有了这篇博客! 大佬你好,我看到您的关于Serverless的文章于是十分冒昧的向您提问。我现在是一名在研究通过Serverless容器调度解决冷启动问题的本科生,导师放养,就让看论文但是后面的代…

【MySQL】慢sql优化全流程解析

定位慢sql 工具排查慢sql 调试工具:Arthas运维工具:Skywalking 通过以上工具可以看到哪个接口比较慢,并且可以分析SQL具体的执行时间,定位到哪个sql出了问题。 启用慢查询日志 慢查询日志记录了所有执行时间超过指定参数(lon…

使用uniapp+Django开发的在线工具网站

引言 在当今数字化时代,在线工具网站为用户提供了便捷的服务和功能,本文分享了我使用UniApp和Django开发的一款多平台在线工具网站。通过这个项目,我探索了跨平台开发与强大的后端框架结合的优势,实现了用户友好的界面和稳健的功…

24/8/4算法笔记 梯度下降

通过迭代地调整参数,沿着目标函数梯度的反方向(即最陡峭的下降方向)进行搜索,从而找到函数的局部最小值。 导入库 import matplotlib.pyplot as plt import numpy as np 构建方程和导数 #构建方程 f lambda x:(x-3.5)**2-4.…

【微服务】springboot 整合 SA-Token 使用详解

目录 一、前言 二、认证与授权介绍 2.1 什么是认证 2.1.1 认证的目的 2.1.2 认证基本步骤 2.2 什么是授权 2.2.1 常用的授权模型 三、微服务中常用的认证安全框架 3.1 Spring Security 3.1.1 Spring Security 特点 3.2 JWT (JSON Web Tokens) 3.2.1 JWT特点 3.3 其…

.xml文件和.xsd文件

.xml 文件和 .xsd 文件举例说明 .xml 文件示例 这是一个简单的 XML 文件示例,表示一本书的详细信息: <?xml version="1.0" encoding="UTF-8"?> <!-- 定义书籍信息 --> <书籍 xmlns:xsi="http://www.w3.org/2001/XMLSchema-inst…

java基础--字符串用法

一、前言&#xff08;在java中字符串的重要性&#xff09; 在 Java 编程中&#xff0c;字符串&#xff08;String&#xff09;的重要性不言而喻&#xff0c;它几乎贯穿于所有的应用程序和系统中。以下是 Java 中字符串重要性的几个方面&#xff1a; 1. 数据表示和处理 文本数…

将本地的业务写成成可供RPC远程调用的方法

第一步&#xff1a;首先我们先定义proto文件&#xff0c;这些proto文件将会为远程调用者提供调用的方法&#xff0c;为login方法。 2.重写UserServiceRpc类中的Login方法。 在Login中做的操作主要是&#xff0c;得到requst里面的参数&#xff0c;然后调用本地的Login方法&#…