VFP程序习题

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

题目1:从键盘输入三角形的边长,输入边长满足两边之和大于第三边,且为正值。计算并输出三角形的面积S;若不满足以上条件,显示输出"不能构成三角形"。

* 其中面积公式请参看(图1)。

Area=根号下s*(s-a)*(s-b)*(s-c)

S=(a+b+c)/2

* 将面积值存入变量AREA中。

* 请按照题目要求,在下面编写程序代码。

SET TALK OFF

SET LOGERRORS ON

INPUT TO A

INPUT TO B

INPUT TO C

? "三角形面积为",FUN(A,B,C)

YZJ()

SET TALK ON

RETURN

FUNCTION FUN(a,b,c)

AREA=-1

**********Program**********

if a+b>c and a+c>b and b+c>a and a>0 and b>0 and c>0 s=(a+b+c)/2

area=sqrt(s*(s-a)*(s-b)*(s-c))

? "三角形面积为",s

else

? "不能构成三角形"

endif

********** End **********

RETURN AREA

FUNCTION YZJ()

USE IN

LOCAT FOR TIHAO=1

IF FOUND()

A=N1

B=N2

C=N3

O=FUN(A,B,C)

DO YZJ1 WITH O

ELSE

?"试题输入文件已损坏,请重新配置考试环境"

USE

RETURN

*题目2:已知变量x为正整数,编程求变量x的位数。* (请用do case...case...endcase语句完成。)

* 将结果存入变量OUT中。

* 请按照题目要求,在下面编写程序代码。

SET TALK ON

SET LOGERRORS ON

x=4764

OUT=-1

**********Program**********

do case

case x>9999

place=5

case x>999

place=4

case x>99

place=3

case x>9

place=2

othe place=1

OUT=place

? OUT

********** End **********

DO YZJ WITH OUT

SET LOGERRORS OFF

SET TALK OFF

*题目3:编一程序打印一个数列,前两个数是0、1第三个数是前两个数之和,以后的每个数都是其前两个数之和。编程

* 求出此数列第20个数,将结果存入变量OUT中。

* 请按照题目要求,在下面编写程序代码。

SET LOGERRORS ON

OUT=-1

**********Program**********

a=0

b=1

i=3

do while i<=20

c=a+b

a=b

b=c

i=i+1

enddo

OUT=c

?OUT

********** End **********

DO YZJ28 WITH OUT

RETURN

*题目4:编程求P=1-1/(2×2)+1/(3×3)-1/(4×4)+1/(5×5)。

* 将结果存入变量OUT中,要求用Do While语句实现。SET TALK ON

SET LOGERRORS ON

OUT=-1

**********Program**********

P=0

M=1

DO WHILE M<=5

P=P+((-1)^(M+1))/(M*M)

M=M+1

ENDDO

?"P=",P

OUT=P

********** End **********

DO YZJ WITH OUT

SET TALK OFF

*题目5:编程计算并输出给定整数n的所有因子之积* (不包括1与自身)。

* 将结果存入变量OUT中。

* 请按照题目要求,在下面编写程序代码。SET TALK ON

SET LOGERRORS ON

? "输入一个整数:n=855"

n=855

OUT=-1

**********Program**********

store 1 to s

for i=2 to n-1

if n%i=0

s=s*i

endif

endfor

? "s=",s

out=s

********** End **********

DO YZJ WITH OUT

SET TALK OFF

*题目6:编程求一分数序列2/1,3/2,5/3,8/5,13/8, * 21/13…的前20项之和。

* 将结果存入变量OUT中。

SET TALK ON

SET LOGERRORS ON

OUT=-1

**********Program**********

f1=1

f2=1

s=0

for i=1 to 20

f3=f1+f2

f1=f2

f2=f3

s=s+f2/f1

endfor

out=s

? Out

********** End *******

DO YZJ WITH OUT

相关文档
最新文档