PowerBuilder函数详解(上)

PowerBuilder函数详解(上)
PowerBuilder函数详解(上)

PowerBuilder函数详解(上)

作者佚名来源技术文章总汇发布时间 2005-07-13 浏览次数 4016 字体

大中小

https://www.360docs.net/doc/f811401664.html,/user50/langjida/index.html

https://www.360docs.net/doc/f811401664.html,/SoftChannel/72348977504190464/20030621/1709460.s

https://www.360docs.net/doc/f811401664.html,/cnread1/dnwl/cxsj/pb/syjq/index.html(PB设计技巧集

https://www.360docs.net/doc/f811401664.html,/5801.html

https://www.360docs.net/doc/f811401664.html,/

https://www.360docs.net/doc/f811401664.html,/pb/zsjckdzx.htm

https://www.360docs.net/doc/f811401664.html,/archiver/fid-75.html

数组函数

LowerBound()

LowerBound()功能得到指定数组第n维的下界。

语法LowerBound ( array {, n } )

参数array:数组名n:数值类型,可选项,指定要得到数组哪一维的下界

缺省值为1返回值Long。函数执行成功时返回array数组第n维的下界。如

的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值

NULL,LowerBound()函数返回NULL。

UpperBound()

UpperBound()功能得到指定数组第n维的上界。

语法UpperBound( array {, n } )

参数array:数组名n:数值类型,可选项,指定要得到数组哪一维的上界

缺省值为1 返回值Long。函数执行成功时返回array数组第n维的上界。如

的值超过了指定数组的最大维数,那么该函数返回-1。如果任何参数的值NULL,UpperBound()函数返回NULL。

 Blob(大二进制对象)函数

Blob()

Blob()功能将字符串转换成Blob类型数据。

语法Blob ( text )

参数text: string类型,指定要转换的数据返回值Blob。函数执行成功时返转换后的Blob类型数据;如果text参数的值为NULL,则Blob()函数返回NULL。

BlobEdit()

功能将任意类型的数据插入到Blob类型变量的指定位置。

语法BlobEdit ( blobvariable, n, data )

参数blobvariable:Blob类型的已初始化变量,将向该变量中插入数据n:定插入位置,有效值在1到4,294,967,295之间data:要插入到Blob类型变中的数据,其数据类型可以是任何有效的PowerBuilder数据类型返回值Unsigned long。函数执行成功时返回下次可以插入数据的位置;如果blobvariable变量中空间不够或任何参数的值为NULL,则BlobEdit()函数返NULL。

BlobMid()

功能从Blob变量中提取出一段数据。提取之后,原Blob变量内容不变。

语法BlobMid ( data, n {, length } )

参数data:Blob类型的数据n:指定要提取数据的起始位置,有效值在1到4,294,967,295之间length:可选项,指定要提取数据的长度,以字节为单位,有效值在1到4,294,967,295之间。缺省时提取从指定位置n到末尾的数据返回值Blob。函数执行成功时返回指定字节数的数据。如果n的值大data的字节数,函数返回空。如果n与length的和超过了data数据的字节数那么BlobMid()函数返回剩下的数据,数据长度将小于参数length的值。如任何参数的值为NULL,则BlobMid()函数返回NULL。

Len()

功能得到Blob类型变量的数据长度,以字节为单位。

语法Len ( blob )

参数blob:Blob类型变量返回值Long。函数执行成功时返回blob变量的长度,发生错误时返回-1。如果任何参数的值为NULL,则Len()函数返回

NULL。用法如果在说明Blob类型的变量时指定了变量长度,那么对该变来说,Len()函数得到的就是这个指定的长度。如果在变量说明时未指定变长度,那么PowerBuilder在赋值时调整长度,未赋值Blob类型变量的长度0。

String()

功能将Blob类型变量的值转换成字符串类型。如果Blob类型变量的值不是本型数据,String()函数将其值解释成字符。

语法String ( blob )

参数blob:要对其值进行类型转换的Blob类型变量返回值String。函数执功时返回转换后的数据,失败时返回空字符串("")。如果blob变量中包的数据不是字符串类型的数据,那么String()函数尽可能把数据解释为字符并返回字符串类型数据。如果blob参数的值为NULL,则String()函数返回NULL。

数据类型检查与转换函数

String()

功能按指定格式将数据转换成字符串。String()可以把Date、DateTime、值类型、Time、String类型的数据转换成指定格式的字符串。

语法String(data,{format})

参数data:指定要转换格式的数据,其数据类型可以是Date、DateTime 值类型、Time、String,也可以是包含上述类型数据的Any类型变量form 可选项,string类型,其值指定数据格式。如果data参数的类型为string,必须指定format参数返回值String。函数执行成功时返回以字符串方式表指定数据,如果data参数的数据类型与format参数指定的格式不匹配、format参数指定的格式无效、或data参数不是前面提到的适宜数据类型时String()函数返回空字符串("")。

用法:

format是个用掩码表示的字符串,对data参数为数值类型的情况来说,格为:正数格式;负数格式;零的显示格式;空的显示格式除第一部分必须供外,其它部分可以省略。数值型显示格式中使用两个掩码字符:#和0,中,使用#代表0~9之间的任意数字,0代表每个零都要显示。另外,货币号($或¥)、百分号(%)、小数点(.)、逗号(,)等字符也可以出在格式字符串中,但是,除小数点(.)、逗号(,)能够出现在格式字符和0之间外,其它字符只能放置在格式串的前面或后面,例如,###,###$是个错误的格式串,¥###,###,###是个正确的格式串。省略format参数String()函数使用PowerBuilder缺省格式。注意,如果显示格式有多个部分各部分之间的分号(;)不能省略。其它字符也可以出现在显示格式字符

中(只能放在格式串的开头和末尾),但它们没有特殊意义,系

样显示。例如,用显示格式字符串“收入##”格式化数值12时,显示结果为入12”。对data参数为字符串(String)类型的情况来说,format参数的语格式为:正常字符串格式;空值时格式在“正常字符串格式”中,@代表字串中的任意字符,除此之外的任何字符照原样显示,例如,如果定义了下的格式:(@@)@@@@-@@@@则字符串0166767593显示为:(0 6676-7593对data参数为日期(Date)类型的情况来说,format参数的语格式为:正常日期格式;日期为空值时的格式日期格式中格式字符意义如下:d开头不带0的日数(如8)dd开头带0的日数(如08)ddd星期的英文写(如Mon、Tue)dddd星期的英文全称(如Monday、Tuesday)m开头带0的月份(如8)mm开头带0的月份(如08)mmm月份的英文缩写(如Jan、Feb)mmmm月份的英文全称(如January、February)yy两位数字示的年份(如97)yyyy四位数字表示的年份(如1997)另外,还可以使用面的关键字作为日期的显示格式:[General] Windows系统中定义的短日式[LongDate] Windows系统中定义的长日期格式[ShortDate] Windows系中定义的短日期格式对data参数为时间(Time)类型的情况来说,语法格为:正常时间格式;时间为空值时的格式时间格式中格式字符意义如下:开头不带0的小时(比如6)hh开头带0的小时(比如06)m开头不带0的分(比如6)mm开头带0的分钟(比如06)s开头不带0的秒(比如6)ss开0的秒(比如06)f开头不带0的微秒,可以指定1~6个f,每个f代表一部分秒AM/PM用AM/PM显示上、下午时间,12小时制am/pm用am/pm显示上下午时间,12小时制A/P用A/P显示上、下午时间,12小时制a/p用a/p显示上、下午时间,12小时制另外,显示格式中还可以使用关键字[Time],它示按当前Windows系统定义的格式显示时间。对data参数为日期时间(DateTime)类型的情况来说,语法格式为:正常日期时间格式;日期时为空值时的格式日期时间类型使用的掩码就是把日期掩码和时间掩码结合来即可。

