【教学类-06-12】20231126 (二)三位数 如何让加减乘除题目从小到大排序(以0-110之间加法为例,做正序排列用)

news2024/11/27 12:46:28

结果展示

背景需求:

二位数:去0

三位数(需要排除很多0)

解决思路

一、把数字改成三位数

二、对数组内的题目,8种可能性进行去“0”处理

1、十位数(去百位数0)+十位数(去百位数0)——(12+13)

2、个位数(去百位数0、去十位数0)+个位数(去百位数0、去十位数0)——(3+5)

3、十位数(去百位数0)+个位数(去百位数0、十位数0)——(12+1)

4、个位数(去百位数0、十位数0)+十位数去(百位数0)——(3+16)

5、百位数+个位数(去百位数0、十位数0)——(101+1)

6、个位数(去百位数0、十位数0)+百位数——(2+105)

7、百位数+十位数(去百位数0)——(100+10)

8、十位数(去百位数0)+百位数——(10+110)

按照原数组的位置排序()

代码展示:


'''
3位数去0 所有加法,从小到大排序(0+1,0+2,而不是0+1,0+10)
作者:阿夏
时间:2023年11月26日 12:00
'''
n=int(input('X以内加法(110)\n'))

# 5以内“+”题共21题
P=[]
for a in range(0,n):     # 起始数字就是10,就是排除掉0-10之间的数字
    for b in range(0,n):      # 起始数字为0,
        if 0<=a+b<n+1:         
            # print('{}+{}='.format(a,b))
            P.append('{}+{}='.format('%03d'%a,'%03d'%b))
        if 0<=b+a<n+1:       
            # print('{}+{}='.format(a,b))
            P.append('{}+{}='.format('%03d'%b,'%03d'%a))
        else:
            pass

P =list(set(P))    # 排除重复,但随机打乱
P.sort()    # 小到大排序
print(P)
# for i in P :
#     print(i)

    # ['0+0=', '0+1=', '0+2=', '0+3=', '0+4=', '0+5=', '1+0=', '1+1=', '1+2=', '1+3=', '1+4=', '2+0=', '2+1=', '2+2=', '2+3=', '3+0=', '3+1=', '3+2=', '4+0=', '4+1=', '5+0=']
    # “+”题生成都是按小到大排列的,不需要sort排序
print('0-100之间的加法题共有  {}  题'.format(len(P)) )   # 21

P2=[]
for i in P:    # 每个内容是000+000=,一共6个字符
   
       # 十+十、个+个、

    if i[0]=='0'and i[1]!='0' and i[4] =='0'and i[5]!='0' :   # 第1个数字的第1个是0 第2个数字的第1个是0
        P2.append(i[1:4]+i[5:])
        print(i[1:4]+i[5:])      # 全部是XX+XX= 十位数+十位数

    if i[0]=='0'and i[1]=='0' and i[4] =='0'and i[5]=='0' :   # 第1个数字的第1\2个是0 第2个数字的第1\2个是0
        P2.append(i[2:4]+i[6:])
        print(i[2:4]+i[6:])   # 全部是X+X= 个位数+个位数

        # 十+个、个+十

    if i[0]=='0'and i[1]!='0' and i[4] =='0'and i[5]=='0' :   # 第1个数字的第1个是0 第2个数字的第1\2个是0
        P2.append(i[1:4]+i[6:])
        print(i[1:4]+i[6:])   # 全部是XX+X= 十位数+个位数

    if i[0]=='0'and i[1]=='0' and i[4] =='0'and i[5]!='0' :   # 第1个数字的第1\2个是0 第2个数字的第1\2个是0
        P2.append(i[2:4]+i[5:])
        print(i[2:4]+i[5:])   # 全部是X+XX= 个位数+十位数

        # 百+个、个+百

    if i[0]!='0'  and i[4] =='0'and i[5]=='0' :
        P2.append(i[0:4]+i[6:])
        print(i[0:4]+i[6:]) # 全部是XXX+X= 百位数+个位数

    if i[0]=='0' and i[1] =='0'and i[4]!='0':
        P2.append(i[2:])
        print(i[2:]) # 全部是X+XXX= 个位数+百位数
    

        # 百+十,十+百
    if i[0]!='0'  and i[4] =='0'and  i[5] !='0':
        P2.append(i[0:4]+i[5:])
        print(i[0:4]+i[5:]) # 全部是XXX+XX= 百位数+十位数
      
    if i[0]=='0' and i[1]!='0' and i[4] !='0':
        P2.append(i[1:])
        print(i[1:]) # 全部是XX+XXX= 十位数+百位数


    
    # if i[0]!='0':   # 第1个数字的第1\2个是0 第2个数字的第1\2个是0
    #     P2.append(i[0:])
    #     print(i[2:4]+i[5:])   # 全部是X+XX= 个位数+十位数
       
