質問するログイン新規登録

回答編集履歴

3

誤字修正

2017/01/26 03:28

投稿

tacsheaven
tacsheaven

スコア13707

answer CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  本来の数が100未満 = 素直に10進変換
7
7
  100以上333(9Zに該当)以下 = (本来の数-100) を、26で割った商=上位桁、余り=下位桁として、それぞれ0-8,0-25 を 1-9, A-Z にみなして表記
8
- 334以上 = (本来の数-335)を、35で割った商=上位桁、余り=下位桁として、それぞれを上と同様にA-Z,1-9A-Zとみなして表記
8
+ 334以上 = (本来の数-334)を、35(1-9A-Z35文字)で割った商=上位桁、余り=下位桁として、それぞれを上と同様にA-Z,1-9A-Zとみなして表記
9
9
 
10
10
  になりますかね。
11
11
 

2

誤字修正

2017/01/26 03:27

投稿

tacsheaven
tacsheaven

スコア13707

answer CHANGED
@@ -11,7 +11,7 @@
11
11
 
12
12
  上を踏まえて、変換関数はこうなります。
13
13
  ```C#
14
- function string ConvertFunc(int value) {
14
+ private string ConvertFunc(int value) {
15
15
  string disp = "";
16
16
  if (value<100) {
17
17
  disp = string.Format("{0:00}", i);

1

実装を記述

2017/01/26 03:23

投稿

tacsheaven
tacsheaven

スコア13707

answer CHANGED
@@ -7,4 +7,23 @@
7
7
  100以上333(9Zに該当)以下 = (本来の数-100) を、26で割った商=上位桁、余り=下位桁として、それぞれ0-8,0-25 を 1-9, A-Z にみなして表記
8
8
  334以上 = (本来の数-335)を、35で割った商=上位桁、余り=下位桁として、それぞれを上と同様にA-Z,1-9A-Zとみなして表記
9
9
 
10
- になりますかね。
10
+ になりますかね。
11
+
12
+ 上を踏まえて、変換関数はこうなります。
13
+ ```C#
14
+ function string ConvertFunc(int value) {
15
+ string disp = "";
16
+ if (value<100) {
17
+ disp = string.Format("{0:00}", i);
18
+ } else if (value<334) {
19
+ int hidigt = (i - 100) / 26;
20
+ int lwdigt = (i - 100) % 26;
21
+ disp = "123456789".Substring(hidigt, 1) + "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Substring(lwdigt, 1);
22
+ } else {
23
+ int hidigt = (i - 334) / 35;
24
+ int lwdigt = (i - 334) % 35;
25
+ disp = "ABCDEFGHIJKLMNOPQRSTUVWXYZ".Substring(hidigt, 1) + "123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ".Substring(lwdigt, 1);
26
+ }
27
+ return disp;
28
+ }
29
+ ```