欢迎来到个人简历网!永久域名:gerenjianli.cn (个人简历全拼+cn)
当前位置:首页 > 范文大全 > 实用文>Flash的流程控制与循环控制语句

Flash的流程控制与循环控制语句

2022-09-20 08:47:26 收藏本文 下载本文

“aryley”通过精心收集,向本站投稿了8篇Flash的流程控制与循环控制语句,下面是小编帮大家整理后的Flash的流程控制与循环控制语句,希望对大家的学习与工作有所帮助。

Flash的流程控制与循环控制语句

篇1:Flash的流程控制与循环控制语句

控制|循环|语句

众所周知,flash中动画依靠的是时间轴,在没有脚本的情况下,动画会依照时间轴从第一帧不停的播放到最后一帧,然后始重复播放或者干脆停止,

Flash的流程控制与循环控制语句

。为了能更好的控制动画,就必须使用脚本语句。而要想使动画具有逻辑判断的功能,就要使用流程控制和循环控制语句了!下面通过几个简单的小例子来学习流程与循环控制语句。

一、流程控制语句

所谓流程控制,无非就是我们想控制动画程序的执行顺序而已。我们可以让flash根据一些特定的条件,来决定要执行哪个程序。这样就好象给了程序一些判断的机制。

if...else控制语句

根据英文的意思,大家可以简单的理解上面的控制语句:如果...就...否则...就... 下面来看看这个流程控制语句的书写格式。

if(条件){

//条件成立的话,就执行这里的程序。

}else{

//条件不成立的话就执行这里的程序。

}

下面重点说一下if后面括号内的条件。这个条件可以是一个固定的值,也可以是一个变量或表达式。如果条件成立的话,也就是条件为真(true),就会执行if后面的程序,如果条件不成立,也就是条件为假(false),就会执行else里的程序。例如:有这么一个条件,A>B 将这个表达式代入if后面的括号内,这个流程语句的意思就变成:如果A>B的话,就执行第一个大括号内的程序,如果A不大于B,就将执行else后面大括号内的程序。

实例讲解:

1、新建一个flash文档,在舞台上绘制一个圆,选中圆并按F8转换成影片剪辑,起名为:圆 这样就在舞台上创建一个圆的实例。

2、选中舞台上的实例,按F9打开动作面板,输入如下脚本:

onClipEvent (enterFrame) {

if (this._x<400) {//流程条件控制语句,如果这个圆的实例的X轴坐标小于400,就执行后面的程序。

this._x += 5;//让这个圆的坐标向右移动5个象素

} else {

this._x = 0;//控制语句,如果刚才的条件不成立。也就是圆实例的X坐标不小于400,就让它的X坐标为0

}

}

脚本最终编写效果如图:

最终效果演示:(下载源文件点击这里)

上面的脚本是一个非常简单的流程控制语句,根据实例的坐标来进行判断。因为我们使用了enterFrame事件,所以flash会不停的执行下面if...else语句。

3、测试影片。会看到圆不停的向右移动,当它的X坐标大于或等于400的时候,程序会把它的X坐标重新更改为0。

二、循环控制语句

所谓的循环语句,其实也是用条件来控制的,只要条件成立,那么,程序就会不停的执行下去,一直执行到条件不成立为止!常用的循环语句包括while循环、for循环等。因为篇幅有限,下面只重点讲解for循环的使用方法。

FOR循环命令格式:

for(初始变量;条件语句;迭加命令语句){

//用户自己编写的脚本,

}

首先强调一点,for语句的括号内有三个项目,必须要用分号间隔开!

初始变量:循环语句也是用条件是否成立来控制的,通常我们用一个变量来控制程序执行的次数。那么,这个初始变量就要先定义一个值。要注意的是,初始变量这个项目只执行一次!

条件语句:这个项目就是我们的判断语句了。如果这个项目判断为真(true),也就是条件成立了。它就直接跳进大括号{}内执行里面的程序!反之,如果条件为假(false),它就直接跳出这个for语句了。

迭加命令语句:接上面的条件语句,如果条件语句成立,会执行{}内的程序,那么执行完程序之后,就要回来执行迭加命令语句了。通常它就用来增加或减少刚开始时的初始变量的值。

实例讲解:

1、新建一个flash文档,在舞台上绘制一个圆,选中圆并按F8转换成影片剪辑,起名为:圆 这样就在舞台上创建一个圆的实例。

2、为这个实例起名为:yuan 如图:

3、添加一个新的层,并选中新层的第一帧,按F9打开动作面板,输入如下脚本:

