「Mac玩转仓颉内测版46」小学奥数篇9 - 基础概率计算

本篇将通过 PythonCangjie 双语实现基础概率的计算,帮助学生学习如何解决简单的概率问题,并培养逻辑推理和编程思维。


关键词
  • 小学奥数
  • Python + Cangjie
  • 概率计算

一、题目描述

假设有一个袋子中有 5 个红球和 3 个蓝球,每次从袋子中随机抽取一个球。请编写程序计算:

  1. 抽到红球的概率。
  2. 抽到蓝球的概率。
  3. 连续两次抽到红球的概率(不放回)。

输入格式:从控制台输入红球和蓝球的数量。
输出格式:输出三项概率结果,保留两位小数。


二、Python 实现
# 接收用户输入
red = int(input("请输入红球的数量: "))
blue = int(input("请输入蓝球的数量: "))# 总球数
total = red + blue# 计算概率
p_red = red / total
p_blue = blue / total
p_two_red = (red / total) * ((red - 1) / (total - 1))# 输出结果,保留两位小数
print(f"抽到红球的概率: {p_red:.2f}")
print(f"抽到蓝球的概率: {p_blue:.2f}")
print(f"连续两次抽到红球的概率(不放回): {p_two_red:.2f}")

三、Cangjie 实现
package cjcDemoimport std.convert.*    // 导入用于数据转换的模块
import std.console.*    // 导入用于控制台输入输出的模块
import std.format.*     // 导入用于字符串格式化的模块// 定义函数接收并转换用户输入为 Float64
func inputFloat(info: String): Float64 {print(info)let number: Float64 = Float64.parse(Console.stdIn.readln().getOrThrow())return number
}main(): Int64 {let red = inputFloat("请输入红球的数量: ")let blue = inputFloat("请输入蓝球的数量: ")let total = red + bluelet p_red = red / totallet p_blue = blue / totallet p_two_red = (red / total) * ((red - 1.0) / (total - 1.0))println("抽到红球的概率: ${p_red.format("0.2")}")println("抽到蓝球的概率: ${p_blue.format("0.2")}")println("连续两次抽到红球的概率(不放回): ${p_two_red.format("0.2")}")return 0
}

四、图形展示(扩展部分)

以下代码使用 Python 生成概率计算的可视化图形。本部分是进阶扩展内容,当前阶段不要求理解

from PIL import Image, ImageDraw, ImageFont# 创建画布
img = Image.new('RGB', (600, 300), color='white')
draw = ImageDraw.Draw(img)
font = ImageFont.load_default()# 绘制概率计算的结果
draw.text((10, 10), "抽到红球的概率: 0.62", fill="black", font=font)
draw.text((10, 50), "抽到蓝球的概率: 0.38", fill="black", font=font)
draw.text((10, 90), "连续两次抽到红球的概率: 0.36", fill="black", font=font)# 保存图像
img_path = "probability_visualization.png"
img.save(img_path)
print(f"图形已保存为 {img_path}")

生成的图像如下:

probability_visualization.png


五、示例执行

示例 1

输入:
红球数量: 5
蓝球数量: 3
输出:
抽到红球的概率: 0.62
抽到蓝球的概率: 0.38
连续两次抽到红球的概率(不放回): 0.36

示例 2

输入:
红球数量: 2
蓝球数量: 2
输出:
抽到红球的概率: 0.50
抽到蓝球的概率: 0.50
连续两次抽到红球的概率(不放回): 0.17

六、小结

通过这道概率计算的题目,学生学习了如何运用概率公式解决数学问题,并掌握了如何在编程中实现概率的计算与逻辑思维的应用。


上一篇: 「Mac玩转仓颉内测版45」小学奥数篇8 - 排列组合计算
下一篇: 「Mac玩转仓颉内测版47」小学奥数篇10 - 数列求和

作者:SoraLuna
链接:https://www.nutpi.net/thread?topicId=392
來源:坚果派
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/62292.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Face2QR:可根据人脸图像生成二维码,还可以扫描,以后个人名片就这样用了!

今天给大家介绍的是一种专为生成个性化二维码而设计的新方法Face2QR,可以将美观、人脸识别和可扫描性完美地融合在一起。 下图展示为Face2QR 生成的面部图像(第一行)和二维码图像(第二行)。生成的二维码不仅忠实地保留…

电子商务人工智能指南 1/6 - 搜索、广告和发现

介绍 81% 的零售业高管表示, AI 至少在其组织中发挥了中等至完全的作用。然而,78% 的受访零售业高管表示,很难跟上不断发展的 AI 格局。 近年来,电子商务团队加快了适应新客户偏好和创造卓越数字购物体验的需求。采用 AI 不再是一…

nextcloud云盘的部署

借鉴链接:https://blog.csdn.net/guigenyi/article/details/126692747 创建自定义 Docker 网络 docker network create nextcloud-network 创建mysql的账号密码都是root 并将其连接到自定义网络 docker run --name mysql-container --network nextcloud-network -e…

图(dfs与bfs)算法1

