回答編集履歴

4

回答修正:この回答では実現できず。

2017/01/26 03:39

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,3 +1,21 @@
1
+ だめだ、このルールがあると基数変換(36進数)使用しての変換はできないですね。
2
+
3
+
4
+
5
+ > 1A,1B,1C,1D...1X,1Y,1Z
6
+
7
+ > 2A,2B,2C,2D...2X,2Y,2Z
8
+
9
+ > ↓
10
+
11
+ > 9A,9B,9C,9D...9X,9Y,9Z
12
+
13
+
14
+
15
+ ----
16
+
17
+
18
+
1
19
  > 3桁からは数字(1-9)とアルファベット(A-Z)の組み合わせ
2
20
 
3
21
  1~99まではそのまま1~99なので36進数としては扱えないですね。

3

回答修正:コード追加

2017/01/26 03:39

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,5 +1,3 @@
1
-
2
-
3
1
  > 3桁からは数字(1-9)とアルファベット(A-Z)の組み合わせ
4
2
 
5
3
  1~99まではそのまま1~99なので36進数としては扱えないですね。
@@ -12,7 +10,7 @@
12
10
 
13
11
  ```C#
14
12
 
15
- String ConvertXX(Integer val) {
13
+ string ConvertXX(int val) {
16
14
 
17
15
 
18
16
 
@@ -26,6 +24,22 @@
26
24
 
27
25
  }
28
26
 
27
+
28
+
29
+ System.Text.StringBuilder sb = new System.Text.StringBuilder();
30
+
31
+ sb.Append("0,");
32
+
33
+ for (int i = 1; i < 1349 /* "zz" */ ; i++) {
34
+
35
+ sb.Append(ConvertXX(i));
36
+
37
+ sb.Append(",");
38
+
39
+ }
40
+
41
+ Console.WriteLine(sb.ToString());
42
+
29
43
  ```
30
44
 
31
45
 

2

回答変更

2017/01/26 03:06

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,195 +1,31 @@
1
- すみません、PHPで書いてしまいました。
2
1
 
2
+
3
+ > 3桁からは数字(1-9)とアルファベット(A-Z)の組み合わせ
4
+
3
- タグがC#でしね。
5
+ 1~99まはそのまま1~99なので36進数とては扱えないですね。
4
6
 
5
7
 
6
8
 
7
- 36進数として扱えですかね?
9
+ こん感じですか。 ※ Convert10To36() は割愛
8
10
 
9
11
 
10
12
 
11
- ```PHP
13
+ ```C#
12
14
 
13
- <?php
14
-
15
- $vals36 = array('z0','zz');
15
+ String ConvertXX(Integer val) {
16
16
 
17
17
 
18
18
 
19
- $val10from = base_convert($vals36[0], 36, 10);
19
+ if (val < 100の場合) {
20
20
 
21
- $val10to = base_convert($vals36[1], 36, 10);
21
+ return val.ToString();
22
22
 
23
+ }
23
24
 
24
-
25
- $z0tozz = array();
26
-
27
- for ($cnt = $val10from; $cnt <= $val10to; $cnt++) {
28
-
29
- $z0tozz[] = base_convert($cnt, 10, 36);
25
+ return Convert10To36(val - 100 + 46);
30
26
 
31
27
  }
32
-
33
-
34
-
35
- echo implode(',', $z0tozz);
36
-
37
- var_dump($z0tozz);
38
-
39
-
40
28
 
41
29
  ```
42
30
 
43
31
 
44
-
45
- 実行結果
46
-
47
- > z0,z1,z2,z3,z4,z5,z6,z7,z8,z9,za,zb,zc,zd,ze,zf,zg,zh,zi,zj,zk,zl,zm,zn,zo,zp,zq
48
-
49
- > array(36) {
50
-
51
- > [0]=>
52
-
53
- > string(2) "z0"
54
-
55
- > [1]=>
56
-
57
- > string(2) "z1"
58
-
59
- > [2]=>
60
-
61
- > string(2) "z2"
62
-
63
- > [3]=>
64
-
65
- > string(2) "z3"
66
-
67
- > [4]=>
68
-
69
- > string(2) "z4"
70
-
71
- > [5]=>
72
-
73
- > string(2) "z5"
74
-
75
- > [6]=>
76
-
77
- > string(2) "z6"
78
-
79
- > [7]=>
80
-
81
- > string(2) "z7"
82
-
83
- > [8]=>
84
-
85
- > string(2) "z8"
86
-
87
- > [9]=>
88
-
89
- > string(2) "z9"
90
-
91
- > [10]=>
92
-
93
- > string(2) "za"
94
-
95
- > [11]=>
96
-
97
- > string(2) "zb"
98
-
99
- > [12]=>
100
-
101
- > string(2) "zc"
102
-
103
- > [13]=>
104
-
105
- > string(2) "zd"
106
-
107
- > [14]=>
108
-
109
- > string(2) "ze"
110
-
111
- > [15]=>
112
-
113
- > string(2) "zf"
114
-
115
- > [16]=>
116
-
117
- > string(2) "zg"
118
-
119
- > [17]=>
120
-
121
- > string(2) "zh"
122
-
123
- > [18]=>
124
-
125
- > string(2) "zi"
126
-
127
- > [19]=>
128
-
129
- > string(2) "zj"
130
-
131
- > [20]=>
132
-
133
- > string(2) "zk"
134
-
135
- > [21]=>
136
-
137
- > string(2) "zl"
138
-
139
- > [22]=>
140
-
141
- > string(2) "zm"
142
-
143
- > [23]=>
144
-
145
- > string(2) "zn"
146
-
147
- > [24]=>
148
-
149
- > string(2) "zo"
150
-
151
- > [25]=>
152
-
153
- > string(2) "zp"
154
-
155
- > [26]=>
156
-
157
- > string(2) "zq"
158
-
159
- > [27]=>
160
-
161
- > string(2) "zr"
162
-
163
- > [28]=>
164
-
165
- > string(2) "zs"
166
-
167
- > [29]=>
168
-
169
- > string(2) "zt"
170
-
171
- > [30]=>
172
-
173
- > string(2) "zu"
174
-
175
- > [31]=>
176
-
177
- > string(2) "zv"
178
-
179
- > [32]=>
180
-
181
- > string(2) "zw"
182
-
183
- > [33]=>
184
-
185
- > string(2) "zx"
186
-
187
- > [34]=>
188
-
189
- > string(2) "zy"
190
-
191
- > [35]=>
192
-
193
- > string(2) "zz"
194
-
195
- > }

1

回答修正

2017/01/26 02:51

投稿

Y.H.
Y.H.

スコア7914

test CHANGED
@@ -1,3 +1,9 @@
1
+ すみません、PHPで書いてしまいました。
2
+
3
+ タグがC#でしたね。
4
+
5
+
6
+
1
7
  36進数として扱えないですかね?
2
8
 
3
9