プログラミングA

プログラミングA
第7回
演習(1)
2015年6月8日
東邦大学 金岡 晃
前回の課題
1.
キーボードから10人分のテストの点数を入力させ、その10人の点数
と偏差値を出力するプログラムを作成してください
𝑖番の人の偏差値 =
平均
2.
1
10 𝑥𝑖 − 𝜇𝑥
+ 50
𝜎𝑥
1
𝜇𝑥 =
𝑁
𝑁
𝑥𝑖
標準偏差
𝑖=1
𝜎𝑥 =
1
𝑁
𝑁
𝑥𝑖 − 𝜇𝑥
2
𝑖=1
4x4の形の2次元配列Aの内容を準備し、同じく4x4の形の2次元配列B
に、下図のように90度回転するようにして移すプログラムを作れ
1
2
3
4
13
9
5
1
5
6
7
8
14
10
6
2
9
10
11
12
15
11
7
3
13
14
15
16
16
12
8
4
2015/6/8
プログラミングA
前回の復習
(1)
ファイルは
授業用ペー
ジにも
アップして
あります。
2
2015/6/8
プログラミングA
ポイント解説(1)
• こういうプログラムは「求められているものを導くのに、何が必要
か」を順にあぶりだすことが重要
• 今回の場合
各人の偏差値を求める
→ 偏差値を求めるには、平均点と標準偏差が必要
→ 平均点を求めるには、各人の点数と全部の人数が必要
→ 標準偏差を求めるには、各人の点数とその平均点と全部の人数
が必要
𝑖番の人の偏差値 =
平均
3
10 𝑥𝑖 − 𝜇𝑥
+ 50
𝜎𝑥
1
𝜇𝑥 =
𝑁
2015/6/8
𝑁
𝑥𝑖
𝑖=1
標準偏差
𝜎𝑥 =
1
𝑁
𝑁
𝑥𝑖 − 𝜇𝑥
𝑖=1
プログラミングA
2
ポイント解説(2)
各人の偏差値を求める
→ 偏差値を求めるには、平均点と標準偏差が必要
→ 平均点を求めるには、各人の点数と全部の人数が必要
→ 標準偏差を求めるには、各人の点数とその平均点と全部の人数が必要
偏差値を求める流れは…
•
•
•
•
4
各人の点数
– キーボードから入力させる
平均点
– 各人の点数から合計点をもとめて、全部の人数で割る
標準偏差の計算
– 各人の点数から平均点を引いて2乗したものの総和を求める
– その総和を全部の人数で割る
– 割ったものの平方根をとる
偏差値の計算
– 各人の点数から平均点を引き、その値に10を掛け、全部の人数で割る
– その値に50を足す
2015/6/8
プログラミングA
前回の復習(2)
5
2015/6/8
プログラミングA
6
2015/6/8
プログラミングA
演習:教科書の練習をやろう(1)
Lesson 2の練習(教科書P.41-42)
7
2015/6/8
プログラミングA
円の面積を求めよう
円の面積
=半径×半径×円周率(𝜋)
𝜋 が与えられていない
けどプログラミング環境がある、
そんなときはどうしよう・・・・
8
2015/6/8
プログラミングA
円の面積を求めよう
9
2015/6/8
プログラミングA
円の面積を求めよう
平行四辺形に近い
10
2015/6/8
プログラミングA
円の面積を求めよう
平行四辺形に近い
この平行四辺形はあの円の面積に近い(近似値)
11
2015/6/8
プログラミングA
円の面積を求めよう
平行四辺形の面積を求めよう:底辺×高さ
底辺?
底辺𝑏 = 半径𝑟 × cos
12
2015/6/8
2𝜋
𝜋−
8
2
8
×2×
2
プログラミングA
円の面積を求めよう
平行四辺形の面積を求めよう:底辺×高さ
高さ?
高さℎ = 半径𝑟 × sin
13
2015/6/8
2𝜋
𝜋−
8
2
プログラミングA
円の面積を求めよう
平行四辺形の面積を求めよう:底辺×高さ
面積=底辺×高さ
面積𝑆
= 半径𝑟 × cos
14
𝜋−
2𝜋
8
2
2015/6/8
8
×2×
× 半径𝑟 × sin
2
プログラミングA
𝜋−
2
2𝜋
8
Javaでの三角関数の使い方
• 円周率π
– Math.PI
• sin関数
– Math.sin(***)
• cos関数
– Math.cos(***)
π=180°としてπを使って入力する。
たとえばsin(45°)を求めたいときは
sin(π/4)というように。
なのでJava上では
Math.sin(Math.PI/4.0)
でsin(45°)が与えられる
double m = Math.sin(Math.PI/4.0);
15
2015/6/8
プログラミングA
今日の課題
1.
2.
キーボードから分割数を入力させ、その分割数を利用して
平行四辺形を使った円の面積の近似値を求めるプログラムを作れ
1.のプログラムを応用し、円周率の近似値を求めるプログラムを
作れ
ただし、半径は固定の好きな値を使って良い
1.
16
<チャレンジ問題>
円周率を近似した値が3.14159***となるもっとも小さな分割数はい
くつか求めよう。プログラムで。
2015/6/8
プログラミングA
今日の課題
• 提出先
– [email protected]
• 件名
– プログラミングA:第7回
• 注意
– かならず、メールで提出してから帰ってください。また提出前
に、結果の画面を、私かTAに見せて確認を受けてから帰ってく
ださい。
– ソースコード(javaファイル)を添付してください
17
2015/6/8
プログラミングA