print(P2)
print('0-110之间的加法题(正序排序)共有  {}  题'.format(len(P2)) )   # 21

for e in P2:
    print(e)

存在问题:

目前看,还是必须用'%03d'%i,把数学题从小到大排序,

然后想办法删掉百位数、十位数前面的0。

因为SORT排序注定是按数字小到大排序,没有智能到可以判断0+0=、0+10=,中间还是9题,

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

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

相关文章

百家号MCN是什么?百家号MCN禁止拉子账号怎么解决?

在当今数字化时代&#xff0c;社交媒体平台已成为人们获取信息、分享观点和创作内容的重要渠道之一。百家号作为百度旗下的自媒体平台&#xff0c;吸引了众多创作者和机构入驻&#xff0c;以分享优质内容并获得收益。在百家号上&#xff0c;MCN矩阵扮演着重要的角色&#xff0c…

LeetCode Hot100 543.二叉树的直径

题目&#xff1a; 给你一棵二叉树的根节点&#xff0c;返回该树的 直径 。 二叉树的 直径 是指树中任意两个节点之间最长路径的 长度 。这条路径可能经过也可能不经过根节点 root 。 两节点之间路径的 长度 由它们之间边数表示。 方法&#xff1a;灵神 代码&#xff1a; ​…

哈希思想的应用

目录 1.位图 位图的实现 题目变形一 题目变形二 题目变形三 总结&#xff1a; 2.布隆过滤器 概念 布隆过滤器的实现 3.哈希切割的思想 1.位图 哈希表和位图是数据结构中常用的两种技术。哈希表是一种数据结构&#xff0c;通过哈希函数把数据和位置进行映射&#xff0c…

Alfred v5.1.4(mac快速启动)

Mac效率办公软件哪个好&#xff1f;Alfred是一款Mac电脑上的快速启动和工作流自动化工具&#xff0c;它可以帮助用户快速访问文件、应用程序、web搜索和系统工具&#xff0c;提高工作效率。以下是Alfred的特点&#xff1a; 快速启动&#xff1a;用户可以通过Alfred快速启动应用…

【Linux】bash 终端指令

进程 $ ps aux | grep pwd work 63317 0.0 0.0 51192 612 pts/9 S 14:22 0:00 grep /home/work/search/1000000.dyenv-user-diaoyan-baiseCliPlus-baisePlus-195522.diaoyan.yq/ala-ac/output_root端口 查看本机端口开放情况 $ netstat -tln | grep 3200 tcp…

Arduino驱动温湿度气压光照传感器模块

目录 一、简介二、原理图三、使用方法四、实验现象 一、简介 点击图片购买 HTU21D特性&#xff1a;HTU21D基于法国Humirel公司高性能的湿度感应元件制成&#xff0c;传感器输出标准IIC格式。同时具有很高的温度精度和湿度精度。HTU21专为低功耗小体积应用设计&#xff0c;具有很…

3. 迷宫问题

题目 迷宫有一个入口&#xff0c;一个出口。一个人从入口走进迷宫&#xff0c;目标是找到出口。阴影部分和迷宫的外框为墙&#xff0c;每一步走一格&#xff0c;每格有四个可走的方向&#xff0c;探索顺序为地图方向&#xff1a;南&#xff08;下&#xff09;、东&#xff08;右…

【Spring整合MyBatis】Spring整合MyBatis的具体方法

在前面写的博客中&#xff0c;介绍了MyBatis通过配置方式和通过注解方式写的方法&#xff1a; 【Spring集成MyBatis】MyBatis诞生及代码快速入门&#xff08;非注解开发&#xff09;【Spring集成MyBatis】MyBatis的Dao层实现&#xff08;基于配置&#xff0c;非注解开发&#…

【libGDX】立方体手动旋转

1 前言 本文主要介绍使用 libGDX 绘制立方体&#xff0c;并实现手动触摸事件控制立方体旋转。 为方便控制触摸旋转&#xff0c;并提高渲染性能&#xff0c;我们通过改变相机的位置和姿态实现立方体旋转效果。 读者如果对 libGDX 不太熟悉&#xff0c;请回顾以下内容。 使用Me…

