プログラミング入門2 総合演習課題 2008年 1/7, 1/21 実施 これまでの講義内容についての腕試し 各自、自分なりの工夫を凝らすこと! 細かな仕様は問わないので、適宜配列、関数、構造体, ポインタ,動的記憶域確保など学習したものを用いること。
総合演習課題について 次年度以降,取り組むであろうC言語による統計データ処理,数値計算 の課題 次年度以降,取り組むであろうC言語による統計データ処理,数値計算 の課題 下記指定日までに課題をメールにて提出。3問全部やることが望ましいが, 出来たところまででもよいので提出すること。出来具合に応じて成績点に加算する。 指定日時:1月28日(月)18時まで 提出先:yaoki@sic.shibaura-it.ac.jp メールにてソースファイルを添付して提出 メールのタイトルは: pro2-all + 学籍番号 + 名前(半角英字) プログラミング入門2
総合演習問題1(統計処理) データファイル(score.txt ※HPからダウンロード)から100名分の学生の学籍番号、及び点数(100点満点)のデータを読み込み、これらのデータ群に対して以下に示すものを求めよ。また、これらの機能は全て1つのソースファイルで実現すること。最初にユーザーに(1)〜(4)のどれを実行するかを選択させるようにすること。 右のように10点刻みで分布グラフを表示せよ。 平均点、最高点、最低点、標準偏差 を表示せよ。 scanfで任意の学生の学籍番号を指定し、その学生の得点から、偏差値を表示せよ。 全員分の偏差値を求め、任意のファイル名をつけて(ファイル名はキーボード読込み)以下のようにファイルにデータを書き込みなさい。 学籍番号 点数 偏差値 ※偏差値を求めるには、平均、分散、標準偏差が必要。 ※データの格納には、構造体を用いると良い。 ※必要に応じて、関数を導入せよ。 ○分散分散 = (データを2乗した値の総和 - (データの総和の2乗 /データ数)) / データ数 ○標準偏差:分散の平方根の正の値 ○偏差 = 個人の値 - 平均値 ○偏差値 = (偏差 / 標準偏差) * 10 + 50 0-10 : **** 11-20 : ********** 21-30 : **** ・・・・・・・・・・・・・・・ 91-100 : ** ※score.txtのデータの並び順 学籍番号 点数 Z05001 83 Z05002 ・・・・・・・・・ プログラミング入門2
総合演習問題2(物理計算) 斜方投射シミュレーション ボールを地面に対してθ度の角度で、初速度vo(m/s)で投げあげる。空気抵抗の影響は無視するものとする。 (1)vo, θを引数として受け取り、最高到達点(高さ方向)に達するまでの時間(秒)とその高さ(m)を表示する関数を作成せよ。 (2)vo, θを引数として受け取り、地面に落下するまでの時間(秒)及び距離(飛距離、m)を表示する関数を作成せよ。 (3)松坂大輔投手のストレートの初速を150km/hとする。松坂投手が30度、 45度、60度でボールを投げ上げた際の飛距離を(2)の関数を使って求めよ。また、3つの場合それぞれについて、一定時間間隔でボールの位置(x,y)をファイルに書き出し、エクセル等を使ってその軌跡をグラフ化せよ。 x y θ Vx = Vo*cosθ Vy = Vo*sinθ-g*t x = Vo*cosθ*t y = Vo*sinθ*t - 0.5*g*t^2 プログラミング入門2
総合演習問題3(数学:積分近似計算) 二次関数 f(x) = x^2 について、x=0から3までの定 積分 を求めたい。区分求積法により、この 積分の近似値を求めよ。 X軸方向の刻み幅Δxを大→小へと変化させ、近似の精度が良くなることを確認せよ。 0 ※更に自由度を上げるために・・・・ ・積分範囲を可変に ・関数(f(x))を可変に 等、工夫してみるとなお良い。 3 Δx プログラミング入門2