新建
上传
首页
助手
最?/div>
资料?/div>
工具

绍兴鲁迅中学程序阅读编辑:沈云良

 

1

 / 

2

 

经典算法程序实现

2018

 

(

综合练习

) 

班级?/p>

__________

姓名?/p>

__________ 

1.

用随机函数产?/p>

100

?/p>

[0

?/p>

99]

范围内的随机整数,统计个?/p>

上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0

的数的个数并

打印出来?/p>

 

Public Sub GetTJput() 

Dim a(1 To 100) As Integer 

Dim x(1 To 10) As Integer 

Dim i As Integer, p As Integer 

'

产生

100

?/p>

[0

?/p>

99]

范围内的随机整数

 

For i = 1 To 100 

a(i) = Int(Rnd * 100) 

If a(i) < 10 Then 

Lab1.Caption= Lab1.Caption& " " & Str(a(i)) 

Else 

Lab1.Caption= Lab1.Caption& Str(a(i)) 

End If 

'

每行

10

个在标签

Lab1

显示出来

 

If ______________ Then 

 

' 

字符串常?/p>

VbCrLf

的作用:换行

 

Lab1.Caption= Lab1.Caption& VbCrLf 

End If 

Next i 

'

统计个位上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0 

'

的数的个数,并将统计结果保存在数?/p>

x(1),x(2),...,x(10) 

'

中,将统计结果在标签

Lab2

显示出来

 

For i = 1 To 100 

p =______________   '

求个位上的数?/p>

 

If p = 0 Then p = 10 

x(p) =______________ 

Next i 

Lab2.Caption="

统计结果

" 

For i = 1 To 10 

p = i 

If i = 10 Then _____________ 

Lab2.Caption= Lab2.Caption & "

个位数为

"+ _ 

Str(p) + "

?/p>

" + Str(x(i)) + "

?/p>

" 

Next i 

End Sub 

2. 

哥德巴赫猜想

:

任意一个大于等?/p>

6

的偶数都可以分解为两?/p>

素数之和?/p>

 

基本思想?/p>

n

为大于等?/p>

6

的任一偶数,可分解?/p>

n1

?/p>

n2

两个

数,分别检?/p>

n1

?/p>

n2

是否为素数,如都是,则为一组解。如

n1

不是素数?/p>

就不必再检?/p>

n2

是否素数?/p>

先从

n1=3

开始,检?/p>

n1

?/p>

n2

?/p>

n2=N-n1

)是否素数。然后使

n1+2   

再检?/p>

n1

?/p>

n2

是否

素数,?/p>

 

直到

n1=n/2

为止?/p>

 

?/p>

 Prime

函数功能:若为素数返?/p>

True

,不是则返回

False 

Function Prime( m as Integer) As _____________ 

Dim  i As Integer 

_____________ 

For i=2 To int(sqr(m)) 

If m Mod i = 0 Then Prime=False: Exit For 

Next i 

End Function 

’利用上面的

Prime

函数,验证哥德巴赫猜?/p>

 

Dim  n As Integer,n1 As Integer,n2 As Integer 

n=Val(InputBox("

输入大于

6

的正整数

")) 

For n1=3 to n\2 step 2 

n2=n-n1 

If  prime(n1)   Then 

If _____________ then 

Print n & "=" & n1 & "+" & n2 

Exit For               '

结束循环

 

End if 

End if 

Next  n1 

3

.合并法排序(将两个有序数组

A

?/p>

B

合并成另一个有序的数组

C

,升序)

 

基本思想?/p>

 

1

)先?/p>

A

?/p>

B

数组中各取第一个元素进行比较,将小的元素放?/p>

C

数组?/p>

 

2

)取小的元素所在数组的下一个元素与另一数组中上次比较后

较大的元素比较,重复上述比较过程,直到某个数组被先排完;

 

3

)将另一个数组剩余元素抄?/p>

C

数组,合并排序完成?/p>

 

程序段如下:

 

'

?/p>

