python实现模拟数字的魔术游戏
作者:炼钢工 发布时间:2021-03-21 17:06:39
标签:python,模拟数字,魔术
游戏介绍
在游戏中,魔术师要每位观众心里想一个三位数abc (a、b、c分别是百位、十位和个位数字),然后魔术师让观众心中记下acb、bac、bca、cab、cba五个数以及这5个数的和值。只要观众说出这个和是多少,则魔术师一定能猜出观众心里想的原数abc是多少。例如,观众甲说他计算的和值是1999,则魔术师立即说出他想的数是443,而观众乙说他计算的和值是1998,则魔术师说:“你算错了!”。
【输入】
输入一个正整数。
【输出】
输出对应的三位数。如果对应的三位数不存在,则输出:“Thesum you calculated is wrong!”。
【输入示例】
1998
【输出示例】
The sum you calculated is wrong!
解题思路
简单粗暴的进行循环赋值比较
涉及的知识点
python基础语法
字符串类型和数字类型的相互转换
range()内置函数的使用
for循环的嵌套使用
if-else结构语句的使用
主要代码
def magic_numbers():
'''
魔术数字,根据数据总和推算原始数据
核心思想:依次将0-9赋值给abc,进行循环比较后得出结果
'''
# 用户算出的数字总和,需要转换数据类型
user_input = int(input('请输入数字的总和:\n'))
# 默认用户失败时的输出结果
result = 'The sum you calculated is wrong!'
#3层嵌套for循环依次对abc进行赋值
for a in range(10):
for b in range(10):
for c in range(10):
# 将数字装换为字符串进行排列组合和拼接
a = str(a)
b = str(b)
c = str(c)
# 要将拼接好的字符串组合重新转换为数字类型 即int
acb = int(a+c+b)
bac = int(b+a+c)
bca = int(b+c+a)
cab = int(c+a+b)
cba = int(c+b+a)
# 计算出每种排列组合后的数字的总和
sum = acb + bac + bca + cab + cba
# 用排列组合的总和与用户给出的总和进行比较,相等则正确,并排列出abc的值,输出
if sum == user_input:
abc = int(a+b+c)
# 将默认的失败值置空,备后面判断使用
result = ''
print('The original number is : ',abc)
# 循环完成后判断默认的失败值是否改变,如果没有改变则直接输出,表示用户计算错误
if result != '':
print(result)
来源:https://blog.csdn.net/huashao888/article/details/121724607
0
投稿
猜你喜欢
- 内容摘要:图片切换效果在网页制作中经常被使用,好的切换效果不仅增加了网站的实用行也提升了网站的趣味性。而图片切换方法有的使用flash来实现
- 今天新能测试组的同事找我看一个奇怪的现象。一个tomcat应用,里面只有一个单纯的jsp页面,而且这个jsp页面没有任何java代码(想用这
- 记录了Linux 安装python3.7.0的详细过程,供大家参考,具体内容如下我这里使用的时centos7-mini,centos系统本身
- 如何使用GPU而不是CPU首先查看设备from tensorflow.python.client import device_libprin
- 在进行Web的交互设计中,颜色信息的传达也是不可或缺的一部分。我们常会发现许多“灰色”的应用,他们的出现总是不动声色而又恰如其分,维持了整个
- python 2.6编写,自己瞎写的,备用''' Export and Import ElasticSe
- 有向无环图拓扑排序是针对有向无环图(DAG, Directed Acyclic Graph)的具有以下性质:如果这个图不是 DAG,那么它是
- 由于特定需求,最近实验室需要远程连接外地的sql server 2000服务器,最开始怎么连也连不上,出现了很多问题,但是在今天上午,借用实
- Francesc (@francesc) 是 Go 核心团队的一员, 是提倡 Google Cloud 平台的开发者. 他是一个编程语言的爱
- 分析我们将添加、插入、删除定义为:添加 : 在字符串的后面或者前面添加字符或者字符串插入 : 在字符串之间插入特定字符在Python中,字符
- 使用场景公司内部使用Django作为后端服务框架的Web服务,当需要使用公司内部搭建的Ldap 或者 Windows 的AD服务器作为Web
- Python遍历numpy数组下面是示例代码:import numpy as npnum = np.zeros([2, 3])[rows,
- 原文:Unobtrusive Ajax。今天才看见的一个Presentation,是Jesse Skinner在06年10月发表的。虽然题目
- 前言相信大家都玩过斗地主,规则就不再介绍了。直接上一张朋友圈看到的残局图:这道题我刚看到时,曾尝试用手工来破解,每次都以为找到了农民的必胜策
- swagger介绍Swagger本质上是一种用于描述使用JSON表示的RESTful API的接口描述语言。Swagger与一组开源软件工具
- 在PyTorch中,torch.Tensor类是存储和变换数据的重要工具,相比于Numpy,Tensor提供GPU计算和自动求梯度等更多功能
- 大家可能都熟悉.zip格式的文件。它可以把多个文件,压缩成一个文件。这在网络上传输时很有用,而且节省硬盘空间。接下来,我们使用Python实
- CSS制作滑动折叠的文字效果,可以用于二级导航菜单的制作,不错的下拉菜单。<!DOCTYPE html PUBLIC "-/
- 环境准备前提已经安装好python、pycharm,配置了对应的环境变量。1、安装selenium模块文件–>设置
- SocketServer创建一个网络服务框架。它定义了类来处理TCP,UDP, UNIX streams 和UNIX datagrams上的