VB程序设计 习题及答案第7章 过程Word下载.docx

上传人:b****3 文档编号:14985101 上传时间:2022-10-26 格式:DOCX 页数:17 大小:315.71KB
下载 相关 举报
VB程序设计 习题及答案第7章 过程Word下载.docx_第1页
第1页 / 共17页
VB程序设计 习题及答案第7章 过程Word下载.docx_第2页
第2页 / 共17页
VB程序设计 习题及答案第7章 过程Word下载.docx_第3页
第3页 / 共17页
VB程序设计 习题及答案第7章 过程Word下载.docx_第4页
第4页 / 共17页
VB程序设计 习题及答案第7章 过程Word下载.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

VB程序设计 习题及答案第7章 过程Word下载.docx

《VB程序设计 习题及答案第7章 过程Word下载.docx》由会员分享,可在线阅读,更多相关《VB程序设计 习题及答案第7章 过程Word下载.docx(17页珍藏版)》请在冰豆网上搜索。

VB程序设计 习题及答案第7章 过程Word下载.docx

Fori=1Ton

f=f*i

运行结果:

如a、b、c的值分别输入为4、5、6

则程序运行结果如图7-1所示:

7.2编写程序,打印100~200之间的所有素数。

要求:

(1)每行输出5个素数。

(2)利用Function过程判断每个数是否为素数,是返回1,否则返回0。

Print2;

k=1

Fori=3To100

f=prime(i)

Iff=1Then

k=k+1

IfkMod5=0ThenPrintiElsePrinti;

EndIf

PrivateFunctionprime(n)

prime=1

Fori=2Ton-1

IfnModi=0Thenprime=0:

ExitFor

EndFunction

程序运行结果如图7-2所示:

7.3编写程序,利用Function过程计算下式的值:

(1+2+3+…+m)+(1+2+3+…+n)

y=───────────────

(1+2+3+…+p)

m=Val(InputBox("

输入m:

"

))

n=Val(InputBox("

输入n:

p=Val(InputBox("

输入p:

y=(sum(m)+sum(n))/sum(p)

sum="

y

PrivateFunctionsum(n)

s=0

s=s+i

sum=s

如输入m值为:

20,n值为:

15,p值为:

10

则程序运行结果如图7-3所示:

7.4编写Function过程计算n!

调用该函数过程计算下式的值:

S=1+1/(1+4!

)+1/(1+4!

+7!

)+…+1/(1+4!

+…+19!

t=0

Fori=1To19Step3

t=t+fact(i)

s=s+1/t

PrivateFunctionfact(n)

Nexti

fact=f

程序运行结果如图7-4所示。

xx2x3xn

7-5计算ex=1+─+─+─+…+─

1!

2!

3!

n!

xn

设x=1,2,3,4,5,6时,分别打印ex的值,要求精度─<

0.0001

用Function过程计算n!

调用该过程,计算上式的值。

Forx=1To6

Sum=1

t=1

n=0

Do

n=n+1

t=t*x

term=t/fact(n)

Sum=Sum+term

LoopUntilterm<

e^"

x;

"

="

Sum

Nextx

程序运行结果如图7-5所示:

7.6编写两个Function过程,分别计算40,16,34,26,52的最大公约数和最小公倍数。

Dima(1To5)AsInteger

a

(1)=40

a

(2)=16

a(3)=34

a(4)=26

a(5)=52

a1=a

(1)

a2=a

(2)

b=gcd(a1,a2)

d=b

c=a

(1)*a

(2)/b

Fori=3To5

a1=c

a2=a(i)

c=c*a(i)/b

最小公倍数为:

c

d=gcd(d,a(i))

最大公约数为:

d

PrivateFunctiongcd(x,y)

Ifx<

yThen

t=x

x=y

y=t

r=xMody

DoWhiler<

>

0

y=r

r=xMody

Loop

gcd=y

程序运行结果如图7-6所示:

7.7利用Function过程计算下式的值:

cos2x(0>

x)

f(x)=int(6x2-5x+1)(0≤x≤3)

e3-x(3<

调用该Function过程计算f(f(f(a)))+f(f(2+f(b)))的值。

a,b的值由键盘输入。

a=Val(InputBox("

输入a的值:

b=Val(InputBox("

输入b的值:

t=f(f(f(a)))+f(f(2+f(b)))

计算结果:

t

PrivateFunctionf(x)

0Then

f=Cos(2*x)

ElseIfx<

=3Then

f=Int(6*x*x-5*x+1)

Else

f=Exp(3-x)

如a、b的值分别输入为3和5

则程序运行结果如图7-7所示。

7.8编写程序,利用Sub过程计算5×

4的数组中,每行最大元素及其位置和每列最大元素及其位置。

说明:

采用随机函数Rnd产生20个1~20之间的随机整数,存放在数组a中。

Dima(1To5,1To4)AsInteger

RandomizeTimer

Fori=1To5

Forj=1To4

a(i,j)=Int(20*Rnd+1)

PrintFormat(a(i,j),"

@@@@@"

);

Nextj

Print

Callhd(a(),i,m)

第"

i;

行"

最大元素是:

a(i,m);

位置在第"

m;

列"

Callld(a(),j,n)

Print"

j;

a(n,j);

n;

Nextj

PrivateSubhd(x()AsInteger,i,m)

Max=x(i,1)

m=1

Forj=2To4

Ifx(i,j)>

MaxThen

Max=x(i,j)

m=j

PrivateSubld(x()AsInteger,j,n)

Max=x(1,j)

n=1

Fori=2To5

n=i

程序运行结果如图7-8所示:

7.9编写程序,要求该程序在输入某人的编号、实发工资数额后,自动确定发给多少张一百元、五十元、十元、五元、一元、五角、一角、五分、一分的钞票,并输出实发工资总额和所需各种钞票的总数目。

(要求用Sub过程处理除一百元以外的钞票的数目)

num=Val(InputBox("

输入职工编号:

s$=InputBox("

输入职工工资:

l=Len(s$)

s0=Val(Left$(s$,l-5))

Callfenp(l,s$,s1,s2,s3,s4,s5,s6,s7,s8)

职工编号:

num,"

职工工资:

s$

100元"

s0

50元"

s1

10元"

s2

5元"

s3

1元"

s4

5角"

s5

1角"

s6

5分"

s7

1分"

s8

PrivateSubfenp(l,s$,s1,s2,s3,s4,s5,s6,s7,s8)

l1=Val(Mid$(s$,l-4,1))

l2=Val(Mid$(s$,l-3,1))

l3=Val(Mid$(s$,l-1,1))

l4=Val(Mid$(s$,l,1))

s1=l1\5

s2=l1Mod5

s3=l2\5

s4=l2Mod5

s5=l3\5

s6=l3Mod5

s7=l4\5

s8=l4Mod5

程序运行结果如图7-9所示:

(注意:

输入的工资保留到分)

7.10编写程序,把任意一个十进制数N转换成分别用二进制、八进制和十六进制表示的数,要求用Sub过程实现数制的转换。

程序代

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1