for (i=1; i<5; i++) { //我们定义一个变量i来控制程序的循环次数。条件语句为判断i是否小于5,迭加命令就让每次程序执行之后,让i自己增加一,使程序循环4次!

duplicateMovieClip(“yuan”, “yuan”+i, i);//duplicateMovieClip是复制命令,用来复制舞台上名字叫yuan的实例,每次复制出来一个,就把新复制出来的实例改名为“yuan”+i。影片的深度也改为i

_root[“yuan”+i]._x = random(400);

_root[“yuan”+i]._y = random(300);//设置每次复制出来的新实例的X、Y坐标,具体数值随机产生。

_root[“yuan”+i]._alpha = random(100);//设置每次复制出来的新实例的透明度,具体数值从100里随机产生。

}

如果大家实在觉得for语言很难读懂的话,你可以按照for语言执行的顺序把i=1代入程序走一遍,可以帮助你理解程序。例如:当i等于1的时候,程序开始判断它是否小于5,那么1肯定小于5了,条件为真,就执行{}内的复制程序,同时复制出来的新实例的名字就变成了yuan1 ,接着就是设置yuan1的坐标和透明度。之后,for语句开始回去执行i++,此时,i的值就变为2了。然后又开始循环判断执行下去......(你可以算一下,这个for循环总共循环了几次呢?答案是4次。)

脚本如图:

4、选中时间轴的第6帧,按F6插入一关键帧,打开动作面板输入以下脚本:

gotoAndPlay(1);

让flash播放到第6帧的时候返回第1帧再来执行for循环语句。

如图:

5、测试效果吧,你会看到舞台上会循环4次复制出4个圆。

最终效果演示:(下载源文件点击这里)

希望大家能通过这两个简单的例子掌握流程控制语句和循环控制语句

篇2:七、 循环语句和循环控制

Turbo C 2.0提供三种基本的循环语句: for语句、while语句和do-while语句,

一、循环语句

(一)、for循环 它的一般形式为:

for(<初始化>;<条件表过式>;<增量>)

语句;

初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分开。

例如:

for(i=1;i<=10;i++)

语句;

上例中先给i赋初值1,判断i是否小于等于10,若是则执行语句,之后值增加1。再重新判断,直到条件为假,即i>10时,结束循环。

注意:

(1).for循环中语句可以为语句体,但要用{和}将参加循环的语句括起来。

(2).for循环中的初始化、条件表达式和增量都是选择项,即可以缺省,但;不能缺省。省略了初始化,表示不对循环控制变量赋初值。省略了条件表达式,则不做其它处理时便成为死循环。省略了增量,则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。

(3).for循环可以有多层嵌套。

例如:

for(;;) 语句;

for(i=1;;i+=2) 语句;

for(j=5;;) 语句;

这些for循环语句都是正确的。

main

{

int i,j;

printf(i jn);

for(i=0;i<2;i++)

for(j=0;j<3;j++)

printf(%d %dn,i,j);

}

输出结果为:

i j

0 0

0 1

0 2

1 0

1 1

1 2

用for循环求1+2+……+100的和:

main()

{

int sn=0,i;

for(i=1;i<=100;i++)

sn+=i; /*1+2+……+100*/

printf(%dn,sn);

}

从程序可以看出,使用循环语句可以大大简化代码。

(二)、while循环 它的一般形式为:

while(条件)

语句;

while循环表示当条件为真时,便执行语句。直到条件为假才结束循环。并继续执行循环程序外的后续语句。

例如:

#include stdio.h

main()

{

char c;

c=''; /*初始化c*/

while(c!='n') /*回车结束循环*/

c=getche(); /*带回显的从键盘接收字符*/

}

上例中,while循环是以检查c是否为回车符开始,因其事先被初始化为空,所以条件为真,进入循环等待键盘输入字符;一旦输入回车,则c='n',条件为假,循环便告结束。与for循环一样,while循环总是在循环的头部检验条件,这就意味着循环可能什么也不执行就退出。

注意:

(1).在while循环体内也允许空语句。

例如:

while((c=getche())!='n');

这个循环直到键入回车为止。

(2).可以有多层循环嵌套。

(3).语句可以是语句体, 此时必须用{和}括起来。

用while循环求1+2+……+100的和:

main()

{

int sn=0,i=0;

while(++i<=100)

sn+=i; /*求1+2+……+100*/

printf(%dn,sn);

}

(三)、do--while循环 它的一般格式为:

do

{

语句块;

}

while(条件);

这个循环与while循环的不同在于:它先执行循环中的语句,然后再判断条件是否为真,如果为真则继续循环;如果为假,则终止循环,

因此,do-while循环至少要执行一次循环语句。

同样当有许多语句参加循环时,要用{和}把它们括起来。

用do--while循环求1+2+……+100的和:

main()

