一、问题

  • 问题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函数结合等比数列通项和求和公式。大家可以参考学习一下博主写的代码。

  1. 使用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 代码运行结果:

  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元(一千多万)!

五、问题扩展

  • 等比数列产生的背景故事——棋盘放麦粒,具体大家可以直接查看百度百科,这里就不再详述。

六、作者声明

Python编程求解第1天1分钱之后每天两倍持续一个月的等比数列问题的更多相关文章

  1. sql server编写脚本求解第1天1分钱之后每天两倍持续一个月的等比数列问题

    一.问题 问题1 场景:如果你未来的丈母娘要求你,第1天给她1分钱,第2天给2分钱,第3天给4分钱,以此类推,每天给前一天的2倍,给1个月(按30天)算就行.问:第30天给多少钱,总共给多少钱? 问题 ...

  2. 【Python灰帽子--黑客与逆向工程师的Python编程之道】我的学习笔记,过程.(持续更新HOT)

    我的学习笔记---python灰帽子 世界让我遍体鳞伤,但伤口长出的却是翅膀. -------------------------------------------- 前言 本书是由知名安全机构Im ...

  3. 一个Json结构对比的Python小工具兼谈编程求解问题

    先上代码. jsondiff.py #!/usr/bin/python #_*_encoding:utf-8_*_ import argparse import json import sys rel ...

  4. Python实现Json结构对比的小工具兼谈编程求解问题

    摘要: 通过使用Python编写一个解析Json结构对比的小工具,来提炼编程求解的通用步骤和技巧. 难度: 初级 先上代码. jsondiff.py #!/usr/bin/python #_*_enc ...

  5. Linux运维人员如何学习python编程

    Linux运维人员如何学习python编程 从不会写代码,到自己独立能写代码解决问题 .这个问题很重要!盲目学习所谓的项目,最后 还是不会自己写代码解决问题.首先解决了独立能写代码解决问题,再通过项目 ...

  6. 百道Python面试题实现,搞定Python编程就靠它

    对于一般的机器学习求职者而言,最基础的就是掌握 Python 编程技巧,随后才是相关算法或知识点的掌握.在这篇文章中,我们将介绍一个 Python 练习题项目,它从算法练习题到机试实战题提供了众多问题 ...

  7. Python黑帽编程2.1 Python编程哲学

    Python黑帽编程2.1  Python编程哲学 本节的内容有些趣味性,涉及到很多人为什么会选择Python,为什么会喜欢这门语言.我带大家膜拜下Python作者的Python之禅,然后再来了解下P ...

  8. Python编程核心之makeTextFile.py和readTextFile.py

    引言: 最近大半年都在学习python编程,在双十一的时候购买了<Python编程核心>,看到makeTextFile.py和readTextFile.py两个例子有点错误,所以在这里给修 ...

  9. Python编程规范(PEP8)

    Python编程规范(PEP8) 代码布局 缩进 对于每一次缩进使用4个空格.使用括号.中括号.大括号进行垂直对齐,或者缩进对齐. 制表符还是空格? 永远不要将制表符与空格混合使用.Python最常用 ...

随机推荐

  1. .bundle文件如何安装

    1. sudo chmod +x X.bundle 2. sudo X.bundle

  2. xftp连接centos7

    1.下载xftp文件,并正常进行安装 2.安装好之后运行,并新建会话,此时可见如下界面: 注意: 名称,可随便输入,自己能看懂是什么就行      主机,输入当前Linux服务器的ip(如何获取服务器 ...

  3. Python 获取任意周期开盘日

    import json import requests import datetime import tushare as ts cal_dates = ts.trade_cal() today=da ...

  4. Redis学习二:Redis高并发之主从模式

    申明 本文章首发自本人公众号:壹枝花算不算浪漫,如若转载请标明来源! 感兴趣的小伙伴可关注个人公众号:壹枝花算不算浪漫 22.jpg 前言 前面已经学习了Redis的持久化方式,接下来开始学习Redi ...

  5. 用threejs 实现3D物体在浏览器展示

    用threejs 实现3D物体在浏览器展示,通过鼠标平移,缩放,键盘箭头按钮左右移动等功能展示. <!DOCTYPE html> <html> <head> < ...

  6. 今天我们来谈谈jquery,

    ---恢复内容开始--- 首先从jquery的两种写法开始: 1.$(document).ready(function(){}); 首先我们的jquery是用来操作DOM节点的,所以必须等到文档加载完 ...

  7. vue2.x学习笔记(十一)

    接着前面的内容:https://www.cnblogs.com/yanggb/p/12586416.html. 表单的输入绑定 表单的输入绑定是一块很重要的内容,因为所有的业务系统都离不开基础表单的录 ...

  8. 3. git获取历史版本

    1.使用gitbash进入git命令行,查看commit记录.操作如下: git log 1 2.找到你想提取的目标版本,复制对应的SHA值. 3.新建一个分支,操作如下: git branch 新分 ...

  9. 用pip install不能成功安装时的处理方法

    解决办法: pip install pymysql -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

  10. shift count is too large

    STM8S是8 bit单片机在STM8S中 unsigned long是32位, unsigned short和unsigned int都是16位,unsigned char是8位. 以以下代码编译时 ...