Python编程求解第1天1分钱之后每天两倍持续一个月的等比数列问题
一、问题
问题1
场景:如果你未来的丈母娘要求你,第1天给她1分钱,第2天给2分钱,第3天给4分钱,以此类推,每天给前一天的2倍,给1个月(按30天)算就行。
问:第30天给多少钱,总共给多少钱?
问题2
场景:如果有两份工作。
第1份:第1天给你1分钱,第2天给你2分钱,第3天给你4分钱,以此类推,每天给前一天的2倍,给1个月(按30天)。
第2份:一个月给你10万工资。
问:哪份工资高?给你选择的话,你要第1份还是第2份?
二、相关热搜关键词
- 1天1分钱翻倍累计到三十天后多少钱
- 1天1分钱第二天乘2
- 1天1分钱每天翻2倍30天一共多少钱
- 1天1分钱2天2分钱3天4分钱
- 1天1分钱2天2分钱,以2倍的倍数,一个月多少钱?
- 0.01每天翻倍30天是多少
- 0.01每天翻倍月底多少钱
- 0.01每天翻一倍
三、解题方法
问题1和问题2,其实计算是一样的,在这里博主为大家介绍两种不同的解题方法,分别为:通过while循环方式、pow函数结合等比数列通项和求和公式。大家可以参考学习一下博主写的代码。
使用while循环方式
1.1 直接看代码和相关注释:'''
作者:zhang502219048
代码来源:https://www.cnblogs.com/zhang502219048/p/12822913.html
功能:通过Python的while循环实现计算1分钱翻倍1个月的问题
变量说明:a为每天多少钱,初始为第1天0.01元
total为截至当天总共多少钱
q为每天翻多少倍
n为第几天,而且是从第2天开始,因为是第2天才开始翻倍
nMax为最后翻倍的那天
''' a, total, q, n, nMax = 0.01, 0, 2, 2, 30
# while循环,计算到第30天,当天多少钱和截至当天总共多少钱
while n <= nMax: # 从第2天开始进行循环,直到第30天
a = a * q # 计算当天多少钱
total += a # 计算截至当天总共多少钱
n += 1 # 循环变量n加1天
else:
print('第30天多少钱:', a)
print('第1到30天总共多少钱:', total)1.2 代码运行结果:
使用power函数和等比数列通项和求和公式
2.1 先来看看等比数列通项公式和求和公式是怎样的,学习一下:
2.2 直接看代码和相关注释:'''
作者:zhang502219048
代码来源:https://www.cnblogs.com/zhang502219048/p/12822913.html
功能:通过Python的pow函数和等比数列通项和求和公式实现计算1分钱翻倍1个月的问题
变量说明:a1为第1天0.01元
a30为第30天多少钱
total为截至当天总共多少钱
q为每天翻多少倍
n为总共几天
''' a1, q, n = 0.01, 2, 30
# 使用pow函数结合等比数列通项公式,计算第30天多少钱
a30 = a1 * pow(q, n-1) # pow(q, n - 1):使用pow函数计算q的n - 1次方
# 使用等比数列求和公式,计算截至第30天总共多少钱
total = (a1 - a30 * q) / (1 - q)
print('第30天多少钱:', a30)
print('第1到30天总共多少钱:', total)2.3 代码运行结果:
四、问题结论
- 第30天给5,368,709.12元(五百多万)!
- 截至第30天总共给10,737,418.23元(一千多万)!
五、问题扩展
- 等比数列产生的背景故事——棋盘放麦粒,具体大家可以直接查看百度百科,这里就不再详述。
六、作者声明
- 欢迎转载,但转载请务必注明博文来源:
- https://www.cnblogs.com/zhang502219048/p/12822913.html (Python版)
- https://www.cnblogs.com/zhang502219048/p/11273639.html (sql server版)
Python编程求解第1天1分钱之后每天两倍持续一个月的等比数列问题的更多相关文章
- sql server编写脚本求解第1天1分钱之后每天两倍持续一个月的等比数列问题
一.问题 问题1 场景:如果你未来的丈母娘要求你,第1天给她1分钱,第2天给2分钱,第3天给4分钱,以此类推,每天给前一天的2倍,给1个月(按30天)算就行.问:第30天给多少钱,总共给多少钱? 问题 ...
- 【Python灰帽子--黑客与逆向工程师的Python编程之道】我的学习笔记,过程.(持续更新HOT)
我的学习笔记---python灰帽子 世界让我遍体鳞伤,但伤口长出的却是翅膀. -------------------------------------------- 前言 本书是由知名安全机构Im ...
- 一个Json结构对比的Python小工具兼谈编程求解问题
先上代码. jsondiff.py #!/usr/bin/python #_*_encoding:utf-8_*_ import argparse import json import sys rel ...
- Python实现Json结构对比的小工具兼谈编程求解问题
摘要: 通过使用Python编写一个解析Json结构对比的小工具,来提炼编程求解的通用步骤和技巧. 难度: 初级 先上代码. jsondiff.py #!/usr/bin/python #_*_enc ...
- Linux运维人员如何学习python编程
Linux运维人员如何学习python编程 从不会写代码,到自己独立能写代码解决问题 .这个问题很重要!盲目学习所谓的项目,最后 还是不会自己写代码解决问题.首先解决了独立能写代码解决问题,再通过项目 ...
- 百道Python面试题实现,搞定Python编程就靠它
对于一般的机器学习求职者而言,最基础的就是掌握 Python 编程技巧,随后才是相关算法或知识点的掌握.在这篇文章中,我们将介绍一个 Python 练习题项目,它从算法练习题到机试实战题提供了众多问题 ...
- Python黑帽编程2.1 Python编程哲学
Python黑帽编程2.1 Python编程哲学 本节的内容有些趣味性,涉及到很多人为什么会选择Python,为什么会喜欢这门语言.我带大家膜拜下Python作者的Python之禅,然后再来了解下P ...
- Python编程核心之makeTextFile.py和readTextFile.py
引言: 最近大半年都在学习python编程,在双十一的时候购买了<Python编程核心>,看到makeTextFile.py和readTextFile.py两个例子有点错误,所以在这里给修 ...
- Python编程规范(PEP8)
Python编程规范(PEP8) 代码布局 缩进 对于每一次缩进使用4个空格.使用括号.中括号.大括号进行垂直对齐,或者缩进对齐. 制表符还是空格? 永远不要将制表符与空格混合使用.Python最常用 ...
随机推荐
- .bundle文件如何安装
1. sudo chmod +x X.bundle 2. sudo X.bundle
- xftp连接centos7
1.下载xftp文件,并正常进行安装 2.安装好之后运行,并新建会话,此时可见如下界面: 注意: 名称,可随便输入,自己能看懂是什么就行 主机,输入当前Linux服务器的ip(如何获取服务器 ...
- Python 获取任意周期开盘日
import json import requests import datetime import tushare as ts cal_dates = ts.trade_cal() today=da ...
- Redis学习二:Redis高并发之主从模式
申明 本文章首发自本人公众号:壹枝花算不算浪漫,如若转载请标明来源! 感兴趣的小伙伴可关注个人公众号:壹枝花算不算浪漫 22.jpg 前言 前面已经学习了Redis的持久化方式,接下来开始学习Redi ...
- 用threejs 实现3D物体在浏览器展示
用threejs 实现3D物体在浏览器展示,通过鼠标平移,缩放,键盘箭头按钮左右移动等功能展示. <!DOCTYPE html> <html> <head> < ...
- 今天我们来谈谈jquery,
---恢复内容开始--- 首先从jquery的两种写法开始: 1.$(document).ready(function(){}); 首先我们的jquery是用来操作DOM节点的,所以必须等到文档加载完 ...
- vue2.x学习笔记(十一)
接着前面的内容:https://www.cnblogs.com/yanggb/p/12586416.html. 表单的输入绑定 表单的输入绑定是一块很重要的内容,因为所有的业务系统都离不开基础表单的录 ...
- 3. git获取历史版本
1.使用gitbash进入git命令行,查看commit记录.操作如下: git log 1 2.找到你想提取的目标版本,复制对应的SHA值. 3.新建一个分支,操作如下: git branch 新分 ...
- 用pip install不能成功安装时的处理方法
解决办法: pip install pymysql -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
- shift count is too large
STM8S是8 bit单片机在STM8S中 unsigned long是32位, unsigned short和unsigned int都是16位,unsigned char是8位. 以以下代码编译时 ...