zoukankan      html  css  js  c++  java
  • 四则运算程序

    1.需求分析:

    运用自己喜欢的语言写一个自动生成四则运算的小程序

    2。 功能设计:

    (一)基本功能:自动生成基本四则运算题库,题库难度和数量自己可以控制

    (二)扩展功能:系统单文件运行,自动生成题库。

    3. 设计实现:导入随机数包,通过if,while语句进行判断,最后将数据写入data,输出文件。

    4. 测试运行:

     

    5. 粘贴自己满意的代码

    while i<10:
    
        i=i+1
    
        j=random.randint(0, 3)
    
        operachar=opera_li[j]
    
        a=random.randint(0, 100)
    
        b=random.randint(0, 100)
    
        #if语句进行判断
    
        if ('*' == operachar or '/' == operachar):
    
            i=i-1
    
            continue;
    
        if(operachar=="+"):
    
            c = a + b
    
        elif(operachar=="-"):
    
            c = a - b
    
        elif(operachar=="*"):
    
            c = a * b
    
        else:
    
            if (b == 0):
    
                i=i-1
    
                continue
    
            c = a / b;
    
        if (c >= 100 or c < 0):
    
            i=i-1
    
            continue
    
        s="{0}{1}{2}=".format(a,opera_li[j] ,b)
    
        #格式化字符
    
        if s in data:
    
            i = i - 1
    
            continue
    
        data.append(s)
    
    k=0
    
    for i in data:
    
        #向文件里面也如数据
    
        k=k+1
    
        f.write(""+str(k)+ ""+i+'
    ')
    
    f.close()
    
    print("题目已经出了,请查看result.txt")

    6. 总结:如果设计的方法多了,当某个类通过接口来依赖某个类的时候,被依赖的那个类要实现的方法太多了,会造成那个类中大量的代码冗余,不可过少的原因是,接口太多,会让设计变复杂,且不便于管理。因此一个一个方法需要增加其他的功能,或者代码需要重构的时候,要扩展软件的行为,尽量不要去修改已有的代码。用抽象构建框架,方法的实现来扩展细节。

    7.PSP时间计算

    PSP2.1

    任务内容

    计划共完成需要的时间(min)

    实际完成需要的时间(min)

    Planning

    计划

    5

    5

    ·Estimate

    ·估计这个任务需要多少时间,并规划大致工作步骤

    5

    5

    Development

    开发

    49

    50

    ··Analysis

    需求分析 (包括学习新技术)

    3

    3

    ·Design Spec

    ·生成设计文档

    3

    3

    ·Design Review

    ·设计复审 (和同事审核设计文档)

    3

    4

    ·Design

    具体设计

    5

    5

    ·Coding

    具体编码

    20

    20

    ·Code Review

    ·代码复审

    5

    5

    ·Test

    ·测试(自我测试,修改代码,提交修改)

    10

    10

    Reporting

    报告

    6

    5

    ··Test Report

    ·测试报告

    3

    2

    ·Postmortem & Process Improvement Plan

    ·事后总结 ,并提出过程改进计划

    3

    3

  • 相关阅读:
    Ubuntu18.04安装NAVIDIA驱动
    ubuntu 设置root用户密码并实现root用户登录
    配置ubuntu允许远程SSH连接
    Centos7安装yum命令
    NVDIA往期在线研讨会地址 论坛提问地址
    二进制安装单master节点测试环境k8s集群
    kubeadm初始化k8s-延长证书过期时间
    kubeadm初始化k8s-删除控制节点-重新把控制节点加入集群步骤
    kubeadm安装的多master节点的k8s高可用集群
    二进制安装多master节点的k8s集群
  • 原文地址:https://www.cnblogs.com/huguoguo/p/11525489.html
Copyright © 2011-2022 走看看