跟巴菲特学理财
沃伦·巴菲特
2020年4月6日,沃伦·巴菲特以5900亿元人民币财富名列《胡润全球百强企业家》第3位。?]??2020年4月7日,沃伦·巴菲特以675亿美元财富位列《2020福布斯全球亿万富豪榜》第4位。
从1965~1998年,巴菲特的股票平均每年增值20.2%,高出道·琼斯指数
(?https:?/??/?baike.?/?item?/?%E9%81%93%C2%B7%E7%90%BC%E6%96%AF%E6%8C%87%E6%95%B0"
\t
"https:?/??/?baike.?/?item?/?%E6%B2%83%E4%BC%A6%C2%B7%E5%B7%B4%E8%8F%B2%E7%89%B9?/?_blank?)10.1个百分点。如果谁在1965年投资巴菲特的公司10000美元的话,到1998年,他就可得到433万美元的回报。
1965~2006年的42年间,伯克希尔公司净资产的年均增长率达21.46%,累计增长361156%
。
任务一
假设一个人有一万元用来投资,每年的收益率是20%,一年之后,他把本金和收益全部用于再投资,收益率保持不变。。如此循环,口算或者利用计算器填写下面的表格
时间
本金(前一年的资产,单位元)
资产(本金+收益,单位元)
一年后
10000
12000
二年后
三年后
……
……
20年之后,资产是多少?
利用Python解决问题
分析问题:假设资产为变量s,从1年之后,每年的资产等于上一年的资产加20%的收益,也就是上一年资产的1.2倍。从而得出公式:s=
。
要求20年之后的资产,也就是把得出的公式执行20遍。
利用for循环代码(补充完整代码,并用python运行验证)
s=
#初始化s
for
i
in
range(1,21):
#循环次数
s=
#循环执行
print(s)
#输出结果
任务二:学习新知识
while循环
while
条件表达式:
#当
条件成立:
执行语句
执行循环体语句
while循环是当型循环,只要条件满足,就不断循环;否则,退出循环。
1.表达式一般是一个关系表达式或一个逻辑表达式,表达式的值应该是一个逻辑值(True)或假(Flase)。
2.当表达式的值为真时,执行循环体语句;当表达式的值为假时,退出循环,执行循环体外的下一条语句(即while后面没有缩进的第一条语句)。
3,每次循环都是执行完循环体语句后回到表达式出重新开始判断,重新计算表达式的值,一旦表达式的值为假就退出循环,为真时就继续执行循环体语句。
4.循环体中必须有改变条件表达式值的语句,否则将成为死循环。
While循环代码(补充完整代码,并用python运行验证)
s=10000
#初始化本金
n=0
#初始化年数
while
:
#条件表达式
s=s
1.2
#循环执行语句
#改变条件表达式的值
print(s)
#输出最后的结果
比较两个循环
任务三:针对上述情况,多少年后资产超过一千万元。
任务四提升任务:假如每年都有10000元工资结余用于增加投资,并获得相应收益,多少年资产超过一千万元。
时间
本金(前一年的资产,元)
本金+收益(元)
增加投资(元)
总资产
1年后
10000
12000
10000
22000
2年后
3年后
代码:
任务五拓展任务(养老问题)
有老人60岁时有存款30万元,本金和利息可以每月支取,月利为0.2%,每月的养老金数额为2000元,每月平均支出为4000元(包含基本生活费、医疗费用和旅游支出),请问该老人的存款多少月花完。
代码:《跟巴菲特学理财——while循环的应用》
教学设计
课标分析
新课标必修1.7掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法。通过解决实际问题,体验程序设计的基本流程,感受算法的效率,掌握程序调试和运行的方法。
本节课中的while循环是程序设计中的一种常用的基本结构,用来解决循环问题的常用方法。本节课通过项目式教学《跟巴菲特学理财》里的复利问题的探究过程,掌握了利用计算机编程解决问题的信息意识;发展了学生的计算思维;对学生成年以后的生活是一种指导,培养了学生的社会责任感。达到了课标对这学生核心素养的要求。
教材分析
本节课是广东教育出版社信息技术必修1《数据与计算》第四章4.4.2的内容,while循环的应用。While循环是Python中一种很重要,并且经常使用的循环结构,在编程解决问题中拥有不可替代的作用。教材中介绍了while循环的格式和注意事项,但是采用的例子,和前面内容的for循环,几乎脱节,缺少知识的连续性。因此,本节课设计时,注意了知识的衔接处理。
学情分析
本节课之前学生学习了算法的相关知识、程序设计里的顺序结构、选择结构还有for循环,这些都为本节课的开展打下了很好的基础。但是大部分学生进入高中才接触到编程,基础差,没有计算机算法思维,所以解决问题的时候,往往面对问题很茫然,抓不住重点,更无从下手。所以为了突破学生的思维障碍,设计了填表找规律的环节,先用数学的方法解决问题,找到规律,然后总结表达式,编程。编程的前两个任务,也选择了完善程序,而不是直接从零编程的方式,降低了难度,提高了学生的自信和兴趣。
教学目标
1.
理解for循环和while循环在解决问题中的差异,能选择合适的循环解决问题。
2.
体验while循环在解决问题中的应用,能针对具体问题,编程解决。
3.
了解理财的相关理论,为以后的人生发展提供参考。
重点难点
重点是利用while循环编程解决问题
难点是找到while循环中的条件表达式和理解改变条件表达式值的语句
教学过程
引入:
师:今天我们的课题是《跟巴菲特学理财》,现在我们通过一个短片了解一下巴菲特。
播放:有关巴菲特的相关信息的短片。
师:我们在短片中看到一个数字,投资巴菲特股权的股东们,1965年的1万美元到1998年成了433万美元,如果一会大家看导学案的资料,到2006年这个数字是3611万美元。这么惊人的增长是如何实现的呢,我们今天来探究一下。
任务一
用for循环解决问题
时间
本金(前一年的资产,单位元)
资产(本金+收益,单位元)
一年后
10000
12000
二年后
三年后
假设一个人有一万元用来投资,每年的收益率是20%,一年之后,他把本金和收益全部用于再投资,收益率保持不变。。如此循环,口算或者利用计算器填写下面的表格
……
……
20年之后,资产是多少?
师:用计算机做,多了可能少乘或者多乘一次,所以我们今天用Python解决问题,同学们看问题分析,完善程序填空并在Python中运行。
利用Python解决问题
分析问题:假设资产为变量s,从1年之后,每年的资产等于上一年的资产加20%的收益,也就是上一年资产的1.2倍。从而得出公式:s=
。
要求20年之后的资产,也就是把得出的公式执行20遍。
利用for循环代码(补充完整代码,并用python运行验证)
师:做完的同学点控制软件的举手操作,并帮助身边的同学。
全部学生完成后,展示代码
师:如果我们把print缩进和s=s
1.2对齐,那么我们可以验证刚才我们表格中的结果,从而判断程序是否正确。
现在我们来学习一种新的循环结构来解决上面的问题。大家先看导学案中关于while循环的相关知识。
任务二
利用while循环求20年之后的资产总额
while
条件表达式:
#当
条件成立:
(缩进)执行语句或语句组
(缩进)执行循环体语句
师:while循环是当型条件循环,当条件表达式成立时,执行缩进的循环体里的语句或者语句组;当条件不成立是退出循环。每次执行完循环体,都要返回条件表达式进行判断条件成立与否。当条件表达式一直成立,就会陷入无限循环,也叫死循环,是没有意义的,所以我们在循环体中要设置能使条件表达式值改变的语句,是程序经过有限次循环结束。
同学们完善while循环的程序,并运行验证。
While循环代码(补充完整代码,并用python运行验证)
师:提示一下,要求二十年之后的资产,当什么条件下执行循环?要改变条件表达式的值,需要改变哪个变量的值,语句应该怎么写?
师:做完的同学点控制软件的举手操作,并帮助身边的同学。
全部学生完成后,展示代码
展示for循环和while循环比较
师:刚才我们解决同一个问题,分别用for循环和while循环来实现,很容易看出来for循环更加简洁。While因为有初值和改变条件表达式值的语句,显得相对繁琐一些。真的是这样吗,看一下任务三,选择合适的循环结构,并编程实现。
任务三:多少年之后资产超过一千万?选择合适的循环并编程实现。
师:做完的同学点控制软件的举手操作,并帮助身边的同学。
全部学生做完展示代码
s=10000
n=0
while
s<=10000000:
s=s
1.2
n=n+1
print(n)
师:大家这个程序都选择了while循环结构,因为在循环次数不确定的情况下,for循环无法完成这个任务。While循环可能有时候繁琐一些,但是解决具体问题时还是有很大用处的。
师:大家看导学案并完成提升任务。
任务四
每年追加投资填表总结规律并编程
提升任务:假如每年都有10000元工资结余用于增加投资,并获得相应收益,多少年资产超过一千万元。
时间
本金(前一年的资产,元)
本金+收益(元)
增加投资(元)
总资产
1年后
10000
12000
10000
22000
2年后
3年后
师:做完的同学点控制软件的举手操作,并帮助身边的同学。
大部分学生完成以后,展示代码
s=10000
n=0
while
s<=10000000:
s=s
1.2+10000
n=n+1
print(n)
师:每年的资产总额s都等于上一年的资产总额s的1.2倍加上今年新增加的投资10000元。
师:任务没完成的同学继续完成,并把相应程序填写回我们的导学案。任务完成的同学可以尝试完成课外拓展任务五。
任务五
课外拓展任务(养老问题)
有老人60岁时有存款30万元,本金和利息可以每月支取,月利为0.2%,每月的养老金数额为2000元,每月平均支出为4000元(包含基本生活费、医疗费用和旅游支出),请问该老人的存款多少月花完?
展示代码
s=300000
n=0
while
s>0:
s=s
1.002-2000
n=n+1
print(n)
或
s=300000
n=0
while
s>0:
s=(s-2000)
1.002
n=n+1
print(n)
师:因为第一个月提前把一个月的花费取出来或者一个月之后取出来再还,描述的不是很清楚,所以两种代码都是正确的。
小结:
师:我们今天体验了for循环和while循环在解决不同问题的不同应用,并深入学习了while循环。当条件表达式成立时执行循环,当不成立时退出循环,并且必须在循环体中设置使条件表达式值改变的语句,避免出现死循环。
师:今天的学习,我们体验了巴菲特理财的成功之道,难怪巴菲特说“人生就行滚雪球,重要的是找到很湿的雪和很长的坡”,就连爱因斯坦也感叹“复利是世界第八大奇迹”,但是我依然要提醒同学们:“投资有风险,入市需谨慎”,因为你找的雪可以没变成雪球就化了。
课后反思:
本节课《跟巴菲特学理财》采用了项目式教学,根据课标学生信息技术核心素养的要求,重点发展学生分析具体问题的信息意识、利用计算机解决问题的计算思维和在解决问题中形成的关于理财方面的社会责任感。
围绕投资理财的复利问题,由浅入深,由已学到新学设置了不同的任务,符合学生学习的特点,课堂气氛活跃,学生完成度极高,达到了学习目标的要求。
由前世界首富,世界富豪榜前几位的巴菲特来引出问题,极大了刺激了学生的好奇心,激发了学生探究的热情。在任务设置时,先由刚学习过的for循环开始,体验解决问题的过程;到新学的while循环让学生尝试用新的知识解决问题,对养成学生独立解决问题的能力是很大的促进。任务一和任务二完成之后,对比for循环和while循环,让学生发现两者的异同,同时提出任务三,用for循环不能实现的任务,学生对while循环的理解就更进一层了。任务四是提升任务,需要学生总结更复杂的公式来解决问题,是又一次挑战,也是对知识的又一次升华。最后设计的任务本来是一个分层次教学任务,给那些学的快、理解快、做的快的同学准备的,但是在实际教学过程中,大部分学生都很好的理解和完成了拓展任务。
本节课所涉及的理财方面的知识是每个人一生的财富。对于高中生来说,未踏入社会,但是要为成年和踏入社会做准备,所以理财是必不可少的生存技能。最后的提醒“投资有风险,入市需谨慎”,把雪分成两种状态,可以滚成雪球,也可能随时化了,更是形象的描绘了理财可能存在的巨大风险。
拓展任务里的养老问题,是学生父母很快就要面对的情形。通过编程结果,让学生看清父母所要面对的巨大养老压力,对于打消社会中存在的“啃老”,是一种警示和鞭策。也让学生看到未来的自己可能存在的危机,从而努力学习,努力工作,厉行节俭。
s=
#初始化s
for
i
in
range(1,21):
#循环次数
s=
#循环执行
print(s)
#输出结果
s=10000
for
i
in
range(1,21):
s=s
1.2
print(s)
s=10000
#初始化本金
n=0
#初始化年数
while
:
#条件表达式
s=s
1.2
#循环执行语句
#改变条件表达式的值
print(s)
#输出最后的结果
s=10000
n=0
while
n<20:
s=s
1.2
n=n+1
print(s)
s=10000
n=0
while
n<20:
s=s
1.2
n=n+1
print(s)
s=10000
for
i
in
range(1,21):
s=s
1.2
print(s)(共20张PPT)
跟巴菲特学理财
while循环的应用
普通高中教科书
广东教育出版社
信息技术必修1
数据与计算
任务一
假设一个人有一万元用来投资,每年的收益率是20%,一年之后,他把本金和收益全部用于再投资,收益率保持不变。如此循环,口算或者利用计算器填写下面的表格
时间
本金(前一年的资产,单位元)
资产(本金+收益,单位元)
一年后
10000
12000
二年后
三年后
利用Python解决问题
分析问题:假设资产为变量s,从1年之后,每年的资产等于上一年的资产加20%的收益,也就是上一年资产的1.2倍。从而得出公式:s=
。
要求20年之后的资产,也就是把得出的公式循环执行20次。
利用for循环解决问题
for循环代码
s=10000
for
i
in
range(1,21):
s=s
1.2
print(s)
while循环
while
条件表达式:
#当
条件成立:
执行语句或
执行循环体语句
语句组
while循环
while循环是当型循环,只要条件满足,就不断循环;否则,退出循环。
1.表达式一般是一个关系表达式或一个逻辑表达式,表达式的值应该是一个逻辑值(True)或假(Flase)。
2.当表达式的值为真时,执行循环体语句;当表达式的值为假时,退出循环,执行循环体外的下一条语句(即while后面没有缩进的第一条语句)。
3,每次循环都是执行完循环体语句后回到表达式出重新开始判断,重新计算表达式的值,一旦表达式的值为假就退出循环,为真时就继续执行循环体语句。
4.循环体中必须有改变条件表达式值的语句,否则将成为死循环。
while循环代码
s=10000
n=0
while
n<20:
s=s
1.2
n=n+1
print(s)
比较for循环和while循环
s=10000
for
i
in
range(1,21):
s=s
1.2
print(s)
s=10000
n=0
while
n<20:
s=s
1.2
n=n+1
print(s)
任务三
上述复利问题,请问多少年资产可以超过一千万?请选择刚才学过的两个循环中的一个解决问题。
Python代码
s=10000
n=0
while
s<=10000000:
s=s
1.2
n=n+1
print(n)
比较for循环和while循环
s=10000
for
i
in
range(1,21):
s=s
1.2
print(s)
s=10000
n=0
while
s<=10000000:
s=s
1.2
n=n+1
print(n)
提升任务
假如每年都有10000元工资结余用于增加投资,并获得相应收益,多少年资产超过一千万元。
时间
本金(前一年的资产,元)
本金+收益(元)
增加投资(元)
总资产
1年后
10000
12000
10000
22000
2年后
3年后
Python代码
s=10000
n=0
while
s<=10000000:
s=s
1.2+10000
n=n+1
print(n)
拓展任务
有老人60岁时有存款30万元,本金和利息可以每月支取,月利为0.2%,每月的养老金数额为2000元,每月平均支出为4000元(包含基本生活费、医疗费用和旅游支出),请问该老人的存款多少月花完
拓展任务
s=300000
n=0
while
s>0:
s=(s-2000)
1.002
n=n+1
print(n)
s=300000
n=0
while
s>0:
s=s
1.002-2000
n=n+1
print(n)
小结
while
条件表达式:
#当
条件成立:
执行语句或
执行循环体语句
语句组
(包含改变条件
表达式的语句)
比较for循环和while循环
s=10000
for
i
in
range(1,21):
s=s
1.2
print(s)
s=10000
n=0
while
n<20:
s=s
1.2
n=n+1
print(s)
“人生就像是滚雪球,重要的是要找到很湿的雪和很长的坡”
---巴菲特
“复利是世界第八大奇迹”
---爱因斯坦
投资有风险,入市需谨慎