Time()

功能把其它类型的数据转换为Time类型的值。该函数有三种语法格式:一、将DateTime类型或第一个值是DateTime或Time的Blob值转换成Tim 型的值;语法二、将其值是个有效时间的字符串转换成Time类型的值;语三、将表示时、分、秒、以及微秒的整数组合成一个时间值。下面分别予介绍:

语法一、将DateTime类型或第一个值是DateTime或Time的Blob值转换成Time类型的值

语法Time ( datetime )

参数datetime:DateTime类型的值或第一个值是DateTime或Time的Blob 型的值。当该参数是Blob类型变量时,把该变量第一个值转换为Time类型值,其余部分被忽略。datetime参数也可以是包含上述类型数据的Any类变量返回值Time。函数执行成功时返回相应的Time类型值。如果datetim 数中的值不是有效的PowerScript时间或数据类型不兼容,那么Time()函数回00:00:00.000000。如果datetime参数的值为NULL,则Time()函数返回NULL。

语法二、将其值是个有效时间的字符串转换成Time类型的值

语法Time ( string )

参数string:string类型,其值包括一个有效的以字符串形式表示的时间(如9am或10:25),string参数也可以是包含时间类型数据的Any类型变量回值Time。函数执行成功时返回相应的Time类型值。如果string参数中的不是有效的PowerScript时间或数据类型不兼容,那么Time()函数返回00:00:00.000000。如果string参数的值为NULL,则Time()函数返回NUL 语法三、将表示时、分、秒、以及微秒的整数组合成一个时间值

语法Time ( hour, minute, second {, microsecond } )

参数hour:integer类型,指定时间中的小时,从0到23minute:integer类型,指定时间中的分钟,从0到59second:integer类型,指定时间中的秒从0到59microsecond:integer类型,可选项,指定时间中的微秒,从0到32767返回值Time。函数执行成功时返回由hour、minute、second、microsecond 四个参数确定的时间。如果这四个参数中任何一个参数使用无效值(比如小时指定为44),则Time()函数返回NULL。

数值计算函数

Abs()

功能计算绝对值。

语法Abs ( n )

参数n:要得到绝对值的数值型变量或表达式返回值返回值的数据类型与数据类型相同,函数执行成功时返回n的绝对值。如果参数n的值为NULL Abs()函数返回NULL。

Ceiling()

功能返回大于n的最小整数。

语法Ceiling ( n )

参数n:数值型变量或表达式返回值返回值的数据类型与n的数据类型相同函数执行成功时返回大于n的最小整数。如果参数n的值为NULL,Ceiling 数返回NULL。

Cos()

功能计算余弦,其中参数以弧度为单位。

语法Cos ( n )

参数n:数值型变量或表达式返回值Double。函数执行成功时返回n的余弦如果参数n的值为NULL,Cos()函数返回NULL。

Exp()

功能计算e的n次方。

语法Exp ( n )

