計算機科学概論 試験問題
	1997 年度夏学期 1997 年 7 月 29 日 9 時〜10 時 30 分 担当 川合 慧
	- 解答用紙は両面のもの 1 枚、草稿用紙 1 枚です。
	
 - テキスト「コンピューティング科学」および自筆のノート
		(書込み貼込み可)のみ参照可です。
	
 - 4 問すべてについて解答しなさい。
	
 - 問題についての質問は受け付けませんので、
		必要なら前提を明記の上解答して下さい。
 
問題 1
	64 ビットの 2 進数の全加算器を、
	1 ビットの全加算器を部品として作ることを考える。
	
		- 1 ビットの全加算器の機能を説明せよ。
		
 - 64 個の全加算器を使って
			64 ビットの加算器を構成する方法を示せ。
		
 - b. の方法の演算所要時間に関する問題点を示せ。
		
 - より多数の全加算器を用いて、
			b. よりも高速な加算器を構成する方法を示せ。
			高速化の原理(高速になる理由)を明記すること。
	
 
問題 2
	再帰(recursion)とは何かを例を用いて説明し、
	それがアルゴリズム構築に果たす役割について述べよ。
問題 3
	以下に示すアルゴリズムが a1、a2、
	...、an(n > 0)の最大値を
	a1 に求めることを示せ。
	ループ不変量の考え方を使うこと。ここでデータは整数値であるものとする。
	
		i ← 1; 
		while i > n {
		   i ← i + 1; 
		   if ai > a1
			then {a1 と
				ai を交換する}
		}
	
問題 4
	火星探査機「マーズパスファインダー」では、従来の「逆噴射による軟着陸」
	の代わりにエアバッグによる「放り投げ着陸方式」を、最新鋭の処理装置
	(CPU)の代わりに世代遅れだが消費電力の少ない処理装置を、
	それぞれ用いた。探索計画全体を「問題」の、実現方法を「アルゴリズム」
	の、それぞれ例と見倣すことによって、
	アルゴリズムの多様性について解答用紙 20 行程度で論じよ。
	Presented by KHK.