2

PrologのDCG形式を使用して、数字を英語からフランス語(1から999)に変換するコードを作成する必要があります。2つの別々の文法規則(1つは英語用、もう1つはフランス語用)を書き留める必要がありますか?インターネットで見つかったこのコードは私を助けることができますか? https://groups.google.com/forum/?fromgroups=#!topic/comp.lang.prolog/ZF8p5cs4q0U助けて ください。

4

1 に答える 1

3

2つのステップ(英語から数字、数字からフランス語)で行うことも、英語からフランス語に直接試すこともできます。2段階のオプションはより一般的であり(つまり、双方向に変換でき、より多くの言語をサポートするように簡単に拡張できます)、すでに機能するコード(リンクされたトピックにあるもの)が利用可能です。このルートをたどります。

DCGルールでテキストを解析できるのと同じように、テキストも生成できることを覚えておいてください。リンクされたトピックが示すように:

?- phrase(number(N), [one, hundred, and, twenty, seven]).
N = 127

?- phrase(number(127), L).
L = [one, hundred, and, twenty, seven]

phrase(number_fr(127), L)実装したルールを使用して2番目の部分をに置き換えると、前に解析した数値がフランス語で表されます。

于 2013-02-26T05:57:41.080 に答える