A

?/p>

B

数组均未比较?/p>

 

Private Sub Cmd_Click() 

Dim A(1 To 200) As Integer 

Dim B(1 To 200) As Integer 

Dim ia As Integer,ib As Integer 

Dim na As Integer,nb As Integer 

'A

?/p>

B

数组数据从外部文件读入,分别存储?/p>

A(1)

?/p>

B(1)

开始的

元素中,数据个数存储?/p>

na

?/p>

nb

?/p>

 

ia=1: ib=1: ic=_______ 

Do While _______________________ 

If A(ia) < B(ib) Then 

C(ic) = A(ia)

?/p>

  ia = ia + 1 

Else 

C(ic) = B(ib)

?/p>

  ib = ib + 1 

End If 

_____________ 

Loop 

'A

数组中的剩余元素抄入

C

数组

 

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

绍兴鲁迅中学程序阅读编辑:沈云良

 

1

 / 

2

 

经典算法程序实现

2018

 

(

综合练习

) 

班级?/p>

__________

姓名?/p>

__________ 

1.

用随机函数产?/p>

100

?/p>

[0

?/p>

99]

范围内的随机整数,统计个?/p>

上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0

的数的个数并

打印出来?/p>

 

Public Sub GetTJput() 

Dim a(1 To 100) As Integer 

Dim x(1 To 10) As Integer 

Dim i As Integer, p As Integer 

'

产生

100

?/p>

[0

?/p>

99]

范围内的随机整数

 

For i = 1 To 100 

a(i) = Int(Rnd * 100) 

If a(i) < 10 Then 

Lab1.Caption= Lab1.Caption& " " & Str(a(i)) 

Else 

Lab1.Caption= Lab1.Caption& Str(a(i)) 

End If 

'

每行

10

个在标签

Lab1

显示出来

 

If ______________ Then 

 

' 

字符串常?/p>

VbCrLf

的作用:换行

 

Lab1.Caption= Lab1.Caption& VbCrLf 

End If 

Next i 

'

统计个位上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0 

'

的数的个数,并将统计结果保存在数?/p>

x(1),x(2),...,x(10) 

'

中,将统计结果在标签

Lab2

显示出来

 

For i = 1 To 100 

p =______________   '

求个位上的数?/p>

 

If p = 0 Then p = 10 

x(p) =______________ 

Next i 

Lab2.Caption="

统计结果

" 

For i = 1 To 10 

p = i 

If i = 10 Then _____________ 

Lab2.Caption= Lab2.Caption & "

个位数为

"+ _ 

Str(p) + "

?/p>

" + Str(x(i)) + "

?/p>

" 

Next i 

End Sub 

2. 

哥德巴赫猜想

:

任意一个大于等?/p>

6

的偶数都可以分解为两?/p>

素数之和?/p>

 

基本思想?/p>

n

为大于等?/p>

6

的任一偶数,可分解?/p>

n1

?/p>

n2

两个

数,分别检?/p>

n1

?/p>

n2

是否为素数,如都是,则为一组解。如

n1

不是素数?/p>

就不必再检?/p>

n2

是否素数?/p>

先从

n1=3

开始,检?/p>

n1

?/p>

n2

?/p>

n2=N-n1

)是否素数。然后使

n1+2   

再检?/p>

n1

?/p>

n2

是否

素数,?/p>

 

直到

n1=n/2

为止?/p>

 

?/p>

 Prime

函数功能:若为素数返?/p>

True

,不是则返回

False 

Function Prime( m as Integer) As _____________ 

Dim  i As Integer 

_____________ 

For i=2 To int(sqr(m)) 

If m Mod i = 0 Then Prime=False: Exit For 

Next i 

End Function 

’利用上面的

Prime

函数,验证哥德巴赫猜?/p>

 

Dim  n As Integer,n1 As Integer,n2 As Integer 