参数n:指定幂值返回值Double。函数执行成功时返回e(约等于2.71828的n次方。如果参数n的值为NULL,Exp()函数返回NULL。

Fact()

功能计算n的阶乘。

语法Fact ( n )

参数n:数值型变量或表达式返回值Double。函数执行成功时返回n的阶乘如果参数n的值为NULL,Fact()函数返回NULL。

Int()

功能得到小于等于n的最大整数。

语法Int ( n )

参数n:数值型变量或表达式返回值Integer。函数执行成功时返回小于等的最大整数。如果n的值太小或太大,超过了整数的表示范围,则函数返0。如果参数n的值为NULL,Int()函数返回NULL。

Log()

功能计算n的自然对数。

语法Log ( n )

参数n:数值型变量或表达式,其值必须大于0返回值Double。函数执行成时返回n的自然对数。如果n小于等于0,将导致运行错误。如果参数n的值NULL,Log()函数返回NULL。

LogTen()

功能计算n的常用对数(以10为底)。

语法LogTen ( n )

参数n:数值型变量或表达式,其值必须大于0返回值Double。函数执行成时返回n的常用对数。如果n小于等于0,将导致运行错误。如果参数n的值

NULL,LogTen()函数返回NULL。

Max()

功能求两个数中的最大值。

语法Max ( x, y )

参数x:数值型变量或表达式,参加比较的第一个数y :数值型变量或表达式,参加比较的第二个数返回值以x、y中数据类型更精确的数据类型作为函数的返回值数据类型。函数执行成功时返回参数比较的两个数中更大者如果任何参数的值为NULL,Max()函数返回NULL。

Min()

功能求两个数中的最小值。

语法Min( x, y )

参数x:数值型变量或表达式,参加比较的第一个数y :数值型变量或表达式,参加比较的第二个数返回值以x、y中数据类型更精确的数据类型作为函数的返回值数据类型。函数执行成功时返回参数比较的两个数中较小者如果任何参数的值为NULL,Min()函数返回NULL。

Mod()

功能求余数。

语法Mod ( x, y )

参数x:数值型变量或表达式,被除数y :数值型变量或表达式,除数返回以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数行成功时返回x除以y所得的余数。如果任何参数的值为NULL,Mod()函回NULL。

Pi()

功能计算n与Pi(3.14159265358979323...)的乘积。

语法Pi ( n )

参数n:数值型变量或表达式返回值Double。函数执行成功时返回n与

Pi(3.14159265358979323...)的乘积。发生错误时返回-1。如果参数n的值NULL,Pi()函数返回NULL。

Rand()

功能得到1与n之间的一个伪随机数。

语法Rand ( n )

参数n:数值型变量或表达式,指定要产生的伪随机数的上界。有效值在

32,767之间返回值与n的数据类型相同。函数执行成功时返回1与n之间的个伪随机数,包括1和n在内。如果参数n的值为NULL,Rand()函数返回NULL。

Randomize()

功能初始化伪随机数发生器,这样让应用程序每次使用不同的伪随机数序列。

语法Randomize ( n )

参数n:数值型变量或表达式,指定伪随机数生成器使用的起始值,不同起始值可以生成不同的伪随机数序列。当n的值为0时,该函数把系统时钟为伪随机数生成器的起始值,这样可以生成不可重复的伪随机数序列。当的值不为0时,可以产生不同的伪随机数序列,但是,如果两次使用相同伪随机数生成器起始值,那么两次生成的伪随机数序列相同。n的值在0到32,767之间返回值Integer。极少使用该函数的返回值。

Round()

功能将x四舍五入到n位。

语法Round ( x, n )参数x:要四舍五入的数值型数据n:整数类型,指定从个小数位上四舍五入x。有效值在0到18之间返回值Decimal。函数执行成时返回将x四舍五入到小数点后第n位的数值,如果函数执行失败或任何参的值为NULL,Round()函数返回NULL。

Sign()

功能确定n是整数、负数还是零。

语法Sign ( n )

参数n:数值型变量或表达式,指定要测试符号的值返回值Integer。当n大0时返回1;当n小于0时返回-1;当n等于0时返回0。如果参数n的值为NULL,Sign()函数返回NULL。

Sin()

功能计算正弦,其中参数以弧度为单位。

语法Sin( n )

参数n:数值型变量或表达式返回值Double。函数执行成功时返回n的正弦如果参数n的值为NULL,Sin()函数返回NULL。

Sqrt()

功能计算平方根。

语法Sqrt ( n )

参数n:数值型变量或表达式,指定要计算平方根的数据返回值Double。数执行成功时返回n的平方根。如果n是负数,则执行该函数时引发运行错误。如果参数n的值为NULL,Sqrt()函数返回NULL。

Tan()

功能计算正切,其中参数以弧度为单位。

语法Tan( n )

参数n:数值型变量或表达式返回值Double。函数执行成功时返回n的正切如果参数n的值为NULL,Tan()函数返回NULL。

Truncate()

功能截断数值到指定的小数位。

语法Truncate ( x, n )

参数x:要截断的数值型数据n:整数类型,指定从哪个小数位上截断x。效值在0到18之间返回值Decimal。函数执行成功时返回将x截断到小数点第n位的数值,如果函数执行失败或任何参数的值为NULL,Truncate()函返回NULL。所谓截断就是舍弃指定位之后的数值。

字符串操作函数

Fill()

功能建立一个由指定字符串填充的指定长度的字符串。

语法Fill ( chars, n )

参数chars:string类型,指定用于重复填充的字符串n:long类型,指定由函数返回的字符串的长度返回值String。函数执行成功时返回n个字符的字串,该字符串以参数chars中的字符串重复填充而成。如果参数chars中的符个数多于n个,那么使用chars字符串的前n个字符填充函数返回的字符串;如果参数chars中的字符个数少于n个,那么使用chars字符串反复填直到返回的字符串长度达到n为止。如果任何参数的值为NULL,Fill()函数回NULL。

Left()

功能得到字符串左部指定个数的字符。

语法Left ( string, n )

参数string:string类型,指定要提取子串的字符串n:long类型,指定子串度返回值String。函数执行成功时返回string字符串左边n个字符,发生错时返回空字符串("")。如果任何参数的值为NULL,Left()函数返回NUL 如果n的值大于string字符串的长度,那么Left()函数返回整个string字符串

但并不增加其它字符。

LeftTrim()

功能返回指定字符串删除了左部空格后的字符串。

语法LeftTrim ( string )

参数string:string类型,指定要删除左部空格的字符串返回值String。函行成功时返回删除了string字符串左部空格的字符串,发生错误时返回空串("")。如果任何参数的值为NULL,LeftTrim()函数返回NULL。

Len()

功能得到字符串的长度。

语法Len (string)

参数string:string类型变量返回值Long。函数执行成功时返回字符串的长度,发生错误时返回-1。如果任何参数的值为NULL,则Len()函数返回NULL。

Lower()

功能将字符串中的大写字母转换为小写字母。

语法Lower ( string )

参数string:要将其中的大写字母转换为小写字母的字符串返回值String。数执行成功时返回将大写字母转换为小写字母后的字符串,发生错误时返空字符串("")。如果string参数的值为NULL,Lower()函数返回NULL。Match()

功能确定字符串中是否包含指定模式的字符。

语法Match ( string, textpattern )

参数string:string类型,指定要检查是否匹配指定模式的字符串textpattern:string类型,指定文本匹配模式返回值Boolean:如果字符串string与模式textpattern相匹配,则函数返回TRUE,否则返回FALSE。如指定的匹配模式无效或上述两个参数中的任何一个未曾赋值,那么Match 数返回FALSE。如果任何参数的值为NULL,Match()函数返回NULL。

用法textpattern参数的写法与正则表达式十分相似,它由元字符和普通字组成。每个元字符都有不同的匹配含义,普通字符则与其自身相匹配。下是匹配模式中使用的元字符及其意义:

^指示字符串的开始,例如,^asd表示以asd开头的字符串,字符串asdfg 模式^asd匹配,而字符串basdfg与模式^asd不匹配。

$指示字符串的结束,例如,red$表示所有以red结束的字符串均与该模式

配,而redo与模式red$不匹配。

.匹配任意单个字符,例如,^&&$匹配任何六个字符组成的字符串。

[]匹配括号中列出的字符,例如,^[ABC]$匹配由一个字符组成的字符串,值只能是A或B或C。

-与方括号一起,指定匹配字符的范围,例如,^[A-Z]$只匹配那些由一个字母组成的字符串。方括号里还可以使用^字符,表示匹配不在指定范围任何字符,例如,[^0-9]匹配除数字外的任何字符。

*,+,?这些符号跟在一个字符后面表示该字符可以出现的次数。星号(表示可以出现0次或任意次;加号(+)表示可以出现多次,但至少出现一次;问号(?)表示出现0次或一次。例如,A*匹配0个或多个A(没有A、A、AA、AAA、AAAA、**);A+匹配1个或多个A(A、AA、AAA、AAAA、**);A?匹配空串或1个A。

斜杠()是转义字符,它去掉特殊字符的特殊含义,比如,模式$匹配字$,模式\匹配字符。

Mid()

功能取字符串的子串。

语法Mid ( string, start {, length } )

参数string:string类型,指定要从中提取子串的字符串start:long类型,定子串第一个字符在string字符串中的位置,第一个位置为1length:long 型,可选项,指定子串的长度返回值String。函数执行成功时返回string字串中从start位置开始、长度为length的子串。如果start参数的值大于strin 字符个数,那么Mid()函数返回空字符串。如果省略了length参数或length 数的值大于从start开始、string字符串中余下字符的长度,那么Mid()函数回所有余下的字符。如果任何参数的值为NULL,Mid()函数返回NULL。Pos()

功能在一个字符串中查找所包含的另一个字符串的起始位置。

语法Pos ( string1, string2 {, start } )

参数string1:string类型,指定要从中查找子串string2的字符串string2:string类型,指定要在string1中查找的字符串start:long类型,可选项,指从string1的第几个字符开始查找。缺省值为1返回值Long。函数执行成功返回在start位置后string2在string1中第一次出现的起始位置。如果在strin 中按指定要求未找到string2、或start的值超过了string1的长度,那么Pos 数返回0。如果任何参数的值为NULL,Pos()函数返回NULL。

用法Pos()函数在字符串查找时区分大小写,因此,"aa"不匹配"AA"。

Replace()

功能将一个字符串中指定个数的字符串替换为另一个字符串。

语法Replace ( string1, start, n, string2 )

参数string1:string类型,指定要使用string2替换其中一部分内容的字符start:long类型,指定要从哪个字符位置开始替换字符串,字符串中第一字符的位置为1n:long类型,指定要替换多少个字符string2:string类型定用哪个字符串替换string1的部分字符返回值String。函数执行成功时返替换后的字符串,发生错误时返回空字符串("")。如果任何参数的值为NULL,Replace()函数返回NULL。用法如果start参数指定的位置超过了string1的长度,那么Replace()函数把将string2拼接到string1的后面形成的符串返回。如果n的值为0,那么Replace()函数把string2插入到string1指置后形成的字符串返回。

Right()

功能从字符串右端取指定个数字符。

语法Right ( string, n )

参数string:string类型,指定要提取子串的字符串n:long类型,指定子串度返回值String。函数执行成功时返回string字符串右边n个字符,发生错时返回空字符串("")。如果任何参数的值为NULL,Right()函数返回NULL。如果n的值大于string字符串的长度,那么Right()函数返回整个str 字符串,但并不增加其它字符。

RightTrim()

功能删除字符串尾部空格。

语法RightTrim ( string )

参数string:string类型,指定要删除右部空格的字符串返回值String。函行成功时返回删除了string字符串右部空格的字符串,发生错误时返回空串("")。如果任何参数的值为NULL,RightTrim()函数返回NULL。Space()

功能生成一个由空格组成的指定字符个数的字符串。

语法Space ( n )

参数n:long类型,指定要填充的空格个数,也就是填充后返回的字符串度返回值String。函数执行成功时返回由n个空格组成的字符串,发生错误返回空字符串。如果参数n的值为NULL,Space()函数返回NULL。

Trim()

功能删除字符串首部和尾部的空格。

语法Trim ( string )

参数string:string类型,指定要删除首部和尾部空格的字符串返回值Stri 函数执行成功时返回删除了string字符串首部和尾部空格的字符串,发生时返回空字符串("")。如果任何参数的值为NULL,Trim()函数返回NU Upper()

功能将字符串中的小写字母转换为大写字母。

语法Upper( string )

参数string:要将其中的小写字母转换为大写字母的字符串返回值String。数执行成功时返回将小写字母转换为大写字母后的字符串,发生错误时返空字符串("")。如果string参数的值为NULL,Upper()函数返回NULL。

数据结构实验指导书(2016.03.11)

《数据结构》实验指导书 郑州轻工业学院 2016.02.20

目录 前言 (3) 实验01 顺序表的基本操作 (7) 实验02 单链表的基本操作 (19) 实验03 栈的基本操作 (32) 实验04 队列的基本操作 (35) 实验05 二叉树的基本操作 (38) 实验06 哈夫曼编码 (40) 实验07 图的两种存储和遍历 (42) 实验08 最小生成树、拓扑排序和最短路径 (46) 实验09 二叉排序树的基本操作 (48) 实验10 哈希表的生成 (50) 实验11 常用的内部排序算法 (52) 附:实验报告模板 .......... 错误!未定义书签。

前言 《数据结构》是计算机相关专业的一门核心基础课程,是编译原理、操作系统、数据库系统及其它系统程序和大型应用程序开发的重要基础,也是很多高校考研专业课之一。它主要介绍线性结构、树型结构、图状结构三种逻辑结构的特点和在计算机内的存储方法,并在此基础上介绍一些典型算法及其时、空效率分析。这门课程的主要任务是研究数据的逻辑关系以及这种逻辑关系在计算机中的表示、存储和运算,培养学生能够设计有效表达和简化算法的数据结构,从而提高其程序设计能力。通过学习,要求学生能够掌握各种数据结构的特点、存储表示和典型算法的设计思想及程序实现,能够根据实际问题选取合适的数据表达和存储方案,设计出简洁、高效、实用的算法,为后续课程的学习及软件开发打下良好的基础。另外本课程的学习过程也是进行复杂程序设计的训练过程,通过算法设计和上机实践的训练,能够培养学生的数据抽象能力和程序设计能力。学习这门课程,习题和实验是两个关键环节。学生理解算法,上机实验是最佳的途径之一。因此,实验环节的好坏是学生能否学好《数据结构》的关键。为了更好地配合学生实验,特编写实验指导书。 一、实验目的 本课程实验主要是为了原理和应用的结合,通过实验一方面使学生更好的理解数据结构的概念

数据结构课后习题

第一章 3.(1)A(2)C(3)D 5.计算下列程序中x=x+1的语句频度 for(i=1;i<=n;i++) for(j=1;j<=i;j++) for(k=1;k<=j;k++) x=x+1; 【解答】x=x+1的语句频度为: T(n)=1+(1+2)+(1+2+3)+……+(1+2+……+n)=n(n+1)(n+2)/6 6.编写算法,求一元多项式p n(x)=a0+a1x+a2x2+…….+a n x n的值p n(x0),并确定算法中每一语句的执行次数和整个算法的时间复杂度,要求时间复杂度尽可能小,规定算法中不能使用求幂函数。注意:本题中的输入为a i(i=0,1,…n)、x和n,输出为P n(x0)。算法的输入和输出采用下列方法 (1)通过参数表中的参数显式传递 (2)通过全局变量隐式传递。讨论两种方法的优缺点,并在算法中以你认为较好的一种实现输入输出。 【解答】 (1)通过参数表中的参数显式传递 优点:当没有调用函数时,不占用内存,调用结束后形参被释放,实参维持,函数通用性强,移置性强。 缺点:形参须与实参对应,且返回值数量有限。 (2)通过全局变量隐式传递 优点:减少实参与形参的个数,从而减少内存空间以及传递数据时的时间消耗 缺点:函数通用性降低,移植性差 算法如下:通过全局变量隐式传递参数 PolyValue() { int i,n; float x,a[],p; printf(“\nn=”); scanf(“%f”,&n); printf(“\nx=”); scanf(“%f”,&x); for(i=0;i

基于PowerBuilder的学生成绩管理系统的设计与实现-2019年精选文档

基于PowerBuilder 的学生成绩管理系统的设计与实 信息社会的高科技,商品经济化的高效益,使计算机的应用已普及到经济和社会生活的各个领域。计算机虽然与人类的关系愈来愈密切,但还有由于计算机操作不方便而继续用手工进行劳动的人。学生成绩管理和分析系统为教务人员带来了极大的方便。该软件是以汉语编程语言为实现语言,其功能在系统内部有源代码直接完成。通过操作手册,使用者可以了解本软件的基本工作原理。操作人员只需输入一些简单的汉字、数字,即可达到自己的目的。 现今成绩管理的繁琐给教务人员带来了诸多不便,教学办公室缺少一种完善的成绩管理软件,为了方便的管理学生成绩,因此开发了此学生成绩管理和分析系统。 学生成绩管理和分析系统的目标: 1)节约资源,提高学生信息的精确度:能够减少很多不必要的资源,不用像以前那样用冗余的纸张式的管理。大大节省了学院资源。并且计算机的存储与快速查询功能大大提高了学生成绩管理的效率,并且还提高了成绩信息管理的精确度。 2)方便快速的操作,精简人员,节约开支:方便快速的操作,可减少学生信息管理的漏洞,又可减少工作的错误,并且操作非常简单,可减少许多不必要的工作人员,这无论从物质上还

是工作人员的工资上都为学院节约了开支,为学院增加了财富。 1系统分析 成绩管理系统主要针对三类用户:学生、教师、管理员。 个良好的成绩管理系统不仅要求有方快捷的操作、简单有效的管理,而且要有高级的安全性以及很强的通用性。根据需求分析,使用面向对象的设计技术,系统应具有如下的几个功能模块: 1) 用户登录模块 学生用户和教师用户登录以后只能输入相关查询条件进行一系列相关的成绩查询。 管理员登录以后不仅有学生用户和教师用户的所有权限,且可以对数据库和基础信息进行维护。 2) 系统维护模块 若系统在应用过程中出现问题确实需要进行初始化时,系统 管理员就可以对系统进行初始化操作。 3)基本信息维护模块 在此模块中,系统管理员可以对基本信息进行维护,如对班级信息、学生信息、课程信息等进行维护。 4)数据库管理模块 此模块可以对数据库中的数据进行备份和还原。 5)成绩管理模块 此模块只有管理员有权限进行操作,管理员登录后可以对学生成绩进行插入、删除、修改、保存等操作并且能导入和导出学