{

int sn=0,i=1;

do

sn+=i; /*求1+2+……+100*/

while(++i<=100);

printf(%dn,sn);

}

从上面三个程序看出,使用for,while和do--while求解同样的问题,基本思路都差不多,只是在第一次计算时,注意初值。

二、循环控制

(一)、break语句

break语句通常用在循环语句和开关语句中。当break用于开关语句switch中时,可使程序跳出switch而执行switch以后的语句;如果没有break语句,则将成为一个死循环而无法退出。break在switch中的用法已在前面介绍开关语句时的例子中碰到,这里不再举例。

当break语句用于do-while、for、while循环语句中时,可使程序终止循环而执行循环后面的语句,通常break语句总是与if语句联在一起。即满足条件时便跳出循环。

例如:

main()

{

int sn=0,i;

for(i=1;i<=100;i++)

{

if(i==51) break; /*如果i等于51,则跳出循环*/

sn+=i; /*1+2+……+50*/

}

printf(%dn,sn);

}

可以看出,最终的结果是1+2+……+50。因为在i等于51的时候,就跳出循环了。自己写写怎样在while和do--while循环中增加break语句。

注意:

1. break语句对if-else的条件语句不起作用。

2. 在多层循环中,一个break语句只向外跳一层。

例如:

main()

{

int i,j;

printf(i jn);

for(i=0;i<2;i++)

for(j=0;j<3;j++)

{

if(j==2) break;

printf(%d %dn,i,j);

}

}

输出结果为:

i j

0 0

0 1

1 0

1 1

当i==0,j==2时,执行break语句,跳出到外层的循环,i变为1。

(二)、continue语句

continue语句的作用是跳过循环本中剩余的语句而强行执行下一次循环。

continue语句只用在for、while、do-while等循环体中, 常与if条件语句一起使用,用来加速循环。

例如:

main()

{

int sn=0,i;

for(i=1;i<=100;i++)

{

if(i==51) continue; /*如果i等于51,则结束本次循环*/

sn+=i; /*1+2+……+50+52+……+100*/

}

printf(%dn,sn);

}

从程序中可以看出,continue语句只是当前的值没有执行,也就是说当前的值跳过去了,接着执行下次循环。

篇3:PL/SQL流程控制语句

跟在IN REVERSE 后面的数字必须是从小到大的顺序,而且必须是整数,不能是变量或表达式。可以使用EXIT退出循环。

例:使用循环语句打印 1 - 100.(三种方式)

1). LOOP ... EXIT WHEN ... END LOOP

declare--初始化条件v_i number(3) := 1;beginloop--循环体dbms_output.put_line(v_i);--循环条件exit when v_i = 100;--迭代条件v_i := v_i + 1;end loop;end;

2). WHILE ... LOOP ... END LOOP

declare--初始化条件v_i number(3) := 1;begin--循环条件while v_i <= 100 loop--循环体dbms_output.put_line(v_i);--迭代条件v_i := v_i + 1;end loop;end;

3).

beginfor i in 1 .. 100 loopdbms_output.put_line(i);end loop;end;

例: 综合使用 if, while 语句, 打印 1 - 100 之间的所有素数

(素数: 有且仅用两个正约数的整数, 2, 3, 5, 7, 11, 13, ...).

declarev_i int := 2;v_j int := 2;v_flag boolean := false;beginwhile v_i < 100 loopv_j := 2;while v_j

④标号和GOTO

PL/SQL中GOTO语句是无条件跳转到指定的标号去的意思。语法如下:

GOTO label;

. . . . . .

<

例:打印1——100的自然数,当打印到50时,跳出循环,输出“打印结束”

(方法一)

beginfor i in 1..100 loopdbms_output.put_line(i);if(i = 50) thengoto label;end if;end loop;<

(方法二)

beginfor i in 1..100 loopdbms_output.put_line(i);if(i mod 50 = 0) thendbms_output.put_line('打印结束');exit;end if;end loop;end;

篇4:FLASH条件和循环语句

条件|循环|语句

Actions cript 的条件和循环语句有 if, else, else if, for, while, do...while, for...in 和 switch. 在 Flash 中它们被叫做流程控制动作(Action), 但实际上, 其实质与其它程序语言没什么不一样的.

因为条件和循环语句是程序语言中最基础的, 也是最具有实用价值的语句, 所以要在这里仔细讲解一下. 对于有 C++ 和 Java 等编程经验的读者随意浏览一下就可以了.

条件语if句--if

可以说是程序语言中最基本的条件判断语句. 无论在任何语言中都有它的身影.

由下面的例子可以了解它的格式:

name = “SiC”;

//下面是 if 语句

if(name == “SiC”){

trace(“作者”);

}

