Cプログラミング 第9回 プログラミング演習 青柳滋己 aoyagi@aoni waseda jp [email protected] 2015年度 Cプログラミング 第9回 本日の講義概要 プログラム演習 小レポート課題 2015年度 Cプログラミング 第9回 小レポート課題 課題 (1)常微分方程式を解くホイン法のプログラムを作成せよ. 常 方程式を解く プ グ を作成 (2)n個の中からr個をとる組合わせの数 nCr を表示する再帰プログラムと再帰 を使わないプログラムを作成せよ.また, 65C40,65C41 ,...,, 65C50 の値を計 算せよ. (3) report1_3bug.cの間違いを修正し,正しく動くプログラムを作成せよ.また, 間違っている箇所とその修正法を解説すること. 間違っている箇所とその修正法を解説すること (4)「素数判定プログラム」を作成せよ. 提出期限 2015年12月3日(木) 23時59分 締切厳守 提出物 作成したCプログラム (report1_{1,2a,2b,2c,3,4}.c) 課題1,2の実行結果(repot1_1.txt,report1_2_kekka.txt) 課題2,3,4のドキュメント(report1_{2,3,4}.doc(.txtでも良い)) 課題2,3,4のドキュメント(report1 {2,3,4}.doc(.txtでも良い)) 2015年度 Cプログラミング 第9回 小レポート課題1 第7回演習を参考に,1階常微分方程式 ddy xy , dx 0 x 0.3, y ( 0 ) 1. 0 をホイン法で解くプログラム(report1_1.c)を作成せよ. をホイン法で解くプログラム(report1 1 c)を作成せよ ただしn=30とし,解は少数点以下10桁まで表示せよ. ホイン(Heun)法は関数計算が2個のものである. k1 f ( xi , Yi ) k2 f ( xi h, Yi hk1 ) 1 Yi 1 Yi h ( k1 k2 ) 2 プログラムと実行結果(report1_1.txt)を提出. プログラムと実行結果(report1 1.txt)を提出. 2015年度 Cプログラミング 第9回 小レポート課題2 n個の中からr個をとる組合せの数nCrは nCr= n-1Cr + n-1Cr-1 で表せる.キーボードから2つの自然数nとrを入力すると,nCr を計算し表示する再帰プログラムを作成せよ(report1_2a.c). プ グ また,再帰を使わないプログラムも作成せよ(report1_2b.c). また 65C40,65C41 ,..., 65C50 の値を計算するプログラム また, の値を計算するプ グラム (report1_2c.c)を作成し,実行結果(report1_2_kekka.txt)ととも に提出せよ 作成したプログラムの解説ドキュメント に提出せよ.作成したプログラムの解説ドキュメント (repot1_2.doc)も提出すること. 注:再帰版の場合,n,rに大きな値を入れると戻ってこないこと あ 数 す がある. 65C40等の数も大きな値になるので注意すること. 2015年度 Cプログラミング 第9回 小レポート課題3 右はキーボードから2整数 を入力し 読み込んだi t型 を入力し,読み込んだint型 数値を文字列に変換後,2 数(文字列)を並べて表示 するプログラムだが,間違 いがある 正しく動くように いがある.正しく動くように 修正せよ.(report1_3.c) 間違い箇所とその修正方 法についてドキュメントに 明記せよ. (report1_3.doc) report1_3bug.c #include <stdio <stdio.h> h> char *num2str(int i) { char str[30]; sprintf(str, "%d", i); return str; } int main(void) { int num1, num1 num2; printf("Input number 1: "); scanf("%d", &num1); printf("Input printf( Input number 2: "); ); scanf("%d", &num2); printf("%s %s¥n", num2str(num1), num2str(num2)); return 0; } 2015年度 Cプログラミング 第9回 小レポート課題4 キーボードから入力された数値が素数かどうか判定 するプログラムを作成する 素数判定プログラムの動作仕様 (1) キーボードから自然数を入力 (2) その自然数が素数か否かを調べ,結果を表示して終了 注意 キ キーボードからはsigned g intの範囲内の自然数が入力さ 範囲 自然数 入 れるものとする(1~2147483647) 結果は,素数か否かだけ表示すればよい ファイル名は report1_4.c として提出 ドキュメントにはどうやって素数を判定しているのかアル ゴリズムを明記すること(report1_4.doc) 2015年度 Cプログラミング 第9回 注意事項 1. 仕様を満たし,かつ動くプログラムを提出すること. 仕様を自分勝手に変更しないこと 2. ドキュメントに考察は必ず書くこと(課題2, 4). 例: 3. となることの説明 等 nCr=n-1Cr+n-1Cr-1となることの説明,等 他人のを写したり,共同でやるのは不可 !! ・コピーレポートは0点とする ※本等で調べたりするのは良いが,理解した上で自分なりのプログラ ※本等で調 たりするのは良いが,理解した上で自分なりのプログラ ム・説明を書くこと. 4. 提出期限 2015年12月3日(木) 23時59分 締切厳守 2015年度 Cプログラミング 第9回 次回予定 探索 リニアサーチ バイナリサ バイナリサーチ チ 2015年度 Cプログラミング 第9回
© Copyright 2025 ExpyDoc