精华内容
下载资源
问答
  • 设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额: 总利息=贷款金额*利率 每月还款金额 = (贷款金额+总利息)/贷款年限 贷款年限不同利率也不同,这里规定只有如表8-2所示的3种年限、...

    设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额:
    总利息=贷款金额*利率
    每月还款金额 = (贷款金额+总利息)/贷款年限
    贷款年限不同利率也不同,这里规定只有如表8-2所示的3种年限、利率。
    年限 利率

    年限 利率
    3年(36个月) 6.03%
    5年(60个月) 6.12%
    20年(240个月) 4.39%
    class Calculator():
        def __init__(self,money,time):
            self.money = money
            if time == '1':
                self.time = 3
            elif time == '2':
                self.time = 5
            elif time == '3':
                self.time = 20
        def loan_total_money(self):
            return (self.money)*(self.loan_rate_money())
        def loan_rate_money(self):
            if self.time ==3:
                return 0.0603
            elif self.time == 5:
                return 0.06125000
            elif self.time == 20:
                return 0.0639
        def every_repayment_money(self):
            return (self.money + self.loan_total_money())/(self.time*12)
    money = int(input("请输入贷款金额: "))
    time = input("请选择贷款年限:1.3年(36个月) 2.5年(60个月) 3.20年(240个月)")
    month_money = Calculator(money,time)
    print("月供为%f:"%(month_money.every_repayment_money()))
    
    

    输出结果:在这里插入图片描述

    展开全文
  • Python计算器设计与实现

    千次阅读 2019-11-19 20:51:58
    运用面向对象程序设计知识对实验题目进行分析和设计。 进行程序编写和调试工作。 二、实验内容 使用MFC框架在Visual Studio 6.0环境下(也可使用Visual Studio c#或者Java编程环境)编写一个简易的计算器,...

    实验一 计算器的设计与实现

    一、实验目的与要求
    实验目的:锻炼可视化编程能力。
    实验要求:

    1. 熟悉VC++、Visual Studio C#或者Java编程环境。
    2. 运用面向对象程序设计知识对实验题目进行分析和设计。
    3. 进行程序编写和调试工作。

    二、实验内容
    使用MFC框架在Visual Studio 6.0环境下(也可使用Visual Studio c#或者Java编程环境)编写一个简易的计算器,能实现简单的加、减、乘、除四则运算,并加入特定的一些效果,如使计算器的颜色在红色,绿色和蓝色之间轮流变换等。完成诸如计算器对话框的创建、控件编辑、界面设计、关键功能的实现等工作。

    三、实验设计
    本次计算机设计实验采用python编程环境,设计分为两部分:
    1)计算的实现 2)计算机可视化界面的实现
    计算部分,采用python中自带的eval()函数为核心算法,原因在于eval()函数可以直接对输入其中的字符串进行计算,确保输入的字符串可计算即可,又采用try-except格式语句,对不能计算的情况进行处理,使其返回ERROR!
    可视化界面设计部分,调用tkinter模块,内置多项可视化组件,其中包括文本输入框(Entry)、按钮组件(Button)、框架(Frame)、标签(Label)等等,引入各个组件并通过布局函数pack()逐次调整位置,令其尽量美观。大小方面使用expand=YES命令使用户可以自由调整大小。计算器颜色方面以下程序中提供了三种颜色可供选择,使用时选择#style.configure 。。。。。的其中一个语句,将#(注释符)去掉即可。
    代码量部分,采用python编程环境代码量较少,仅50行(含注释),也更美观。

    四、核心程序代码

    from tkinter import *
    from tkinter.ttk import *
    #将Frame的共同属性作为默认值,方便创建
    def my_frame(master):
        w=Frame(master)
        w.pack(side=TOP,expand=YES,fill=BOTH)#expand控制fill开关,fill为X、Y、BOTH
        return w
    #将Button的共同属性作为默认,方便创建
    def my_Button(master,text,command):
        w=Button(master,text=text,command=command,width=5)
        w.pack(side=LEFT,expand=YES,fill=BOTH,padx=2,pady=2) #padx、pady设置按钮所占空间格大小
        return w
    #退格键功能设置,将数字串最末字符删除并返回
    def back(text):
        if len(text)>0:
            return text[:-1]
        else:
            return text
    #利用eval函数计算表达式的值
    def calc(text):
        try:
            return eval(text)   #此处为计算器的计算语句,简单粗暴
        except (SyntaxError,ZeroDivisionError,NameError):
            return 'ERROR!'
    #计算器界面实现
    wind=Tk()
    wind.title('Demut-Calculator')  #标题
    text=StringVar()
    #创建文本框
    Entry(wind,textvariable=text).pack(expand=YES,fill=BOTH,padx=3,pady=4)
    #创建ttk子模块的Style对象,设置按钮内边距及颜色
    style=Style()
    #style.configure('TButton',padding=3,background="#00FFFF",foreground="#008B8B")
    #style.configure('TButton',padding=3,background="#00FFFF",foreground="#87CEFA")
    style.configure('TButton',padding=3,background="#87CEFA",foreground="#DA70D6")
    #创建第一行三个按钮
    my1=my_frame(wind)
    Label(my_Button(my1,'Backspace',lambda t=text:t.set(back(t.get()))),style="TButton")
    Label(my_Button(my1,'Clear',lambda t=text:t.set('')),style="TButton")
    Label(my_Button(my1,'Inverse',lambda t=text:t.set('-('+t.get()+')')),style="TButton")
    #创建其余四行
    for key in ('789/','456*','123-','0.=+'):
        my2=my_frame(wind)
        for ch in key:
            if ch =='=':
                Label(my_Button(my2,ch,lambda t=text:t.set(calc(t.get()))),style="TButton")
            else:
                Label(my_Button(my2,ch,lambda t=text,c=ch:t.set(t.get()+c)),style="TButton")
    
    wind.mainloop()
    

    五、实验结果
    1)测试一:(验证+ - * / 的运算)
    测试语句为:2+3*2+6/3
    测试结果如下:
    运行前:

    运行后:

    2)测试二: (验证带小数点的运算)
    测试语句为:1.5+3.5
    测试结果如下:
    运行前:

    运行后:

    3)测试三: (验证带‘取负数操作’的运算)
    测试语句为:2+2 之后对其取负数,再+1
    测试过程:
    取反前:

    取反后:(点击inverse按钮后)

    +1 运算:

    测试结果:

    4)测试四: (验证Backspace操作)
    测试语句: 123 Backspace
    测试结果:
    运行前:

    运行后:

    5)测试五: (验证clear操作)
    测试语句: 123 Clear
    测试结果:
    运行前:

    运行后:

    6)测试六: (验证非法语句的运算)
    测试语句: 1+5*
    测试结果:
    运行前:

    运行后:

    7)测试七: (颜色变化)
    测试结果:

    六、实验总结
    初次接触可视化界面的程序设计,选用python编程环境,在计算方面占有很大的优势,可以不用处理各个运算符的优先级顺序,但在界面设计部分需要注意很多因素,包括按钮的内外边距、文本框组件的布局位置、按钮背后的函数传参问题、非法语句的运算处理等等,因此此次实验有效锻炼了使用python处理问题的能力,在查找以及使用各个模块的同时,提高了代码的阅读效率以及利用率,在可视化部分自己有一个显著的提高。
    另需特别声明:由于自身软件问题(pycharm),缺乏相应的bg颜色更改功能,按钮的背景颜色更改在代码中虽有体现,在此软件上确无法得到体现,而前景颜色可以展现出来,因此我保留了背景颜色更改语句,如有需要可运行查看。

    展开全文
  • 设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额: 总利息=贷款金额*利率 每月还款金额 = (贷款金额+总利息)/贷款年限 贷款年限不同利率也不同,这里规定只有如表8-2所示的3种年限、...

    设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额: 总利息=贷款金额*利率 每月还款金额 = (贷款金额+总利息)/贷款年限 贷款年限不同利率也不同,这里规定只有如表8-2所示的3种年限、利率。 年限 利率

     

     

    PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

    python免费学习资料以及群交流解答点击即可加入

     

     

     

    展开全文
  • 计算器,大家一定再熟悉不过了,不过用python怎么编写呢? 首先需要设置窗口的大小和位置 然后给它起个名字——计算器 放置文本框、按钮,界面部分统统设计好之后,开始对它的运算规则进行约束 我想偷懒,直接上...

    计算器,大家一定再熟悉不过了,不过用python怎么编写呢?

    首先需要设置窗口的大小和位置

    然后给它起个名字——计算器

    放置文本框、按钮,界面部分统统设计好之后,开始对它的运算规则进行约束

    我想偷懒,直接上代码吧,哈哈哈

    代码如下:(加注释)

    import re
    import tkinter
    import tkinter.messagebox
    
    root = tkinter.Tk()
    # 设置窗口大小和位置
    root.geometry('300x270+400+100')
    # 不允许改变窗口大小
    root.resizable(False, False)
    # 设置窗口标题
    root.title('简易计算器')
    
    # 放置用来显示信息的文本框,并设置为只读
    contentVar = tkinter.StringVar(root, '')
    contentEntry = tkinter.Entry(root, textvariable=contentVar)
    contentEntry['state'] = 'readonly'
    contentEntry.place(x=10, y=10, width=280, height=20)
    
    
    # 按钮通用代码,参数btn表示按钮的是哪个按钮
    def buttonClick(btn):
        content = contentVar.get()
        # 如果已有内容是以小数点开头的,前面加0
        if content.startswith('.'):
            content = '0' + content
    
        # 根据不同按钮做出相应的处理
        if btn in '0123456789':
            content += btn
        elif btn == '.':
            # 如果最后一个运算数中已经有小数点,就提示错误
            lastPart = re.split(r'\+|-|\*|/]', content)[-1]
            if '.' in lastPart:
                tkinter.messagebox.showerror('错误', '小数点太多了')
                return
            else:
                content += btn
        elif btn == 'C':
            # 清除整个表达式
            content = ''
        elif btn == '=':
            try:
                # 对输入的表达式求值
                content = str(eval(content))
            except:
                tkinter.messagebox.showerror('错误', '表达式错误')
                return
        elif btn in operators:
            if content.endswith(operators):
                tkinter.messagebox.showerror('错误',
                                             '不允许存在连续运算符')
                return
            content += btn
        elif btn == 'Sqrt':
            n = content.split('.')
            if all(map(lambda x: x.isdigit(), n)):
                content = eval(content) ** 0.5
            else:
                tkinter.messagebox.showerror('错误', '表达式错误')
                return
    
        contentVar.set(content)
    
    
    # 放置清除按钮和等号按钮
    btnClear = tkinter.Button(root,
                              text='Clear',
                              command=lambda: buttonClick('C'))
    btnClear.place(x=40, y=40, width=80, height=20)
    btnCompute = tkinter.Button(root,
                                text='=',
                                command=lambda: buttonClick('='))
    btnCompute.place(x=170, y=40, width=80, height=20)
    
    # 放置10个数字、小数点和计算平方根的按钮
    digits = list('0123456789.') + ['Sqrt']
    index = 0
    for row in range(4):
        for col in range(3):
            d = digits[index]
            index += 1
            btnDigit = tkinter.Button(root,
                                      text=d,
                                      command=lambda x=d: buttonClick(x))
            btnDigit.place(x=20 + col * 70,
                           y=80 + row * 50,
                           width=50,
                           height=20)
    
    # 放置运算符按钮
    operators = ('+', '-', '*', '/', '**', '//')
    for index, operator in enumerate(operators):
        btnOperator = tkinter.Button(root,
                                     text=operator,
                                     command=lambda x=operator: buttonClick(x))
        btnOperator.place(x=230, y=80 + index * 30, width=50, height=20)
    
    root.mainloop()
    

    运行结果:

    展开全文
  • Python语言程序设计基础 上海师范大学 通识教育必修课程 授课教师:吴春英 徐晓钟 题目来源:上海师范大学网络教学平台(超星泛雅) I 参考题目 要求:项目作业里必须包括你的学号、姓名及你的照片(10分) 设计一个...
  • 怀化学院 Python语言程序设计课程项目汇报书 ? 设?计?题?目小计算器 学? 号15001 9 15001 5 15001 4 姓? 名?何伶靖 夏慧蕾 邓伟思 专 业生物工程 同?组?人?员何伶靖 夏慧蕾 邓伟思 时?间 06月 20日 项目设计目标 ...
  • 怀化学院 Python语言程序设计课程项目报告 书 设计题目小计算器 学 号1500120119 1500120135 1500120144 姓 名何伶靖夏慧蕾邓伟思 专 业生物工程 同组人员何伶靖夏慧蕾邓伟思 时 间 2016 年 06 月 20 日 项目设计...
  • 基于Python开发工具pycharm的tkinter模块开发简单的计算器程序 提示: Tkinter模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口,一般是自带的内置模块,不需要下载安装。 如果没有,可以在cmd命令窗口通过输入...
  • 怀化学院 Python 语言程序设计课程项目报告 书 设 计 题 目小计算器 学 号 1500120119 1500120135 1500120144 姓 名 何伶靖 夏慧蕾 邓伟思 专业生物工程 同 组 人 员何伶靖 夏慧蕾 邓伟思 时 间 2016 年 06 月 20 日...
  • 怀化学院 Pyh语言程序设计课程项目报告书 ? 设?计?题?目:小计算器 学? 号:1501201 1500120135 150012044 姓? 名?何伶靖 夏慧蕾 邓伟思 专 业生物工程 同?组?人?员何伶靖 夏慧蕾 邓伟思 时?间: 2016年 6月 20日 项目...
  • python tkinter实现 贷款计算器(学校程序设计实践作业)
  • python tkinter 实现简易计算器(学校程序设计实践作业)
  • 存档资料 成绩 课 程 设 计 报 告 书 ( 2010-- 2011年度第 2 学期) 所属课程名称 Java 面向对象程序设计 题 目 设计一个多功能计算器 分 院 电 信 分 院 专业班级 09 信管班 学 号 指导教师 2011 年06 23 日 课 程 ...
  • 记录了用Java和Python语言实现的简单工厂模式的一个小例子。
  • python3.0/tkinter设计一个计算器

    千次阅读 2019-02-25 17:50:51
    最近在学习python GUI设计,试着做了一个计算器,能够实现加减乘除和求余。 感悟:1. 程序第一步是进行UI框架设计,窗口的大小,功能区的大小和位置设定。最好做个草图,有大概估计。  2. UI设计出来后才是功能...
  • Python语言程序设计基础 上海师范大学 通识教育必修课程 授课教师:吴春英 徐晓钟 题目来源:上海师范大学网络教学平台(超星泛雅) I 参考题目 要求:项目作业里必须包括你的学号、姓名及你的照片(10分) 题目:...
  • 那么作为 GUI 编程的一个小白,该如何设计出一个如下图所示效果的简单的计算器呢? 分析 首先得把使用 tkinter 的一个面向对象的框架实现出来,再往里添加组件即可: from tkinter import * class Application...
  • Python实现简易图形用户界面计算器

    千次阅读 2020-02-16 19:47:36
    基于tkinter的简易图形用户界面计算器设计和实现,帮着读者深入了解图形界面的应用程序的开发流程
  • Given two numbers and we have to design a calculator type application that will perform add, subtract, ... 给定两个数字,我们必须设计一个计算器类型的应用程序,它将使用Python执行加,减,乘和除运算。 E...
  • 题目:设计一段代码用于实现简单计算器实现,包括两个数基本的加减乘除运输: 参考程序: class Jisuanqi(object): def add(self, m, n): self.result = m + n return "计算结果为:{} + {} = {}".format...
  • 一、前言 在近半年的 Python 命令行旅程中,我们依次学习了 argparse 、 docopt 、 click 和 fire 库的特点和用法...在讨论各个库的设计理念之前,我们先设计一个 计算器程序 ,其实这个例子在 argparse 库的第一篇讲解
  • 计算器 请用程序实现 输入两个数 num1, num2,分别计算他们的和(summation)、差(difference)、积(product)、商(quotient),并将计算结果输出。 提示: 计算和时使用num1 + num2,计算差时使用num1 - num2,计算积时...
  • 一个非常简单的Python小程序,是我在《程序设计思想与方法》第三章第15题的解答。
  • 1.设计一个简单的购房商贷月供计算器类,按照以下公式计算总利息和每月还款金额: 总利息=贷款金额*利率 每月还款金额 = (贷款金额+总利息)/贷款年限 贷款年限不同利率也不同,这里规定只有如下表所示的3种年限、...
  • 利用python写一个小而美的计算器

    千次阅读 2020-06-03 21:29:25
    1、UI设计 利用自带的库tkinter,命名为“计算机”: import tkinter,time,decimal,math,string ...计算器的界面布局程序如下: def buju(root): global cuncu, vartext, result, fuhao entry1 = tkinter.Label(root,
  • 袖珍计算器7.判断三边构成三角形8.鸡兔9.计算e的x次方近似值10.平方根11.余数12.球的问题13.猴子吃桃14.计算Sn=1+11+111+....+11..11 2.格式化杨辉三角 说实话这题一开始我没有什么想法,只能用最蠢的办法 print("1...
  • 今天老师布置一个课后作业,设计一个计算器,设计要求是用控制台或GUI编写计算器程序,支持运算优先级,识别正负号,并且可以利用上次计算结果继续运算。于是我就想到了python语言,脑子里蹦出一个eval函数。进行...

空空如也

空空如也

1 2 3 4 5 6
收藏数 116
精华内容 46
关键字:

python计算器程序设计

python 订阅