根式函数值域定稿版

根式函数值域 HUA system office room 【HUA16H-TTMS2A-HUAS8Q8-HUAH1688】

探究含有根式的函数值域问题 含根式的函数的值域或者最值问题在高中数学的学习过程中时常遇到,因其解法灵活,又缺乏统一的规律,给我们造成了很大的困难,导致有些学生遇到根式就害怕。为此,本文系统总结此类函数值域的求解方法,供学生参考学习。 1.平方法 例1:求31++-=x x y 的值域 解:由题意知函数定义域为[]1,3-,两边同时平方得:322422+--+=x x y =4+()4212+- +x 利用图像可得[]8,42∈y ,又知?y 0[]22,2∈∴y 所以函数值域为[]22,2 析:平方法求值域适用于平方之后可以消去根式外面未知量的题型。把解析式转化为()x b a y ?+=2 的形式,先求y 2 的范围,再得出y 的范围即值域。 2.换元法 例2: 求值域1)12--=x x y 2)x x y 2 4-+= 解:(1)首先定义域为[)+∞,1,令()01≥-=t x t ,将原函数转化为 [)+∞∈,0t ,?? ????+∞∈∴,815y 析:当函数解析式由未知量的整数幂与根式构成,并且根式内外的未知量的次幂保持一致。可以考虑用代数换元的方法把原函数转化成二次函数,再进行值域求解。 (2)首先,函数定义域为[]2,2-∈x ,不妨设αsin 2=x ,令?? ????-∈2,2ππα