开辟新专题!不擅长的图它来了来了!(莫名激动 进度:10/100 另:没想到给自己挖了个坑,可以用dfs的基本上也可以用bfs,看来要双线并行了。 补:图算法是我近期得有30%的焦虑来源了&am…

一、测试工具LoadRunner Professional脚本编写-录制前设置

设置基于URL的脚本 原因:基于HTML的脚本会导致login接口不能正确录制 设置UTF-8 原因:不勾选此项会导致脚本中文变为乱码

Thonny IDE + MicroPython + ESP32 + GY-302 测量环境中的光照强度

GY-302是一款基于BH1750FVI光照强度传感器芯片的模块。该模块能够直接测量出环境中的光照强度,并将光照强度转换为数字信号输出。其具体参数如下表所示。 参数名称 参数特性 测量范围 0-65535 LX 测量精度 在环境光下误差小于20%,能够自动忽略50/60…

AJAX和XHR、fetch、axios的关系

AJAX中有两套原生的API,一个是XHR(XMLHttpRequest),一个是Fetch API axios是第三方库,在浏览器环境中使用的是XHR umi-request也是第三方库,在浏览器环境中使用的是Fetch 在 AJAX(Asynchronous JavaScript and XML&am…

openlayers地图缓存添加

//通过安装包localforage(npm install localforage)或https://cdnjs.cloudflare.com/ajax/libs/localforage/1.10.0/localforage.min.js tileCacheStore.js import localforage from localforage var tileCacheStorenull;// 从缓存中获取该瓦片 functio…

云轴科技ZStack出席中国电信国际EMCP平台香港发布会,持续推动海外合作

近日,以“云聚未来 翼起新篇”为主题的中国电信国际多云服务一站式平台(E-surfing Managed Cloud Platform,简称EMCP平台)新闻发布会在香港成功举办,标志着中国电信国际在云计算服务领域取得了又一重大进展。云轴科技…

2024.11.29——[HCTF 2018]WarmUp 1

拿到题&#xff0c;发现是一张图&#xff0c;查看源代码发现了被注释掉的提示 <!-- source.php--> step 1 在url传参看看这个文件&#xff0c;发现了这道题的源码 step 2 开始审计代码&#xff0c;分析关键函数 //mb_strpos($haystack,$needle,$offset,$encoding):int|…

brpc的二次封装以及brpc与etcd的联合

目的&#xff1a; 搭配etcd的注册中心管理能知道谁能提供什么服务&#xff0c;并用rpc进行服务调用 封装思想&#xff1a; 信道管理&#xff0c;将不同服务主机的通信信道管理起来 封装&#xff1a; 1.指定的信道管理类 一个服务通常会有多个节点&#xff0c;每个节点都会…

【提升效率】如何写好一份详细设计文档

版本日期修订人描述V1.02024/12/6nick huang创建文档 背景 CSDN在发起“如何做好一份技术文档”的活动。 想起我最近在写一份详细设计&#xff0c;有一些感受&#xff1a; 一份考虑较周全的“详细设计文档模板”能起到质量保底的作用。 当一名初级技术人员需要编写详细设计文…

电阻计RM3544、RM3545的使用

目录&#xff1a; 一、电阻计与PC通讯 1、硬件连接 2、RmLogger.exe的使用 二、RM3545测量35uΩ电阻 一、电阻计与PC通讯 1、硬件连接 可以设置USB或COM口(串口)连接PC&#xff0c;也可以设置为“打印”输出。 1&#xff09;使用USB连接PC 2&#xff09;使用串口连接PC …

Jenkins 的HTTP Request 插件为什么不能配置Basic认证了

本篇遇到的问题 还是因为Jenkins需要及其所在的OS需要升级&#xff0c;升级策略是在一台新服务器上安装和配置最新版本的Jenkins&#xff0c; 当前的最新版本是&#xff1a; 2.479.2 LTS。 如果需要这个版本的话可以在官方站点下载&#xff0c;也可以到如下地址下载&#xff1…

uniapp 封装自定义头部导航栏

封装原因 项目中有时候需要使用自定义的头部导航栏&#xff0c;原生的无法满足需求 参数 属性名描述示例title标题字符串&#xff1a;首页bgColor背景色字符串&#xff1a;#ffftype左侧的操作内容字符串&#xff1a;all&#xff0c;详细值请在下方查看 参数解释 type all…

docker学习笔记(五)--docker-compose

文章目录 常用命令docker-compose是什么yml配置指令详解versionservicesimagebuildcommandportsvolumesdepends_on docker-compose.yml文件编写 常用命令 命令说明docker-compose up启动所有docker-compose服务&#xff0c;通常加上-d选项&#xff0c;让其运行在后台docker-co…

Linux中inode

磁盘的空间管理 如何对磁盘空间进行管理&#xff1f; 假设在一块大小为500G的磁盘中&#xff0c;500*1024*1024524288000KB。在磁盘中&#xff0c;扇区是磁盘的基本单位&#xff08;一般大小为512byte&#xff09;&#xff0c;而文件系统访问磁盘的基本单位是4KB&#xff0c;因…

5G扬帆乘劲风,遨游通讯赋能千行百业谱新篇

在大型工厂&#xff0c;轻触手机屏幕&#xff0c;实时库存数据、人员定位等信息便跃然眼前、一目了然&#xff1b;在边远油田&#xff0c;动动手指&#xff0c;即可实时查询设备温度、危险气体浓度等信息&#xff0c;大数据瞬间尽在“掌”握……在遨游5G防爆智能手机的助力下&a…

RT Thread Studio新建STM32F407IG工程文件编译提示错误

编译提示错误 原因: RT 源码使用4.0.3的话&#xff0c;请用STM32F4支持包的0.2.2版本&#xff0c;就不会出错了。 如果支持包用0.2.3版本的话&#xff0c;需要用RT内核4.1.0版本。0.2.3 版本更新了一些针对内核4.1.0的驱动代码&#xff0c;这几个定义都是4.1.0里的。

学生管理系统(java)

1.前期准备 &#xff08;1&#xff09;新建java项目 &#xff08;2&#xff09;新建java软件包以及三个文件Student.java,Student.txt,StuSystem.java Student.java package student_management_system;public class Student {private String id;private String name;private…