C语言四阶完美幻方

// 四阶幻方.cpp : Defines the entry point for the console application.

/*****************************************************

* 操作系统:Windows XP *

* 编译环境:Microsoft Visual C++6.0 *

* *

* 程序编写:万传华 *

* 联系邮箱:wanchuanhua@ *

*****************************************************/

//求解幻方

// x11 x12 x13 x14

// x21 x22 x23 x24

// x31 x32 x33 x34

// x41 x42 x43 x44

//由于已知四阶幻方数量很多,总数是880*8=7040,

//故在此只求完美幻方

// x11+x12+x13+x14=34

// x21+x22+x23+x24=34

// x31+x32+x33+x34=34

// x41+x42+x43+x44=34

// x11+x21+x31+x41=34

// x12+x22+x32+x42=34

// x13+x23+x33+x43=34

// x14+x24+x34+x44=34

// x11+x22+x33+x44=34

// x14+x23+x32+x41=34

//还有泛对角线

// x21+x32+x43+x14=34

// x31+x42+x13+x24=34

// x41+x12+x23+x34=34

// x11+x24+x33+x42=34

// x12+x21+x34+x43=34

// x13+x22+x31+x44=34

//#include "stdafx.h"

#include

#include

#include

#include

#include

void show(int *M,unsigned rows,unsigned cols)

{printf("\n");

for(unsigned i=0;i

{for(unsigned j=0;j

printf("%d, ",*M++);

printf("\n");

}

printf("\n");

};

int gcd(int a,int b)

{int c;

//处理b>a的情况

if(b>a)

{c=a,a=b,b=c;

}

do

{c=a%b,a=b,b=c;

}while(c);

return a;

};

//整数型方程

//方程数FCS>1,未知数WZS>1,FCS<=WZS

//int *M ,每行一个表达式(共FCS行),共WZS+1列(加常数列)

void Equation(int *M,unsigned FCS,unsigned WZS)

{unsigned row,col,i,j,t;

int *P,*Q;//用于访问数组,指向当前操作的方程式

int x,y,z,k;

++WZS;

row=0,col=0,P=M;//参考数row,col

do

{//寻找非零参考数

t=row;Q=P;

while(Q[col]==0)

{++t;Q+=WZS;

if(t>=FCS) break;

}

if(t>=FCS)

{++col;

continue;

}

if(P!=Q)//交换

{for(j=0;j

{k=P[j];

P[j]=Q[j];

Q[j]=k;

}

}

z=P[col];//参考数位置:row行,col列

//消元

for(i=row+1,Q=P+WZS;i

{y=Q[col];

if(y==0) continue;

k=gcd(abs(z),abs(y));

x=z/k,y/=k;

for(j=0;j

四阶幻方c语言编程,C语言四阶完美幻方.doc相关推荐

  1. c语言职专试题及答案,中等职业学校计算机应用专业c语言编程基础科试卷及答案.doc...

    中等职业学校计算机应用专业c语言编程基础科试卷及答案.doc 中等职业学校计算机应用专业C语言编程基础科试卷及答案一.填空(共35分)1.Unix系统诞生于 年,是由 实验室的K和用汇编语言开发成功的 ...

  2. 11 12 13c语言编程,C语言编程

    C语言编程 1.sscanf() sscanf()与scanf()类似,都是用于输入的,只是后者以键盘(stdin)为输入源,前者以固定字符串为输入源. 头文件:#include 格式:int ssc ...

  3. c语言编程作业最大整数问题,C语言编程第六章作业答案.doc

    C语言编程第六章作业答案 1. 输入两个正整数m和n,求其最大公约数和最小公倍数. 辗除法--辗转相除法, 又名欧几里德算法(Euclidean algorithm)乃求两个正整数之最大公因子的算法. ...

  4. 0.618法C语言编程,c语言编程题--0.618法求最小值

    c语言编程题--0.618法求最小值0 题目: 1.函数f(x)=x+10/x,初始量a=2,b=10,c=0.3 2.步骤:(1)取a1=a+0.382*(b-a),b1=b+0.618*(b-a) ...

  5. 100以内加减法C语言编程,C语言编程100题(其三)来啦!

    原标题:C语言编程100题(其三)来啦! 无论是风里,还是在雨里,我都在这里守候着你- 大家好啊,我是小C,咱们又见面咯,前面的题目做的怎么样呢,今天又给大家送上新的题目了,快来学习吧! 计算200到 ...

  6. wave6000可以c语言编程吗,WAVE6000使用教程初步.doc

    PAGE PAGE 12 WAVE集成调试软件使用初步 说明:本文档是对WAVE集成调试软件使用的初步说明,其中调试软件中有许多功能没有涉及,希望同学们通过使用进一步掌握. 一.启动 启动WAVE可以 ...

  7. 在线模拟c语言编程,c语言模拟编程学习软件v2019

    C/C ++程序设计学习与实验系统是一款可用于设计教学演示.学习与实验的C/C ++语言编程学习软件,是由从事教学的老师根据C/C ++的初学者及C程序多媒体演示研发.对于想要学习C语言的朋友是一个不 ...

  8. [Lua语言编程]Lua语言基础知识

    文章目录 `Lua` `Lua`语言的起源 `Lua` 特性 `Lua下载` Linux 系统上安装 Mac OS X 系统上安装 Window 系统上安装 `Lua` `Lua`语言语法 `Lua` ...

  9. 四阶幻方c语言编程,C语言实例 求四阶的素数幻方

    求四阶的素数幻方.即在一个4X4 的矩阵中,每一个格填 入一个数字,使每一行.每一列和两条对角线上的4 个数字所组成的四位数,均为可逆素数. *问题分析与算法设计 有了前面的基础,本题应当说是不困难的 ...

最新文章

  1. uPC1677射频信号放大芯片
  2. PHP机器学习库php-ml的简单测试和使用
  3. vector容器中关于处理从非0位置开始赋值的操作
  4. Java 8中获取参数名称
  5. python实例 91,92,93,94
  6. Easyui 页面访问慢解决方案,GZIP网站压缩加速优化
  7. 阿里大文娱:不存在“优酷自制团队转入阿里影业”一说
  8. win10wifi间歇性断网重启后恢复_实用!Xbox Series X 在重启后也能快速恢复之前的游戏状态...
  9. PHP的php://input和$HTTP_RAW_POST_DATA 和$_POST的关系
  10. SQLSERVER 恢复挂起
  11. minimumsnap(1)微分平坦特性(Differential Flatness)
  12. 统一认证 java_java统一身份认证系统
  13. Java Word工具类--之Gradle项目创建
  14. 【转载】《三体》:给时光以生命,给岁月以文明
  15. 微信浏览器网页点击图片缩放
  16. java trove_trove4j高性能Java集合库
  17. F检验为什么要求各比较组的方差齐…
  18. 常见Shell编程脚本
  19. 广工计算机组成原理考试,广工计算机组成原理期末考试B卷(杨卫平)
  20. app同质化趋势下,如何实现差异化?

热门文章

  1. 第一章:photoshop概述,初识PS
  2. 专注互联网产品的核心价值
  3. cadence virtuoso进行AMS仿真踩坑记录和解决方法
  4. 订阅号运营规范(安全教程):数据分析
  5. 计算机视觉和图像处理常用的一些标准图片
  6. 中企通信亮相WRE制造业CIO峰会2017
  7. 成都待慕电商:抖音生活服务创作者信用分体系上线
  8. mfc-7360扫描时无法检查连接计算机,mfc7360怎么扫描 mfc7360扫描键无反映解决办法...
  9. python调用gpu运算_使用GPU加速numpy运算
  10. pytorch安装错误