则原函数转化为:??? ? ?+=+=4sin 22cos 2sin 2παααy ?? ????-∈2,2ππα,∴??????-∈+43,44πππα 析:形如题目中的解析式,考虑用三角换元的方法,在定义域的前提下,巧妙地规定角的取值范围,避免绝对值的出现。 不管是代数换元还是三角换元,它的目的都是为了去根式,故需要根据题目灵活选择新元,并注意新元的范围。 3.数形结合法 例3:1)求()()8222+-+= x x y 的值域。 2)求1362222+-++-= x x y x x 的最小值。 解:(1)()()8222+-+=x x y 82++-=x x 其解析式的几何意义为数轴上的一动点x ,到两定点2与-8的距离之和,结合数轴不难得到[]+∞∈,10y (2)解析式可转化为()()41312 2+++=--x x y , 定义域为R ,进行适当的变形 ()()=+++--413122x x ()()()()2031012 222----+++x x , 由它的形式联想两点间的距离公式,分别表示点到点的距离与点的距离之和。 点()0,x P 到()1,1A 和()2,3B 的距离之和。即PB PA y +=,结合图形可知 13min =+'=PB A P y ,其中()1,1-'A 析:根据解析式特点,值域问题转化成距离问题,结合图形得出最值,进而求出了值域。 例4:1) 求x x y x 2312 +--+=的值域

HALCON算子函数整理10 Matching-3D

HALCON算子函数——Chapter 10 : Matching-3D 1. affine_trans_object_model_3d 功能:把一个任意有限3D变换用于一个3D目标模型。 2. clear_all_object_model_3d 功能:释放所有3D目标模型的内存。 3. clear_all_shape_model_3d 功能:释放所有3D轮廓模型的内存。 4. clear_object_model_3d 功能:释放一个3D目标模型的内存。 5. clear_shape_model_3d_ 功能:释放一个3D轮廓模型的内存。 6. convert_point_3d_cart_to_spher 功能:把直角坐标系中的一个3D点转变为极坐标。 7. convert_point_3d_spher_to_cart 功能:把极坐标中的一个3D点转变为直角坐标。 8. create_cam_pose_look_at_point 功能:从摄像机中心和观察方向创建一个3D摄像机位置。 9. create_shape_model_3d 功能:为匹配准备一个3D目标模型。 10. find_shape_model_3d 功能:在一个图像中找出一个3D模型的最佳匹配。 11. get_object_model_3d_params

功能:返回一个3D目标模型的参数。 12. get_shape_model_3d_contours 功能:返回一个3D轮廓模型视图的轮廓表示。 13. get_shape_model_3d_params 功能:返回一个3D轮廓模型的参数。 14. project_object_model_3d 功能:把一个3D目标模型的边缘投影到图像坐标中。 15. project_shape_model_3d 功能:把一个3D轮廓模型的边缘投影到图像坐标中。 16. read_object_model_3d_dxf 功能:从一个DXF文件中读取一个3D目标模型。 17. read_shape_model_3d 功能:从一个文件中读取一个3D轮廓模型。 18. trans_pose_shape_model_3d 功能:把一个3D目标模型的坐标系中的位置转变为一个3D轮廓模型的参考坐标系中的位 置,反之亦然。 19. write_shape_model_3d 功能:向一个文件写入一个3D轮廓模型。

二次函数和几何综合压轴题题型归纳

学生: 科目: 数 学 教师: 刘美玲 一、二次函数和特殊多边形形状 二、二次函数和特殊多边形面积 三、函数动点引起的最值问题 四、常考点汇总 1、两点间的距离公式:()()22B A B A x x y y AB -+-= 2、中点坐标:线段AB 的中点C 的坐标为:??? ??++22 B A B A y y x x , 直线11b x k y +=(01≠k )与22b x k y +=(02≠k )的位置关系: (1)两直线平行?21k k =且21b b ≠ (2)两直线相交?21k k ≠ (3)两直线重合?21k k =且21b b = (4)两直线垂直?121-=k k 3、一元二次方程有整数根问题,解题步骤如下: ① 用?和参数的其他要求确定参数的取值范围; ② 解方程,求出方程的根;(两种形式:分式、二次根式) ③ 分析求解:若是分式,分母是分子的因数;若是二次根式,被开方式是完全平方式。 例:关于x 的一元二次方程()0122 2 =-m x m x ++有两个整数根,5<m 且m 为整数,求m 的值。 4、二次函数与x 轴的交点为整数点问题。(方法同上) 例:若抛物线()3132 +++=x m mx y 与x 轴交于两个不同的整数点,且m 为正整数,试确定 此抛物线的解析式。 课 题 函数的综合压轴题型归类 教学目标 1、 要学会利用特殊图形的性质去分析二次函数与特殊图形的关系 2、 掌握特殊图形面积的各种求法 重点、难点 1、 利用图形的性质找点 2、 分解图形求面积 教学内容

5、方程总有固定根问题,可以通过解方程的方法求出该固定根。举例如下: 已知关于x 的方程2 3(1)230mx m x m --+-=(m 为实数),求证:无论m 为何值,方程总有一个固定的根。 解:当0=m 时,1=x ; 当0≠m 时,()032 ≥-=?m ,()m m x 213?±-= ,m x 3 21-=、12=x ; 综上所述:无论m 为何值,方程总有一个固定的根是1。 6、函数过固定点问题,举例如下: 已知抛物线22 -+-=m mx x y (m 是常数),求证:不论m 为何值,该抛物线总经过一个固定的点,并求出固定点的坐标。 解:把原解析式变形为关于m 的方程()x m x y -=+-122 ; ∴ ???=-=+-0 1 02 2x x y ,解得:???=-=1 1 x y ; ∴ 抛物线总经过一个固定的点(1,-1)。 (题目要求等价于:关于m 的方程()x m x y -=+-122 不论m 为何值,方程恒成立) 小结.. :关于x 的方程b ax =有无数解????==0 b a 7、路径最值问题(待定的点所在的直线就是对称轴) (1)如图,直线1l 、2l ,点A 在2l 上,分别在1l 、2l 上确定两点M 、N ,使得MN AM +之和最小。 (2)如图,直线1l 、2l 相交,两个固定点A 、B ,分别在1l 、2l 上确定两点M 、N ,使得 AN MN BM ++之和最小。

Halcon学习之四:有关图像生成的函数

Halcon学习之四:有关图像生成的函数 1、copy_image ( Image : DupImage : : ) 复制image图像 2、region_to_bin ( Region : BinImage : ForegroundGray, BackgroundGray,Width, Height : ) 将区域Region转换为一幅二进制图像BinImage。 ForegroundGray, BackgroundGray分别为前景色灰度值和背景色灰度值。Width, Height为Region的宽度和高度。 3、region_to_label ( Region : ImageLabel : Type, Width, Height : ) 将区域Region转换为一幅Lable图像ImageLabel。 Type为imagelabel的类型。 Width, Height为Region的宽度和高度。 4、region_to_mean ( Regions, Image : ImageMean : : ) 绘制ImageMean图像,将其灰度值设置为Regions和Image的平均灰度值。相关例子: [c-sharp]view plaincopyprint? 1.* 读取图像 2.read_image (Image, 'G:/Halcon/机器视觉 /images/bin_switch/bin_switch_2.png') 3.* 复制图像 4.copy_image (Image, DupImage) 5.* 区域生长算法

6.regiongrowing (Image, Regions, 3, 3, 1, 100) 7.* 生成ImageMean 8.region_to_mean (Regions, Image, ImageMean) 9.* 将Region转换为二进制图像 10.r egion_to_bin (Regions, BinImage, 255, 0, 512, 512) 11.*将Region转换为Label图像 12.r egion_to_label (Regions, ImageLabel, 'int4', 512, 512)

PB常用函数

