【Python】基础练习题
1)从random库中选取相应的函数,用蒙特卡罗方法(统计实验方法)求解pi。
import randomdef estimate_pi(num_experiments):num_points_in_circle = 0num_total_points = 0for _ in range(num_experiments):x = random.uniform(-1, 1)y = random.uniform(-1, 1)distance = x**2 + y**2if distance <= 1:num_points_in_circle += 1num_total_points += 1pi_estimate = 4 * num_points_in_circle / num_total_pointsreturn pi_estimate# 设置实验次数
num_experiments = 1000000# 估算圆周率
pi_estimate = estimate_pi(num_experiments)
print("蒙特卡罗估算的圆周率: ", pi_estimate)
2)一个笼中共有鸡和兔15只,它们的脚一共有40只,问有多少只鸡?有多少只兔?
def solve_chicken_and_rabbit(total_count, total_legs):# 循环遍历可能的鸡的数量,从0到总数for chicken_count in range(total_count + 1):rabbit_count = total_count - chicken_count# 判断当前的鸡兔数量是否符合脚的总数if (2 * chicken_count + 4 * rabbit_count) == total_legs:return chicken_count, rabbit_count# 如果没有找到符合条件的结果,则返回 Nonereturn None# 输入总数和脚的总数
total_count = 15
total_legs = 40# 解决问题并打印结果
solution = solve_chicken_and_rabbit(total_count, total_legs)
if solution:chicken_count, rabbit_count = solutionprint("鸡的数量:", chicken_count)print("兔子的数量:", rabbit_count)
else:print("无解")
3) “猴子吃桃”问题。猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想吃时, 见只剩一个桃子了。编写程序求第一天猴子共摘了多少个桃子?(1534)
def calculate_total_peaches(days):peaches = 1for _ in range(days):peaches = (peaches + 1) * 2return peaches# 输入天数
days = 9# 求解第一天的桃子数量
total_peaches = calculate_total_peaches(days)
print("第一天猴子共摘了", total_peaches, "个桃子")
4)羊车门问题。有3扇关闭的门,一扇门后面停着汽车,其余门后是山羊,只有主持人知道每扇门后面是什么。参赛者可以选择一扇门,在开启它之前,主持人会开启另外一扇门,露出门后的山羊,然后允许参赛者更换自己的选择。靖问:参赛者更换选择后能否增加猜中汽车的机会?请用random库对这个随机事件进行实验,分别输出参赛者改变选择和坚持选择获胜的机率。(进行1000次随机实验,结果以百分制概率输出。近似33.3%,66.6%)
import randomdef simulate_car_goat_game():# 初始化三扇门,其中一扇有汽车,其余有山羊doors = ['car', 'goat', 'goat']# 参赛者随机选择一扇门player_choice = random.choice([0, 1, 2])# 主持人在未选中的门中选择一扇有山羊的门host_choice = random.choice([i for i in range(3) if i != player_choice and doors[i] == 'goat'])# 参赛者更换选择,选择另一扇未被选择过的门player_choice = random.choice([i for i in range(3) if i != player_choice and i != host_choice])# 判断最终参赛者的选择结果if doors[player_choice] == 'car':return 'switch_win' # 参赛者更换选择获胜else:return 'stick_win' # 参赛者坚持选择获胜def calculate_win_probabilities(num_simulations):switch_wins = 0stick_wins = 0for _ in range(num_simulations):result = simulate_car_goat_game()if result == 'switch_win':switch_wins += 1elif result == 'stick_win':stick_wins += 1switch_win_prob = (switch_wins / num_simulations) * 100stick_win_prob = (stick_wins / num_simulations) * 100print("参赛者更换选择获胜的机率:{:.1f}%".format(switch_win_prob))print("参赛者坚持选择获胜的机率:{:.1f}%".format(stick_win_prob))# 进行1000次随机实验
num_simulations = 1000
calculate_win_probabilities(num_simulations)
5)只能由1和它本身整除的整数被称为素数;若一个素数从左向右读与从右向左读是是相同的数,则该素数为回文素数。编程求解2~1000内的所有回文素数
def is_prime(num):if num < 2:return Falsefor i in range(2, int(num**0.5)+1):if num % i == 0:return Falsereturn Truedef is_palindrome(num):return str(num) == str(num)[::-1]palindrome_primes = []for num in range(2, 1001):if is_prime(num) and is_palindrome(num):palindrome_primes.append(num)print("2~1000内的所有回文素数:")
print(palindrome_primes)
相关文章:
【Python】基础练习题
1)从random库中选取相应的函数,用蒙特卡罗方法(统计实验方法)求解pi。 import randomdef estimate_pi(num_experiments):num_points_in_circle 0num_total_points 0for _ in range(num_experiments):x random.uniform(-1, 1)y…...
语雀故障与反思,顺便再领半年会员!
23 日语雀的故障相信大部分人都已经知道了,官方发布的公告是这样的: 10 月 23 日语雀出现重大服务故障,且持续 7 个多小时才完全恢复,给用户使用造成极大不便,对此我们深感抱歉。经过复盘,我们在这里向大家…...
PYTHON利用SQLAlchemy库高效操作关联的数据表
SQLAlchemy是一个Python库,用于处理关系型数据库的ORM(对象关系映射)和SQL表达式的生成。它提供了许多功能,包括: ORM(对象关系映射):允许将数据库表映射到Python对象,使…...
TypeScript中的类型工具
类型工具 是ts提供的一些内置的工具,用来更方便地处理各种类型,以及生成新的类型,可以直接使用。也就是对类型的操作。 1. 字符串类型工具 ts 内置了四个字符串类型工具,专门用来操作字符串类型。这四个工具类型都定义在 ts 自…...
File --JAVA
File --JAVA 构造方法 方法说明public File (String pathname)根据文件路径创建对象public File (String parent, String child)根据父路径名字字符串和子路径名字符串创建文件对象public File (String parent, String child)根据父路径对应文件对象和子路径名字符串创建文件…...
比较Excel中的两列目录编号是否一致
使用java代码比较excel中两列是否有包含关系,若有包含关系,核对编号是否一致。 excel数据样例如下: package com.itownet.hg;import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import j…...
pgsql 创建自增ID , 指定自增ID起始值
1. 创建序列: CREATE SEQUENCE table_name_id_seq; 2. 将序列与表的列关联: ALTER TABLE table_name ALTER COLUMN id SET DEFAULT nextval(table_name_id_seq);3. 设置序列的起始值、递增步长和最大值 // 将序列的起始值设置为 1 ALTER SEQUENCE ta…...
数据安全的重要性:如何解密[thekeyishere@cock.li].Elbie勒索病毒
尊敬的读者: 随着数字时代的来临,网络威胁也不断进化,而[datastorecyberfear.com].Elbie勒索病毒是其中的一个引人注目的例子。这个恶意软件采用高度精密的方法,将用户的数据文件锁定,并要求支付赎金以获取解锁密钥。…...
图像识别在自动驾驶汽车中的决策规划与控制策略研究。
图像识别在自动驾驶汽车中的决策规划与控制策略研究 随着自动驾驶技术的不断发展,图像识别已经成为实现自动驾驶的关键技术之一。在自动驾驶汽车中,图像识别技术主要用于环境感知、决策规划和控制系统。本文将重点探讨图像识别在自动驾驶汽车中的决策规…...
Spring MVC 的责任链模式
Spring MVC 框架使用了责任链模式来处理HTTP请求的流程。这个责任链模式主要包括多个拦截器(Interceptor)以及处理器(Handler),它们协同工作以完成请求的处理和响应。以下是Spring MVC的责任链模式的工作原理和流程图&…...
提升用户体验的关键步骤
快速搭建功能齐全的户外帐篷用具小程序,是现今越来越流行的一种商业模式。通过将线下的户外用品店转移到线上,不仅可以减少人力成本和租金等固定支出,还可以为用户提供更便捷的购物体验。因此,学习如何快速搭建一个功能齐全的户外…...
本地模拟,服务器下载文件
题目要求: 编写客户端程序和服务器端程序客户端可以输入一个音乐 文件名,比如 美丽中国,服务端 收到音乐后,可以给客户端返回这个音乐文件,如果服务器没有这个文件,返回一个默认的音乐即可客户端收到文件后…...
如何防止Shopee账户关联
在当今数字时代,隐私和安全问题变得日益重要。作为一家受欢迎的在线购物平台,Shopee卖家也面临着多账号关联的风险。本文将如何具保护Shopee免受关联。 一、MuLogin防关联指纹浏览器简介 MuLogin是一款专为隐私保护而设计的指纹浏览器,旨在保…...
Java 入门指南:使用 Docker 创建容器化 Spring Boot 应用程序
文章目录 步骤 1: 准备工作步骤 2: 克隆 Spring Boot 应用程序步骤 3: 创建 Dockerfile步骤 4: 构建 Docker 映像步骤 5: 运行容器步骤 6: 链接到本地数据库步骤 7: 使用 Docker Compose 运行多个容器步骤 8: 设置 CI/CD 管道结论 🎈个人主页:程序员 小侯…...
Leetcode 542. 01 矩阵
542. 01 矩阵-中等 问题描述 给定一个由 0 和 1 组成的矩阵 mat ,请输出一个大小相同的矩阵,其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 示例 1: 输入:mat [[0,0,0],[0,1,0],[0…...
分享一下微信小程序抽奖链接怎么做
标题:微信小程序抽奖链接制作全攻略,轻松玩转营销抽奖活动 一、引言 在当今的数字化时代,抽奖活动已经成为一种高效的市场营销策略,而微信小程序作为一个功能强大的移动端平台,为企业和个人提供了制作抽奖链接的便捷…...
MathType2024破解版激活序列号
MathType序列号是一款针对该软件而制作的激活工具,大家都知道这款软件在官方是需要花钱购买的,不然得话就只能试用。有很多功能都无法正常使用!而本序列号却可以完美的解决这一难题,因为它可以破解并激活“MathType”,…...
简述对 Spring MVC 的理解
SpringMVC 是一种基于 Java 语言开发,实现了 Web MVC 设计模式,请求驱动类型的轻量级 Web 框架。 Spring MVC组件 MVC 架构模式的思想,通过把 Model,View,Controller 分离,将 Web 层进行职责解耦࿰…...
Redis——哨兵模式与Zookeeper选举的异同点
摘要 当我们使用主从复制出现的问题:手动故障转移:写能力和存储能力受限:主从复制 -master 宕机故障处理。 主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干…...
基于 Center 的 3D 目标检测和跟踪
论文地址:https://arxiv.org/abs/2006.11275 论文代码:https://github.com/tianweiy/CenterPoint 3D 目标通常表示为点云中的 3D Boxes。 CenterPoint 在第一阶段,使用关键点检测器检测对象的中心,然后回归到其他属性࿰…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖
在前面的练习中,每个页面需要使用ref,onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入,需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
TRS收益互换:跨境资本流动的金融创新工具与系统化解决方案
一、TRS收益互换的本质与业务逻辑 (一)概念解析 TRS(Total Return Swap)收益互换是一种金融衍生工具,指交易双方约定在未来一定期限内,基于特定资产或指数的表现进行现金流交换的协议。其核心特征包括&am…...
Spring Boot面试题精选汇总
🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Spring Boot面试题精选汇总⚙️ **一、核心概…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
LLMs 系列实操科普(1)
写在前面: 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容,原视频时长 ~130 分钟,以实操演示主流的一些 LLMs 的使用,由于涉及到实操,实际上并不适合以文字整理,但还是决定尽量整理一份笔…...
uniapp 字符包含的相关方法
在uniapp中,如果你想检查一个字符串是否包含另一个子字符串,你可以使用JavaScript中的includes()方法或者indexOf()方法。这两种方法都可以达到目的,但它们在处理方式和返回值上有所不同。 使用includes()方法 includes()方法用于判断一个字…...
代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...
「全栈技术解析」推客小程序系统开发:从架构设计到裂变增长的完整解决方案
在移动互联网营销竞争白热化的当下,推客小程序系统凭借其裂变传播、精准营销等特性,成为企业抢占市场的利器。本文将深度解析推客小程序系统开发的核心技术与实现路径,助力开发者打造具有市场竞争力的营销工具。 一、系统核心功能架构&…...
