問題タブ [numbers]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
6 に答える
1774 参照

algorithm - 人間が読める整数の表現を作成する

この種のものが好きな人のためのコーディングの問題があります。指定された整数の人間が読める文字列表現を返す関数の実装を (もちろん、選択した言語で) 見てみましょう。例えば:

  • humanReadable(1) は「1」を返します。
  • humanReadable(53) は「53」を返します。
  • humanReadable(723603) は、「723,603」を返します。
  • humanReadable(1456376562) は、「10 億 4 億 5600 万 3 億 76005 62」を返します。

特に賢い/エレガントなソリューションのボーナスポイント!

無意味な作業のように思えるかもしれませんが、この種のアルゴリズムには実際のアプリケーションが数多くあります (ただし、10 億もの数値をサポートするのはやり過ぎかもしれません :-)

0 投票する
14 に答える
148345 参照

perl - Perl で変数に数値があるかどうかを確認するにはどうすればよいですか?

指定された変数が数値かどうかを判断できる簡単な方法は Perl にありますか? 次のようなもの:

理想的でしょう。-wスイッチが使用されているときに警告をスローしない手法は、確かに好まれます。

0 投票する
50 に答える
1538263 参照

javascript - JavaScript で 10 進数を検証する - IsNumeric()

JavaScript で 10 進数を検証する最もクリーンで効果的な方法は何ですか?

ボーナスポイント:

  1. 明瞭さ。ソリューションはクリーンでシンプルでなければなりません。
  2. クロスプラットフォーム。

テストケース:

0 投票する
13 に答える
35159 参照

c - 8 進数リテラル: いつ? なんで?これまで?

コードで 8 進数を使用したことはありませんし、8 進数を使用したコードに出くわしたこともありません (16 進数とビットいじりにもかかわらず)。

私は 1994 年頃に C/C++ でプログラミングを始めたので、これには若すぎるのでしょうか? 古いコードは 8 進数を使用しますか? C では先頭に 0 を追加することでこれらのサポートが含まれていますが、これらの基数 8 の数値リテラルを使用するコードはどこにありますか?

0 投票する
12 に答える
12969 参照

algorithm - 単語として書かれた数字から値を読み取る方法は?

ご存知のように、数字は数字で書くことも、名前で呼ぶこともできます。123を123に変換する例はたくさんありますが、逆に変換する方法の良い例は見つかりませんでした。

注意点のいくつか:

  1. 枢機卿/名目または序数:「1つ」および「最初」
  2. 一般的なスペルミス:「40」/「40」
  3. 数百/千:2100->「二十百」そして「二千百」
  4. 区切り文字:「112​​5」だけでなく、「1125」または「1125」など
  5. 口語表現:「30代」
  6. 分数:「3分の1」、「5分の2」
  7. 一般名:「ダース」、「ハーフ」

そして、おそらくまだリストされていない可能性のあるより多くの警告があります。アルゴリズムが非常に堅牢である必要があり、スペルミスさえ理解している必要があるとします。

これらすべての書き方を学ぶために、どの分野/論文/研究/アルゴリズムを読む必要がありますか?情報はどこにありますか?

PS:私の最後のパーサーは、実際には英語、ロシア語、ヘブライ語の3つの異なる言語を理解する必要があります。そして、おそらく後の段階で、より多くの言語が追加されるでしょう。ヘブライ語には男性/女性の番号もあります。たとえば、「1人の男性」と「1人の女性」には異なる「1つ」があります—「ehad」と「ahat」。ロシア語にも独自の複雑さがいくつかあります。

グーグルはこれで素晴らしい仕事をしています。例えば:

http://www.google.com/search?q=two+thousand+and+one+hundred+plus+five+dozen+and+four+fifths+in+decimal

(逆も可能ですhttp://www.google.com/search?q=999999999999+in+english

0 投票する
9 に答える
26400 参照

c - 文字列が ANSI C の整数または浮動小数点数かどうかを判断する

ANSI C のみを使用して、C スタイルの文字列が整数または実数 (つまり、float/double) であるかどうかをかなり確実に判断する最良の方法は何ですか?

0 投票する
7 に答える
3351 参照

language-agnostic - 算術オーバーフローとアンダーフローを防止するための最も効果的な方法

算術オーバーフローアンダーフローを防ぐための最も効果的な方法は何ですか?

頭に浮かぶいくつかの例は次のとおりです。

  • 有効な入力範囲に基づくテスト
  • 正式な方法を使用した検証
  • 不変式の使用
  • 言語機能またはライブラリを使用した実行時の検出 (これはそれを防ぎません)
0 投票する
26 に答える
58840 参照

algorithm - フロートを人間が読める形式に変換する方法は?

あるとしましょう。0.33出力する必要があります1/3
がある場合は0.4、を出力する必要があります2/5

アイデアは、データをよりよく理解する方法として、ユーザーが「 yからxの部分」を理解できるようにすることです。

パーセンテージが良い代用であることは知っていますが、これを行う簡単な方法があるかどうか疑問に思いました。

0 投票する
5 に答える
4715 参照

perl - Perlで数値を複数の形式に変換するにはどうすればよいですか?

数値(たとえば1234567.89)を1.23Mのような読みやすい形式に変換できる簡単でわかりやすいメソッド/サブ/モジュールを知っていますか?

現在、いくつかの比較を行うことでこれを行うことができますが、私の方法には満足していません。

ご協力ありがとうございました!

0 投票する
16 に答える
94967 参照

java - Java での String から Int への変換 - 不良データの可能性が高いため、例外を回避する必要があります

Java には null 許容型がなく、TryParse() もないため、例外をスローせずに入力の検証をどのように処理しますか?

通常の方法:

正規表現を使用して解析可能かどうかを確認できますが、それも多くのオーバーヘッドのようです。

この状況を処理するためのベスト プラクティスは何ですか?

編集: 理論的根拠: 例外処理について SO について多くの議論があり、一般的な態度は、例外は予期しないシナリオにのみ使用する必要があるというものです。ただし、悪いユーザー入力はまれではなく、予期されていると思います。はい、それは本当に学問的なポイントです。

さらに編集:

一部の回答は、SO の何が問題なのかを正確に示しています。聞かれている質問を無視して、それとは関係のない別の質問に答えます。質問は、レイヤー間の移行について尋ねているのではありません。質問は、数値が解析できない場合に何を返すかを尋ねているわけではありません。ご存じのとおり、val = Integer.MIN_VALUE; この完全にコンテキスト フリーのコード スニペットが取得されたアプリケーションに最適なオプションです。