标题: [数值计算] 批处理如何判断一个N位数中是否含有重复数字 [打印本页]
作者: rwxyxy 时间: 2009-5-11 18:25 标题: 批处理如何判断一个N位数中是否含有重复数字
如何判断一个N位数中是否含有重复数字;
如:一个5位数,12345;
[ 本帖最后由 rwxyxy 于 2009-5-11 19:10 编辑 ]
作者: 随风 时间: 2009-5-11 18:30
- @echo off
- :loop
- (
- setlocal enabledelayedexpansion
- set /a max=!random!,x=max
- for /l %%a in (0 1 9) do set x=!x:%%a= %%a !&set ".%%a="
- for %%a in (!x!) do (
- if defined .%%a set flag=a
- set .%%a=a
- )
- if defined flag (echo !max! 有重复数字) else echo !max! 没有重复数字
- )
- endlocal&pause>nul&goto loop
复制代码
作者: namejm 时间: 2009-5-11 19:03
楼主的表达让人如坠五里雾中:按照标题的意思,是要判断一个N位数,但是要判断这个数怎么了呢?不明白。看了描述,似乎要判断一个N位数中是否含有重复数字,唉,还请楼主说清楚一点。
如果要判断一个N位数中的数字是否有重复,可以先把这个数用空格、逗号、等号(也就是for中的分割符号)切分,放到for语句中检测,可以判断任意长度的数——不过,超过10位的数,铁定有重复的数字,无需再判断,2楼的就是这个思路。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |