中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已解决]求最大公约数,得不到要的结果
作者:
标题: [已解决]求最大公约数,得不到要的结果 上一主题 | 下一主题
donpps
初级用户





积分 56
发帖 20
注册 2006-4-23
状态 离线
『楼 主』:  [已解决]求最大公约数,得不到要的结果

请教:
代码如下,不知错在何处,得不到要的结果
@echo off
rem 求36与另一个正整数(少于36)的最大公约数
:start
set y=36
set /p x= 输入小于36的正整数:
:divisor
set /a y=%y%%%%x%
if %y%==0 set mcdivisor=%x% && goto :display
set x=%x%%%%y%
if %x%==0 set mcdivisor=%y% && goto :display
goto :divisor
:display
echo mcdivisor:%mcdivisor%
pause
goto :start

[ Last edited by donpps on 2007-1-13 at 02:13 AM ]

2007-1-13 00:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 2 楼』:  

试试这个:
@echo off
echo.
echo          求两数的最大公约数
echo ================================
title 求两数的最大公约数
setlocal enabledelayedexpansion
set /p num1=请输入第一个数字:
set /p num2=请输入第二个数字:
echo --------------------------------
echo %num1%和%num2%最大公约数为:
:test
     set /a temp=%num1% %% %num2%
     if %temp% NEQ 0 (
         set /a num1=!num2!
         set /a num2=!temp!
         goto :test)

echo                      %num2%
pause>nul
[ Last edited by youxi01 on 2007-1-13 at 02:27 AM ]

2007-1-13 01:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
youxi01
高级用户




积分 846
发帖 247
注册 2006-10-27
来自 湖南==》广东
状态 离线
『第 3 楼』:  

TO: 楼主,你的错误的地方是那个y应该要交换的,而你直接去定义了
“set /a y=%y%%%%x%”

2007-1-13 01:33
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
donpps
初级用户





积分 56
发帖 20
注册 2006-4-23
状态 离线
『第 4 楼』:  

谢谢指正,2楼的代码有点小小毛病
echo %num1%和%num2%最大公约数为:%num2%
其中%num1%和%num2%已经变化

2007-1-13 01:51
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
jmz573515
银牌会员




积分 1212
发帖 464
注册 2006-12-13
状态 离线
『第 5 楼』:  

VBS写一个,灌水~
a=inputbox("请输入两个数用空格分开:")
h=split(a," ")
min=h(0)
if h(0)>h(1) then min=h(1)
for i=1 to min
if h(0) mod i=0 and h(1) mod i=0 then s=i
next
msgbox h(0)&"和"&h(1)&"的最大公约数是:"&s


2007-1-20 03:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: