中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-05 23:02
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [原创]*****杨辉三角***** 查看 760 回复 4
楼 主 [原创]*****杨辉三角***** 发表于 2007-09-26 20:20 ·  中国 北京 电信
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线
@echo off
setlocal enabledelayedexpansion
::::::::::::::::::::::::::Pascal Triangle {s11ss 2007-9-26}::::::::::::::::::::::::::
echo Please input the layers:
set/p num=
for /l %%a in (1,1,%num%) do (
for /l %%i in (1,1,%%a) do (
set/a x=%%a-1
set/a y=%%i-1
set/a n%%a%%i=n!x!!y!+n!x!%%i
if %%i equ %%a set n%%a%%i=1
if %%i equ 1 set/a n%%a%%i=1
)
)
for /l %%a in (1,1,%num%) do (
for /l %%i in (1,1,%%a) do (
set s%%a=!s%%a! !n%%a%%i!
)
)
set fn=%num%_PascalTriangle.txt
set f=
set/p q=Save to the file %fn%?(y/n)
if not "%q%" equ "y" (if not "%q%" equ "Y" goto :e)
cd.>%fn%
set f=^>^>%fn%
:e
for /l %%a in (1,1,%num%) do (
set/a counter=%num%+1-%%a
for /l %%i in (1,1,!counter!) do (
set s%%a= !s%%a!
)
%f% echo !s%%a!
)
echo.
echo Press Any Key To Exit...
pause>nul


[ Last edited by s11ss on 2007-9-26 at 08:23 PM ]
2 发表于 2007-09-26 20:25 ·  中国 陕西 西安 电信
初级用户
★★
积分 85
发帖 73
注册 2007-09-23 23:00
18年会员
UID 98146
性别 男
状态 离线
老大,能说说这是实现什么功能的吗?本人太采见谅啊!!!
3 发表于 2007-09-26 20:28 ·  中国 北京 电信
银牌会员
★★★
积分 2,098
发帖 566
注册 2007-09-11 07:27
18年会员
UID 97070
性别 男
状态 离线
根据你提供的层数显示杨辉三角啊..
4 发表于 2007-09-26 20:31 ·  中国 陕西 西安 电信
初级用户
★★
积分 85
发帖 73
注册 2007-09-23 23:00
18年会员
UID 98146
性别 男
状态 离线
哦,学习中。。。
5 发表于 2007-09-26 20:45 ·  中国 陕西 西安 电信
初级用户
★★
积分 85
发帖 73
注册 2007-09-23 23:00
18年会员
UID 98146
性别 男
状态 离线
玩了一下,觉得老祖宗留下的东西真是值得我们后人敬仰和发奋学习啊
论坛跳转: