LET'S TRY
問題文
次の規則から生成できる式はどれか。
〈式〉::=〈変数〉|(〈式〉+〈式〉)|〈式〉*〈式〉
〈変数〉::= A | B | C | D
fe-siken.com
IPAの公開問題について ↗
まずは自分で考えて、理由を確かめよう。
次の規則から生成できる式はどれか。
〈式〉::=〈変数〉|(〈式〉+〈式〉)|〈式〉*〈式〉
〈変数〉::= A | B | C | D
fe-siken.com
IPAの公開問題について ↗
自分で考えてから、解説を開いてみてね。
正解は ウ です。
BNF(バッカス・ナウア記法)の規則に従って各選択肢を検証する。(A+B)は(〈式〉+〈式〉)の形で〈式〉,(C+D)も同様に〈式〉。よって(A+B)*(C+D)は〈式〉*〈式〉の形で〈式〉として生成できる。アは加算をかっこで囲まずに乗算と結合しており規則に合わない。イは(〈式〉+〈式〉)の外側をかっこで囲んでいないため規則に合わない。エのA*Bはかっこなしで〈式〉*〈式〉として成立するが,その結果に+演算を適用する際かっこが必要。
学習ノートを読み込んでいます…