All pastes #276286 Raw Edit

Stuff

public text v1 · immutable
·published 2006-12-12 04:40 UTC
rendered paste body
kurssi.java
-----------
import java.io.*;

class Kurssi {
	private double m_ects;
	private String m_name;

	Kurssi(String name, double ects) {
		m_name = name;
		m_ects = ects;
	}
	
	public double returnECTS() {
		return m_ects;
	}
	
	public String returnName() {
		return m_name;
	}
	
	public void setECTS(double ects) {
		m_ects = ects;
	}
	
	public void setName(String name) {
		m_name = name;
	}
	
	public void printInfo() throws IOException {
		System.out.println(m_name + " - " + m_ects);
	}
}

opintorekisteri.java
-----------------
import java.io.*;
import java.util.Iterator;

class Opintorekisteri {
	public static int count = 10;
	public static BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
	public static Kurssi[] register = new Kurssi[count];
	public static void main(String [] args) throws IOException {
		boolean doMainLoop = true;

		do {
			try {
				printMenu();
				int selection = Integer.parseInt(stdin.readLine());
				switch(selection) {
				case 1:
					addCourse();
					break;
				case 2:
					changeCourse();
					break;
				case 3:
					removeCourse();
					break;
				case 4:
					printCourses();
					break;
				case 0:
					doMainLoop = false;
					break;
				default:
					throw new Exception();
				}
			}
			catch(Exception e) {
				System.out.println("Virheellinen syöte " + e);	
			}
		} while(doMainLoop);
		
	
	}

	public static void printMenu() {
		System.out.println("1. Lisää uusi kurssi");
		System.out.println("2. Muuta kurssin tietoja");
		System.out.println("3. Poista kurssi");
		System.out.println("4. Tulosta kaikki kurssit");
		System.out.println("0. Lopeta");
	}
	
	public static void addCourse() {
		boolean doLoop = true;
		do {
			try {
				System.out.print("Syötä kurssin nimi: ");
				String name = readString();
				System.out.print("Syötä opintopisteiden määrä: ");
				double ects = readDouble();
				for(int i = 0;i<count;i++) {
					if(register[i] == null) {
						register[i] = new Kurssi(name, ects);
						doLoop = false;
						break;
					}
				}
			}
			catch(Exception e) {
				System.out.println("Virheellinen syöte" + e);	
			}
		} while(doLoop);
	}
	
	public static void changeCourse() throws IOException {
		printCourses();
		System.out.print("Syötä kurssin numero, jota haluat vaihtaa: ");
		int i = readInt();
		if(register[i] != null) {
			System.out.print("Syötä uusi nimi: ");
			String name = stdin.readLine();
			System.out.print("Syötä uusi opintopistemäärä: ");
			double ects = Double.parseDouble(stdin.readLine());
			register[i].setECTS(ects);
			register[i].setName(name);
		}
		else
			System.out.println("Syöttämääsi kurssia ei ole olemassa");
	}
	
	public static void removeCourse() throws IOException {
		printCourses();
		System.out.print("Syötä poistettavan kurssin numero: ");
		int i = readInt();
		if(register[i] == null)
			System.out.println("Kyseisellä numerolla ei ole kurssia");
		else
			register[i] = null;
	}
	
	public static void printCourses() {
		System.out.println("#\tKurssi\t\t\t\t\t\tECTS");
		for(int i = 0;i<count;i++) {
			if(register[i] != null)
				System.out.println(i + ".\t" + register[i].returnName() + "\t\t\t\t\t" + register[i].returnECTS());
		}
	}
	
	public static String readString() throws IOException {
		return stdin.readLine();
	}
	
	public static double readDouble() throws IOException {
		return Double.parseDouble(stdin.readLine());	
	}
	
	public static int readInt() throws IOException {
		return Integer.parseInt(stdin.readLine());	
	}
}