Pongeponge

べやーと出力してみた。

1 × 1 = 1
11 × 11 = 121
111 × 111 = 12321
1111 × 1111 = 1234321
11111 × 11111 = 123454321
111111 × 111111 = 12345654321
1111111 × 1111111 = 1234567654321
11111111 × 11111111 = 123456787654321
111111111 × 111111111 = 12345678987654321
1111111111 × 1111111111 = 1234567900987654321
11111111111 × 11111111111 = 123456790120987654321
111111111111 × 111111111111 = 12345679012320987654321
1111111111111 × 1111111111111 = 1234567901234320987654321
11111111111111 × 11111111111111 = 123456790123454320987654321
111111111111111 × 111111111111111 = 12345679012345654320987654321

2 × 2 = 4
22 × 22 = 484
222 × 222 = 49284
2222 × 2222 = 4937284
22222 × 22222 = 493817284
222222 × 222222 = 49382617284
2222222 × 2222222 = 4938270617284
22222222 × 22222222 = 493827150617284
222222222 × 222222222 = 49382715950617284
2222222222 × 2222222222 = 4938271603950617284
22222222222 × 22222222222 = 493827160483950617284
222222222222 × 222222222222 = 49382716049283950617284
2222222222222 × 2222222222222 = 4938271604937283950617284
22222222222222 × 22222222222222 = 493827160493817283950617284
222222222222222 × 222222222222222 = 49382716049382617283950617284

3 × 3 = 9
33 × 33 = 1089
333 × 333 = 110889
3333 × 3333 = 11108889
33333 × 33333 = 1111088889
333333 × 333333 = 111110888889
3333333 × 3333333 = 11111108888889
33333333 × 33333333 = 1111111088888889
333333333 × 333333333 = 111111110888888889
3333333333 × 3333333333 = 11111111108888888889
33333333333 × 33333333333 = 1111111111088888888889
333333333333 × 333333333333 = 111111111110888888888889
3333333333333 × 3333333333333 = 11111111111108888888888889
33333333333333 × 33333333333333 = 1111111111111088888888888889
333333333333333 × 333333333333333 = 111111111111110888888888888889

4 × 4 = 16
44 × 44 = 1936
444 × 444 = 197136
4444 × 4444 = 19749136
44444 × 44444 = 1975269136
444444 × 444444 = 197530469136
4444444 × 4444444 = 19753082469136
44444444 × 44444444 = 1975308602469136
444444444 × 444444444 = 197530863802469136
4444444444 × 4444444444 = 19753086415802469136
44444444444 × 44444444444 = 1975308641935802469136
444444444444 × 444444444444 = 197530864197135802469136
4444444444444 × 4444444444444 = 19753086419749135802469136
44444444444444 × 44444444444444 = 1975308641975269135802469136
444444444444444 × 444444444444444 = 197530864197530469135802469136

5 × 5 = 25
55 × 55 = 3025
555 × 555 = 308025
5555 × 5555 = 30858025
55555 × 55555 = 3086358025
555555 × 555555 = 308641358025
5555555 × 5555555 = 30864191358025
55555555 × 55555555 = 3086419691358025
555555555 × 555555555 = 308641974691358025
5555555555 × 5555555555 = 30864197524691358025
55555555555 × 55555555555 = 3086419753024691358025
555555555555 × 555555555555 = 308641975308024691358025
5555555555555 × 5555555555555 = 30864197530858024691358025
55555555555555 × 55555555555555 = 3086419753086358024691358025
555555555555555 × 555555555555555 = 308641975308641358024691358025

6 × 6 = 36
66 × 66 = 4356
666 × 666 = 443556
6666 × 6666 = 44435556
66666 × 66666 = 4444355556
666666 × 666666 = 444443555556
6666666 × 6666666 = 44444435555556
66666666 × 66666666 = 4444444355555556
666666666 × 666666666 = 444444443555555556
6666666666 × 6666666666 = 44444444435555555556
66666666666 × 66666666666 = 4444444444355555555556
666666666666 × 666666666666 = 444444444443555555555556
6666666666666 × 6666666666666 = 44444444444435555555555556
66666666666666 × 66666666666666 = 4444444444444355555555555556
666666666666666 × 666666666666666 = 444444444444443555555555555556

7 × 7 = 49
77 × 77 = 5929
777 × 777 = 603729
7777 × 7777 = 60481729
77777 × 77777 = 6049261729
777777 × 777777 = 604937061729
7777777 × 7777777 = 60493815061729
77777777 × 77777777 = 6049382595061729
777777777 × 777777777 = 604938270395061729
7777777777 × 7777777777 = 60493827148395061729
77777777777 × 77777777777 = 6049382715928395061729
777777777777 × 777777777777 = 604938271603728395061729
7777777777777 × 7777777777777 = 60493827160481728395061729
77777777777777 × 77777777777777 = 6049382716049261728395061729
777777777777777 × 777777777777777 = 604938271604937061728395061729

8 × 8 = 64
88 × 88 = 7744
888 × 888 = 788544
8888 × 8888 = 78996544
88888 × 88888 = 7901076544
888888 × 888888 = 790121876544
8888888 × 8888888 = 79012329876544
88888888 × 88888888 = 7901234409876544
888888888 × 888888888 = 790123455209876544
8888888888 × 8888888888 = 79012345663209876544
88888888888 × 88888888888 = 7901234567743209876544
888888888888 × 888888888888 = 790123456788543209876544
8888888888888 × 8888888888888 = 79012345678996543209876544
88888888888888 × 88888888888888 = 7901234567901076543209876544
888888888888888 × 888888888888888 = 790123456790121876543209876544

9 × 9 = 81
99 × 99 = 9801
999 × 999 = 998001
9999 × 9999 = 99980001
99999 × 99999 = 9999800001
999999 × 999999 = 999998000001
9999999 × 9999999 = 99999980000001
99999999 × 99999999 = 9999999800000001
999999999 × 999999999 = 999999998000000001
9999999999 × 9999999999 = 99999999980000000001
99999999999 × 99999999999 = 9999999999800000000001
999999999999 × 999999999999 = 999999999998000000000001
9999999999999 × 9999999999999 = 99999999999980000000000001
99999999999999 × 99999999999999 = 9999999999999800000000000001
999999999999999 × 999999999999999 = 999999999999998000000000000001

使ったソースコードは下記

static void Main(string args)
{
int k = 3;
int n = 1;
int arrsize = k*2;
int
v;// = new int[arrsize];

for (n = 1; n <= 9; n++)
{
for (k = 1; k <= 15; k++)
{
v = new int[k * 2];
firstdt(n, k, v);

seconddt(v);

for (int i = 0; i < k; i++)
{
Debug.Write(n);
}
Debug.Write(" × ");
for (int i = 0; i < k; i++)
{
Debug.Write(n);
}
Debug.Write(" = ");
printnum(v);
}
}


}

///


/// 初期データ作成
///

/// 値(1-9)
///
/// 数値の配列
static void firstdt(int n, int k, int v)
{
int c = n;
for (int i = 0; i < v.Length; i++)
{
v[i] = n*c;
if (i < k - 1) c+=n;
else c-=n;
}
}

///


/// データ整形
///

/// 数値の配列
static void seconddt(int
v)
{
int c = 0;
for (int i = 0; i < v.Length; i++)
{
if (c != 0)
{
v[i] = v[i] + c;
c = 0;
}
if (v[i] >= 10)
{
c = v[i] / 10;
v[i] = v[i] - c * 10;
}
}
}

static void printnum(int[] v)
{
int c = 0;

if (v[v.Length - 1] == 0) c = v.Length - 2;
else c = v.Length - 1;

for (int i = c; i >= 0; i--)
{
Debug.Write(v[i]);
}

Debug.WriteLine("");
}
}