广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 5644 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
堕天使 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x9
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
文章表情[C/C++][求助] 魔术方阵问题~请高手帮忙
如题~
我程式已经写好能因出1个3*3魔术方阵 但是老师规定说要将3*3魔术方阵的8种变化都印出
我想破头想不出要怎么改才能将8种都印出来~
请求各位高手帮忙~
程式码如下~

--------------------------------------------------------------------
#include "stdafx.h"
#include<stdio.h>
#include<stdlib.h>
int main(int argc, char* argv[])

{
int mag;
int n=3;
int i,j,k;

(n%2 == 0);

for ( i = 0; i & ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容




为何活着?想做什么,还是想完成什么?
  我没这种想法,只是想活着而已。

献花 x0 回到顶端 [楼 主] From:台湾中华电信 | Posted:2005-12-15 07:26 |
freezer0110 手机
数位造型
个人文章 个人相簿 个人日记 个人地图
小有名气
级别: 小有名气 该用户目前不上站
推文 x0 鲜花 x1
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

magic matrix在3*3严格说只有一种类型..
其他的都是转置或镜向两种..如
(1) 转置 (180度)
    8 1 6     4 9 2
    3 5 7 ->   3 5 7    
    4 9 2     8 1 6

(2) 镜向
    8 1 6     6 1 8
    3 5 7 -> 7 5 3
    4 9 2     2 9 4

这样一共就有8种组合 在更高阶的magic matrix才有不同解
那就在PRINT的部分多写这两个部分就可以了
有错请指教


献花 x0 回到顶端 [1 楼] From:台湾世新有线 | Posted:2005-12-15 09:00 |
rakish
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x18
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

[1][2][3]
[4][5][6]
[7][8][9]

只要知道[1],[3]此矩阵就决定了([5]=5)

可以放在[1]位置的有2,4,6,8一共4种
当[1]=2时可以放在[3]位置的有4,6一共2种
所以共有4x2=8种

[1][3]位置的组合共有此八种
(2,2)no,(2,4),(2,6),(2,8)no
(4,2),(4,4)no,(4,6)no,(4,8)
(6,2),(6,4)no,(6,6)no,(6,8)
(8,2)no,(8,4),(8,6),(8,8)no

magic(int n,int m)那边应该可以写的漂亮一点...

复制程式
#include<stdio.h>
#include<stdlib.h>
void magic(int n,int m){
    int a[10],i;
    a[1]=n;a[9]=10-n;
    a[2]=15-m-n;a[8]=10-a[2];
    a[3]=m;a[7]=10-m;
    a[4]=15-a[1]-a[7];
    a[5]=5;
    a[6]=10-a[4];

    for(i=1;i<=9;i++){
        printf("%d",a[i]);
        if((i%3)==0)printf("\n");
    }
    printf("\n");
}

int main()
{
    int i,j;
    for(i=2;i<=8;i=i+2){
        for(j=2;j<=8;j=j+2){
            if(i!=j&&(i+j)!=10)
                magic(i,j);
    }
 }
}


人一但长大了
就发现世上的事不像想的那么好
你总是会一天天长大的
会看得越来越清楚
献花 x0 回到顶端 [2 楼] From:台湾 | Posted:2005-12-16 02:57 |
堕天使 手机
个人头像
个人文章 个人相簿 个人日记 个人地图
小人物
级别: 小人物 该用户目前不上站
推文 x0 鲜花 x9
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

喔喔~谢谢rakish大大的指教~
帮我解决了这大问题
在此献上十二万分的谢意


为何活着?想做什么,还是想完成什么?
  我没这种想法,只是想活着而已。

献花 x0 回到顶端 [3 楼] From:台湾中华电信 | Posted:2005-12-16 08:23 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.058052 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言