if 语句通过判断其后圆括号内的逻辑表达式是否为 true 来确定是否执行大括号内的语句. 假如逻辑表达式 name == “SiC” 返回值为真, 就在输出窗口(Output Window)内显示“作者”, 否则就不执行.

然后让我们设想一下下面例子的效果:

if(1){

trace(“总是执行”);

}

如果你还记得前面数据类型的内容, 那么应该可以看出, 这时的 if 语句基本上是多余的, 因为对于常量 1, 逻辑表达式的值恒为 true(其实 1 就是逻辑值 true 的数值表示形式). 但对于常量 0, 则永远为 false. 你可以试试把上例中的 1 改成一个字符串常量(例如 “hi!”)看看会有什么效果.

再看一个例子:

name = “SiC”;

//下面是 if 语句

if(name = “SiC”){

trace(“作者”);

}

比较一下看这个例子与第一个例子有什么不同? 不同之处就在于第一个用了 ==, 而这个用了 =. 对于这个例子, if 的判断永远为 true. 想想为什么? 问题就在于使用了赋值运算符 = 而不是逻辑运算符 ==. 对于赋值运算, 其返回的逻辑值总是 true. 这也是初学者常犯的错误.

一定要注意区分赋值运算符 = 和逻辑运算符 ==. 否则你会遇到一些莫名其妙的错误和问题, 而且语法检查也找不出错误(因为赋值运算表达式也是有效的条件表达式). 所以请记住, Actions cript 的相等逻辑运算符是 == 而不是 =.

if...else

假如想要在判断条件不成立时执行另一项操作时怎么办? 很简单, 在 if 语句后面加上个 else 语句块就可以了:

name = “未知”;

//下面是 if...else 语句

if(name == “SiC”){

trace(“作者”);

} else {

trace(“未知”);

}

很简单吧? 只要把在判断结果为假时要执行的语句放在 else 后的大括号里就行了.

if...else if

如果要进行很多个条件判断怎么办? 也好办, 用 else if 解决:

name = “Sam”;

//下面是 if...else if 语句

if(name == “SiC”){

trace(“作者”);

} else if(name == “Flash MX”) {

trace(“Flash MX 是软件名称.”);

} else if(name != “未知”) {

trace(“谁是 ” + name + “?”);

} else {

trace(“未知”);

}

你可以接任意多个的 else if 来进行多个条件的判断, 最后的 else 语句块可有可无(根据实际需要选用). 唯一不足的就是 else if 太多时执行速度较慢(在其它程序语言中也是一大问题). 这时就轮到 switch 出场了

switch

switch

switch 在 Visual Basic 里面是个很好用的命令. 它可以通过判断不同的条件表达式来执行不同操作. 但是在 Actions cript 中就没有那么大的弹性了. 因为 Actions cript 中 switch 的条件被固定为 ===, 即绝对等于(包括数据类型也要相同), 不像在 VB 中可以额外使用 >, >= 之类的条件运算符. 所以, else if 在需要判断大于小于之类的情况下还是大有用处的. 现在来看看下面的例子:

mynumber = 3; //赋值给 mynumber

//下面是 switch 语句

switch (mynumber) {

case 1:

trace (“这是我希望得到的数字.”);

break;

case 2:

trace (“这个数字比我的小一点.”);

break;

case 3:

trace (“这是我的数字.”);

break;

default:

trace (“这不是我要的数字.”)

}

上面的例子是一个完整的 switch 语句块. 在 case 关键字后面的就是需要满足的条件, 如果都不满足, ActionScipt 会查找是否存在 default 语句块, 如果存在, 则执行其中的语句. 另外, 你可能已经发现在每个语句块后都有一个 break 关键字, 为什么呢? 因为如果没有用 break 来跳出 switch 条件选择语句, 程序会继续向下搜索满足条件的 case 项目(包括 defualt 块)并执行其中的语句. 下面是一个修改后的例子:

mynumber = 3; //赋值给 mynumber

//下面是没有加 break 的 switch 语句

switch (mynumber) {

case 1:

trace (“这是我希望得到的数字.”);

case 2:

trace (“这个数字比我的小一点.”);

case 3:

trace (“这是我的数字.”);

default:

trace (“这不是我要的数字.”)

}

运行一下这个例子, 你会发现会同时输出了 “这是我的数字” 和 “这不是我要的数字”. 为什么? 因为没有了 break, 在运行了满足条件的 case 3: 语句块后, 条件选择语句仍会继续执行, 而 default 块作为默认条件, 它总是会被执行, 从而产生了这样的结果. 一些常见的程序错误也就由此而来.

在 Actions cript 中还有一个用于循环的 continue 命令, 它可以直接跳到所在循环的条件检测部分(即立即进行下一次循环的条件判断). 这个命令不常用到, 所以在这里没有讲解. .

