MITの授業もやってやれない事は無い

オンラインで動画・音声・教科書を無料で公開している大学の講義・授業まとめ - higepon blogが実際役に立つと言うお話

最近iPhoneTwitterのタイムラインを席巻しているので、「iPhone SDKWindowsじゃ動かない」->「Androidがあるじゃない!」ちゅー事で既に手をつけてるC言語に加えて、Android SDKJavaAndroidのアプリはJava)に手を出してます。

実際にやってる物

日本の大学で公開してるJava関連の授業もあるのですが、「どうせならMITの授業とか見るか」と言う訳でMIT OpenCourseWare | Free Online Course Materialsから「6.092 Introduction to Software Engineering in Java」をダウンロードして少しずつ進めてます。

内容は当然英語なんですが、JabaにもC言語と似た構文は結構ありますし、大学図書館にあったJavaの入門書で多少予習してたので大して問題なく読み進めています。
どうしようもなく分からなかったら電子辞書で調べれば済む事ですし。

勉強中に書いた物.java

MethodTest.java
//メソッドを作る
class MethodTest{
	//メソッドnewline
	public static void newline(){
		System.out.println("");
	}
	//newlineを三回実行するメソッドthreeline
	public static void threeline(){
		newline();newline();newline();
	}
	
	public static void main(String[] argv){
		System.out.println("line 1");
		threeline();
		System.out.println("line 2");
	}
}
HourlyPay.java
/*Summary of Rules
. An employee gets paid (hours worked) × (base pay), for each hour up to 40 hours.
. For every hour over 40, they get overtime = (base pay) × 1.5.
. The base pay must not be less than the minimum wage ($8.00 an hour). If it is, print an error.
. If the number of hours is greater than 60, print an error.*/

//授業1の課題 労働時間*基本給で総額を計算する
class HourlyPay{
	public static void totalPay(double base, double time){
		if (base >= 8.00 && time <= 60){
			if (base > 40){
				base = (40*base)+(time-40*base*1.5);
				System.out.println("総額は"+base+"です。");
			}else{
				System.out.println("総額は"+(base*time)+"です。");
			}
		}else if (base < 8.00){
			System.out.println(base+"は最低賃金を下回っています。");
		}else if (time > 60){
			System.out.println(time+"は最長労働時間を上回っています。");
		}
	}
		
	public static void main(String[] argv){
		totalPay(7.50, 35);
		totalPay(8.20, 47);
		totalPay(10.00, 73);
	}
}