简单顺序计算器

news2024/12/22 16:17:56

C语言题目:简单顺序计算器,用python代码解。


(笔记模板由python脚本于2024年09月27日 22:58:16创建,本篇笔记适合喜欢python的coder翻阅)


【学习的细节是欢悦的历程】

  • Python 官网:https://www.python.org/

  • Free:大咖免费“圣经”教程《 python 完全自学教程》,不仅仅是基础那么简单……
    地址:https://lqpybook.readthedocs.io/


  自学并不是什么神秘的东西,一个人一辈子自学的时间总是比在学校学习的时间长,没有老师的时候总是比有老师的时候多。
            —— 华罗庚


  • My CSDN主页、My HOT博、My Python 学习个人备忘录
  • 好文力荐、 老齐教室
等风来,不如追风去……


C语言编程题目
简单顺序计算器
(用python代码写解)


本文质量分:

96 96 96

本文地址: https://blog.csdn.net/m0_57158496/

CSDN质量分查询入口:http://www.csdn.net/qc


目 录

  • ◆ 简单顺序计算器
    • 1、题目描述
    • 1、题目描述
      • 1.1 题目截屏图片
      • 1.2 题目文本
    • 2、程序说明
    • 3、程序效果
    • 4、代码解读
    • 5、四个split_part拆分算式代码形式
    • 6、完整源码(Python)


◆ 简单顺序计算器


1、题目描述


1、题目描述


1.1 题目截屏图片

  • 题目描述截屏图片
    在这里插入图片描述

题目来源于博主MoonTinan文章“简单计算器”


1.2 题目文本

C语言题目:

模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。

输入格式:
输入在一行中给出一个四则运算算式,没有空格,且至少有一个操作数。遇等号”=”说明输入结 束。

输出格式:
在一行中输出算式的运算结果,或者如果除法分母为0或有非法运算符,则输出错误信息“ERROR”。

输入样例:
1+2*10-10/2=
输出样例:
10
代码长度限制:
16 KB

时间限制:
400 ms

内存限制:
64 MB

