首页 > 编程语言 >实现一个自动生成小学四则运算题目的命令行程序

实现一个自动生成小学四则运算题目的命令行程序

时间:2024-03-24 19:57:12浏览次数:36  
标签:30 题目 函数 -- 四则运算 45 生成 命令行

一.项目作者姓名:陈炜烽 麦润泽
学号:3122004776 3122004785
Github项目地址:https://github.com/iFortheFuture/teamwork

二.PSP表格## Personal Software Process Stages

Personal Software Process Stages 预估时间 (分钟) 实际时间 (分钟)
Planning 30 30
Estimate 45 45
Development 120 140
Analysis 60 55
Design Spec 90 75
Design Review 45 50
Coding Standard 30 35
Design 120 135
Coding 180 175
Code Review 60 65
Test 90 95
Reporting 45 30
Test Report 30 25
Size Measurement 60 55
Postmortem 60 45
合计 1135 1055

三.效能分析

四.设计实现过程
在给定的代码中,主要有以下几个函数:

  1. jianhua: 这个函数用于简化分数,将分数化为最简形式。

  2. chufa: 这个函数用于进行除法运算,包括整除、带分数和真分数。

  3. chachong: 这个函数用于检查生成的题目是否重复,避免生成重复的题目。

  4. shengcheng: 这个函数是主要的函数,用于生成题目。它根据输入的数量和范围,在指定范围内生成不重复的题目,并同时计算出题目的答案。

  5. dayintimu: 这个函数用于打印题目到控制台。

  6. dayindaan: 这个函数用于打印答案到控制台。

这些函数之间的关系如下:

  • shengcheng 函数是整个程序的核心,它负责生成题目并调用其他函数来辅助生成答案和检查重复。

  • chachong 函数在生成题目时用于检查是否有重复的题目,避免生成相同的题目。

  • chufa 函数用于处理除法运算,包括整除、带分数和真分数的情况。

  • jianhua 函数是 chufa 函数的一个辅助函数,用于简化分数。

  • dayintimudayindaan 函数负责打印题目和答案到控制台。

在进行修改的过程中,关键的函数是 shengcheng,因为它是整个程序的主要逻辑,负责生成题目和调用其他函数来辅助完成任务。
关键函数的流程图见附件1.
五.代码说明

附件1:

graph TD; A(开始) --> B(检查参数是否有效) B -->|无效| C[输出错误信息并结束程序] B -->|有效| D(初始化变量 i, sum) D --> E{i < n} E -->|是| F(生成随机数 num1, num2, operator) F --> G(计算 sum) G --> H{sum是否整数} H -->|是| I(处理整数情况) H -->|否| J(处理分数情况) I --> K(填充答案和题目数组) J --> K K --> L(检查重复) L -->|是| M(重来) L -->|否| N{题目是否生成完成} N -->|是| O(输出题目和答案) N -->|否| P(增加 i) P --> E O --> A

标签:30,题目,函数,--,四则运算,45,生成,命令行
From: https://www.cnblogs.com/3122004776cwf/p/18092904

相关文章

  • PTA基础编程练习题目集 7—4 BCD解密
    题目描述:BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!现在,你的程序要读入这个错误的十进......
  • 【Linux】详谈命令行参数&&环境变量
    目录一、浅谈命令行参数二、环境变量2.1环境变量的内涵以及理解2.2PATH环境变量:2.3输入程序名就能运行我们的程序2.4系统中的环境变量2.5导出环境变量 三、main函数的第三个参数3.1获得环境变量的三种方法 四、本地变量一、浅谈命令行参数        我......
  • C语言:洛谷题目分享(4)小书童--凯撒密码和笨小猴
    目录1.前言2.俩道题目1.小书童--凯撒密码1.题目背景2.题目描述3.输入格式4.输出格式5.题解2.笨小猴1.题目描述2.输入格式3.输出格式4.题解3.小结1.前言哈喽大家好啊,今天我继续为大家分享洛谷题单的俩道题目,请大家多多支持喔~2.俩道题目1.小书童--凯撒密码......
  • 机试重点题目-2018
    B:AIQP操作考察:vector容器的基本操作#include<iostream>#include<vector>#include<string>#include<algorithm>usingnamespacestd;vector<int>v;intn,m;intmain(){cin>>n;for(inti=0;i<n;i++){......
  • GitHub Copilot 在命令行界面中的全面应用:为系统运维人员带来的革命性进步
    随着技术的迅猛发展,GitHubCopilot在命令行界面(CLI)中的全面应用标志着对系统运维人员工作方式的重大革新。此次进步不仅仅体现在命令建议和解释的直接获取,更通过为Bash、PowerShell和Zsh添加助手别名,简化了用户的工作流程。本文将探讨GitHubCopilot在CLI中全面可......
  • 数组 题目
    1.2034:【例5.1】反序输出【题目描述】输入n个数,要求程序按输入时的逆序把这n个数打印出来,已知整数不超过100个。也就是说,按输入相反顺序打印这n个数。【输入】输入一行共有n个数,每个数之间用空格隔开。【输出】如题要求:一行,共有n个数,每个数之间用一个空格隔开。......
  • 数据库面试高频题目 - 深度解析 MySQL:探秘关系型数据库的核心技术(一)
       本文将深入探讨MySQL,这是关系型数据库中的核心技术,被广泛应用于数据存储和管理。透过高频面试题解析,我们将深入研究MySQL在数据建模、查询优化和事务处理中的作用。无论你是初学者还是渴望加深对关系型数据库技术的了解,本文都将为你提供实用的面试准备。一、innod......
  • 用ffmpeg命令行将图片转为JPEG XL
    多的就不说了,直接上命令:ffmpeg-iinput.jpgoutput.jxl还可以设置转换的质量(下面那个90就是保留百分之多少画质的意思)ffmpeg-iinput.jpg-q:v90output.jxljpegxl介绍JPEGXL是一种自由的图像文件格式,支持有损和无损压缩(下面简称jxl).他在保留高画质的情况......
  • 四则运算
    一.相关信息这个作业属于哪个课程[软件工程2024](首页-软件工程2024-广东工业大学-班级博客-博客园(cnblogs.com))这个作业的要求在哪里[作业要求的链接](结对项目-作业-软件工程2024-班级博客-博客园(cnblogs.com))这个作业的目标实现一个自动......
  • 【题目】【网络系统管理】2022年甘肃省职业院校技能大赛-系统服务-试卷
    2022年甘肃省职业院校技能大赛高职组网络系统管理竞赛系统服务模块试题目录一、竞赛介绍…1(一)环境登录…1(二)系统配置…1(三)竞赛环境…1二、竞赛注意事项…1三、竞赛结果文件的提交…2四、Linux项目任务描述…2(一)拓扑图…2(二)基本配置…3五、Linux项目任务清......