重复结构

来自计算思维百科
跳转至: 导航搜索
重复结构(循环)1.png

日常生活或工作中,我们常常需要重复做一些事情,例如周一到周五之间,你每天起床、上班、吃饭、睡觉。在程序设计中重复结构就是表达这些需要重复执行的动作。

基本概念

不管我们让计算机做什么事情,如果它只能做一次,那么这样的计算机几乎是没有用处的。一次次重复的做同样事情的能力,是程序设计中最基本的要求,也是计算机超出人的能力的地方。例如:大厦中的视频监控可以全年不休地进行,而人工监控几个小时就是困倦、注意力分散。又例如:当你需要完成一个很大的任务时,如果计算机只允许你拷贝粘贴一次,不能再重复使用这个功能,那你还会用这台计算机吗?

所有的程序设计语言都提供了实现循环的语句。循环是重复结构的基本组件。这些语句是一个代码块,在特定的条件下能重复执行。循环包括三个要素:循环变量、循环体和循环终止条件。

以C语言的for循环为例,:

for(循环次数;循环终止条件;循环步长)

{循环体}

使用方法及步骤

一个循环需要一个能够结束循环的条件,和需要循环执行的语句块。所以要确定循环的终止条件(如果一个循环永远不能满足终止条件,那么这就是一个无限循环),并且确定需要循环执行的语句块。

应用案例

应用1-只有小孩子才能得到压岁钱

案例:每年的除夕夜是孩子们最开心的一天,因为在这一天孩子们将得到长辈们的压岁钱,但是不可能一个人从出生到四五十岁都要收到压岁钱,那么该怎么去分发压岁钱呢?解决步骤:

假设这个每年都重复的活动只延续到一个孩子的18岁。那么从他出生到18岁的每年除夕夜都会收到压岁钱,当他19岁之后他将不能再拿到压岁钱了。这就是一个循环的思想。循环的终止条件就是他是否到了19岁。而循环体就是拿到压岁钱,循环的步长就是1,因为除夕一年只有一次。

for(age=0;age<19;age=age+1;)

{拿到压岁钱;}

应用2-打水

案例: 一个小和尚要去一口井打水,这个情境就可以看成一个循环。

解决步骤:

小和尚将水桶丢进井里后要不停的拽动绳子将装好水的桶提上来完成打水。那么水桶提到了井口就是循环终止的条件。要重复的动作就是拽一次绳子。

for(;水桶到了井口;)

{拽一次绳子;}

应用3-自然界水循环

案例: 水循环是多环节的自然过程,全球性的水循环涉及蒸发、大气水分输送、地表水和地下水循环以及多种形式的水量贮蓄降水、蒸发和径流是水循环过程的三个最主要环节,这三者构成的水循环途径决定着全球的水量平衡,也决定着一个地区的水资源总量。

解决步骤:

重复结构(循环)2.jpg

自然界的水循环就是一个无限循环的例子,每时每刻都在进行着。

for(;永远不停;)

{水循环;}

可以体现的计算思维

重复结构体现了计算思维的抽象特点,把日常生活中常常遇到的重复进行的工作进行抽象,利用重复结构描述这种多次执行的操作,非常适合计算机这种设备进行处理。