Python求利率

news2025/4/7 18:57:19

要求

编写程序计算在给定利率、指定年数的情况下投资的未来值。这个计算公式如下。
在这里插入图片描述
使用文本域输入投资额、年份和利率。当用户单击“calculate”按钮时,在文本域中显示未来的投资值,如图所示。
在这里插入图片描述

代码实现

import tkinter as tk

def calculate():
    amount, years, rate = (float(entry.get()) for entry in entries)
    future_value = amount * (1 + rate / 1200) ** (years * 12)
    result.config(state="normal")
    result.delete("1.0", tk.END)
    result.insert(tk.END, f"{future_value:.2f}")
    result.config(state="disabled")

def add_row(window, text, row):
    tk.Label(window, text=text).grid(row=row, sticky=tk.W)
    entry = tk.Entry(window)
    entry.grid(row=row, column=1)
    return entry

window = tk.Tk()
window.title("第三次实验")

labels = ["Investment Amount:", "Years:", "Annual Interest Rate:"]
entries = [add_row(window, label, i) for i, label in enumerate(labels)]

result = tk.Text(window, height=1, width=20, state="disabled")
result.grid(row=len(labels), column=1, sticky=tk.W)
tk.Label(window, text="Future Value: ").grid(row=len(labels), sticky=tk.W)
tk.Button(window, text="Calculate", command=calculate).grid(row=len(labels)+1, column=1, sticky=tk.E)

window.mainloop()

效果

在这里插入图片描述

代码实现

import tkinter as tk

def calculate():
    investment_amount = float(entry1.get())
    years = int(entry2.get())
    interest_rate = float(entry3.get()) / 100
    monthly_interest_rate = interest_rate / 12
    future_value = investment_amount * (1 + monthly_interest_rate) ** (years * 12)
    result_text.configure(state="normal")
    result_text.delete("1.0", tk.END)
    result_text.insert(tk.END, "{:.2f}".format(future_value))
    result_text.configure(state="disabled")


window = tk.Tk()
window.title("Investment Calculator")

label1 = tk.Label(window, text="Investment Amount:")
label1.grid(row=0, column=0, padx=10, pady=0, sticky=tk.W)
entry1 = tk.Entry(window)
entry1.grid(row=0, column=1, padx=10, pady=0, sticky=tk.E)

label2 = tk.Label(window, text="Years:")
label2.grid(row=1, column=0, padx=10, pady=0, sticky=tk.W)
entry2 = tk.Entry(window)
entry2.grid(row=1, column=1, padx=10, pady=0, sticky=tk.E)

label3 = tk.Label(window, text="Annual Interest Rate:")
label3.grid(row=2, column=0, padx=10, pady=0, sticky=tk.W)
entry3 = tk.Entry(window)
entry3.grid(row=2, column=1, padx=10, pady=0, sticky=tk.E)

label4 = tk.Label(window, text="Future Value: ")
label4.grid(row=3, column=0, padx=10, pady=0, sticky=tk.W)
result_text = tk.Text(window, height=1, width=20, state="disabled")
result_text.grid(row=3, column=1, padx=10, pady=0, sticky=tk.E)

button_calculate = tk.Button(window, text="Calculate", command=calculate, relief=tk.FLAT)
button_calculate.grid(row=4, columnspan=2, padx=10, pady=0, sticky=tk.E)

window.mainloop()

代码实现

import tkinter as tk


def calculate_future_value():
    investment_amount = float(entry_investment.get())
    years = int(entry_years.get())
    interest_rate = float(entry_interest.get()) / 100
    monthly_interest_rate = interest_rate / 12
    future_value = investment_amount * (1 + monthly_interest_rate) ** (years * 12)
    result_text.configure(state="normal")  # 允许编辑文本框
    result_text.delete("1.0", tk.END)  # 清空文本框内容
    result_text.insert(tk.END, "{:.2f}".format(future_value))  # 插入结果
    result_text.configure(state="disabled")  # 禁止编辑文本框


window = tk.Tk()
window.title("Investment Calculator")

label_investment = tk.Label(window, text="Investment Amount:")
label_investment.grid(row=0, column=0, padx=10, pady=0)
entry_investment = tk.Entry(window)
entry_investment.grid(row=0, column=1, padx=10, pady=0)

label_years = tk.Label(window, text="Years:")
label_years.grid(row=1, column=0, padx=10, pady=0)
entry_years = tk.Entry(window)
entry_years.grid(row=1, column=1, padx=10, pady=0)

