[過去ログ] プログラミングのお題スレ Part17 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
72(16): 2020/04/03(金)19:14 ID:tv+k2Xei(1/2) AAS
お題
文字列の先頭から続く、0 は、8進数と解釈されるため、バグります!
なので、それらを除去して、10進数と解釈できる文字列にして下さい。
以下は、すべて文字列です
090 → 90
0080 → 80
123 → 123
0 → 0
000 → 0
省1
73: 2020/04/03(金)19:53 ID:MoLJYTUl(1) AAS
>>72 マルチポスト&スレチ
2chスレ:tech
74: 72 2020/04/03(金)20:02 ID:tv+k2Xei(2/2) AAS
向こうのスレから移動したので、このスレで続けて下さい!
76: 2020/04/03(金)20:13 ID:D8CnMwXH(1/2) AAS
>>72
js
result=input==""?"":Number(input)
77: 2020/04/03(金)20:17 ID:Ea8es11U(1) AAS
>>72
perl5
外部リンク:pastebin.com
79(1): 2020/04/04(土)00:40 ID:oi+wB/l2(1) AAS
>>72 Perl5
for $a (qw{090 0080 123 0 000}) {
($b = $a) =~ s/^0*([\d])/$1/;
print "$a → $b\n"
}
実行結果
~ $ perl 17_72_0dec.pl
090 → 90
0080 → 80
123 → 123
省2
83: 72 2020/04/04(土)12:46 ID:1ehA2Rbs(1) AAS
>>72
Ruby で
def delete_successive_zero( str )
return "" if str == ""
str.to_i.to_s # 10進数
end
ary = %w(090 0080 123 0 000)
ary.push ""
p ary.map { |str| delete_successive_zero( str ) }
省2
85(2): 2020/04/04(土)13:48 ID:qnbQjwAi(1) AAS
>>72 Python
def strip(s):
s = s.lstrip('0')
if not len(s):
return '0'
return s
86: 2020/04/04(土)14:34 ID:VszBH+2q(1) AAS
>>72
Java
外部リンク:paiza.io
88: 2020/04/05(日)01:07 ID:14D27qM5(1/3) AAS
>>72
>>85修正
外部リンク:ideone.com
89(1): 2020/04/05(日)05:36 ID:sZO7YFrq(1/2) AAS
>>72
Perl5
ある意味手抜きなプログラムである。
外部リンク:paiza.io
オマケ機能としてマイナスの時に -00009 みたいなやつも -9 になるようにした。
更に、整数の数でない場合(文字列の場合)はダブルクォーテーションで括って出すようにした。
90: 2020/04/05(日)05:42 ID:sZO7YFrq(2/2) AAS
>>72
Kotlin
外部リンク:paiza.io
>>89よりも更にもっと手抜きである。びっくりするほど何もやってない。仕様は同じ。
93: 2020/04/05(日)07:43 ID:14D27qM5(3/3) AAS
>>72 Python
外部リンク:ideone.com
PerlとKotlinの人のに比べると長くなってしまったのが心残り
98: 2020/04/05(日)13:06 ID:liJZihU7(1) AAS
>>72 GNU Smalltalk
| fn |
fn := [:str | str isEmpty ifTrue: [str] ifFalse: [str asNumber]].
(#('090' '0080' '123' '0' '000' '') collect: fn) display.
=> (90 80 123 0 0 '' )
外部リンク:ideone.com
102: 2020/04/05(日)13:13 ID:QyCQlkmw(1) AAS
共有NG入ってて草
>>72が自力で解けない時点で脳みそに障害あるだろコイツ
104: 2020/04/07(火)16:39 ID:WiIyPE7p(1) AAS
>>72
部分解なら lisp で
(loop for i in (list 090 0080 123 0 000 ) do (format t "~d~%" i))
90
80
123
0
0
105: 2020/04/07(火)19:00 ID:i9ABTPYd(1) AAS
であればもうこれで十分って感じがしてきた^^;
>>72 GNU Smalltalk
#(090 0080 123 0 000 '') display.
=> (90 80 123 0 0 '' )
外部リンク:ideone.com
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.038s