用VFP判断字符串是否为回文(1)

作者在 2006-09-16 06:05:00 发布以下内容
*  回文 (C)Copyright 2006-2006 By Tiger5392
*  用法
*      ?回文(cExpress)
*  参数
*      cExpress: 字符型常量、变量、函数、表达式
*  返回值
*      一个数值
*      数值    含义
*         0    是一个空串
*         1    是单字节回文,是双字节回文
*         2    是单字节回文,不是双字节回文
*         3    不是单字节回文,是双字节回文
*         4    不是单字节回文,不是双字节回文
*  有关概念
*      单字节回文:一个字符串,一个字节一个字节地正念与倒念都一样。
*      双字节回文:一个字符串,两个字节两个字节地正念与倒念都一样。
PARAMETERS cOldString
PRIVATE cOldString,cNewString1,cNewString2,nCnt,nFlags1,nFlags2
IF EMPTY(cOldString)
  RETURN 0
ENDIF
STORE [] TO cNewString1,cNewString2
*判断是否为单字节回文
FOR nCnt=LEN(cOldString) TO 1 STEP -1
  cNewString1=cNewString1+SUBSTR(cOldString,nCnt,1)
ENDFOR
nFlags1=IIF(cOldString=cNewString1,1,3)
*判断是否为双字节回文
FOR nCnt=LEN(cOldString) TO 1 STEP -2
  cNewString2=cNewString2+SUBSTR(cOldString,nCnt-1,2)
ENDFOR
nFlags2=IIF(cOldString=cNewString2,0,1)
RETURN nFlags1+nFlags2
VFP程序 | 阅读 2348 次
文章评论,共0条
游客请输入验证码
浏览118797次