• 検索結果がありません。

レポート問題▼第1回レポート

N/A
N/A
Protected

Academic year: 2021

シェア "レポート問題▼第1回レポート"

Copied!
5
0
0

読み込み中.... (全文を見る)

全文

(1)

レポート問題

▼ 第1回レポート

report_A_01_01

2本の定規を用いて掛け算と割り算を行う方法 を考えなさい.この場合,定規に与えられた「関 数目盛」はどのような関数かも説明しなさい.

report_A_01_02

面積計で面積が計測できる理由を数学を用い て説明しなさい.

▼ 第2回レポート

report_A_02_01

n ビットの情報{ai}ni=1 のすべての XOR 取った値をa0とおく.この時,いずれか一つの ak (k = 1,· · ·, n)の値が失われた時,a0と失 われていない{ai}たちの値を用いて,akの値 を復元する方法を述べよ.

report_A_02_02

正の整数bの1の補数をbとする.この時,−b の2の補数による表現は−b=b+ 1であるこ とを示せ.

▼ 第3回レポート

report_A_03_01

正の整数a,bに対して,a−bを計算する回路 を加算回路を用いて実現せよ.

report_A_03_02

日本語で書かれた新聞1ページが15段から なり,1段は82行,1行は12文字からなる と仮定する.さらに,1日の新聞は20ページ からなると仮定する. この時,新聞1年分(3 65日分)のデータ量を求めよ.

report_A_03_03

10進数の0.1を2進数で表せ.

▼ 第5回レポート

report_A_05_01

先頭が-で始まるファイルを消去する方法を 考えよ.

report_A_05_02

2つのファイルを連結して,新しいファイルを 作成する方法を考えよ.

▼ 第6回レポート

report_A_06_01

Exercise 6.9.2, Exercise 6.9.3, Exercise 6.9.4, Exercise 6.9.5に答えよ.

report_B_06_01

printf関数は出力した文字数を返す. “Hello

World” を書換えて,プログラムの戻り値が出

力した文字数となるようにせよ.

report_B_06_02

次のプログラムは期待した結果を表示しない.

その理由を考え,期待した結果を表示するよう に書換えよ.

#include <stdio.h>

#include <limits.h>

int main() {

printf("CHAR_BIT = %d\n", CHAR_BIT) ;

printf("SCHAR_MIN = %d = %X\n", SCHAR_MIN, SCHAR_MIN) ; printf("SCHAR_MAX = %d = %X\n", SCHAR_MAX, SCHAR_MAX) ; printf("UCHAR_MAX = %u = %X\n", UCHAR_MAX, UCHAR_MAX) ; printf("CHAR_MIN = %d = %X\n", CHAR_MIN, CHAR_MIN) ; printf("CHAR_MAX = %d = %X\n", CHAR_MAX, CHAR_MAX) ; printf("----\n") ;

printf("SHRT_MIN = %d = %X\n", SHRT_MIN, SHRT_MIN) ; printf("SHRT_MAX = %d = %X\n", SHRT_MAX, SHRT_MAX) ; printf("USHRT_MAX = %u = %X\n", USHRT_MAX, USHRT_MAX) ; printf("----\n") ;

printf("INT_MIN = %d = %X\n", INT_MIN, INT_MIN) ; printf("INT_MAX = %d = %X\n", INT_MAX, INT_MAX) ; printf("UINT_MAX = %u = %X\n", UINT_MAX, UINT_MAX) ; printf("----\n") ;

printf("LONG_MIN = %ld = %X\n", LONG_MIN, LONG_MIN) ; printf("LONG_MAX = %ld = %X\n", LONG_MAX, LONG_MAX) ; printf("ULONG_MAX = %lu = %X\n", ULONG_MAX, ULONG_MAX) ; return 0 ;

}

report_B_06_03

1バイトが8ビット,int型,unsigned int 型が4バイトであると仮定する.さらに,負の数 は2の補数で表現されていると仮定する.この 時,unsigned int型で表すことが出来る最

大の数(UINT_MAXに等しい),int型で表すこ

とが出来る最大の数(INT_MAXに等しい),int 型で表すことが出来る最小の数(INT_MIN 等しい)を値1からはじめて,ビット演算のみ

(2)

で作成せよ.

▼ 第7回レポート

report_A_07_01

正の整数 xに対して,xb進表示に関する b−1 の補数をx, b の補数をx˜ とするとき, x˜=x+ 1を示せ.

report_A_07_02

有理数は有限小数または循環小数で表される.

この事実はbの取り方によらないことを示せ.

また,nbが互いに素の時,既約分数m/nb 進小数表示の循環節の長さはbe1 (modn) をみたす最小のeに等しいことを示せ.

report_A_07_03

ある物体の質量を天秤で測定する.その重さは 整数値で,M 以下とする.この時,必要な分銅 の最小の数(種類)と測定方法を述べよ.ただ し,分銅は物体と異なる側にしかのせれない場 合と,両方にのせれる場合を考えよ.

report_B_07_01

for文を利用して,1から20までの偶数の和 を計算するプログラムを書け.

report_B_07_02

while文を利用して,1から20までの偶数の 和を計算するプログラムを書け.

report_B_07_03

摂氏で表現された温度を0度から100度まで, 10度刻みで,華氏で表現するプログラムを書 け.その際,華氏の温度は小数点以下第2桁目 を四捨五入すること.

report_B_07_04

標準入力から1文字を入力して,それが数字で あるとき,偶数か奇数かを判定し,数字でない ときには,再び入力を求めるプログラムを書け.

report_B_07_05

正の有理数を10進で小数点以下100桁ま で求めるプログラムを書け.

report_B_07_06

10進数で表現された0以上1未満の有限小 数を2進数で表示するプログラムを書け.ただ し,有限小数にならないときには,小数点以下 第10桁まで表示すればよい.

与えられた正の整数の −1倍をビット演算と インクリメントのみで計算するプログラムを 書け.

report_B_07_08

加算・減算のみで乗算と除算を行うプログラ ムを書け.

report_B_07_09

加算・減算・ビット演算のみで乗算と除算を行 うプログラムを書け.

report_B_07_10

W週間DH時間MS秒という表現で与 えられた2つの数値の加算を行うプログラム を書け.

report_B_07_11

W週間DH時間MS秒という表現で与 えられた2つの数値の減算を行うプログラム を書け.ただし,結果は「非負」と仮定して良 く,0≤W <100と仮定する.

▼ 第8回レポート

report_A_08_01

2つの正の整数a,bの最大公約数を求めるた めに必要な除算の回数を,a,bを用いて出来る 限り精密に評価せよ.(ヒント:フィボナッチ 数列との比較をおこなえ.)

report_A_08_02

3つの正の整数a,b,cに対して,ax+by+cz= gcd(a, b, c)をみたすx,y,zを1組求めるアル ゴリズムを示し,その計算回数の評価を行え.

report_A_08_03

既約分数n/m,0< n < mを相異なる単位分 数の和に分解するアルゴリズムを示せ.

report_A_08_04

a,bを互いに素な正の整数とする.この時, χ(a, b)

= inf



















n∈N:

全てのm≥nに対して ax+by=m

をみたす自然数の組 (x, y)(N∪ {0})2 が存在する.



















(3)

とおく.この時,

χ(a, b) = (a−1)(b−1) であることを示せ.

report_A_08_05 フィボナッチ数列

Fn+2 =Fn+1+Fn, n≥1, F2=F1= 1 の第nFnを再帰的関数呼出しを用いて求 めようとするとき,関数呼出しの回数をnを用 いて評価せよ.

report_A_08_06

任意の正の整数a,b,kに対して, gcd(a, b) =gcd(b, b−ka) が成り立つことを証明せよ.

report_B_08_01

2つの正の整数の最大公約数を求めるプログ ラムを書け.

report_B_08_02

2つの正の整数の最大公約数を求めるプログ ラムを再帰的関数呼出しを用いて書け.

report_B_08_03

2つの正の整数の最大公約数を求めるプログ ラムを,2進GCDアルゴリズムを用いて書け.

report_B_08_04

3つの正の整数の最大公約数を求めるプログ ラムを書け.

report_B_08_05

2つの正の整数 a, b に対して, ax +by = gcd(a, b)をみたす x, y を1組求めるプログ ラムを書け.

report_B_08_06

3つの正の整数a,b,cに対して,ax+by+cz= gcd(a, b, c)をみたすx,y,zを1組求めるプロ グラムを書け.

report_B_08_07

正の整数nの最小の約数を求めるプログラム を書け.

report_B_08_08

正の整数nが完全数であるとは,nのすべての 約数(1nを含む)の和が2nに等しいこと

をいう.10000までのすべての完全数を求める

プログラムを書け.

report_B_08_09

帰納的に定義された数列, an = 2an−1 +n, (n1),a0= 0の第10項までを順に表示する プログラムを,再帰的関数呼出しを用いて書け.

report_B_08_10

a,bを互いに素な正の整数とする.a円,b円の 切手を用いて,n円の組合わせを作成したいと する. 実現出来ないnの値をすべて求めるプ ログラムを書け.

report_B_08_11

正の整数nに対して,関数µ

µ(n) =































1 n= 1,

0







n >1,

nは素数の2乗で 割りきれる,







(−1)k







n >1, nk個の 相異なる素数の積,







と定義する.与えられた正の整数nに対して, µ(n)を求めるプログラムを書け.

report_B_08_12

0より大きく1未満の有理数を分母が相異な る単位分数の和に分解するプログラムを書け.

report_B_08_13

0より大きく1未満の有理数を,可能なときに は,2つまたは3つの分母が相異なる単位分数 の和に分解し,それが不可能なときには,その ことを出力するプログラムを書け.

▼ 第9回レポート

report_B_09_01

西暦Y年M月N日がその年の1月1日から数 えて何日目になるかを与える関数を書け.

report_B_09_02

エラトステネスのふるいを用いて,10000 までの素数を全て求めるプログラムを書け.

▼ 第10回レポート

report_B_10_01

(4)

正の10進整数をb進整数に変換するプログラ ムを書け.ただし,2≤b≤36とし,「数字」は 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ

を用いる.

report_B_10_02

10進整数を平衡3進整数に変換するプログ ラムを書け. ただし,平衡3進整数の「数字」

p,z,nとし,それぞれ1,0,−1に対応する 数字とする.

report_B_10_03

10進整数を−b進整数に変換するプログラム を書け.ただし,2≤b≤36とし,「数字」は 0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ

を用いる.

report_B_10_04

2つの平衡3進整数を与えたとき,それらの加 算・減算・乗算・整除を行うプログラムを書け.

ただし,整除に関しては,除数は0でないとし, 剰余は正の最小剰余をとること.

report_B_10_05

2つの同じ型のオブジェクトを入れ替える関 数を書け.

report_B_10_06

標準関数atoiを実現せよ.

report_B_10_07

標準関数strncmpを実現せよ.

report_B_10_08

標準関数strncatを実現せよ.

report_B_10_09

次の仕様をみたす関数を書け.

int str2int(char *s, int *d)

文字列sには一つ以上の「空白文字」で区切 られた,int型の整数値を表す数値が入ってい るとき,int型の配列にその数値を代入する.

全ての数値が正しくint型の数値に変換でき たときには,配列dに入っている有効な要素数 を返し,一つでも正しく変換できなかったとき には,0を返す.

ただし,「空白文字」とは,標準関数isspace で区別できる文字のことをいう.

▼ 第11回レポート

report_A_11_01

IEEE浮動小数点規格で演算を行う計算機上で, a0= 0, a1= 1−√

5 2 , an+1=an+an−1

に従う数列{an}を,この帰納的定義(漸化式)

によって計算したとき,その結果は期待したも のと異なる挙動を示す.この事実を説明せよ.

report_A_11_02

f(x) = 0の解αm重根(m2)である時, ニュートン法による近似解の誤差nは,

n= m m−1n−1

を満たすことを証明せよ. (ヒント:f(x) = (x−α)m−1g(x)と書け,x=αg(x) = 0 単根であることを利用する.)

report_A_11_03

1変数のニュートン法の収束に関する定理(講 義中に述べたもの)を証明せよ.

report_A_11_04 ニュートン法を用いて

f1(x) = (x−1)(x+ 1), f2(x) = (x−1)2(x+ 1), f3(x) = (x−1)3(x+ 1), f4(x) = (x−1)4(x+ 1)

の解x= 1への近似解の収束の様子を出力し, その誤差の収束について論ぜよ.

すなわち,(例えば)x= 2.0を初期値とした ニュートン法の近似解の真の解との相対誤差 を出力し,それが0に収束する様子をプロット しなさい. さらに,report_A_11_02の結果 を合わせて,収束の様子について論ぜよ.

report_A_11_05

f(x)n次多項式とする. f(x+c)cにつ いての多項式とみたとき,そのk次の係数は f(k)(z)/k!に等しいことを証明せよ.

report_B_11_01 区間縮小法を用いて

2の値を相対誤差10−7 で求めよ.

(5)

report_B_11_02 ニュートン法を用いて

2の値を相対誤差10−7 で求めよ.

report_B_11_03

1変数多項式fz−aで割った商,f(a)を求 めるプログラムを書け.

▼ 第12回レポート

report_A_12_01

Chebyshev 多項式 Tn(x) = cos(narccosx), n≤1に対して,

Tn+1(x) = 2xTn(x)−Tn−1(x)

を満たすことを証明せよ.

report_A_12_02

Hermite 補 間 の 定 理 で 用 い た 行 列

V(2)(x1,· · ·, xn)

detV(2)(x1,· · ·, xn) =

j>i

(xj−xi)2

を満たすことを証明せよ.

report_A_12_03

(−2,0),(−1,1),(0,0),(1,−1),(2,0)をサンプ ル点とする, Lagrange補間多項式を求めよ.

report_B_12_01

2つの1変数多項式f,gを与えたとき,その最 大公約多項式を求めるプログラムを書け.

report_B_12_02

{(xi, yi)}ni=1 を与えて,そのLagrange 補間多 項式P(x)を求めるプログラムを書け.

参照

関連したドキュメント

(証明) 各頂点 v への,枝数≦ n‐1 の最短路が存在(定理より)  は頂点 v への最短路長に等しい さらに, 全ての v 

7.2 特定の窓 ( 幅 256 点程度が適当 ) を使って部分的にフーリエ変換を施し, 7.2 で求めた周波数に最も近い周波数

これらの計算結果から、自然数 からスタートすればいつ かは になると予想される。そこで からスタートし、この 計算をして になることを予想

ハーディ:私はNo.1729 のタクシーに乗ってきたが,1729 なんて数は何の 変哲もない数だ・ ・ ・

• 入力行の解析において, 1行の最大文字数が1024であること, 1行に含まれる最大要素数が 20であることは利用して良い..

この時, 入力ファイルで最後に8ビットが余った場合には, 入力データに8ビットの 0 をつけ加 え,

金融機関代理店では、新契約時の手数料に加えて継続手数料を代理店に支払う手数料体系が

主に商品 1 件あたりの維持費に対して、会社規模の拡大に伴い 1