PB常用函数日期时间类函数 日期时间类函数的功能如下: Date:把日期转换为Date类型。 Time:把时间转换为Time类型。 Day:日期值。 Month:月值。 Year:年值。 DayName:星期几。 DayNumber:一周中的第几天。 DaysAfer:两个日期之间所差的天数。 SecondsAfer:两个时间之间所差的秒数。 Hour:小时。 Minute:分钟。 Second:秒。 Now:系统当前时间。 Today:系统日期和时间。 RelativeDate:指定日期前后的天数值。 RelativeTime:指定时间的前后时间值。 数值计算类函数 数值计算类函数主要的作用就是对数据进行计算,功能如下:Abs:返回数据的绝对值。 Max:求输入的最大值。 Min:求输入的最小值。 Ceiling:返回整数,小数会自动向上进位。 Int:返回整数,小数会自动向下退位。 Round:对数据进行四舍五入操作。 Truncate:删除掉小数点后若干位。 Cos:求余弦值。 Sin:求正弦值。 Tan:求正切值。 Exp:以e为底,输入值为次方的乘方值。 Sqrt:求平方根。 Fact:求阶乘。 Log:求自然对数。 LogTen:求以10为底的对数。 Mod:求余数。 Pi:求与PI的乘积。 Rand:返回1与输入值之间的一个伪随机数。 字符串类函数 字符串类函数的功能如下。 Fill:建立一个指定长度的字符串。 Lower:转换为小写字母。

Upper:转换为大写字母。 WordCap:首写字母大写,其他小写。 Space:由指定字符个数组成的空格字符串。 Left:从字符串左边开始指定字符串。 Right:从字符串右边开始指定字符串。 LeftTrim:删除字符串左边的空格。 RightTrim:删除字符串右边的空格。 Trim:删除左右两边的空格。 Len:返回字符串长度。 Match:判断是否有指定模式的字符。 Mid:取子字符串。 Replace:用指定字符替换另外一个字符串。 String:将数据转换为指定格式的字符串。 信息类函数 信息类函数可以获取数据窗口中的一些信息,函数的功能如下: CurrentRow:获取数据窗口的焦点的行数。 Page:获取当前记录的页数。 PageAcross:获取当前水平方向的页面。 PageCount:获取总页数。 RowHeight:获得记录的高度。 Describe:获取数据窗口对象的属性值。 IsRowModified:获取记录是否修改过,如果修改过返回True。 IsRowNew:获取是否新插入数据,如果插入返回True。 IsSelected:获取记录是否被选中,选中返True。 PageCountAcross:获取水平方向总页面。 RowCount:获取主缓冲区的总记录数。 统计类函数 统计类函数主要是用来对数据库中的数据进行统计操作,统计函数功能如下: Avg:计算字段的平均数,例如Avg(id)。 Max:计算字段的最大值,例如Max(id)。 Min:计算字段的最小值,例如Min(id)。 Median:计算字段的中间值。 Count:计算表或字段的记录数,例如Count(*)。 Frist:返回第一条记录。 Last:返回最后一条记录。 交叉表函数 只能在交叉列表风格的数据窗口中的细节区使用交叉表函数,交叉表的函数功能如下:CrosstabVag:计算字段数据的平均数。 CrosstabCount:计算字段数据的记录数。 CrosstabMax:计算字段数据的最大值。 CrosstabMin:计算字段数据的最小值。 数据类型转换与检查函数 数据类型转换与检查函数用于定义数据窗口的过滤条件、有效性检查和数据类型转换,数据类型转换与检查函数的功能如下:

halcon基础数据类型详解

halcon基础数据类型详解 #if defined(__CHAR_UNSIGNED__) || defined(__sgi) #define INT1 signed char /* integer, signed 1 Byte */ #define INT1_MIN SCHAR_MIN #define INT1_MAX SCHAR_MAX #else #define INT1 char /* integer, signed 1 Byte */ #define INT1_MIN CHAR_MIN #define INT1_MAX CHAR_MAX #endif #define UINT1 unsigned char /* integer, unsigned 1 Byte */ #define UINT1_MIN 0 #define UINT1_MAX UCHAR_MAX #define LONG_FORMAT _INT64_FORMAT typedef INT4_8 Hlong; typedef UINT4_8 Hulong; 看粗体部分,可以看到Hlong型在32位的机器上其实就是long型代表4个字节32位,在64位机器上有另一种定义 再来看看halcon中最重要的数据类型HTuple,在C++里面,halcon将HTuple类型封 装了类,其始祖类HRootObject,这个类相当于MFC里面的CObject,halcon从HRootObject 派生了HBaseArray,当然这两个类是虚基类,有一些方法需要我HTuple自己实现,当然也 有一些方法可以直接用的。这两个类在HCPPUtil里,可以看看。 HTuple类就是从HBaseArray派生,元组基类,相当于数组,具有如下的构造函数: HTuple(int l); HTuple(float f); HTuple(double d); HTuple(constchar *s);

HALCON算子函数Chapter 16:System

HALCON算子函數——Chapter 16 : System 16.1 Database 1. count_relation 功能:在HALCON數據庫中實體的數目。 2. get_modules 功能:查詢已使用模塊和模塊關鍵碼。 3. reset_obj_db 功能:HALCON系統的初始化。 16.2 Error-Handling 1. get_check 功能:HALCON控制模式的說明。 2. get_error_text 功能:查詢HALCON錯誤測試後錯誤數目。3. get_spy 功能:HALCON調試工具當前配置。 4. query_spy 功能:查詢HALCON調試工具可能的設置。5. set_check 功能:激活和鈍化HALCON控制模式。

6. set_spy 功能:HALCON調試工具的控制。 16.3 Information 1. get_chapter_info 功能:獲取程序有關章節的信息。 2. get_keywords 功能:獲取指定給程序的關鍵字。 3. get_operator_info 功能:獲取關於HALCON程序的信息。 4. get_operator_name 功能:獲取由給定字符串作為它們的名字的程序。 5. get_param_info 功能:獲取關於程序參數的信息。 6. get_param_names 功能:獲取一個HALCON程序參數的名字。 7. get_param_num 功能:獲取一個HALCON程序不同參數類的數目。 8. get_param_types 功能:獲取一個HALCON程序控制參數的缺省數據類型。

Halcon学习之边缘检测函数

Halcon学习之边缘检测函数 sobel_amp ( Image : EdgeAmplitude : FilterType, Size : )根据图像的一次导数计算图像的边缘 close_edges ( Edges, EdgeImage : RegionResult : MinAmplitude : ) close_edges_length( Edges, Gradient : ClosedEdges : MinAmplitude, MaxGapLength : ) 使用边缘高度图像关闭边缘间隙。输出的区域包含杯关闭的区域。(感觉是对边缘的扩充) derivate_gauss( Image : DerivGauss : Sigma, Component : ) watersheds( Image : Basins, Watersheds : : )从图像中提取风水岭。 zero_crossing( Image : RegionCrossing : : )零交点(二次导数) diff_of_gauss( Image : DiffOfGauss : Sigma, SigFactor : )近似日志算子(拉普拉斯高斯)。 laplace_of_gauss ( Image : ImageLaplace : Sigma : ) 拉普拉斯高斯edges_color_sub_pix ( Image : Edges : Filter, Alpha, Low, High : )精确的亚像素边缘提取(彩色图像) edges_sub_pix ( Image : Edges : Filter, Alpha, Low, High : ) 精确边缘提取的亚像素(灰度图像) edges_color ( Image : ImaAmp, ImaDir : Filter, Alpha, NMS, Low, High : )根据颜色进行边缘提取 edges_image ( Image : ImaAmp, ImaDir : Filter, Alpha, NMS, Low, High : )边缘提取 skeleton ( Region : Skeleton : : )计算区域的框架Skeleton == Region

PB函数常用

