下列程序的功能是统计所有的“水仙花数”的个数,请填空。(“水仙花数”是指一个3位数,其各位数字立方和等于该数本身,例如,153=13+53+33)。 _______ FOR n=100 TO 999 n1=VAL(SUBS(STR(n

admin2013-05-15  25

问题 下列程序的功能是统计所有的“水仙花数”的个数,请填空。(“水仙花数”是指一个3位数,其各位数字立方和等于该数本身,例如,153=13+53+33)。
     _______
   FOR n=100 TO 999
   n1=VAL(SUBS(STR(n,3),3,1))
     n2=VAL(SUBS(STR(n,3),2,1))
   n3=VAL(SUBS(STR(n,3),1,1))
     IF  _______
       nCount=nCount+1
     ENDIF
   ENDFOR
   WAIT WINDOWS’"水仙花数"的个数为’+ _______

选项

答案nCount=0 n=n1^3+n2^3+n3^3 str(nCount,2)

解析 要求水仙花数的个数,应使用一个变量来存放水仙花数的个数。该变量的初值为0,从倒数第4行可以看出,变量nCount用来存入水仙花数的个数,故第1空应填“nCount=0”。对100~999之间的每一个数,需判断其是否为水仙花数,判断方法是先分离出其各位数字,判断各位数字和是否等于该数,如果等于则是仙花数,水仙花数的数目加1,故第2空应填判断条件“n=n1^3+n2^3+n3^3”。求得水仙花数的个数后,通过一个WAIT语句在一个窗口中输出,输出的内容为字符型,故应把水仙花数转换为字符型,第3空处应填“str(nCount,2)”。
转载请注明原文地址:https://kaotiyun.com/show/H7sp777K
0

最新回复(0)