MATLAB ヘルプ センター
魔方陣
M = magic(n)
M = magic(n) は、1 から n2 までの整数を使用して、行方向と列方向の和が等しくなる n 行 n 列の行列を返します。次数 n は、有効な魔方陣を作成するためには 3 以上のスカラーでなければなりません。
n
1
3
例
すべて折りたたむ
3 次の魔方陣 M を計算します。
M
M = magic(3)
M = 3×3 8 1 6 3 5 7 4 9 2
各列の要素の合計と各行の要素の合計は同じです。
sum(M)
ans = 1×3 15 15 15
sum(M,2)
ans = 3×1 15 15 15
imagesc を使用して、次数が 9 ~ 24 である魔方陣行列のパターンを視覚的に調べます。パターンは、mod(n,4) の値が 0、2、または奇数のいずれであるかに応じて magic が 3 つの異なるアルゴリズムを使用していることを示します。
imagesc
mod(n,4)
magic
for n = 1:16 subplot(4,4,n) ord = n+8; m = magic(ord); imagesc(m) title(num2str(ord)) axis equal axis off end
行列の次数。3 以上のスカラー整数として指定します。n が整数やスカラーではなく複素数である場合、magic はこの値を floor(real(double(n(1)))) により使用可能な整数に変換します。
floor(real(double(n(1))))
n が 3 より小さい場合、magic は魔方陣ではない行列、または縮退した魔方陣 1 や [] を返します。
[]
データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical | char
single
double
int8
int16
int32
int64
uint8
uint16
uint32
uint64
logical
char
すべて展開する
使用上の注意および制限:
入力引数 n は、コード生成時に定数でなければなりません。
backgroundPool
ThreadPool
この関数はスレッドベースの環境を完全にサポートしています。詳細については、スレッドベースの環境での MATLAB 関数の実行を参照してください。
R2006a より前に導入
ones | rand
ones
rand
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