質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
コンパイル

コンパイルとは、プログラミング言語のテキストソース(ソースコード)をコンピュータ上で実行可能な形式(オブジェクトコード)に変換することをいいます

Q&A

0回答

343閲覧

コンパイルの問題について

yoppi0611

総合スコア13

コンパイル

コンパイルとは、プログラミング言語のテキストソース(ソースコード)をコンピュータ上で実行可能な形式(オブジェクトコード)に変換することをいいます

0グッド

0クリップ

投稿2017/11/27 04:39

編集2022/01/12 10:55

関数呼び出しを開始記号(非終端記号)Eとする。関数の引数は、変数名のみとし、引数の数は1個以上であればいくつでもOKとする(0個はNG)。Eの例は以下の通り。
f(zz), p(k, m), f12(a, z, w), func(aa, abc, x, y, z, w)

問1 開始記号Eを(LL(1)構文解析で処理可能な)BNFで表せ。なお、E以外の非終端記号を自由に追加してよい。また、必要に応じて、以下の終端記号を用いてよい。
id: 名前を表す(例:x, a, c, …)
const: 整数定数(例:3, 5, 10, …)
[:左角カッコ
]:右角カッコ
(:左丸カッコ
):右丸カッコ
.:ピリオド
,:カンマ
->:矢印

問2 問1で導入した非終端記号及びEの、First集合、Follow集合を求めよ。なお、導出過程も記載することとし、答のみは不可とする

思考錯誤し色々検討したのですが、わかりません。
教えていただきたいです。丸投げではなく、ヒントなども教えていただきたいです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

KSwordOfHaste

2017/11/27 06:06

あなたは自分が分からない点をピンポイントで教わりたいはずです。そのためには本質問のような大雑把な尋ね方ではいけません。どこまで理解し、どこまで解法を考え、どこで詰まったのかを詳細に、具体的に、明快に書くことがとても大切です。そういう質問のしかたにすればきっと有用なアドバイスが得られますよ。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問