def roman_numeral(n):
if type(n) is not int or not 1 <= n <= 3999:
raise ValueError("roman.range")
values = [(1000,"M"),(900,"CM"),(500,"D"),(400,"CD"),
(100,"C"),(90,"XC"),(50,"L"),(40,"XL"),
(10,"X"),(9,"IX"),(5,"V"),(4,"IV"),(1,"I")]
parts = []
for value, symbol in values:
count, n = divmod(n, value)
parts.append(symbol * count)
return "".join(parts)| プロジェクト | 4や900などの減算表記を確認し、ゼロ、範囲外の数、整数以外の値を拒否してください。 |
|---|---|
| 適用前に確認 | 実際の動作を期待する結果と比較します。検証に失敗した場合は、次の変更を加える前に原因を調べてください。 |
| モデル | OpenAI互換またはAnthropicのエンドポイントを、ベースURLと必要なAPIキーで設定し、接続をテストします。ローカルのモデルサーバーは起動が必要です。リモートツールは別途データを送信する場合があります。 |
def roman_numeral(n):
if type(n) is not int or not 1 <= n <= 3999:
raise ValueError("roman.range")
values = [(1000,"M"),(900,"CM"),(500,"D"),(400,"CD"),
(100,"C"),(90,"XC"),(50,"L"),(40,"XL"),
(10,"X"),(9,"IX"),(5,"V"),(4,"IV"),(1,"I")]
parts = []
for value, symbol in values:
count, n = divmod(n, value)
parts.append(symbol * count)
return "".join(parts)呼び出し元が信頼できる仕様を書式処理に定める
NumeralHavenは、接続したAIモデルと実装の詳細を話し合えるWindows用コーディング作業環境です。小さな関数にもユーザーから見える製品のルールが含まれるため、書式処理は手始めに適した作業です。変更を頼む前に、受け付ける入力と正確な出力を説明し、ユーザーに結果を表示するコードも含めてください。
付属のプロジェクト例はローマ数字の書式処理です。対応する数値範囲と減算表記をレビューし、拒否された値を呼び出し元がどう扱うべきか説明するよう依頼できます。目的は、明確な期待に沿って自分のコードを開発することであり、この作業環境に完成済みの数字変換サービスがあると想定することではありません。
仕様を明確にしたら、提案された修正が出力表記、受け付ける型、失敗時の動作を変えないか確認します。プロジェクトのツールで、範囲の境界付近と代表的な減算表記のテストデータを実行しましょう。無効な値が理由不明の空欄や誤解を招くラベルとして画面に出ないよう、周辺の表示経路も確認してください。
モデル支援で作業するにはOpenAI互換またはAnthropicのエンドポイントに接続し、必要な場合は認証情報を指定します。そのサービスが提供していれば、フィルターなしのAIモデルも選択肢です。コンテキスト容量、利用できるツール、応答の制約は選んだサーバーとモデルに固有であり、レビューも引き続き開発手順の一部です。
値の書式処理を変える前に
依頼に書式処理の呼び出し元を含めるのはなぜですか?
拒否された値や整形済み文字列が画面にどう届くかは呼び出し元が決めます。その経路も含めることで、アシスタントは内部の変換だけでなく、戻り値や例外の変更が与える影響を説明できます。
どのような例が書式要件を明確にしますか?
受け付ける値と正確な期待文字列に加え、拒否すべき値を示してください。ローマ数字の作業なら範囲の境界と減算表記を含めます。このテストデータにより、実装を提案する前に出力の規則が明らかになります。
書式処理は数字の文字列を黙って受け付けるべきですか?
アプリケーションの仕様がその変換を求める場合だけです。受け付ける型を明示し、解析をどこで行うか確認してください。書式処理内での便利な型変換が呼び出し元の不具合を隠したり、無効な値のユーザーへの伝わり方を変えたりする可能性があります。
モデルが違うと必要な書式出力も変わりますか?
接続モデルを変えても、明示した要件は変えるべきではありません。提案を比較するときも同じテストデータと受け入れルールを保ちましょう。モデルの好む規則を正解とせず、それらのルールで各修正を評価してください。
NumeralHaven · 更新日 2026-10-25