注意: 除0问题,逻辑或逻辑与问题,最后一个操作数的保存问题(使读入’='时也进行记录储存,并通过break跳出而不通过外部设定循环条件跳出),for循环条件的正序与逆序 。



回页目录


2、程序说明


程序名称:简单顺序整数计算器

程序功能:

  本程序模拟一个简单的计算器,能够对整数进行加、减、乘、除运算。计算器的特点是运算符优先级相同,按照从左到右的顺序进行计算。计算结果可以是整数或浮点数,如果结果不是整数,则保留两位小数。

程序文件:int-simple-calculator.py

主要函数说明:

  1. split_part(expr: str) -> list

    • 功能:将输入的算式字符串拆分成数值和运算符的列表。
    • 输入:合法的算式字符串 expr
    • 输出:包含数值和运算符的列表。
  2. validate_expression(expr: str) -> bool

    • 功能:验证输入的算式字符串是否合法。
    • 输入:算式字符串 expr
    • 输出:如果算式合法,返回 True;否则抛出 ValueError 异常。
  3. calculate(expr:str) -> float

    • 功能:计算算式的结果。
    • 输入:合法的算式字符串 expr
    • 输出:计算结果,类型为浮点数。
  4. calculator(expr:str) -> int|float

    • 功能:调用 calculate 函数计算结果,并根据结果类型返回整数或保留两位小数的浮点数。
    • 输入:合法的算式字符串 expr
    • 输出:计算结果,类型为整数或浮点数。
  5. main() -> None

    • 功能:程序的入口函数,负责接收用户输入的算式,调用计算器进行计算,并输出结果。
    • 输出:无返回值,直接打印计算结果。

程序流程:

  1. 用户输入算式。
  2. 程序清屏并显示输入提示。
  3. 程序接收用户输入的算式,并进行校验。
  4. 如果算式合法,程序进行计算并输出结果。
  5. 如果算式不合法或计算过程中出现错误(如除以零),程序将抛出异常并提示用户。

注意事项:

  • 输入的算式必须是合法的,即只能包含整数和加、减、乘、除运算符,且运算符之间不能有空格。
  • 程序不支持括号,所有运算符的优先级相同,按照从左到右的顺序计算。
  • 计算结果如果为非整数,将保留两位小数。



回页目录


3、程序效果


  • 截屏图片
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述



回页目录


4、代码解读


  1. 脚本声明

    • #!/usr/bin/env python3:这是一个 Shebang 行,告诉系统使用哪个解释器来执行这个脚本。
  2. 编码声明

    • # coding: utf-8:这行声明脚本使用 UTF-8 编码,允许在代码中使用非ASCII字符。
  3. 模块导入

    • import re:导入正则表达式模块,用于字符串匹配。
  4. 函数定义

    • splitpart 函数:

      • 功能:将输入的算术表达式字符串分割成数值和运算符的列表。
      • 参数:expr(字符串类型),表示算术表达式。
      • 返回值:一个列表,包含表达式中的数值和运算符。
    • validate_expression 函数:

      • 功能:验证输入的算术表达式是否符合预期的格式。
      • 参数:expr(字符串类型),表示算术表达式。
      • 异常:如果表达式格式不正确,抛出 ValueError
    • calculate 函数:

      • 功能:计算并返回算术表达式的结果。
      • 参数:expr(字符串类型),表示算术表达式。
      • 处理流程:首先验证表达式,然后分割表达式,接着从左到右计算表达式的值。
    • calculator 函数:

      • 功能:调用 calculate 函数计算结果,并根据结果类型返回整数或保留两位小数的浮点数。
      • 参数:expr(字符串类型),表示算术表达式。
      • 返回值:计算结果,可能是整数或浮点数。
  5. 主程序逻辑

    • main 函数:

      • 功能:程序的入口点,负责与用户交互,接收输入并显示计算结果。
      • 流程:清屏,提示用户输入,计算并打印结果。
    • 异常处理:

      • 如果在执行 main 函数过程中出现 ValueError 异常,捕获该异常并打印错误信息。
  6. 程序入口

    • if __name__ == '__main__'::Python 中的常见约定,用于判断当前脚本是否作为主程序运行。
    • 如果是主程序,调用 main 函数。

  这个代码解读更侧重于代码的结构和逻辑流程,而不是程序的功能描述。它解释了每个函数的作用、参数、返回值以及函数之间的调用关系,同时也描述了主程序如何运行和异常处理机制。



回页目录


5、四个split_part拆分算式代码形式


一、

# str.splace
def split_part(expr:str) -> list:
    ''' 拆分算式成数值和运算符 '''
    return expr.replace('+',  ' + ').replace('-',  ' - ').replace('*',  ' * ').replace('/',  ' / ').split()

ai点评
使用 str.replace 方法:

点评:

  • 由于输入是经过校验的合法算式,这个方法在这种情况下是有效的,因为它假设输入不会包含额外的空格或非法字符。
  • 它简单直接,易于理解和实现。

批判:

  • 即使输入是经过校验的,这种方法仍然依赖于空格来分割字符串,这在其他情况下可能不是一个好习惯。
  • 需要多次调用 replace 方法,尽管在这个特定场景下性能影响不大。

二、

# 手撕str.replace 
def split_part(expr:str) -> list:
    ''' 拆分算式成数值和运算符 '''
    expr = list(expr)

    for i in range(len(expr)):
        if expr[i] == '+':
            expr[i] = ' + '
        elif expr[i] == '-':
            expr[i] = ' - '
        elif expr[i] == '*':
            expr[i] = ' * '
        elif expr[i] == '/':
            expr[i] = ' / '

    return ''.join(expr).split()

ai点评
手动遍历字符串并替换:

点评:

  • str.replace 方法类似,由于输入是经过校验的,这个方法也可以正常工作。
  • 它避免了使用多次 replace 方法,可能在某些情况下性能稍好。

批判:

  • 与第一个方法一样,它依赖于在运算符周围添加空格来分割字符串。
  • 遍历字符串并修改列表,虽然避免了多次 replace,但性能提升有限。

三、

# 遍历字符串
def split_part(expr:str) -> list:
    ''' 拆分算式成数值和运算符 '''

    parts = [] # 算式分拆列表
    number = []
    for char in expr:
        if char.isdigit():
            number.append(char)
        else:
            if number:
                parts.append(''.join(number))
                number = []
            parts.append(char)
        
    parts.append(''.join(number)) # 收集最后一个数字
    
    return parts

ai点评
遍历字符串并收集数字:

点评:

  • 这个方法不依赖于空格来分割字符串,而是直接处理数字和运算符,这使得它在处理算式时更为健壮。
  • 它能够正确处理经过校验的合法算式。

批判:

  • 对于经过校验的输入,这种方法可能比使用正则表达式更为复杂,尽管它提供了额外的健壮性。
  • 性能上可能不如直接使用字符串操作。

四、

# re正则匹配
def split_part(expr: str) -> list:
    ''' 拆分算式成数值和运算符 '''
    pattern = r'(?:^[+-]?\d+)|(?:[*/+-])|(?:\d+)' # 正则表达式,匹配数字(包括正负号)和运算符
    return re.findall(pattern, expr) # 使用 re.findall 查找所有匹配项

ai点评
使用 re 正则表达式:

点评:

  • 正则表达式方法提供了非常强大的模式匹配能力,可以简洁地处理复杂的字符串分割问题。
  • 它能够正确处理经过校验的合法算式,且不依赖于空格。

批判:

  • 对于经过校验的简单算式,使用正则表达式可能有些“大材小用”,但在处理更复杂的算式时,它的优势会非常明显。
  • 正则表达式可能会对性能产生一些影响,但在这个场景下,由于算式简单,这种影响可以忽略不计。

ai总结

  考虑到你的输入是经过校验的合法算式,第一个和第二个方法在这种情况下都是可行的,并且简单直观。第三个方法提供了额外的健壮性,但可能稍微复杂一些。第四个方法(正则表达式)是最灵活和强大的,尽管对于这个特定问题可能显得有些“过度杀伤”。

  在这种情况下,选择哪个方法取决于你的偏好和未来可能的需求。如果你预期算式可能会变得更复杂,或者你可能需要在其他场景中复用分割逻辑,那么使用正则表达式可能是更好的选择。如果算式始终保持简单,并且没有进一步的需求,那么第一个或第二个方法可能就足够了。



回页目录


6、完整源码(Python)

(源码较长,点此跳过源码)

#!/sur/bin/nve python3
# coding: utf-8 
import re


'''

C语言题目:

模拟简单运算器的工作。
假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。


filename: int-simple-calculator.py

'''


def split_part(expr: str) -> list:
    ''' 拆分算式成数值和运算符 '''
    pattern = r'(?:^[+-]?\d+)|(?:[*/+-])|(?:\d+)' # 正则表达式,匹配数字(包括正负号)和运算符
    return re.findall(pattern, expr) # 使用 re.findall 查找所有匹配项


def validate_expression(expr: str) -> bool:
    pattern = r'^[+-]?\d+(?:[+\-*/]\d+)*$' # 正则表达式:开头可以有+、-运算符一个,后接+、-、*、/运算符一个和数字组合,这样的组合可以有零个或者多个。由此通配表达式,可以涵盖本题目描述的“计算器”的所有合法表达式。

    if re.fullmatch(pattern, expr):
        return True
    else:
        raise ValueError(f"\n{'':-^42}\n\n{' 算式错误! ':^37}\n\n{'':-^42}")


def calculate(expr:str) -> float:
    ''' 算式计算 '''
    if validate_expression(expr): # 算式校验
        expr = split_part(expr) # 算式拆分

    # 第一个整数处理
    if expr[0].isdigit():
        result = int(expr[0])
        expr = expr[1:]
    else:
        result = -1*int(expe[1]) if expr[0]=='-' else int(expr[1])
        expr = expr[2:]

    # 顺序计算
    n = len(expr) - 1
    k = 0
    while k < n:
        if expr[k] == '+':
            result += int(expr[k+1])
        elif expr[k] == '-':
            result -= int(expr[k+1])
        elif expr[k] == '*':
            result *= int(expr[k+1])
        elif expr[k] == '/':
            if int(expr[k+1])==0:
                raise ValueError(f"\n{'':-^42}\n\n{' 零除错误! ':^37}\n\n{'':-^42}")
            else:
                result /= int(expr[k+1])
        
        k += 2

    return result


def calculate(expr:str) -> float:
    ''' 算式计算 '''
    if validate_expression(expr): # 算式校验
        expr = split_part(expr) # 算式拆分

    # 第一个整数处理
    if expr[0].isdigit():
        result = int(expr[0])
        expr = expr[1:]
    else:
        result = -1*int(expe[1]) if expr[0]=='-' else int(expr[1])
        expr = expr[2:]

    # 顺序计算
    expr = [int(part) if part.isdigit() else part for part in expr] # int整数
    n = len(expr) - 1
    k = 0
    while k < n:
        if expr[k] == '+':
            result += expr[k+1]
        elif expr[k] == '-':
            result -= expr[k+1]
        elif expr[k] == '*':
            result *= expr[k+1]
        elif expr[k] == '/':
            if expr[k+1]==0:
                raise ValueError(f"\n{'':-^42}\n\n{' 零除错误! ':^37}\n\n{'':-^42}")
            else:
                result /= expr[k+1]
        
        k += 2

    return result


def calculator(expr:str) -> int|float:
    result = calculate(expr)
    return round(result, 0) if round(result, 0) == result else round(result, 2) # 计算结果非整型,保留两个小数位


def main() -> None:
    clear = '\033[2J' #清屏字符串,windows系统老版本不支持
    expression = input(f"{clear}{' 简单顺序整数“计算器” ':=^33}\n{'(+、-、*、/顺序计算)':^36}\n\n输入算式:").strip()
    result = calculator(expression)
    print(f"\n\n{'结果:':>7}{result}\n\n{'':=^42}")


if __name__ == '__main__':
    try:
        main()
    except ValueError as e:
        print(e)



回页首


上一篇:  re轻松拆分四则运算expression(与ai对抵聊“算式匹配”,发现^从头匹配、(?:xxxx)非捕获组、| “交替”运算符联合使用的妙处)
下一篇: 



我的HOT博:

  本次共计收集 311 篇博文笔记信息,总阅读量43.82w。数据于2024年03月22日 00:50:22完成采集,用时6分2.71秒。阅读量不小于6.00k的有 7 7 7篇。

  • 001
    标题:让QQ群昵称色变的神奇代码
    (浏览阅读 5.9w )
    地址:https://blog.csdn.net/m0_57158496/article/details/122566500
    点赞:25 收藏:86 评论:17
    摘要:让QQ昵称色变的神奇代码。
    首发:2022-01-18 19:15:08
    最后编辑:2022-01-20 07:56:47

  • 002
    标题:Python列表(list)反序(降序)的7种实现方式
    (浏览阅读 1.1w )
    地址:https://blog.csdn.net/m0_57158496/article/details/128271700
    点赞:8 收藏:35 评论:8
    摘要:Python列表(list)反序(降序)的实现方式:原址反序,list.reverse()、list.sort();遍历,全数组遍历、1/2数组遍历;新生成列表,resersed()、sorted()、负步长切片[::-1]。
    首发:2022-12-11 23:54:15
    最后编辑:2023-03-20 18:13:55

  • 003
    标题:pandas 数据类型之 DataFrame
    (浏览阅读 9.7k )
    地址:https://blog.csdn.net/m0_57158496/article/details/124525814
    点赞:7 收藏:36 
    摘要:pandas 数据类型之 DataFrame_panda dataframe。
    首发:2022-05-01 13:20:17
    最后编辑:2022-05-08 08:46:13

  • 004
    标题:个人信息提取(字符串)
    (浏览阅读 8.2k )
    地址:https://blog.csdn.net/m0_57158496/article/details/124244618
    点赞:2 收藏:15 
    摘要:个人信息提取(字符串)_个人信息提取python。
    首发:2022-04-18 11:07:12
    最后编辑:2022-04-20 13:17:54

  • 005
    标题:Python字符串居中显示
    (浏览阅读 7.6k )
    地址:https://blog.csdn.net/m0_57158496/article/details/122163023
    评论:1

  • 006
    标题:罗马数字转换器|罗马数字生成器
    (浏览阅读 7.5k )
    地址:https://blog.csdn.net/m0_57158496/article/details/122592047
    摘要:罗马数字转换器|生成器。
    首发:2022-01-19 23:26:42
    最后编辑:2022-01-21 18:37:46

  • 007
    标题:回车符、换行符和回车换行符
    (浏览阅读 6.0k )
    地址:https://blog.csdn.net/m0_57158496/article/details/123109488
    点赞:2 收藏:3 
    摘要:回车符、换行符和回车换行符_命令行回车符。
    首发:2022-02-24 13:10:02
    最后编辑:2022-02-25 20:07:40


推荐条件 阅读量突破6.00k
(更多热博,请点击蓝色文字跳转翻阅)

  • 截屏图片
    在这里插入图片描述
      (此文涉及ChatPT,曾被csdn多次下架,前几日又因新发笔记被误杀而落马。躺“未过审”还不如回收站,回收站还不如永久不见。😪值此年底清扫,果断移除。留此截图,以识“曾经”。2023-12-31)



回页首


老齐漫画头像

精品文章:

  • 好文力荐:齐伟书稿 《python 完全自学教程》 Free连载(已完稿并集结成书,还有PDF版本百度网盘永久分享,点击跳转免费🆓下载。)
  • OPP三大特性:封装中的property
  • 通过内置对象理解python'
  • 正则表达式
  • python中“*”的作用
  • Python 完全自学手册
  • 海象运算符
  • Python中的 `!=`与`is not`不同
  • 学习编程的正确方法

来源:老齐教室


◆ Python 入门指南【Python 3.6.3】


好文力荐:

  • 全栈领域优质创作者——[寒佬](还是国内某高校学生)博文“非技术文—关于英语和如何正确的提问”,“英语”和“会提问”是编程学习的两大利器。
  • 【8大编程语言的适用领域】先别着急选语言学编程,先看它们能干嘛
  • 靠谱程序员的好习惯
  • 大佬帅地的优质好文“函数功能、结束条件、函数等价式”三大要素让您认清递归

CSDN实用技巧博文:

  • 8个好用到爆的Python实用技巧
  • python忽略警告
  • Python代码编写规范
  • Python的docstring规范(说明文档的规范写法)

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

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

相关文章

使用FFmpeg压缩MP3格式音频

FFmpeg简介 FFmpeg 是一个开源的多媒体框架&#xff0c;能够录制、转换数字音频和视频&#xff0c;并将其转码到流行的格式。它被广泛应用于音视频处理领域&#xff0c;支持几乎所有的音视频格式和编解码器。以下是 FFmpeg 的一些关键特点和功能&#xff1a; 主要特点 跨平台…

Stable Diffusion绘画 | SDXL模型使用注意事项

注意事项 SDXL模型的使用&#xff0c;对电脑配置要求更高&#xff0c;需要 8GB 以上显存的显卡SDXL模型兼容性不太好&#xff0c;容易出现错误&#xff0c;对 Mac 电脑不友好只能选择 SDXL模型 训练的 LoRA 使用不能使用旧的 VAE文件 SDXL 专用 VAE 文件&#xff1a;sdxl_vae.…

CEPH的写入流程

1、客户端程序发起对文件的读写请求&#xff0c;ceph前端接口&#xff08;RADOS Gateway&#xff09;将文件切分成多个固定大小的对象&#xff08;默认大小为4MB&#xff09; 2、计算文件到对象的映射 (1) 计算OID为每个对象分配一个唯一的OID&#xff08;Object ID&#xff09…

构造+bfs,CF 761E - Dasha and Puzzle

目录 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 二、解题报告 1、思路分析 2、复杂度 3、代码详解 一、题目 1、题目描述 2、输入输出 2.1输入 2.2输出 3、原题链接 761E - Dasha and Puzzle 二、解题报告 1、思路分析 如果一个点的度 >…

[数据集][目标检测]辣椒缺陷检测数据集VOC+YOLO格式695张5类别

重要说明&#xff1a;数据集图片里面都是一个辣椒&#xff0c;请仔细查看图片预览&#xff0c;确认符合要求下载 数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文…

时间安全精细化管理平台/iapp/mobile/facereg/facereg.html接口存在未授权访问漏洞

漏洞描述 登录--时间&安全精细化管理平台/iapp/mobile/facereg/facereg.html接口存在未授权访问漏洞&#xff0c;黑客可以未授权等级员工信息对平台造成影响 FOFA&#xff1a; body"登录--时间&amp;安全精细化管理平台" 漏洞复现 IP/iapp/mobile/facereg…

SIMETRIX 探头和测量

来源:公众号 xuyuntong 随着工作的调整仿真那是越用越多了,在做仿真的时候我们对结果往往都需要做一些测量,怎么样让我们的测量更加的高效呢? 我们也从做中学,从学中做,仿真主要还是培养对电路的直觉虽说讲的是工具还是从电路做起,在做电路过程中把工具学了。 现在我…

[Python学习日记-30] Python中数据类型与文件操作的补充(Bytes 类型、字符编码的转换、深浅 Copy)

[Python学习日记-30] Python中数据类型与文件操作的补充 Bytes 类型 字符编码的转换 深浅 Copy Bytes 类型 一、定义 Bytes 类型是指一堆字节的集合&#xff0c;在 Python 中以 b 开头的字符串都是 Bytes 类型。从前面学习的字符编码当中知道&#xff0c;数据存到硬盘当中都…

C++ day07

C笔试题合集&#xff1a; 1、什么是虚函数&#xff1f;什么是纯虚函数&#xff1f; 1>在类中定义函数时&#xff0c;在函数名前加上virtual关键字&#xff0c;该函数就是虚函数&#xff0c;虚函数可以保证在父子类中只有一个该函数。 2>当虚函数头 0&#xff1b;时该函…

Killing LeetCode [416] 分割等和子集

Description 给你一个 只包含正整数 的 非空 数组 nums 。请你判断是否可以将这个数组分割成两个子集&#xff0c;使得两个子集的元素和相等。 Intro Ref Link&#xff1a;https://leetcode.cn/problems/partition-equal-subset-sum/description/ Difficulty&#xff1a;Med…

【C++报错已解决】std::ios_base::sync_with_stdio

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 专栏介绍 在软件开发和日常使用中&#xff0c;BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

CSS——边框线条动画效果

CSS——边框线条动画效果 上次我们实现了边框的线条缩放效果&#xff0c;今天我们来用三种方式完成边框的线条旋转动态效果。 方法一&#xff1a;使用伪元素 这是最普遍、最常用的方法&#xff0c;我们需要为边框所在的元素添加伪元素&#xff0c;然后旋转这个伪元素即可。本…

OpenMV与STM32通信全面指南

目录 引言 一、OpenMV和STM32简介 1.1 OpenMV简介 1.2 STM32简介 二、通信协议概述 三、硬件连接 3.1 硬件准备 3.2 引脚连接 四、软件环境搭建 4.1 OpenMV IDE安装 4.2 STM32开发环境 五、UART通信实现 5.1 OpenMV端编程 5.2 STM32端编程 六、SPI通信实现 6.1 …

【蓝桥杯省赛真题55】Scratch找不同游戏 蓝桥杯scratch图形化编程 中小学生蓝桥杯省赛真题讲解

scratch找不同游戏 第十五届青少年蓝桥杯scratch编程选拔赛真题解析 PS&#xff1a;其实这题在选拔赛里面就出现过类似的题目&#xff0c;只是难度提升了一点&#xff0c;具体可以见【蓝桥杯选拔赛真题84】Scratch找不同游戏 第十五届蓝桥杯scratch图形化编程 少儿编程创意编…

newbie难度——暴力枚举

newbie难度——暴力枚举 740 - 1743A 给出的样例能够理解&#xff0c;如果有n个数字不能选&#xff0c;要排四个数字&#xff0c;这四个数字只有两个不同&#xff0c;并且这两个相同的会各自出现两次&#xff0c;有6种排列方式&#xff0c;那如果给出小于样例n的数字&#xff…

电子电路智能设计课程内容是什么?

电子电路智能设计课程通常包括一系列内容&#xff0c;旨在教授学生如何使用现代电子设计自动化&#xff08;EDA&#xff09;工具和技术来设计和分析电子电路。 1. 电子设计自动化&#xff08;EDA&#xff09;概述&#xff1a; - EDA的历史和发展 - EDA在电子设计中的作用 - …

excel统计分析(2):描述统计工具

1.什么是【描述统计】工具 Excel中的描述性统计是指用于汇总和分析数据以更好地了解其特征的工具&#xff0c;方便快速了解数据集的中心趋势、离散程度和形状。 2.excel中添加【数据分析】功能 点击【文件>选项>加载项】&#xff0c;【管理>Excel加载项>转到】&…

SAP B1 认证考试习题 - 解析版(二)

前一篇&#xff1a;《SAP B1 认证考试习题 - 解析版&#xff08;一&#xff09;》 题目纯享版合集&#xff1a;《SAP B1 认证考试习题 - 纯享版》 三、采购流程 30. 下列哪个凭证在采购流程中是必须要完成的 A. 采购订单 B. 收货采购订单 C. 应付发票 D. 退货 E. 应付贷…

Vue项目快速整合WangEditor富文本编辑器

Vue项目快速整合WangEditor富文本编辑器 一、安装依赖 npm i wangeditor --save //富文本编辑器 npm install highlight.js -S //代码高亮 npm install dompurify vue-dompurify-html // 防xss 库二、app.vue代码案例 已对接图片、视频接口 &#xff0c;具体看如下代码…

【Spring Cloud】Spring Cloud 概述

Spring Cloud 概述 1. 认识微服务1.1 单体架构1.2 集群和分布式架构集群和分布式 1.3 微服务架构分布式架构&微服务架构 1.4 微服务带来的挑战优势挑战 2. 微服务解决⽅案- Spring Cloud2.1 什么是Spring Cloud2.2 Spring Cloud版本Spring Cloud和SpringBoot的关系 2.3 Spr…