home > 写経編 > 柴田望洋『明解C言語 入門編』 > 5. 配列 >

ForNext

Only Do What Only You Can Do

037. 2行3列の行列を加算する (多次元配列)

VBScript

JScript

Perl

更新日 : 2010.10.18
@ma  = ([1, 2, 3], [4, 5, 6]);
@mb  = ([6, 3, 4], [5, 1, 2]);
@mc  = ([], []);

foreach $i(0..1)
{
    foreach $j(0..2)
    {
        printf("%3d", $mc[$i][$j]);
    }
    print "\n";
}

foreach $i(0..1)
{
    foreach $j(0..2)
    {
        $mc[$i][$j] = $ma[$i][$j] + $mb[$i][$j];
    }
}

foreach $i(0..1)
{
    foreach $j(0..2)
    {
        printf("%3d", $mc[$i][$j]);
    }
    print "\n";
}
L:\>perl lesson_05_037.pl
  0  0  0
  0  0  0
  7  5  7
  9  6  8

PHP

更新日 : 2010.11.03
<?php
$ma  = array(array(1, 2, 3), array(4, 5, 6));
$mb  = array(array(6, 3, 4), array(5, 1, 2));
$mc  = array(array(),        array());

for ($i = 0; $i < 2; $i++)
{
    for ($j = 0; $j < 3; $j++)
    {
        printf("%3d", $mc[$i][$j]);
    }
    print "\n";
}

for ($i = 0; $i < 2; $i++)
{
    for ($j = 0; $j < 3; $j++)
    {
        $mc[$i][$j] = $ma[$i][$j] + $mb[$i][$j];
    }
}

for ($i = 0; $i < 2; $i++)
{
    for ($j = 0; $j < 3; $j++)
    {
        printf("%3d", $mc[$i][$j]);
    }
    print "\n";
}
?>
L:\>php lesson_05_037.php
  0  0  0
  0  0  0
  7  5  7
  9  6  8

Python

更新日 : 2010.11.17
ma  = [[1, 2, 3], [4, 5, 6]]
mb  = [[6, 3, 4], [5, 1, 2]]
mc  = [[0, 0, 0], [0, 0, 0]]

for i in range(0, 2, 1):
    for j in range(0, 3, 1):
        print "%3d" % mc[i][j],
    print

for i in range(0, 2, 1):
    for j in range(0, 3, 1):
        mc[i][j] = ma[i][j] + mb[i][j]

for i in range(0, 2, 1):
    for j in range(0, 3, 1):
        print "%3d" % mc[i][j],
    print
N:\>python lesson_05_037.py
  0   0   0
  0   0   0
  7   5   7
  9   6   8

Ruby

更新日 : 2010.11.01
ma  = [[1, 2, 3], [4, 5, 6]]
mb  = [[6, 3, 4], [5, 1, 2]]
mc  = [[], []]

for i in 0..1
    for j in 0..2
        printf("%3d", mc[i][j])
    end
    puts ""
end

for i in 0..1
    for j in 0..2
        mc[i][j] = ma[i][j] + mb[i][j]
    end
end

for i in 0..1
    for j in 0..2
        printf("%3d", mc[i][j])
    end
    puts ""
end
L:\>ruby  l:\lesson_05_037.rb
  0  0  0
  0  0  0
  7  5  7
  9  6  8

PowerShell

Scala

F#

C

更新日 : 2010.10.08
#include <stdio.h>
int main(int argc, char* argv[])
{
    int i, j;
    int ma[2][3] = {{1, 2, 3}, {4, 5, 6}};
    int mb[2][3] = {{6, 3, 4}, {5, 1, 2}};
    int mc[2][3] = {0};

    for (i = 0; i < 2; i++)
    {
        for (j = 0; j < 3; j++)
            printf("%3d", mc[i][j]);
        putchar('\n');
    }

    for (i = 0; i < 2; i++)
        for (j = 0; j < 3; j++)
            mc[i][j] = ma[i][j] + mb[i][j];

    for (i = 0; i < 2; i++)
    {
        for (j = 0; j < 3; j++)
            printf("%3d", mc[i][j]);
        putchar('\n');
    }

    return 0;
}
R:\>lesson037\project1.exe
  0  0  0
  0  0  0
  7  5  7
  9  6  8

C++

C++Builder

VC++

C#

Java

更新日 : 2010.11.05
class Lesson037
{
    public static void main(String[] args) {
        int ma[][] = {{1, 2, 3}, {4, 5, 6}};
        int mb[][] = {{6, 3, 4}, {5, 1, 2}};
        int mc[][] = new int[2][3];

        for (int i = 0; i < 2; i++)
        {
            for (int j = 0; j < 3; j++)
                System.out.printf("%3d", mc[i][j]);
            System.out.print('\n');
        }

        for (int i = 0; i < 2; i++)
            for (int j = 0; j < 3; j++)
                mc[i][j] = ma[i][j] + mb[i][j];

        for (int i = 0; i < 2; i++)
        {
            for (int j = 0; j < 3; j++)
                System.out.printf("%3d", mc[i][j]);
            System.out.print('\n');
        }
    }
}
L:\>java Lesson037
  0  0  0
  0  0  0
  7  5  7
  9  6  8

Objective-C

D

VB

VB.NET

Delphi

更新日 : 2010.09.24
program Project1;

{$APPTYPE CONSOLE}

uses
    SysUtils;
var
    i, j: Integer;
    ma: array[1..2] of array[1..3] of Integer = ((1, 2, 3), (4, 5, 6));
    mb: array[1..2] of array[1..3] of Integer = ((6, 3, 4), (5, 1, 2));
    mc: array[1..2] of array[1..3] of Integer;
begin
    for i := 1 to 2 do
    begin
        for j := 1 to 3 do
            write(format('%3d', [mc[i][j]]));
        write(#13#10);
    end;

    for i := 1 to 2 do
        for j := 1 to 3 do
            mc[i][j] := ma[i][j] + mb[i][j];

    for i := 1 to 2 do
    begin
        for j := 1 to 3 do
            write(format('%3d', [mc[i][j]]));
        write(#13#10);
    end;
end.
S:\>lesson037\project1.exe
  0  0  0
  0  0  0
  7  5  7
  9  6  8

Ada

PL/SQL

T-SQL

関数型

inserted by FC2 system