循环语句--for

循环语句

for

对于 for 循环, 我想大多数读者都不会陌生. 下面是一个求 1 到 100 的自然数之和的程序段.

var sum = 0;

//下面是 for 循环

for (var i=1; i<=100; i++) {

sum = sum + i;

}

trace (“sum=”+sum);

for 后面括号里面的内容分为三部分: 初始值; 循环条件; 循环值变化方式. 对于初始值没什么可说的, 随便取; 循环条件就是在什么条件下继续循环, 只要懂得逻辑表达式就可以了; 循环值的变化方式可以用任意的赋值语句来改变. 下面是一个修改后的例子:

var sum = 0;

//下面是 for 循环

for (var i=2; i<100; i+=2) {

sum = sum + i; //trace(i);

}

trace(“sum=”+sum);

上例中我把初始值 i 改为了 2, 条件改为 <100 (即不包括 100), 循环值变成每次加 2. 运行后看看结果, 结果是 1 到 100 的开区间中所有双数之和. 如果不清楚循环内部的工作机理, 可以删除上例中 for 循环体内 //trace(i); 前的双斜杠, 运行代码时会在输出窗口中列出每次的 i 值. 那么如果初值不满足循环条件会怎样? 你可以把 i=2 改为 i=100 看看.

对应于 for 还有一个 for...in 循环, 这涉及到数组和对象的内容, 在后面会介绍

while & do...while

while & do...while

说实在话, 对于一般的编程 while 用得不多. 但是在需要的时候你才会发现它的价值.

while 循环在运行时遵循下面的步骤:

检查 while 后面括号内的条件是否成立.

如果条件成立, 运行语句块内的语句. 否则结束循环, 运行循环体后面的语句.

运行完语句块内的语句后回到第一步.

n = 0;

//下面是 while 循环

while(n < 5) {

n++;

}

trace(“n=”+n);

上面的例子运行结果为 n=5. 当 n 小于 5 时循环的条件成立, 于是运行其中的 n++ (即 n 增加 1). 当 n 等于 5 时, 因为循环条件已经不成立, 所以中止循环, 执行后面的 trace 语句.

来源: 闪吧

篇5:sybase流程控制

1.变量声明与赋值

全局变量由系统预定义,以符号@@打头,

局部变量声明使用Declare语句,这个变量必须以符号@开头,后跟一个标识符。

Declare @变量名 数据类型[,@变量名 数据类型,……]

变量赋值使用Select语句,未赋值的变量其值为Null。

举例:

Declare @msg char(50)

Select @msg=’How are you?’

Select @msg=emp_name from employee

Where emp_id=12345678

2.SQL语句块

Begin

Statement Block/*多个顺序执行的SQL 语句*/

End

3.条件语句

If 条件表达式

语句(块)

Else

语句(块)

举例:

if(select max(id) from sysobjects)<50

print ‘数据库里没有用户创建的对象‘

else

select name,type,id from sysobjects where id>50

4.循环语句

While 条件表达式

语句(块)

●两个特殊的循环控制语句:

Continue 执行下一次循环

Break 退出当前循环

举例:

While(select avg(price) from titles)>$20

Begin

Update titles set price=price/2

If(select avg(price) from titles)<$40

Break

Else

Continue

End

5.其它控制语句

◇Return语句——无条件结束当前过程,并可返回给调用者的一个状态值:Return[整数表达式]

◇Print语句

◇RaiseError语句

◇Waitfor语句

篇6:Flash AS 入门“for”循环语句及Demo

本节应掌握的知识要点:

①for循环应用;②nextFrame、prevFrame()动作应用;③层深度的进一步理解,

与条件判断语句一样,循环语句也是最具有实用性的语句,在满足条件时程序会不断重复执行,直到设置的条件不成立才结束循环,继续执行下面的语句。

这1讲我们将学习一个最常用的for循环语句和两个动作语句nextFrame()、prevFrame()。

for循环语句格式如下:

for(变量初始值;循环条件;进入下一循环){

条件成立时执行的动作}

nextFrame()进入下一帧并停止在该帧

prevFrame()返回前一帧并停止在该帧

请看示例动画“实例1-8”。

实例1-8 for()循环语句应用

画面上是一个简单的线条变幻特效,点击“删除”按钮线条会全部消失,点击“向右”按钮,会显示另一个特效,如果不点击删除按钮直接点击“向右”按钮,会显示另一个特效。这个效果就是运用for循环语句对一个含有简单动作补间、实例名为“line”的影片剪辑进行循环复制实现的。