n=Val(InputBox("

输入大于

6

的正整数

")) 

For n1=3 to n\2 step 2 

n2=n-n1 

If  prime(n1)   Then 

If _____________ then 

Print n & "=" & n1 & "+" & n2 

Exit For               '

结束循环

 

End if 

End if 

Next  n1 

3

.合并法排序(将两个有序数组

A

?/p>

B

合并成另一个有序的数组

C

,升序)

 

基本思想?/p>

 

1

)先?/p>

A

?/p>

B

数组中各取第一个元素进行比较,将小的元素放?/p>

C

数组?/p>

 

2

)取小的元素所在数组的下一个元素与另一数组中上次比较后

较大的元素比较,重复上述比较过程,直到某个数组被先排完;

 

3

)将另一个数组剩余元素抄?/p>

C

数组,合并排序完成?/p>

 

程序段如下:

 

'

?/p>

A

?/p>

B

数组均未比较?/p>

 

Private Sub Cmd_Click() 

Dim A(1 To 200) As Integer 

Dim B(1 To 200) As Integer 

Dim ia As Integer,ib As Integer 

Dim na As Integer,nb As Integer 

'A

?/p>

B

数组数据从外部文件读入,分别存储?/p>

A(1)

?/p>

B(1)

开始的

元素中,数据个数存储?/p>

na

?/p>

nb

?/p>

 

ia=1: ib=1: ic=_______ 

Do While _______________________ 

If A(ia) < B(ib) Then 

C(ic) = A(ia)

?/p>

  ia = ia + 1 

Else 

C(ic) = B(ib)

?/p>

  ib = ib + 1 

End If 

_____________ 

Loop 

'A

数组中的剩余元素抄入

C

数组

 

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

绍兴鲁迅中学程序阅读编辑:沈云良

 

1

 / 

2

 

经典算法程序实现

2018

 

(

综合练习

) 

班级?/p>

__________

姓名?/p>

__________ 

1.

用随机函数产?/p>

100

?/p>

[0

?/p>

99]

范围内的随机整数,统计个?/p>

上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0

的数的个数并

打印出来?/p>

 

Public Sub GetTJput() 

Dim a(1 To 100) As Integer 

Dim x(1 To 10) As Integer 

Dim i As Integer, p As Integer 

'

产生

100

?/p>

[0

?/p>

99]

范围内的随机整数

 

For i = 1 To 100 

a(i) = Int(Rnd * 100) 

If a(i) < 10 Then 

Lab1.Caption= Lab1.Caption& " " & Str(a(i)) 

Else 

Lab1.Caption= Lab1.Caption& Str(a(i)) 

End If 

'

每行

10

个在标签

Lab1

显示出来

 

If ______________ Then 

 

' 

字符串常?/p>

VbCrLf

的作用:换行

 

Lab1.Caption= Lab1.Caption& VbCrLf 

End If 

Next i 

'

统计个位上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0 

'

的数的个数,并将统计结果保存在数?/p>

x(1),x(2),...,x(10) 

'

中,将统计结果在标签

Lab2

显示出来

 

For i = 1 To 100 

p =______________   '

求个位上的数?/p>

 

If p = 0 Then p = 10 

x(p) =______________ 

Next i 

Lab2.Caption="

统计结果

" 

For i = 1 To 10 

p = i 

If i = 10 Then _____________ 

Lab2.Caption= Lab2.Caption & "

个位数为

"+ _ 

Str(p) + "

?/p>

" + Str(x(i)) + "

?/p>

" 

Next i 

End Sub 

2. 

哥德巴赫猜想

:

任意一个大于等?/p>

6

的偶数都可以分解为两?/p>

素数之和?/p>

 

基本思想?/p>

n

为大于等?/p>

6

的任一偶数,可分解?/p>

n1

?/p>

n2

两个

数,分别检?/p>

n1

?/p>

n2

是否为素数,如都是,则为一组解。如

n1

不是素数?/p>

就不必再检?/p>

n2

是否素数?/p>

先从

n1=3

开始,检?/p>

n1

?/p>

n2

?/p>