Max() 功能求两个数中的最大值。 语法Max ( x, y ) 参数x:数值型变量或表达式,参加比较的第一个数y :数值型变量或表达式,参加比较的第二个数返回值以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数执行成功时返回参数比较的两个数中更大者。如果任何参数的值为NULL,Max()函数返回NULL。 Min() 功能求两个数中的最小值。 语法Min( x, y ) 参数x:数值型变量或表达式,参加比较的第一个数y :数值型变量或表达式,参加比较的第二个数返回值以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数执行成功时返回参数比较的两个数中较小者。如果任何参数的值为NULL,Min()函数返回NULL。 Mod() 功能求余数。 语法Mod ( x, y ) 参数x:数值型变量或表达式,被除数y :数值型变量或表达式,除数返回值以x、y中数据类型更精确的数据类型作为该函数的返回值数据类型。函数执行成功时返回x除以y所得的余数。如果任何参数的值为NULL,Mod()函数返回NULL。 Round() 功能将x四舍五入到n位。 语法Round ( x, n )参数x:要四舍五入的数值型数据n:整数类型,指定从哪个小数位上四舍五入x。有效值在0到18之间返回值Decimal。函数执行成功时返回将x四舍五入到小数点后第n位的数值,如果函数执行失败或任何参数的值为NULL,Round()函数返回NULL。Truncate() 功能截断数值到指定的小数位。 语法Truncate ( x, n ) 参数x:要截断的数值型数据n:整数类型,指定从哪个小数位上截断x。有效值在0到18之间返回值Decimal。函数执行成功时返回将x截断到小数点后第n位的数值,如果函数执行失败或任何参数的值为NULL,Truncate()函数返回NULL。所谓截断就是舍弃指定位之后的数值。 Asc() 功能得到字符串第一个字符的ASCII码整数值。 语法Asc ( string ) 参数string:要得到第一个字符ASCII值的字符串返回值Integer。函数执行成功时返回string 参数第一个字符的ASCII值,如果string参数的值为NULL,则Asc()函数返回NULL。Char() 功能将字符串的第一个字符、Blob变量的第一个值、或一个整数转换成字符。 语法Char ( n ) 参数n:字符串、Blob变量或整数,也可以是包含上述类型数据的Any类型变量返回值Char。返回参数n的第一个字符。如果n参数的值为NULL,则Char()函数返回NULL。 Dec()

HALCON中filter函数

HALCON算子函数——Chapter 5 : Filter 5.1 Arithmetic 1. abs_image 功能:计算一个图像的绝对值(模数)。 2. add_image 功能:使两个图像相加。 3. div_image 功能:使两个图像相除。 4. invert_image 功能:使一个图像反像。 5. max_image 功能:按像素计算两个图像的最大值。 6. min_image 功能:按像素计算两个图像的最大小值。 7. mult_image 功能:使两个图像相乘。 8. scale_image 功能:为一个图像的灰度值分级。 9. sqrt_image 功能:计算一个图像的平方根。 10. sub_image 功能:使两个图像相减。 5.2 Bit 1. bit_and 功能:输入图像的所有像素的逐位与。 2. bit_lshift 功能:图像的所有像素的左移。3 . bit_mask 功能:使用位掩码的每个像素的逻辑与。 4. bit_not 功能:对像素的所有位求补。 5. bit_or 功能:输入图像的所有像素的逐位或。 6. bit_rshift 功能:图像的所有像素的右移。 7. bit_slice 功能:从像素中提取一位。 8. bit_xor 功能:输入图像的所有像素的逐位异或。5.3 Color

1. cfa_to_rgb 功能:把一个单通道颜色滤波阵列图像变成RGB图像。 2. gen_principal_comp_trans 功能:计算多通道图像的主要部分分析的转换矩阵。 3. linear_trans_color 功能:计算多通道图像的颜色值的一个仿射转换。 4. principal_comp 功能:计算多通道图像的主要部分。 5. rgb1_to_gray 功能:把一个RGB图像转变成一个灰度图像。 6. rgb3_to_gray 功能:把一个RGB图像转变成一个灰度图像。 7. trans_from_rgb 功能:把一个图像从RGB颜色空间转变成任意颜色空间。 8. trans_to_rgb 功能:把一个图像从任意颜色空间转变成RGB颜色空间。 5.4 Edges 1.close_edges 功能:使用边缘幅值图像消除边缘缺陷。 2. close_edges_length 功能:使用边缘幅值图像消除边缘缺陷。 3. derivate_gauss 功能:用高斯派生物对一个图像卷积。 4. diff_of_gauss 功能:近似高斯的拉普拉斯算子。 5. edges_color 功能:使用Canny、Deriche或者_Shen_滤波器提取颜色边缘。 6. edges_color_sub_pix 功能:使用Canny、Deriche或者_Shen_滤波器提取子像素精确颜色边缘。 7. edges_image 功能:使用Deriche、_Lanser、Shen或者_Canny滤

pb函数

PrintDefineFont() 功能定义打印作业使用的字体,对每个打印作业PowerBuilder支持八种字体。 语法PrintDefineFont(printjobnumber,fontnumber,facename,height,weight,fontpitch,fontfamily, italic,underline) 参数printjobnumber:用PrintOpen()函数打开的打印作业号fontnumber:指定赋给当前定义字体的编号,有效值在1到8之间facename:string类型,指定字体名称,该字体应该是你的打印机支持的字体,比如“宋体”height:Integer类型,使用正值指定字体的高度,以千分之一英寸为单位;使用负值指定字体点数,比如,-18代表18点。一般来说,使用点数更精确些weight:指定字体的磅数,正常字体为400磅,粗体为700磅fontpitch:FontPitch 枚举类型,指定字体标准。有效取值为:Default! - 缺省值;Fixed! - 固定形式;Variable! - 可变形式fontfamily:FontFamily枚举类型,指定字体系列。有效取值为:AnyFont!、Decorative!、Modern!、Roman!、Script!、Swiss!italic:boolean类型,指定是否使用斜体样式。有效取值为:TRUE - 使用斜体样式;FALSE - 不使用斜体样式。缺省值为FALSEunderline:boolean类型,指定是否加下划线。有效取值为:TRUE - 加下划线;FALSE - 不加下划线。缺省值为FALSE 返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintDefineFont()函数返回NULL。用法在一个打印作业中,应用程序能够最多同时定义8种字体。当应用程序需要使用更多的字体时,可以在使用了某个字体号输出内容后使用PrintDefineFont()函数将该字体号对应的字体更换为其它字体。 -------------------------------------------------------------------------------- PrintLine() 功能在当前打印页上绘出指定厚度的一条线。 语法PrintLine ( printjobnumber, x1, y1, x2, y2, thickness ) 参数printjobnumber:用PrintOpen()函数打开的打印作业号x1:integer类型,指定直线起点的x坐标,以千分之一英寸为单位y1:integer类型,指定直线起点的y坐标,以千分之一英寸为单位x2:integer类型,指定直线终点的x坐标,以千分之一英寸为单位y2:integer 类型,指定直线终点的y坐标,以千分之一英寸为单位thickness:integer类型,指定直线的厚度,以千分之一英寸为单位返回值Integer。函数执行成功时返回1,发生错误时返回-1。如果任何参数的值为NULL,PrintLine()函数返回NULL。用法应用程序执行了PrintLine()函数后,该函数并不改变打印光标的位置。 -------------------------------------------------------------------------------- PrintOpen() 功能启动打印作业并返回作业号。 语法PrintOpen ( { jobname } ) 参数jobname:string类型,可选项,指定要打开打印作业的名称,该名称将显示在打印管理器窗口中返回值Long。函数执行成功时返回打印作业号,发生错误时返回-1。如果任何参数的值为NULL,PrintOpen()函数返回NULL。用法应用程序执行PrintOpen()函数后,启动新的打印作业并走纸到下一页,同时将打印机缺省字体设置为该打印作业的字体。打印光标的位置位于打印区的左上角。其它同组的打印函数使用PrintOpen()函数返回的作业号来标识作