打开源文件看看,场景上有【按钮】、【mc】、【as】3个图层。【按钮】图层第1帧上有一个“删除”按钮和一个“向右”按钮,第2帧上有一个“返回”按钮;【mc】图层上是一个实例名为“line_mc”的影片剪辑。

在【as】图层第1帧上的语句:

stop();

line_mc._x=120;

line_mc._y=220;

line_mc._visible= 0; //设置作为父本的影片剪辑“line_mc”不可见。

for (i=1; i<100; i++) { //设定变量i的初始值为1,设定循环条件为i<100,进入下一循环时变量i自加1。

line_mc.duplicateMovieClip(“line_mc”+i, i); //复制新影片剪辑。

_root[“line_mc”+i]._x = line_mc._x+3*i; //设置新复制的影片剪辑的横坐标。

_root[“line_mc”+i]._rotation = 3.6*i; //设置新复制的影片剪辑的旋转参数。

}

“删除”按钮上的语句:

on (release) {

for (i=1; i<100; i++) {

removeMovieClip(“line_mc”+i);

}

}

“向右”按钮上的语句:

on (release) {

nextFrame(); // 进入并停止在下1帧

}

在【as】图层第2帧上的语句:

for (i=2; i<100; i=i+2) {

line_mc.duplicateMovieClip(“line_mc”+i, i);

_root[“line_mc”+i]._x = line_mc._x+3*i;

}

“返回”按钮上的语句:

on (release) {

prevFrame(); //返回前1帧

}

我们来分析一下语句的执行过程,影片开始播放时停留在第1帧上,将被复制的父本影片剪辑在场景上的坐标定义到(120,200)位置,并使其不可见,接下来根据for语句小括号“()”里设置的参数,开始执行循环体内的语句,

第一个参数定义了变量i被赋予初始值为“1”,第2个参数定义了循环的条件为i<100,当满足这个条件时,将循环执行大括号“{}”内的语句块,第3个参数i++,定义了在每一次循环结束时i的值加1,直到超过i<100的条件为止才停止循环。

循环体大括号“{}”内的动作是复制实例名为“line_mc”的影片剪辑,并为新复制的影片剪辑命名为“line_mci”,层深度为“i”,设置其横坐标位置为场景上的父本“line_mc”影片剪辑的横坐标加上“3*i”像素,并旋转3.6*i度。

当循环开始时,i的值为1,符合i<100的条件,于是复制出第一个新影片剪辑,名称为“line_mc1”,在父本“line_mc”的位置上右移3个像素,并旋转3.6度。至此第一次循环结束,i的值加1。继而进行下一轮循环。

如此不断的循环,直至i的值为100时,便超出了设置的条件,于是循环结束,停止复制“line_mc”影片剪辑。

此时,场景上新复制出的影片剪辑以横向相差3像素、旋转相差3.6度等距排列并同时播放,从而形成了有规律奇妙变幻的特效。

再来分析“删除”按钮上的语句,与第1帧上的循环条件一样,差别只是循环体内执行的动作不同,当满足条件时循环删除上一步新复制出的所有影片剪辑。

点击“向右”按钮时,播放头进入第2帧,再按照新的循环条件循环复制线条,并为新复制的线条赋予新的属性值。

可以看到,第2帧的语句里,循环条件里面i的初始值为2,每循环一次i递增2,设置的层深度为i,即每个复制出的新影片剪辑所占用的都为偶数深度层。

新影片剪辑的属性设置与第1帧上所不同的仅仅是减去了旋转属性的设置,我们看到的又是第2种特效。

如果在第1帧不点击“删除”按钮而直接点击“向右”按钮,我们会看到第3种特效。这是由于上一次复制的影片剪辑没有删除,在第2帧上所有偶数深度层上的线条被新复制出的线条替换掉了,而奇数深度层上原来的线条则保留了下来,由此就组合出了另一种效果。 点击第2帧上的“返回”按钮,播放头回到第1帧,再一次按照第1帧的动作脚本循环复制“line_mc”,于是第一个特效又出现在场景上。

在设置循环语句的条件时,必须注意条件的逻辑性和合理性,特别要避免程序陷入死循环。

比如,如果将以上for循环的参数设置为for(i=1; i>0; i++),这个条件就会永久成立,导致程序陷入死循环。

篇7:水电站自动化控制流程

开机前准备:

1. 检查各设备工作电源控制电源是否正常投入(观察屏幕显示或灯光指示)包括保

护装置、机组PLC、调速器、励磁、断路器、温度巡检、转速信号装置等。

2. 高压柜断路器操作控制把手应在工作位置,断路器应在分闸位置,隔离刀闸已合

上,在操作隔离刀闸之前应确定断路器已在分闸位置。

3.

