python统计模拟:狙击手问题
1.问题描述
有一名潜伏在敌人阵地附近的狙击手,已知该狙击手射击1发子弹的命中率以及被发现的概率如下表所示:
距离(百米) | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
---|---|---|---|---|---|---|---|
命中率 | 100% | 100% | 90% | 80% | 70% | 60% | 50% |
暴露率 | 40% | 35% | 30% | 25% | 20% | 18% | 15% |
假设狙击手一旦被暴露就要撤离阵地,请计算在不同距离上,该狙击手在暴露前平均能够狙杀多少名敌人,并确定射击的最优距离。
2.代码实现
import numpy as np
list_kill=[1,1,0.9,0.8,0.7,0.6,0.5]
list_exposure=[0.4,0.35,0.3,0.25,0.2,0.18,0.15]
N=10000
for j in range(4,11): kill_num=0 #击杀总数for i in np.arange(N): exposure=np.random.random(1)#exposure:暴露率kill=np.random.random(1)#kill:命中率if kill<=list_kill[j-4]:kill_num+=1while exposure>=list_exposure[j-4]:kill=np.random.random(1)if kill<=list_kill[j-4]:kill_num+=1exposure=np.random.random(1) print('{}米平均击杀数为{}'.format(j*100,kill_num/N))
3.输出结果
400米平均击杀数为2.5203
500米平均击杀数为2.8589
600米平均击杀数为2.9782
700米平均击杀数为3.1661
800米平均击杀数为3.4708
900米平均击杀数为3.4096
1000米平均击杀数为3.398
由此我们可以看出在800米的距离下平均击杀人数最高,所以在制作狙击枪时的有效射击距离一定要超过800米。
python统计模拟:狙击手问题相关推荐
- python mta 模拟试题_统计模拟试题
统计模拟试题 1. 总体是由( ) . A. 个体组成 B. 同质个体组成 C. 影响因素 D. 研究指标组成 E. 以上都不对 2. 一般在投掷一枚硬币时出现正面的概率为 0.5 . 某人作了 20 ...
- 【计算机二级Python】模拟试卷第6套选择题
相关链接 [计算机二级Python]考试攻略及资料汇总 [计算机二级Python]模拟试卷第1套选择题 [计算机二级Python]模拟试卷第2套选择题 [计算机二级Python]模拟试卷第2套选择题 ...
- python可视化计算器_GUI最新:python GUI模拟实现计算器_爱安网 LoveAn.com
关于"GUI"的最新内容 聚合阅读 这篇文章主要介绍了php7 图形用户界面GUI 开发,结合实例形式分析了PHP7基于php_ui扩展实现的图形用户界面GUI相关操作技巧,需要的 ...
- Python程序设计模拟试题
Python程序设计模拟试题 考试时间:90分钟 单项选择题(20%) 5*4关于print函数的使用,错误的是哪一个?( ) 可以不传参数 可以传一个参数 可以传多个参数 end参数只能放在最后一个 ...
- python二级模拟题
PYTHON二级模拟题 一.选择题(每题1分,总分40分) 1.下列叙述中正确的是() A.算法的时间复杂度是指算法在执行过程中基本运算的次数 B.算法的时间复杂度是指算法执行所需要的时间 C.算法的 ...
- python统计字母空格个数_python统计字母、空格、数字等字符个数的实例
如下所示: # -*- coding: utf-8 -*- # 要求:输入一行字符,分别统计出其中英文字母.空格.数字和其它字符的个数. def count(s): count_a=count_z=c ...
- python统计元素个数_python怎么统计列表中元素的个数
python统计列表中元素的个数的方法:可以通过count()方法来实现.该方法可以统计字符串中某个字符出现的次数,并返回子字符串在字符串中出现的次数.具体用法如:[count=List.count( ...
- 用python画太阳系_用 Python 动态模拟太阳系运转
提到太阳系,大家可能会想到哥白尼和他的日心说,或是捍卫.发展日心说的斗士布鲁诺,他们像一缕光一样照亮了那个时代的夜空,对历史感兴趣的小伙伴可以深入了解一下,这里就不多说了. 太阳以巨大的引力使周边行星 ...
- 怎么用python统计字数_使用Python 统计高频字数的方法
问题 (来自Udacity机器学习工程师纳米学位预览课程) 用 Python 实现函数 count_words(),该函数输入字符串 s 和数字 n,返回 s 中 n 个出现频率最高的单词.返回值是一 ...
最新文章
- Exchange 2016集成ADRMS系列-12:域内outlook 2010客户端测试
- Pulsar:下一代消息引擎真的这么强吗?
- 霸榜 GitHub:去你丫的算法!
- PHP根据IP获取当前所在地地址
- DJango操作MySQL数据库
- 计算机英语心得体会200字,英语读后感200字精选3篇
- node --- [跨域] 预检请求
- C++ 标准库——ctime
- asp.net FindControl作用
- HDU 6602 Longest Subarray (线段树)
- 1.微服务:从设计到部署 --- 简介
- mysql sql文件在哪里打开_mysql怎么打开sql文件
- Springer期刊LaTeX模板的一些问题
- 三种PS切图方法—简单易懂
- WMB Commands
- 使用git上传代码遇到关于remote: Support for password authentication was removed on August 13, 2021.的问题
- 向量范数(Norms)之间关系的证明
- 如何通过电感+MOS管实现BUCK降压和Boost升压
- 厦门信息计算机专业录取分数,厦门大学计算机类专业2016年在福建理科高考录取最低分数线...
- AndroidP HIDL 转载
热门文章
- python中合法的布尔表达式_笔记||Python3之布尔表达式+条件判断
- 莫非80后都要开始担忧“老年痴呆”了?
- 并发与并行,同步和异步,Go lang1.18入门精炼教程,由白丁入鸿儒,Go lang并发编程之GoroutineEP13
- 从0开始搭建jenkin环境
- 刘欢新歌 赢在中国主题歌
- C ++匿名函数:揭开C++ Lambda表达式的神秘面纱
- java实例化对象时程序运行顺序
- 清华牛人-----王垠
- bootstrap validator简单非空校验(data-bv-notempty)
- 2020-05-19:催收核心业务是什么?