n2=N-n1

)是否素数。然后使

n1+2   

再检?/p>

n1

?/p>

n2

是否

素数,?/p>

 

直到

n1=n/2

为止?/p>

 

?/p>

 Prime

函数功能:若为素数返?/p>

True

,不是则返回

False 

Function Prime( m as Integer) As _____________ 

Dim  i As Integer 

_____________ 

For i=2 To int(sqr(m)) 

If m Mod i = 0 Then Prime=False: Exit For 

Next i 

End Function 

’利用上面的

Prime

函数,验证哥德巴赫猜?/p>

 

Dim  n As Integer,n1 As Integer,n2 As Integer 

n=Val(InputBox("

输入大于

6

的正整数

")) 

For n1=3 to n\2 step 2 

n2=n-n1 

If  prime(n1)   Then 

If _____________ then 

Print n & "=" & n1 & "+" & n2 

Exit For               '

结束循环

 

End if 

End if 

Next  n1 

3

.合并法排序(将两个有序数组

A

?/p>

B

合并成另一个有序的数组

C

,升序)

 

基本思想?/p>

 

1

)先?/p>

A

?/p>

B

数组中各取第一个元素进行比较,将小的元素放?/p>

C

数组?/p>

 

2

)取小的元素所在数组的下一个元素与另一数组中上次比较后

较大的元素比较,重复上述比较过程,直到某个数组被先排完;

 

3

)将另一个数组剩余元素抄?/p>

C

数组,合并排序完成?/p>

 

程序段如下:

 

'

?/p>

A

?/p>

B

数组均未比较?/p>

 

Private Sub Cmd_Click() 

Dim A(1 To 200) As Integer 

Dim B(1 To 200) As Integer 

Dim ia As Integer,ib As Integer 

Dim na As Integer,nb As Integer 

'A

?/p>

B

数组数据从外部文件读入,分别存储?/p>

A(1)

?/p>

B(1)

开始的

元素中,数据个数存储?/p>

na

?/p>

nb

?/p>

 

ia=1: ib=1: ic=_______ 

Do While _______________________ 

If A(ia) < B(ib) Then 

C(ic) = A(ia)

?/p>

  ia = ia + 1 

Else 

C(ic) = B(ib)

?/p>

  ib = ib + 1 

End If 

_____________ 

Loop 

'A

数组中的剩余元素抄入

C

数组

 

Ͼλ">
Ͼλ
Ŀ

经典算法程序实现15(常见算法) - 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

绍兴鲁迅中学程序阅读编辑:沈云良

 

1

 / 

2

 

经典算法程序实现

2018

 

(

综合练习

) 

班级?/p>

__________

姓名?/p>

__________ 

1.

用随机函数产?/p>

100

?/p>

[0

?/p>

99]

范围内的随机整数,统计个?/p>

上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0

的数的个数并

打印出来?/p>

 

Public Sub GetTJput() 

Dim a(1 To 100) As Integer 

Dim x(1 To 10) As Integer 

Dim i As Integer, p As Integer 

'

产生

100

?/p>

[0

?/p>

99]

范围内的随机整数

 

For i = 1 To 100 

a(i) = Int(Rnd * 100) 

If a(i) < 10 Then 

Lab1.Caption= Lab1.Caption& " " & Str(a(i)) 

Else 

Lab1.Caption= Lab1.Caption& Str(a(i)) 

End If 

'

每行

10

个在标签

Lab1

显示出来

 

If ______________ Then 

 

' 

字符串常?/p>

VbCrLf

的作用:换行

 

Lab1.Caption= Lab1.Caption& VbCrLf 

End If 

Next i 

'

统计个位上的数字分别?/p>

1

?/p>

2

?/p>

3

?/p>

4

?/p>

5

?/p>

6

?/p>

7

?/p>

8

?/p>

9

?/p>

0 

'

的数的个数,并将统计结果保存在数?/p>

x(1),x(2),...,x(10) 

'

中,将统计结果在标签

