| 网站首页 | 技术文章 | 下载频道 | 博客 | 编程论坛 |
 
| 技术教程首页 | 开发语言 | WEB开发 | .NET技术 | 数据库 | 操作系统 | 网页制作 |
 
 
您现在的位置: 编程中国 >> 技术教程 >> 数据库 >> VFP >> VFP技术资料 >> 正文
  ►  求两个正整数的最大公约束和最小公倍数
求两个正整数的最大公约束和最小公倍数
作者:Tiger5392    阅读人次:……    文章来源:本站原创    发布时间:2006/8/5    网友评论()条
 

原帖及讨论:http://bbs.bccn.net/thread-81760-1-1.html

最近论坛不活跃,写一个小程序,计算两个正整数的最大公约数和最小公倍数。让大家见笑了;同时希望大家贡献自己的东西。

程序代码:
****
****   GBSGYS  V1.00 (C)Copyright 2006-2006 By Tiger5392
****
****    功能
****          计算两个正整数的最大公约数及最小公倍数
****
****    用法
****          ?GYSGBS(nExpr1,nExpr2,nExpr3)
****
****    参数
****          nExpr1 第一个正整数
****          nExpr2 第二个正整数
****          nExpr3 如为0则计算最大公约数;如为1则计算最小公倍数
****
****    返回
****          最小公倍数或最大公约数
****
PARAMETERS nNum1,nNum2,nControl
PRIVATE nNum1,nNum2,nControl,nCount
SET TALK OFF
IF TYPE("nNum1")#CHR(78) OR INT(nNum1)#nNum1 OR nNum1<=0
  RETURN "****"
ENDIF
IF TYPE("nNum2")#CHR(78) OR INT(nNum2)#nNum2 OR nNum2<=0
  RETURN "****"
ENDIF
IF TYPE("nControl")#CHR(78) OR nControl#0 AND nControl#1
  RETURN "****"
ENDIF
IF nControl=1
  FOR nCount=MAX(nNum1,nNum2) TO nNum1*nNum2
    IF MOD(nCount,nNum1)=0 AND MOD(nCount,nNum2)=0
      EXIT
    ENDIF
  ENDFOR
ELSE
  FOR nCount=MIN(nNum1,nNum2) TO 1 STEP -1
    IF MOD(nNum1,nCount)=0 AND MOD(nNum2,nCount)=0
      EXIT
    ENDIF
  ENDFOR
ENDIF
RETURN nCount
**** EOF: GYSGBS (C)Copyright  By Tiger5392

 

 
文章录入:静夜思    责任编辑:静夜思 
  • 上一篇文章: 没有了

  • 下一篇文章:

  •  
    相关文章
    原创地带
    24小时热门帖子