Re55:读论文 Entities as Experts: Sparse Memory Access with Entity Supervision

诸神缄默不语-个人CSDN博文目录 诸神缄默不语的论文阅读笔记和分类 论文名称&#xff1a;Entities as Experts: Sparse Memory Access with Entity Supervision 模型名称&#xff1a;Entities as Experts (EaE) ArXiv网址&#xff1a;https://arxiv.org/abs/2004.07202 本文…

轻松实现文件按数量平均分类,高效整理并自动新建文件夹保存“

你是否曾经因为文件数量过多&#xff0c;整理起来繁琐而感到烦恼&#xff1f;是否曾经为了新建文件夹而手动一个一个进行创建&#xff0c;费时又费力&#xff1f;现在&#xff0c;我们的智能文件管理工具将为你解决这些问题&#xff01; 首先第一步&#xff0c;我们要进入文件…

超详细csapp-linklab之第一阶段“输出学号”实验报告

该实验的主题是“链接”。 准备工具 虚拟机&#xff0c;Ubuntu32位&#xff0c;hexedit&#xff0c;main.o&#xff0c;phase1.o&#xff0c;该实验的C代码框架如下 // main.c void (*phase)(); /*初始化为0*/int main( int argc, const char* argv[] ) {if ( phase )(*ph…

小程序项目:springboot+vue基本微信小程序的宠物领养系统

项目介绍 当今科技发展迅速&#xff0c;交通环境也变得越来越复杂。人们的出行方式变得多元化&#xff0c;这给视障人士带来了一定的困扰。而导盲犬可以帮助视障人士外出行走&#xff0c;提高他们的生活质量。在我国&#xff0c;导盲犬的数量远远少于视障人士的数量。由于导盲…

FreeRTOS深入教程(中断管理)

文章目录 前言一、为什么要为中断设计一套API二、两套函数区别对比三、两类中断四、FreeRTOS中SYSTICK和PendSV中断的作用总结 前言 本篇文章来分析FreeRTOS中的中断&#xff0c;中断在FreeRTOS中也是非常重要的&#xff0c;那么这篇文章将带大家来学习一下FreeRTOS中的中断处…

文件搜索工具HoudahSpot mac中文版特点

HoudahSpot mac是一款文件搜索工具&#xff0c;它可以帮助用户快速准确地找到文件和文件夹&#xff0c;支持高级搜索和过滤&#xff0c;同时提供了多种视图和操作选项&#xff0c;方便用户进行文件管理和整理。 HoudahSpot mac软件特点 高级搜索和过滤功能&#xff1a;软件支持…

[pyqt5]pyqt5设置窗口背景图片后上面所有图片都会变成和背景图片一样

pyqt5的控件所有都是集成widget&#xff0c;窗体设置背景图片后控件背景也会跟着改变&#xff0c;此时有2个办法。第一个办法显然我们可以换成其他方式设置窗口背景图片&#xff0c;而不是使用styleSheet样式表&#xff0c;网上有很多其他方法。还有个办法就是仍然用styleSheet…

vsVode C++开发远程虚拟机工程配置

在使用VS Code进行C/C的开发过程中&#xff0c;有三个至关重要的配置文件&#xff0c;分别是 tasks.json, launch.json 和 c_cpp_properties.json 1. tasks.json tasks.json 是在 vscode 中辅助程序编译的模块&#xff0c;可以代你执行类似于在命令行输入 “gcc hello.c -o h…

在mysql存储过程中间部分,使用游标遍历动态结果集(游标动态传参使用)

mysql游标动态传参实现&#xff08;动态游标&#xff09; 1.问题2.需求描述3.实现3.1.使用3.2.代码&#xff08;直接看这都可以&#xff09; 1.问题 众所周知&#xff0c;mysql存储过程功能是没有oracle的包功能强大的&#xff0c;但是在去O的趋势下&#xff0c;mysql存储过程的…

17. Python 数据库操作之MySQL和SQLite实例

目录 1. 简介2. 使用PyMySQL2. 使用SQLite 1. 简介 数据库种类繁多&#xff0c;每种数据库的对外接口实现各不相同&#xff0c;为了方便对数据库进行统一的操作&#xff0c;大部分编程语言都提供了标准化的数据库接口&#xff0c;用户不需要了解每种数据的接口实现细节&#x…

2018年5月23日 Go生态洞察:更新Go行为准则

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…