Lab2

显示出来

 

For i = 1 To 100 

p =______________   '

求个位上的数?/p>

 

If p = 0 Then p = 10 

x(p) =______________ 

Next i 

Lab2.Caption="

统计结果

" 

For i = 1 To 10 

p = i 

If i = 10 Then _____________ 

Lab2.Caption= Lab2.Caption & "

个位数为

"+ _ 

Str(p) + "

?/p>

" + Str(x(i)) + "

?/p>

" 

Next i 

End Sub 

2. 

哥德巴赫猜想

:

任意一个大于等?/p>

6

的偶数都可以分解为两?/p>

素数之和?/p>

 

基本思想?/p>

n

为大于等?/p>

6

的任一偶数,可分解?/p>

n1

?/p>

n2

两个

数,分别检?/p>

n1

?/p>

n2

是否为素数,如都是,则为一组解。如

n1

不是素数?/p>

就不必再检?/p>

n2

是否素数?/p>

先从

n1=3

开始,检?/p>

n1

?/p>

n2

?/p>

n2=N-n1

)是否素数。然后使

n1+2   

再检?/p>

n1

?/p>

n2

是否

素数,?/p>

 

直到

n1=n/2

为止?/p>

 

?/p>

 Prime

函数功能:若为素数返?/p>

True

,不是则返回

False 

Function Prime( m as Integer) As _____________ 

Dim  i As Integer 

_____________ 

For i=2 To int(sqr(m)) 

If m Mod i = 0 Then Prime=False: Exit For 

Next i 

End Function 

’利用上面的

Prime

函数,验证哥德巴赫猜?/p>

 

Dim  n As Integer,n1 As Integer,n2 As Integer 

n=Val(InputBox("

输入大于

6

的正整数

")) 

For n1=3 to n\2 step 2 

n2=n-n1 

If  prime(n1)   Then 

If _____________ then 

Print n & "=" & n1 & "+" & n2 

Exit For               '

结束循环

 

End if 

End if 

Next  n1 

3

.合并法排序(将两个有序数组

A

?/p>

B

合并成另一个有序的数组

C

,升序)

 

基本思想?/p>

 

1

)先?/p>

A

?/p>

B

数组中各取第一个元素进行比较,将小的元素放?/p>

C

数组?/p>

 

2

)取小的元素所在数组的下一个元素与另一数组中上次比较后

较大的元素比较,重复上述比较过程,直到某个数组被先排完;

 

3

)将另一个数组剩余元素抄?/p>

C

数组,合并排序完成?/p>

 

程序段如下:

 

'

?/p>

A

?/p>

B

数组均未比较?/p>

 

Private Sub Cmd_Click() 

Dim A(1 To 200) As Integer 

Dim B(1 To 200) As Integer 

Dim ia As Integer,ib As Integer 

Dim na As Integer,nb As Integer 

'A

?/p>

B

数组数据从外部文件读入,分别存储?/p>

A(1)

?/p>

B(1)

开始的

元素中,数据个数存储?/p>

na

?/p>

nb

?/p>

 

ia=1: ib=1: ic=_______ 

Do While _______________________ 

If A(ia) < B(ib) Then 

C(ic) = A(ia)

?/p>

  ia = ia + 1 

Else 

C(ic) = B(ib)

?/p>

  ib = ib + 1 

End If 

_____________ 

Loop 

'A

数组中的剩余元素抄入

C

数组

 



ļ׺.doc޸Ϊ.docĶ

  • ѧѧܽ
  • йҵ߹취()
  • ɽʡΫ2015-2016ѧһڶѧԾ
  • ȫͨ2018߿ָϰ΢Ӧר4
  • ʦ꼶ѧ²ѧ ⷽ()̰
  • Ϸ2018һ༶üְ෽
  • йҵԴ鱨桪ԱЧ״(1)
  • Ƽ(ҵλ)
  • ж100
  • 꼶ϲġ߱Ϊ¡ԭļѧ

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)