label_interest = tk.Label(window, text="Annual Interest Rate:")
label_interest.grid(row=2, column=0, padx=10, pady=0)
entry_interest = tk.Entry(window)
entry_interest.grid(row=2, column=1, padx=10, pady=0)

label_result = tk.Label(window, text="Future Value: ")
label_result.grid(row=3, column=0, padx=10, pady=0)
result_text = tk.Text(window, height=1, width=20, state="disabled")
result_text.grid(row=3, column=1, padx=10, pady=0)

button_calculate = tk.Button(window, text="Calculate", command=calculate_future_value, relief=tk.FLAT)
button_calculate.grid(row=4, columnspan=2, padx=10, pady=0, sticky=tk.E)

window.mainloop()

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

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

相关文章

求圆、圆球和圆柱的面积和体积(C语言)

一、运行结果&#xff1b; 二、源代码&#xff1b; # define _CRT_SECURE_NO_WARNINGS # include <stdio.h> //定义π常量的值&#xff1b; # define π 3.141526int main() {//初始化变量值&#xff1b;float r, h, S1, S2, P1, V1, V2;int judge 0;//提示用户&#x…

【Spring进阶系列丨第九篇】基于XML的面向切面编程(AOP)详解

文章目录 一、基于XML的AOP1.1、打印日志案例1.1.1、beans.xml中添加aop的约束1.1.2、定义Bean 1.2、定义记录日志的类【切面】1.3、导入AOP的依赖1.4、主配置文件中配置AOP1.5、测试1.6、切入点表达式1.6.1、访问修饰符可以省略1.6.2、返回值可以使用通配符&#xff0c;表示任…

设计模式之大话西游

8年前深究设计模式&#xff0c;现如今再次回锅&#xff5e; 还是大话设计模式 这本书还是可以的 大话西游经典的台词&#xff1a;“曾经有一份真挚的爱情摆在我面前,我没有珍惜,等我失去的时候,我才后悔莫及,人世间最痛苦的事莫过于此。如果上天能够给我一个再来一次的机会,我会…

内网通如何去除广告,内网通免广告生成器

公司使用内网通内部传输确实方便&#xff01;但是会有广告弹窗推送&#xff01;这个很烦恼&#xff01;那么如何去除广告呢&#xff01; 下载&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1CVVdWexliF3tBaFgN1W9aw?pwdhk7m 提取码&#xff1a;hk7m ID&#xff1a;…

大数据产品有哪些分类?各类里知名大数据产品都有哪些?

随着互联网技术的持续进步和全球数字化转型的推进&#xff0c;我们正处于一个数据爆炸的时代。在这样的大背景下&#xff0c;大数据已经逐渐崭露头角&#xff0c;成为了推动各行各业发展的关键因素和核心资源。大数据不仅仅是指数据的规模巨大&#xff0c;更重要的是它蕴含的价…

消除 BEV 空间中的跨模态冲突,实现 LiDAR 相机 3D 目标检测

Eliminating Cross-modal Conflicts in BEV Space for LiDAR-Camera 3D Object Detection 消除 BEV 空间中的跨模态冲突&#xff0c;实现 LiDAR 相机 3D 目标检测 摘要Introduction本文方法Single-Modal BEV Feature ExtractionSemantic-guided Flow-based AlignmentDissolved…

每日一题(leetcode238):除自身以外数组的乘积--前缀和

不进阶是创建两个数组&#xff1a; class Solution { public:vector<int> productExceptSelf(vector<int>& nums) {int nnums.size();vector<int> left(n);vector<int> right(n);int mul1;for(int i0;i<n;i){mul*nums[i];left[i]mul;}mul1;for…

阿迪Akamai 逆向 第二部分

声明&#xff1a; 本文章中所有内容仅供学习交流使用&#xff0c;不用于其他任何目的&#xff0c;抓包内容、敏感网址、数据接口等均已做脱敏处理&#xff0c;严禁用于商业用途和非法用途&#xff0c;否则由此产生的一切后果均与作者无关&#xff01;wx a15018601872 …

利用vip.item_get API接口,唯品会电商发展再上新台阶,VIP商品详情尽在掌握

唯品会作为中国领先的折扣电商平台&#xff0c;一直致力于为消费者提供高品质的商品和优质的服务。近年来&#xff0c;随着技术的不断发展和电商行业的竞争加剧&#xff0c;唯品会不断寻求创新&#xff0c;以满足消费者的多样化需求。在这个过程中&#xff0c;vip.item_get API…

