第8講 4次魔方陣と6次魔方陣の作成
第4話 自然配列作成して表示するアプリ例

#include<stdio.h>
void f(int **x); //自然配列を作成する社員
void g(int **x); //データを表示する社員
int main(){
  int i;
  int **x=(int **)malloc(sizeof(int *)*4);
  for(i=0;i<4;i++)*(x+i)=(int *)malloc(sizeof(int)*4);
  f(x);
  g(x);
}
void f(int **x){
  int i,j;
  for(i=0;i<4;i++){
    for(j=0;j<4;j++){
      x[i][j]=4*i+j+1;
    }
  }
}
void g(int **x){
  int i,j;
  for(i=0;i<4;i++){
    for(j=0;j<4;j++){
      if(x[i][j]<10)printf("0%d ",x[i][j]);
      if(x[i][j]>=10)printf("%d ",x[i][j]);
    }
    printf("\n");
  }
}
コピペ用添付ファイル
実行画面
01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16


では、今のプログラムに
#include<stdio.h>
void f(int **x); //自然配列を作成する社員
void g(int **x); //データを表示する社員
void h(int **x); //自然配列の対角線のデータを交換して4次魔方陣を作成する社員
int main(){
  int i;
  int **x=(int **)malloc(sizeof(int *)*4);
  for(i=0;i<4;i++)*(x+i)=(int *)malloc(sizeof(int)*4);
  f(x);
  g(x);
  h(x);
  printf("\n");
  g(x);

}
void f(int **x){
   ・・・
}

void g(int **x){
   ・・・
}
void h(int **x){

}

対角線のデータを交換する社員hを付け加えて、
hの中身をいれて、

01 02 03 04
05 06 07 08
09 10 11 12
13 14 15 16

16 02 03 13
05 11 10 08
09 07 06 12
04 14 15 01

4次魔方陣が実現できるアプリに変更して下さい。

第3話へ 第5話へ

a


初心者のための excel 2016 マクロ VBA 入門講義 基礎から応用まで
vc++ c言語 c++ 入門 初心者 基礎から応用まで
eclipse c++ 入門
魔方陣 数独で学ぶ VBA 入門

数独のシンプルな解き方・簡単な解法の研究
VB講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座

初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)
初心者のための VC++による C言語 C++ 入門 基礎から応用まで第1部
eclipse java 入門
java 入門 サイト 基礎から応用まで
本サイトトップへ