zoukankan      html  css  js  c++  java
  • python实现排列组合公式C(m,n)求值

    python实现排列组合公式C(m,n)求值
    实验六 理解浮点数运算的误差
    实验目的:
    1.理解组合数定义式的化简
    2.理解浮点数运算的误差可能带来的问题

    错误代码

    def func(m,n):
    result=1
    minNI=min(n,m-n)
    for j in range(0,minNI):
    result=result*(m-j)//(minNI-j)
    return result


    运算结果

    func(5,3)


    正确代码

    def func(m,n):
    a=b=result=1
    if m<n:
    print("n不能小于m 且均为整数")
    elif ((type(m)!=int)or(type(n)!=int)):
    print("n不能小于m 且均为整数")
    else:
    minNI=min(n,m-n)#使运算最简便
    for j in range(0,minNI):
    #使用变量a,b 让所用的分母相乘后除以所有的分子
    a=a*(m-j)
    b=b*(minNI-j)
    result=a//b #在此使用“/”和“//”均可,因为a除以b为整数
    return result


    运算结果

    func(5,3)
    10


    ————————————————
    版权声明:本文为CSDN博主「半夏微光1117」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/wmx1117/article/details/105466900

    你有什么心态,就有什么样的人生。管不好自己的心态,注定你就是个弱者。
  • 相关阅读:
    SQL结构化查询语言
    数据库主外键
    SQL数据库数据类型详解
    注释和特殊符号
    文本装饰
    列表样式
    网页背景
    SQL数据库数据类型详解
    数据库主外键
    Update 语句
  • 原文地址:https://www.cnblogs.com/LQZ888/p/12691868.html
Copyright © 2011-2022 走看看