いろんな言語で宿題スレ 第三編at TECHいろんな言語で宿題スレ 第三編 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト300:デフォルトの名無しさん 10/01/16 16:40:18 # ●基本課題 2b(数式の値の計算) # # 課題 2a のプログラムに,算術式の値を計算して表示する機能を追加せよ. # ただし,変数の値は全て1であるとして,式の値を求めること. # # 例えば,入力が (2*3) と (x+(y+z)) の場合,次のような出力をすればよい. # show: に続いて入力された算術式を,eval: に続いて算術式の値を表示している. # # (2*3) ←入力 # show: (2*3) # eval: 6 # # (x+(y+z)) ←入力 # show: (x+(y+z)) # eval: 3 # # まず,算術式の値を求める関数 eval_exp()(exp.c にある)を完成させる. # 十分な数の検査データを使って動作の正しさを確かめよ. 301:デフォルトの名無しさん 10/01/16 16:42:16 # ●基本課題 2c(数式データの基本操作) # # 算術式の値を変えずに括弧をくくり直す簡単な式変形を考える.例えば,式 # # (1+(2+3)) # (a*(b*c)) # ((i*x)+((j*y)+(k*z))) # # の括弧を左にくくり直すと,それぞれ,次の式になる. # # ((1+2)+3) # ((a*b)*c) # (((i*x)+(j*y))+(k*z)) # # 括弧を左にくくり直せる (A+(B+C)) や (A*(B*C)) の形の算術式を # ((A+B)+C) や ((A*B)*C) の形にする式変形は,式に対応する木を # 「左に転回」する変形と捉えられる. 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch