#练习:实现n行n列的神奇魔方阵;

#神奇魔方阵又称纵横图,一种n行n列,由自然数1至n*n组成的方阵

#方阵中每个元素都不相等

#每行,每列以及对角线,副对角线元素之和相等

#第一行最中间的位置为数字为1

#每个数所放置的行数比前一个数少一,行数比前一个数多一(在其右上方)

#如果在第一行上,则下一个数放在最后一行的下一列上

#如果当前数在最后一列上则将下一个数放在上一行的第一列上

#如果下一个数的位置已经被占用,则一个数直接放在当前位置的正下方,即放在下一行用一列上。

ls=[[0 for x in range(5)]for y in range(5)]
#创建一个5行5列的列表
x,y=0,2
#第一排中间位置为1,从1开始
for i in range(1,26):ls[x][y]=iif x==0 and y==4:#若是在第一行最后一个元素,则换到第二行x+=1continueif x==0:#如果是在第一行,下一个数放在最后一行上x=4else:#如果不是在第一行,则输出下一个数在上一行x-=1if y==4:#如果当前数在最后一列上则将下一个数放在上一行的第一列上y=0else:y+=1if ls[x][y]!=0:#如果下一个数的位置已经被占用,则一个数直接放在当前位置的正下方,即放在下一行用一列上。x+=2y-=1
for i in range(5):for j in range(5):print("{: ^4} ".format(ls[i][j]),end="")print()

嵌套for循环语句的列表推导式:在基本列表推导式的for循环之后添加一个for语句就实现列表推导式的嵌套循环。

具体格式如下:

[exp for x in list_1 for y in list_2]

python实现神奇魔方阵(纵横图)相关推荐

  1. python入门第四章十大歌手 手机通讯录 神奇魔方阵 青春有你

    """ 场景预设:学校组织了这么一个比赛,设置了10名评委打分,为了防止作弊和恶意打分, 去掉最高分和最低分再计算平均分作为选手成绩. 本实例要求编写这样一个程序:记录评 ...

  2. Python课后作业 2. 旋转魔方阵(文件) ---- (第七次作业)

    文章目录 我的思路 原题题目 代码实现 提交结果 我的思路 刚刚想着把作业题和考试题赶快赶了 就去忙其他的了 忽然看到这道作业题 我确实觉得很有意思 魔方阵 我思考了两分钟确实没想到用什么公式可以套出 ...

  3. c语言魔方还原程序案例,利用C语言玩转魔方阵实例教程

    魔方阵 魔方阵,古代又称"纵横图",是指组成元素为自然数1.2-n的平方的n×n的方阵,其中每个元素值都不相等,且每行.每列以及主.副对角线上各n个元素之和都相等. 如3×3的魔方 ...

  4. python自动化办公入门书籍推荐-好书推荐 | Python 如此神奇,让繁琐工作自动化...

    原标题:好书推荐 | Python 如此神奇,让繁琐工作自动化 Python 如此神奇,让繁琐工作自动化 编程的威力 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Al Sweigart ...

  5. C语言学习之输出“魔方阵”。所谓魔方阵是指这样的方阵,它的每一行、每一列和对角线之和均相等。

    输出"魔方阵".所谓魔方阵是指这样的方阵,它的每一行.每一列和对角线之和均相等. 例如,三阶魔方阵为 8 1 6 3 5 7 4 9 2 要求输出1-n²的自然数构成的魔方阵. # ...

  6. C语言实现魔方阵代码及解析

    问题描述 编写程序,实现如下表所示的5-魔方阵. 17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 5-魔方阵 问题分 ...

  7. 魔方阵(奇数,单偶,双偶)

    目录 一.奇数 二.双偶 三.双偶 魔方阵,是指组成元素为自然数1.2.-.n2的平方的n×n的方阵,其中每个元素值都不相等,且每行.每列以及主.副对角线上各n个元素之和都相等. 魔方阵的规律 一.奇 ...

  8. python 复制文件并重命名_好书推荐 | Python 如此神奇,让繁琐工作自动化

    优质文章,第一时间送达! Python 如此神奇,让繁琐工作自动化 编程的威力 如今,人们面临的大多数任务都可以通过编写计算机软件来完成. Al Sweigart 的室友曾经只花了几个小时,就写出了一 ...

  9. 用c语言输出魔方阵答案,如何用C语言输出一个1—16 组成的4*4的魔方阵

    int b,c,d,e,f; printf("请输入魔方阵的阶数:"); scanf("%d",&b); e=b/2; d=0; for(c=1;c&l ...

最新文章

  1. myeclipse10.7安装git插件
  2. html5 java交互_html5+jquery与ssm进行json交互集成项目
  3. 时空快照模型snapshots
  4. axis的对象交由spring管理的配置
  5. win7驱动程序未经签名可以使用吗_手把手教你解决win7系统驱动程序签名强制禁用的设置技巧...
  6. ViewDragHelper
  7. mysql null 查询条件_MySql当查询条件为空时不作为条件查询
  8. 新手必看:揭秘德州扑克概率表
  9. sprintf 详解
  10. 分配系统盘容量应考虑三要素
  11. 45.Linux 网络排错
  12. mysql 插入汉字出现问号 解决方法
  13. 我们需要什么样的应急手册(佐岸)
  14. 饥荒正版怎么创建专用服务器,饥荒联机版如何创建本地服务器 创建本地服务器步骤...
  15. Linux之安装显卡驱动
  16. 无线WiFi怎样实现实名认证?
  17. Tensorflow实现网络---Resnet
  18. 解决酷比魔方iwork手写板系列TF卡以及USB3.0不识别的问题
  19. 十分钟实现灭霸打响指灰飞烟灭的效果,android路由器app
  20. arcgis sceneView 风场

热门文章

  1. 吾爱破解 2023 春节解题领红包之 Web 题解
  2. 【Shotcut】画中画_调整大小位置
  3. usb host 驱动 - UVC 掉包
  4. 【安装】Hadoop2.8.0搭建过程整理版
  5. Excel·VBA多级联动的数据有效性
  6. iOS 使用lame录音文件wav转mp3
  7. selenium登录优酷
  8. 关于无线上网卡的使用记录
  9. 自学Java怎样入门
  10. 【Springboot 入门培训】#3 MyBatis 多数据源与缓存和数据连接池设置