n阶螺旋方阵的算法分析

n阶螺旋方阵的算法分析

ID:4242401

大小:293.02 KB

页数:6页

时间:2017-11-30

n阶螺旋方阵的算法分析_第1页
n阶螺旋方阵的算法分析_第2页
n阶螺旋方阵的算法分析_第3页
n阶螺旋方阵的算法分析_第4页
n阶螺旋方阵的算法分析_第5页
资源描述:

《n阶螺旋方阵的算法分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、1996年12月广西师院学报(自然科学版)I戈e.19964JournalofGuangxiTeaehersColleaturalieneeEdition)o.,o.第13卷第期罗(NScV】13N4n¹阶螺旋方阵的生成彭月英,,(广西师范学院计算中心南宁530001),。nn摘典该文使用C语言编程实现了对任意自然数的阶螺旋方阵的自动生成及打印,;”;,;一S图关扭词阶方阵阶螺旋方阵二维数纽循环N1引言与间题n阶所谓螺旋方阵是指形如巨.fe二e,立OJ。、nn由外向内一层一层生成的阶方阵(此处一7)这类方阵在现代物理计算方法

2、及计算机图形学等学科中有着十分重要的应用。因此我们来讨论它的生成问题。,一般方阵的打印在程序设计中是先定义一个二维数组然后对此数组人为地初始化或逐,。,个赋值一个程序只能产生一个或固定几个具体的方阵例如对干以下的5阶螺施方阵乙八11.以口矛,1.J人1,.1卜曰9JL今自1J吐O占1口八乙9l8朴2072肘8191()l,56方阵可用如下初始化方法给二维数组元素赋值·一兀:1一收稿日期9960829广西师院学报(自然科学版)第13卷,,,,,,,,,,inta[5][5〕={{116151413}{217242312},,,

3、,,,,,,,,,,,;{318252211}{419202110}{56789}}然后用如下语句进行打印for(i=0;i<5;i++){for(j~o;j(5;j++)rnt“,,a;pif(%4d〔i][j])print“n,,;f(/)prnt“n,,;if(/)}。。5方阵1即可得到打印输出而这样设计的程序没有通用性只能打印这一个阶螺旋方。6,又,.阵若要打印阶螺旋方阵要重新定义数组且重新初始化即人先要在纸上书写出这,。,。个6阶方阵才能把数据写入程序中当阶数很大时工作量相当大.,,本文是想寻求使用一个程序就能打印

4、出用户需要的任何阶数的螺旋方阵并且方阵的元素值全部由程序根据阶数自动产生。,,,n为此我们以5阶螺旋方阵为例详细分析了该方阵的特点总结推导出生成阶螺旋方阵的一般规律。由此写出程序,每次运行时只要用户给出一个n的具体数值,该程序就能自动生成一个对应的螺旋方阵。,n~55假设则阶螺方阵应按箭头方向如下生成,几一几t.l丹」,占一乃‘夕.,了月甲匕工C‘Il队O口山.‘叮,尸乃‘nLOlJJ人刁1上.Od乙甲自.⋯2825乙n91勺乙{111920106789方阵2此方阵对应的一般二维数组方阵设计如下.几a,月几‘,J,1nUnJ

5、C口02口oaaL曰,J孟马,人甘.‘月‘.月几.1eswe00esla‘,山L.气上,.己12口la..月.月.a,目d,‘a,目d,Ja,d.弓口41口42口毛3口4-方阵3,,,一层一层n如果要按箭头所示方向从外向内给下标变量赋值考虑到阶数的任意性故:要考虑如下三个间题,,。(l)要找出层数k与阶数n的关系式假定n由用户输入k要在程序中根据n计算出来,vauevaue;(2)定义变量l=1然后赋值时让它l++:,第4期彭月英阶螺旋方阵的生成(3)要找出生成每层四条边的元素的下标变化的规律。,,为了解决这些间题我们把方阵

6、拆开来看把方阵3的元素按箭头方向分成如下四个部:分、:;1)方阵左半边垂直向下的三个箭头所示的三列元素:;(2)方阵下半边从左向右的水平箭头所示的两行元素:;(3)方阵右半边从下到上的竖箭头所示的两列元素:。(4)方阵上半边从右到左的水平箭头所示的两行元素,n。下面我们通过讨论如何给这四部分的元素赋值来解决阶螺旋方阵的赋值问题2算法推出与程序设计,,,,假定n阶螺旋方阵有k层每层由四边组成则由方阵3看层数k从。开始先产生第,,。,5+1,o533~n层再产生第一层然后产生第二层阶方阵只有层由此可推出阶螺旋2,,*。k

7、方阵有〔〕层从开始故,:由此想到设计一个外循环来控制产生的层数华‘2for(k=0;k<(n+l)/2;k++):下面我们来看看方阵3左半边的列的元素(不妨设为al’)从外到内下标变化的规律列,。,,下标S正好是层数k的值它在产生一列元素时不变行下标l在产生第一列时从。变到4,,,,n在产生第二列时从l变到3在产生第三列时从2变到2故推导出产生阶螺旋方阵左半边由外到内的列的循环结构为for(i=k;i

8、,:,方阵3下半边的行的元素als从外到内下标变化的规律如下行下标l从4变到3对应,,n一:每一层的值为k一1它在产生一行的元素时不变而列下标在产生倒数第一行时〔第一)从;、个元素不算1开始变到4在产生倒数第二行时(第一第二个元素不算)从2开始变到,:,,3第3层只有一个元素兔已由前一个循

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。