4. 调速器锁锭销已退出,调速器压力油压力正常 若出现保护动作停机需检查是什么动作而停机将其保护装置复位,若是差动保护

动作,一般需进行机组检查确定没问题才能再次开机

5.

6.

7. 直流合闸母线电压不低于200V 励磁装置内阳极刀闸应在合位,主要针对机组再调试过程中及机组检修后需检查 闸阀控制箱上面的波动开关除了需要手动开/关闸阀打到“现场”外,正常运行应

打到“远控”位置,以免机组紧急停机时不能及时关闭闸阀

8. 主接线图上断路器位置应显示绿色(表示分闸),并网后应显示红色,灰色显示

表示断路器控制回路有问题不能进行并网,防止事故发生时不能准确、快速的脱离电网而造成损失或不必要的'麻烦。

9. 以上第8点可以通过观察保护装置的遥信显示来代替,断路器控制回路接线在差

动保护装置上,其遥信3、4、5、6、7、8分别表示外部开关量输入状态,用于故障报警或事故跳闸。其中遥信1、2表示断路器位置见下表说明:

开机准备灯亮的条件:

机组无事故(发电机差动保护动作,发电机后备保护动作,发电机失磁保护动作,事故低油压,温度巡检温度过高,转速140,前导瓦过温,中导瓦过温,后导瓦过温,发电机定子过温),制动复归,导叶全关,机组出口断路器分位,没有停机输出,没有事故停机输出,没有紧急停机输出,

开机条件:

开机准备灯亮,就可以自动开机,如要开机直接并网应先将同期转换开关打到“自准”位置。

若使用手动并网,将对应机组的同期转换开关打到“手准”,同期试验开关打到“同期投入”切误打到“试验”位置,防止非同期合闸,观察“准步表”频率及电压指针应在水平位置如果不在该位置分别通过“转速调整”及“励磁调整”把手进行调节,待准步表中间的相位指针指示12点钟时,旋动断路器控制把手到合闸位置进行合闸

自动开机流程:(在自动开机过程中不要复位操作,并网完成后再复位故障)

操作开机按钮(应先观察蜗壳上的压力表指示压力正常即已经平压,若没有压力需手动打开旁通阀进行平压)→开主阀→开冷却水(需手动打开冷却水) (在这时判断:前导冷却水没有中断,中导冷却水没有中断,后导冷却水没有中断,)→开机令给调速器,→开机辅助保持到发电机出口断路器合闸→转速80%时合灭磁开关→转速95%时且灭磁开关在合位后自动起励→这时程序判断机组有电压后就投同期(注意投同期前同期手柄要在自动位置不然投不了,还有同期电源要在开的位置)→自动并网由自动同期装置完成。并网完成后将自准转换开关打到切除位置即中间位置。并网后根据水量大小来调节负荷,此时最好先将无功调整到正二百左右(最好使用‘励磁调整――增’把手操作),防止发电机失磁。再根据功率因数来调整有功无功

自动停机流程:(在自动停机过程中不要复位操作,停机完成后再复位故障)

操作停机按钮→自动减有功和无功→减到设定值(功率设置画面可以设置:就是有功无功跳闸定值,一般不需修改)→跳发电机出口断路器→正常停机不跳灭磁开关→停机输出给调速器和励磁(停机输出保持到制动复归)→转速到35%时投入制动(需手动)→通过延时制动复归(这个时间可以设定)→关冷却水(需手动)

事故停机和紧急停机流程:

有事故时(如保护装置动作跳闸,机组温度过高)或手动操作事故停机按钮和紧急停机把手时,直接跳发电机出口断路器和灭磁开关,同时发送停机令到调速器和励磁装置进行机组停机,后面和正常停机一样。操作紧急停机按钮或调速器事故低油压及转速140%进行紧急停机的同时自动关闭主闸阀

当显示温度升高时(温度巡检装置上面通道1DD6为发电机温度设定85℃报警,

90℃时紧急停机。 7DD10通道为瓦温设定60℃报警,65℃时紧急停机),应适当减少负荷

自动调节功率:可以按有功无功设定值调节。

有功无功调整给定值: 按给定的有功无功调节机组当前值至给定值

有功无功分段给定值: 调节时若给定值与当前值的差值大于分段给定值将进行快速调整

有功无功漂移给定值:

有功无功跳闸给定值:

电机出口断路器

调节时的值水电站自动化控制流程和设定的差值 停机减有功无功的值,减到小于或等于该值后发跳闸令跳发

篇8:VBA程序流程控制语句教学反思

――晋兴职校杜小荣

1、深入教材分析,以学生认知的角度准确定位设计

很多学生都曾未涉及程序设计、程序语言,所以若是直接深入程序,为达标准而教,会显得很被动,且学生的兴趣和积极性会被大大削弱,会妨碍学生学业的成长。程序入门有一段过程,故开始引入一些身边的现实问题来分析,按常规逻辑思考实际问题,也就是问题的自然描述,无形地转变对问题的结构有序设计,使得问题的解决平易化,学生的思想来得轻松,比较容易接受,不被程序的相关概念束缚而感觉到压抑。

在真正编制程序环节时,我是安排通过分步的设计,构建程序主体―>充分必要条件设定―>变量定义―>输出控制,把复杂的逻辑简单优化,让学生考虑起来思路更清晰易懂,体验到编程的乐趣和成就感。

程序的完整和发散的完善也是很重要的,培养学生严谨的思维逻辑能力,当学生有了编程的乐趣之后,这种意念更能启迪和激发学生其他的能力,包括创新能力。所以学生有了体验之后,想把自己的成果更完美化的同时,也提升了自己的要求和提高了自信。在本课时中的一个负值的完整考虑,就多了一个分支嵌套,对学生来说可能有些稍难,但可请学生参考书本后面的程序进行尝试,就会有收获。这样也有利于学生的自学能力的拓展,学习中如何更好地结合书本。

2、学生的兴趣和积极性的激发,有着事半功倍的实效。

兴趣和积极性是投入学习的两个动力,如果这两个动力都能被激发,那么学生的注意力则是高度集中的状态,对于课上知识的理解甚是深入,理解得更透彻,学生的自觉性也在无意之中贯彻了,主动意识在课堂上的主体上有了更好的体现,促进了学生的个性和学业的健康发展。这样的学习带来的效果是显而易见的,是更讲得上效率的,是事半功倍的。

在实践编程体验中,不仅激发学生学习兴趣获得知识,更能启迪学生思维、培养科学创新能力,为学生的进一步发展创造一个新的局面。

3、小组合作探讨交流中,教师应深入引导,“穿针引线”。

在实践中学会交流,学会合作,并意识到合作是学习的有效途径,培养集体意识,很好实现课堂教学的情感目标。

通过合作学习的形式,每个学生都有机会提出自己的想法,同时又分享别人的思想,在讨论不同方法优缺点的争辩过程中,学生的思路就会越来越清晰、明朗,能多角度、多层面地寻求问题解决的方法,对于增强学生的自信,培养创造性思维十分有利。更进一步,许多在当前的认知水平下仅凭个人的能力难以解决的.问题,却往往可以通过集体的智慧被学生们创造性地加以解决。合作不仅能有效地调动所有学生的积极投入,充分发挥每个人的聪明才智,而且能激发每个人高度的求异思维。

在学生开展合作与交流的时候,教师需要观察小组的活动情况,包括学生个人的参与情况,以及与他人合作的情况;需要深入到小组中,了解学习任务的完成情况,分析他们的解法,及时发现他们的失误,以便提供必要的提示或纠正,并能及时回答学生提出的问题。对个别学生或个别小组有独到见解或创新性思想时,教师要及时给予鼓励支持和开拓。在整个过程中,我们采取的都应是一种友好的、建设性的态度和行为,既不能过多地干预学生思考的过程和结果,又不能对学生的困难和疑问袖手旁观。

在指导全班学生共同完成对新知识的总结、提炼与运用时,教师需要倾听学生的汇报,回答学生提出的问题,概括和提炼学生已发现的结论,提供学生运用新知识的情境,及时给出促进学生发展评价意见等等。

4、重视对交流和评价的设计。

学生实践很重要,时间很宝贵,但我们师生、学生之间的交流讨论和相互之间的客观评价将有更好地积极促进作用,学生得以更好地总结经验,归纳,甚至会有新的创新方案的产生和进一步学习的动力。

所以课上我安排了较多的交流时间,因为对于学生学习程序设计才处于导入阶段,问题设置简单化,但内容和模块知识衔接较多,故本课时安排学生上机的时间控制上应该比较妥当,以后基本知识深入熟识后,学生编程体验的时间可以再增加。

其实积极交流和客观评价在每堂课上的参与和思想碰撞是很重要的,这是我个人的关注方向,以前是我们一直没做好。

【Flash的流程控制与循环控制语句】相关文章:

1.生产计划与控制

2.Unix Shell 中的流程控制语句Windows系统

3.Erlang中的函数与流程控制介绍

4.会计监督与会计控制

5.控制近义词

6.交通安全与智能控制个人简历

7.内部控制制度

8.会议成本控制

9.成本控制论文

10.企业内部控制制度

下载word文档
《Flash的流程控制与循环控制语句.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度: 评级1星 评级2星 评级3星 评级4星 评级5星
点击下载文档

文档为doc格式

  • 返回顶部