問題タブ [roman-numerals]

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 投票する
2 に答える
296 参照

c++ - 文字列で文字の優先順位をフォーマットする必要があります

私は現在、楽しみのためにローマ数字コンバーターを書いています。この問題は、前述の文字の優先順位まで機能します。

ローマ数字は定位置ではないため、つまりIIIは1*基数^2 +1*基数^1+1*基数^0を表しません。

もちろん、誰かがXIVと入力するときは難しくなります。この場合、Iが加算されるのではなく、減算されることを確認する必要があります。これを行う方法がわかりません。これに取り組むための最良のアプローチは何でしょうか?

ローマ字記号とそれぞれの10進数の両方を配列に格納しています。

したがって、配列内の優先順位をチェックするだけで、つまり、シンボルが次のシンボルよりも小さい場合、つまり「I」が小さい場合は「XIV」の例で、ブルートフォース攻撃を行うのはそれほど難しくありません。 'V'よりも、この場合、配列内でそれらを順序付けたためであるため、加算ではなく値を減算することができます。

しかし、これは非常に醜い解決策のようです。おそらくもっと良いものはありますか?私は正規表現に沿って何かを考えていました(それが恐ろしい考えのように聞こえる場合は許してください、私はまだRegExpを使用していませんが、それは私が必要とすることを行うことができるようです、そしてそれは文字列の文字を決定することです。)

0 投票する
2 に答える
2856 参照

regex - テキストファイルからローマ数字をフィルタリングするための単一の正規表現

正規表現のパスが1つしか許可されないという問題(古いハードコード)の間に立ち往生しています。ローマ数字の正規表現が必要です。

標準のものを試しました^(?i)M*(D?C{0,3}|C[DM])(L?X{0,3}|X[LC])(V?I{0,3}|I[VX])$が、問題はnull('')値も許可することです。

問題をチェックする方法はありますか?

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

latex - ラテックス:変数をローマ数字で印刷する

LaTeXで植字しているのですが、デフォルトのアラビア語ではなく、ローマ字で「変数」(私の場合はリスト内のアイテム番号への参照\ ref {blah})を表示したいと思います。これを行う簡単な方法はありますか?ポインタをありがとう!

0 投票する
2 に答える
24925 参照

latex - 「数値がありません。ゼロとして扱われます。」ラテックスで

ローマ数字の 2 を取得したいので、$\Roman{2}$内部テキストを使用します。しかし、その後エラーが発生しました

数値がありません。ゼロとして扱われます。

どうすれば修正できますか?

よろしくお願いします!

0 投票する
1 に答える
601 参照

php - 同じパターンに対して異なる数の一致を返すphpのpreg_match

ローマ数字から整数へのコンバーターでpreg_matchを試しています。問題は、特定の入力について、preg_replaceが与える一致が少なすぎるように見えることです。コード:

ただし、「IV」で終わるローマ数字は最後の3つの一致を切り捨てます($ matchsには完全な0-19ではなく0-16の要素のみが含まれます)。同様に、「IX」で終わるローマ数字は最後の一致を切り取ります。 4試合。

これは予想される動作ですか、それとも私のPHPはバグがありますか?

0 投票する
3 に答える
3034 参照

java - Java -- 標準入力から一度に 1 文字ずつ読み取る

Java プログラムの入力を読み取る最良の方法を判断するのに苦労しています。ローマ数字の個々の文字を読み取り、それに対して何らかの操作を実行する必要があります。

ただし、いくつかのキャッチがあります。入力リダイレクトが使用されているため、入力は標準入力から読み取る必要があります。

さらに、行末を判別するための CR/LF 文字のペアと、ファイルの終わりを判別するための EOF の両方を検出できる必要があります。

これを達成するための最良の方法は何ですか? いろいろ調べてみたところ、Scanner には .nextChar クラスがないことがわかりました (完全に機能していたはずです)。

0 投票する
2 に答える
1008 参照

regex - さまざまなタイプの番号付きリストに一致するための正規表現

一般的に使用されるすべての番号付きリストに一致する(PCRE)正規表現を作成したいと思います。また、これを行うために、考えを共有し、入力を収集したいと思います。

私は「リスト」を標準的なアングロサクソン人の慣習のセットとして定義しました。

数字

手紙

ローマ数字

これがどれほど強力なリストのセットであるか、そこにあるべき他の番号付け規則があるかどうか、そしてこれらのいずれかを削除する必要があるかどうかを知りたいです。

この問題を解決するために(Pythonで)作成した正規表現は次のとおりです。

この正規表現がこの問題に対してどれほど適切であるか、および他の代替(正規表現またはその他)の解決策があるかどうかを知りたいです。

ちなみに、私の特定のユースケースでは、リスト番号が25〜50を超えることはないと思います。

読んでくれてありがとう。

ブライアン

0 投票する
1 に答える
987 参照

scala - Scalaでの型パラメーターとミックスインの使用

編集2:

以下のコードを使用して、ミックスインと型パラメーターの組み合わせを使用して、RomanNumeralsを使用した演習で必要な型安全性を達成することができました。本質的には、すべてをインポートした後、RomanNumerals書き込むことはできますが、タイプの不一致コンパイラエラーが発生します(ローマ数字の不正な組み合わせであるため)。今、私は、特性、ミックスイン、および型パラメーターを使用するこの方法が問題ないと見なされるのか、いわば言語を乱用しているのか疑問に思っています:)より単純でクリーンなもので同じ種類の型安全性を達成するより良い方法はありますかコード?L X V IL LX L X

編集:

ビクターの回答に基づくさらなる質問。わかりましたが、Bがトレイトになるように、typeパラメーターに上限と下限を追加するとどうなりますか?例えば

それともB、この場合でもクラスになることができますか?f引数も適用されることがわかっている場合はどうなりFoo[B] with Bますか?それを使用しBてリターンタイプとミックスインする方法はありますか?

以下の元の質問

Scalaでオブジェクトを作成するときに、型パラメーターとして取得するトレイトをミックスしたい:

これにより、コンパイルエラーが発生します。

私も試しました:

しかし、それは機能しません:

これを回避する方法はありますか?withMの戻り型が次のようになるようFoo with Bに、Bはに渡される型パラメータです。withM

0 投票する
1 に答える
925 参照

itextsharp - PDF の最初のページのカスタム ページ番号 (ローマ数字)

最初の 3 ページが i,ii,iii になり、次のページが 1,2,3,4,5 から始まるように、作成中の pdf にページ番号を設定する必要があります。 .

itextsharpでどうすればできますか?? ありがとうサンダー

0 投票する
4 に答える
8265 参照

java - 整数に相当するローマ数字をどのように見つけますか

整数に相当するローマ数字を見つける方法. この機能を提供する Java ライブラリはありますか?

同様の質問を見つけましたが、この問題にはすぐに使用できる API 抽象化を使用したいと思います。コードで可能なすべての組み合わせを処理するのは面倒です。