回答編集履歴

2

追記

2021/08/24 03:59

投稿

itagagaki
itagagaki

スコア8402

test CHANGED
@@ -15,3 +15,17 @@
15
15
  ```
16
16
 
17
17
  set /a nn=108-100 となってnnはめでたく8となります。
18
+
19
+
20
+
21
+ ### 回避策2
22
+
23
+ ```
24
+
25
+ set n=08
26
+
27
+ set /a nn=1%n%*2-2%n%
28
+
29
+ ```
30
+
31
+ これで`n`の桁数によらず左のゼロを除去でき、`n=8`でも`n=08`でも`n=008`でも`nn=8`となります。

1

追記

2021/08/24 03:58

投稿

itagagaki
itagagaki

スコア8402

test CHANGED
@@ -1 +1,17 @@
1
1
  コマンドプロンプトで数値を書くことのできるところで`0x`で始まれば16進の数値定数、`0`で始まれば8進の数値定数として解釈されます。
2
+
3
+
4
+
5
+ (追記)
6
+
7
+ ### 回避策
8
+
9
+ ```
10
+
11
+ set n=08
12
+
13
+ set /a nn=1%n%-100
14
+
15
+ ```
16
+
17
+ set /a nn=108-100 となってnnはめでたく8となります。