HALCON函数

HALCON函数 dev_close_window ( : : : ) 关闭活跃的图形窗口。 read_image ( : Image : FileName : ) ;加载图片 get_image_pointer1 ( Image : : : Pointer, Type, Width, Height ) ;获得图像的数据。如:类型(= ' 字节',' ' ',uint2 int2 等等) 和图像的尺寸( 的宽度和高度) dev_open_window( : :Row,Column,WidthHeight,Background :WindowHandle )打开一个图形的窗口。 dev_set_part ( : : Row1, Column1, Row2, Column2 : ) 修改图像显示的位置 dev_set_draw (’fill’)填满选择的区域 dev_set_draw (’margin’)显示的对象只有边缘线, dev_set_line_width (3) 线宽用Line Width 指定 threshold ( Image : Region : MinGray, MaxGray : ) 选取从输入图像灰度值的g 满足下列条件:MinGray < = g < = MaxGray 的像素。 dev_set_colored (number) 显示region 是用到的颜色数目 dev_set_color ( : : ColorName : ) 指定颜色 connection ( Region : ConnectedRegions : : ) 合并所有选定像素触摸相互连通区 fill_up ( Region : RegionFillUp : : ) 填补选择区域中空洞的部分 fill_up_shape ( Region : RegionFillUp : Feature, Min, Max : ) select_shape ( Regions : SelectedRegions : Features, Operation, Min, Max : ) 选择带有某些特征的区域,Operation 是运算,如“与”“或” smallest_rectangle1 ( Regions : : : Row1, Column1, Row2, Column2 ) 以矩形像素坐标的角落,Column1,Row2(Row1,Column2) 计算矩形区域( 平行输入坐标轴) 。 dev_display ( Object : : : ) 显示图片 disp_rectangle1 ( : : WindowHandle, Row1, Column1, Row2, Column2 : ) 显示的矩形排列成的。disp_rectangle1 显示一个或多个矩形窗口的产量。描述一

圆幂定理讲义(带标准答案)

圆幂定理 STEP 1:进门考 理念:1.检测垂径定理的基本知识点与题型。 2.垂径定理典型例题的回顾检测。 3. 分析学生圆部分的薄弱环节。 (1)例题复习。 1.(2015?夏津县一模)一副量角器与一块含30°锐角的三角板如图所示放置,三角板的直角顶点C落在量角器的直径MN上,顶点A,B恰好都落在量角器的圆弧上,且AB∥MN.若AB=8cm,则量角器的直径MN=cm. 【考点】M3:垂径定理的应用;KQ:勾股定理;T7:解直角三角形. 【分析】作CD⊥AB于点D,取圆心O,连接OA,作OE⊥AB于点E,首先求得CD的长,即OE的长,在直角△AOE中,利用勾股定理求得半径OA的长,则MN即可求解. 【解答】解:作CD⊥AB于点D,取圆心O,连接OA,作OE⊥AB于点E. 在直角△ABC中,∠A=30°,则BC=AB=4cm,在直角△BCD中,∠B=90°﹣∠A=60°,∴CD=BC?sinB=4×=2(cm),∴OE=CD=2, 在△AOE中,AE=AB=4cm, 则OA===2(cm),则MN=2OA=4(cm).故答案是:4.

【点评】本题考查了垂径定理的应用,在半径或直径、弦长以及弦心距之间的计算中,常用的方法是转化为解直角三角形.

2.(2017?阿坝州)如图将半径为2cm的圆形纸片折叠后,圆弧恰好经过圆心O,则折痕AB的长为() A.2cm B.cm C.2cm D.2cm 【考点】M2:垂径定理;PB:翻折变换(折叠问题). 【分析】通过作辅助线,过点O作OD⊥AB交AB于点D,根据折叠的性质可知OA=2OD,根据勾股定理可将AD的长求出,通过垂径定理可求出AB的长. 【解答】解:过点O作OD⊥AB交AB于点D,连接OA, ∵OA=2OD=2cm,∴AD===(cm), ∵OD⊥AB,∴AB=2AD=2cm.故选:D. 【点评】本题考查了垂径定理和勾股定理的运用,正确应用勾股定理是解题关键. 3.(2014?泸州)如图,在平面直角坐标系中,⊙P的圆心坐标是(3,a)(a>3),半径为3,函数y=x的图象被⊙P截得的弦AB的长为,则a的值是()

HALCON 算子函数 整理 1-19章

halcon算子中文解释 comment ( : : Comment : ) 注释语句 exit ( : : : ) 退出函数 open_file ( : : FileName, FileType : FileHandle ) 创建('output' or 'append' )或者打开(output )文本文件 fwrite_string ( : : FileHandle, String : ) 写入string dev_close_window ( : : : ) 关闭活跃的图形窗口。 read_image ( : Image : FileName : ) ;加载图片 get_image_pointer1 ( Image : : : Pointer, Type, Width, Height ) 获得图像的数据。如:类型(= ' 字节',' ' ',uint2 int2 等等) 和图像的尺寸( 的宽度和高度) dev_open_window( : :Row,Column,WidthHeight,Background :WindowHandle ) 打开一个图形的窗口。 dev_set_part ( : : Row1, Column1, Row2, Column2 : ) 修改图像显示的位置 dev_set_draw (’fill’)填满选择的区域 dev_set_draw (’margin’)显示的对象只有边缘线, dev_set_line_width (3) 线宽用Line Width 指定 threshold ( Image : Region : MinGray, MaxGray : ) 选取从输入图像灰度值的g 满足下列条件:MinGray < = g < = MaxGray 的像素。 dev_set_colored (number) 显示region 是用到的颜色数目 dev_set_color ( : : ColorName : ) 指定颜色 connection ( Region : ConnectedRegions : : ) 合并所有选定像素触摸相互连通区 fill_up ( Region : RegionFillUp : : ) 填补选择区域中空洞的部分 fill_up_shape ( Region : RegionFillUp : Feature, Min, Max : ) select_shape ( Regions : SelectedRegions : Features, Operation, Min, Max : ) 选择带有某些特征的区域,Operation 是运算,如“与”“或” smallest_rectangle1 ( Regions : : : Row1, Column1, Row2, Column2 ) 以矩形像素坐标的角落,Column1,Row2(Row1,Column2) 计算矩形区域( 平行输入坐标轴) 。 dev_display ( Object : : : ) 显示图片 disp_rectangle1 ( : : WindowHandle, Row1, Column1, Row2, Column2 : ) 显示的矩形排列成的。disp_rectangle1 显示一个或多个矩形窗口的产量。描述一个矩形左上角(Row1,Column1) 和右下角(Row2,Column2) 。显示效果如图1. texture_laws ( Image : ImageT exture : FilterTypes, Shift, FilterSize : ) texture_laws 实行纹理变换图像FilterTypes: 预置的过滤器Shift :减少灰度变化FilterSize :过滤的尺寸 mean_image ( Image : ImageMean : MaskWidth, MaskHeight : ) 平滑图像, 原始灰度值的平均数MaskWidth: 过滤器的宽度面具 bin_threshold ( Image : Region : : ) 自动确定阈值 Region: 黑暗的区域的图像 dyn_threshold ( OrigImage, ThresholdImage : RegionDynThresh : Offset, LightDark : ) 比较两个像素的图像像素RegionDynThresh(Out) 分割区域Offset: 减少噪音引起的问题LightDark 提取光明、黑暗或类似的地方? dilation_circle ( Region : RegionDilation : Radius : ) 扩张有一个圆形结构元素的地区Radius 圆半径 complement ( Region : RegionComplement : : ) 返还补充的区域 reduce_domain ( Image, Region : ImageReduced : : ) 减少定义领域的图像

相关文档
最新文档