平成19年 秋期 基本情報技術者 午後 問04
問04 スタックを使用して実数値を10進数字列に変換次のプログラムの説明及びプログラムを読んで,設問1,2に答えよ。 〔プログラムの説明〕 スタックを使って,実数値を 10 進数字列(文字列)に変換する副プログラム FloatFormat である。 (1) FloatFormat は,実数 Float の値を 10 進数字列に変換し,その先頭の数字から順に 1文字ずつ文字型配列 Out[] に格納する。 (2) 小数点以下は,引数 Num(Num≧1)で指定されたけた数までを格納する。 (3) FloatFormat の引数の仕様を表に示す。
(4) 実数 Floatの 値を 10 進数字列に変換する手順は,次のとおりである。
@ Float の値が負の場合は,負符号を表す"−"を Out[] に格納し,Float の値を正数に変換する。 (5) Push() はスタックに1文字を積む関数,Pop() はスタックから1文字を取り出す関数である。 Int() は小数点以下を切り捨てる関数である。 (6) 配列の添字は0から始まり,文字型配列 Out[] の要素数は十分に大きいものとする。 また,プログラム中の各演算であふれは発生しないものとする。 (7) FloatFormat の変換例を図に示す。
図 FloatFormat の変換例 [プログラム] 設問1 プログラム中の に入れる正しい答えを, 解答群の中から選べ。 a に関する解答群 イ Fint − Fint ÷ 10 ウ Fint − (Fint ÷ 10)× 10 エ Fint ÷ 10 オ (Fint ÷ 10)× 10 b に関する解答群 イ L = 0 or Out[0] = "−" ウ L = 0 or (L =1 and out[0] = "−") エ L = 1 オ L = 1 and Out[0] ="−" c,d に関する解答群 イ Fdec − Int(Fdec × 10) ウ Fdec − Int(Fdec ÷ 10) エ Fdec × 10 オ Fdec ÷ 10
設問2 次の記述中の に入れる正しい答えを, 解答群の中から選べ。 Float = −0.012,Num = 2 として FloatFormat を呼び出した場合, プログラム中のαの部分は 回実行され, βの部分は 回実行される。 解答群
[←前の問題] [次の問題→] [問題一覧表] [分野別] [基本情報技術者試験TOP ]
©2004-2024 情報処理試験.jp
|
プライバシーポリシー・著作権・リンク
|
お問合わせ
| ||||||||||||||||||||