深入理解大型项目服务器部署与数据库优化策略

我们先了解一下大概的数据量&#xff1a; 复杂的数据库语句&#xff1a;Mysql每秒大概可以执行100-200个 一台服务器就可以做到每秒几十个并发&#xff08;配置&#xff1a;4核8G&#xff09; 一万块钱的服务器的配置&#xff1a;16核32g内存4T硬盘 如果是微型的服务&#…

Elasticsearch中父子文档的关联:利用Join类型赋予文档的层级关系

码到三十五 &#xff1a; 个人主页 心中有诗画&#xff0c;指尖舞代码&#xff0c;目光览世界&#xff0c;步履越千山&#xff0c;人间尽值得 ! Elasticsearch是一个强大的搜索引擎&#xff0c;它提供了丰富的功能来满足复杂的搜索需求。其中&#xff0c;父子索引类型的join功…

离谱!奇安信人事总监透露:Web安全不会岗位这些就别投简历了

有人的地方就有江湖&#xff0c;有互联网安全的地方&#xff0c;就必然有Web安全工程师的身影。但其实Web安全是近几年才备受关注的&#xff0c;从事这方面的专业人员并不多&#xff0c;这就导致整个市场Web安全研究员的供求严重不平衡。 这种供求不平衡直接反映在Web安全研究…

Windows沙盒:sandboxie-plus工作原理及安装使用指导

文章目录 1、简介2、工作原理3、主要功能4、安装4.1、下载安装文件4.2、运行安装程序4.3、选择安装路径 5、使用方法6、总结 1、简介 Sandboxie是一款安全软件&#xff0c;也被称为沙箱。它的主要功能是创建一个隔离的虚拟环境&#xff0c;用户能够在其中运行或安装应用程序&a…

mmdetection模型使用mmdeploy部署在windows上的c++部署流程【详细全面版】

0. 前置说明: 该文档适用于:已经使用mmdetection训练好了模型,并且完成了模型转换。要进行模型部署了。 1. 概述 MMDeploy 定义的模型部署流程,如下图所示: 模型转换【待撰写,敬请期待…】 主要功能是:把输入的模型格式,转换为目标设备的推理引擎所要求的模型格式…

973: 统计利用先序遍历创建的二叉树叶结点的个数

解法&#xff1a; #include<iostream> #include<queue> using namespace std; // 定义二叉树结点 struct TreeNode {char val;TreeNode* left;TreeNode* right;TreeNode(char x) :val(x), left(NULL), right(NULL) {}; }; // 先序递归遍历建立二叉树 TreeNode* bu…

C++11---多线程

看前须知&#xff1a;如果对线程不了解的&#xff0c;可以先去看Linux---多线程(上)&#xff0c;(下)这两篇文章 那里主要讲了线程的一些基础概念和底层相关理解&#xff0c;对我们阅读这篇文章会有所帮助 一、thread --- 线程 1、thread相关接口介绍 在C11之前&#xff0c;涉…

汇编语言程序设计-1-绪论

1. 绪论 文章目录 1. 绪论1.1 导学1.2 为什么要学汇编语言1.3 由机器语言到汇编语言1.4 计算机的组成1.5 内存的读写与地址空间1.6 汇编语言实践环境搭建 参考视频&#xff1a;烟台大学贺利坚老师的网课《汇编语言程序设计系列专题》&#xff0c;或者是B站《汇编语言程序设计 贺…

MybatisPlus实现数据权限隔离

引言 Mybatis Plus对Mybatis做了无侵入的增强&#xff0c;非常的好用&#xff0c;今天就给大家介绍它的其中一个实用功能&#xff1a;数据权限插件。 数据权限插件的应用场景和多租户的动态拦截拼接SQL一样。建议点赞收藏关注&#xff0c;方便以后复习查阅。 依赖 首先导入M…

c/c++普通for循环学习

学习一下 for 循环的几种不同方式&#xff0c;了解一下原理及差异 完整的测试代码参考 GitHub &#xff1a;for 循环测试代码 1 常用形态 对于 for 循环来说&#xff0c;最常用的形态如下 for (表达式1; 表达式2; 表达式3) {// code }流程图如下&#xff1a; 编写测试代码…

【随笔】Git 高级篇 -- 项目里程碑 git tag(二十)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…