KOSA
Bywalec
Dołączył: 09 Gru 2007
Posty: 40
Przeczytał: 0 tematów
|
Wysłany: Sob 15:00, 09 Maj 2009 Temat postu: mod |
|
|
import java.io.*;
import javax.swing.JOptionPane;
///// Przedmiot - Begin /////
class zaliczenie
{
protected
String Data = "";
float Ocena = 0;
public void uzupelnij(String NData, float NOcena)
{
if (NData != null) Data = NData;
if (NOcena != 0) Ocena = NOcena;
}
public void wyswietl()
{
System.out.println("Data : " + Data);
System.out.println("Ocena : " + Ocena);
}
public String get_wyswietl()
{
return "Data : " + Data + "\n" + "Ocena : " + Ocena + "\n";
}
public float get_ocena()
{
return Ocena;
}
}
class zaliczenie2 extends zaliczenie
{
protected
String Data = "";
float Ocena = 0;
}
class warunek extends zaliczenie2
{
protected
String Data = "";
float Ocena = 0;
}
class przedmiot
{
protected
String Nazwa = "";
String Wykladowca = "";
zaliczenie zal1 = null;
zaliczenie2 zal2 = null;
warunek zal3 = null;
public void uzupelnij(String NNazwa, String NWykladowca)
{
if (NNazwa != null) Nazwa = NNazwa;
if (Wykladowca != null) Wykladowca = NWykladowca;
}
public void wyswietl()
{
System.out.println("Przedmiot : " + Nazwa);
System.out.println("Wykladowca : " + Wykladowca);
}
public String get_wyswietl()
{
return "Przedmiot : " + Nazwa + "\n" + "Wykladowca : " + Wykladowca + "\n";
}
public void wyswietl_oceny()
{
if (zal1 != null)
{
System.out.println("Termin [1]");
zal1.wyswietl();
if (zal2 != null)
{ System.out.println("Termin [2] - Poprawkowy");
zal2.wyswietl(); }
if (zal3 != null)
{ System.out.println("Termin [3] - Warunkowy");
zal3.wyswietl(); }
}
else
{ System.out.println("Brak ocen!"); }
}
public float get_srednia()
{
int ile = 0;
float sre = 0;
if (zal1 != null)
{
ile++;
sre = sre + zal1.get_ocena();
if (zal2 != null)
{ ile++;
sre = sre + zal2.get_ocena(); }
if (zal3 != null)
{ ile++;
sre = sre + zal3.get_ocena(); }
return sre / ile;
}
else
{ System.out.println("Brak ocen!");
return 0; }
}
public String get_wyswietl_oceny()
{
String Tekst = "";
if (zal1 != null)
{
Tekst = Tekst + "Termin [1]\n" + zal1.get_wyswietl();
if (zal2 != null)
{ Tekst = Tekst + "Termin [2] - Poprawkowy\n" + zal2.get_wyswietl(); }
if (zal3 != null)
{ Tekst = Tekst + "Termin [3] - Warunkowy\n" + zal3.get_wyswietl(); }
}
else
{ Tekst = "Brak ocen!\n"; }
return Tekst;
}
public void dodaj_ocene(String Data, float Ocena)
{
if (zal1 == null)
{
zal1 = new zaliczenie();
zal1.uzupelnij(Data,Ocena);
}
else if (zal2 == null)
{
zal2 = new zaliczenie2();
zal2.uzupelnij(Data,Ocena);
}
else if (zal3 == null)
{
zal3 = new warunek();
zal3.uzupelnij(Data,Ocena);
}
else { JOptionPane.showMessageDialog(null, "Dodanie zaliczenia:\n\nKoniec terminow !"); }
}
}
///// Przedmiot - End /////
public class Zad2
{
///// Indeks - Begin /////
protected
String Imie = "";
String Nazwisko = "";
int Numer = 0;
private przedmiot Przedmioty[] = null;
public void auto()
{
int l = 22;
String Nazwa = "";
String Wykladowca = "";
Przedmioty = new przedmiot[l];
for(int i=0; i < Przedmioty.length; i++)
{
Przedmioty[i] = new przedmiot();
Nazwa = "A";
Wykladowca = "B";
Przedmioty[i].uzupelnij(Nazwa,Wykladowca);
}
uzupelnij_osoba("Patryk","Czechowski",12843);
}
public void dodaj()
{
int l = -1;
String Nazwa = "";
String Wykladowca = "";
String s1;
s1 = JOptionPane.showInputDialog(null, "Uzupelnianie Indeksu:\n\nLiczba przedmiotow:");
l = Integer.parseInt(s1);
Przedmioty = new przedmiot[l];
for(int i=0; i < Przedmioty.length; i++)
{
Przedmioty[i] = new przedmiot();
Nazwa = JOptionPane.showInputDialog(null, "Uzupelnianie Indeksu Wpis ["+i+"]:\n\nPrzedmiot :");
Wykladowca = JOptionPane.showInputDialog(null, "Uzupelnianie Indeksu Wpis ["+i+"]:\n\nWykladowca :");
Przedmioty[i].uzupelnij(Nazwa,Wykladowca);
}
}
public void zaliczenie()
{
int l = -1;
String Data = "";
float Ocena = -1;
String s1 = "";
if (Przedmioty == null)
{ JOptionPane.showMessageDialog(null, "Dodanie zaliczenia:\n\nBrak wpisow w Indeksie!"); }
else
{
while (l == -1)
{
s1 = JOptionPane.showInputDialog(null, "[Dodanie zaliczenia:\n\nWpisy Indeksu [od "+0+" do "+(Przedmioty.length-1)+"]\n\nEdycja wpisu:");
l = Integer.parseInt(s1);
if (l != -1 && (l > Przedmioty.length - 1 || l < 0))
{ l = -1;
JOptionPane.showMessageDialog(null, "Dodanie zaliczenia:\n\nNumer indeksu z poza zakresu!"); };
}
Data = JOptionPane.showInputDialog(null, "[Dodanie zaliczenia:\n\nDodanie zaliczenia dla wpisu ["+l+"]\n\n"+Przedmioty[l].get_wyswietl()+"\nData:");
s1 = JOptionPane.showInputDialog(null, "[Dodanie zaliczenia:\n\nDodanie zaliczenia dla wpisu ["+l+"]\n\n"+Przedmioty[l].get_wyswietl()+"\nOcena:");
Ocena = Float.parseFloat(s1);
Przedmioty[l].dodaj_ocene(Data,Ocena);
}
}
public void srednia()
{
if (Przedmioty == null)
{ JOptionPane.showMessageDialog(null, "Zawartosc Indeksu:\n\nBrak wpisow w Indeksie!"); }
else
{
float sred = 0;
for(int i=0; i < Przedmioty.length; i++)
{ sred = sred + Przedmioty[i].get_srednia(); }
sred = sred / Przedmioty.length;
JOptionPane.showMessageDialog(null, "Liczenie sredniej:\n\nTwoja srednia: " + sred);
}
}
public void wyswietl()
{
int ile = 0;
if (Przedmioty == null)
{ JOptionPane.showMessageDialog(null, "Zawartosc Indeksu:\n\nBrak wpisow w Indeksie!"); }
else
{
String Tekst = "";
for(int i=0; i < Przedmioty.length; i++)
{
ile++;
Tekst = Tekst + "Wpis ["+i+"]:\n" + Przedmioty[i].get_wyswietl() + Przedmioty[i].get_wyswietl_oceny() + "\n";
if (ile == 3)
{ JOptionPane.showMessageDialog(null, "Zawartosc Indeksu:\n\n" + Tekst);
Tekst = "";
ile = 0; }
}
if (ile != 0) { JOptionPane.showMessageDialog(null, "Zawartosc Indeksu:\n\n" + Tekst); }
}
}
public void edytuj()
{
int l = -1;
String Nazwa = "";
String Wykladowca = "";
String s1 = "";
if (Przedmioty == null)
{ JOptionPane.showMessageDialog(null, "Edycja Przedmiotow:\n\nBrak wpisow w Indeksie!"); }
else
{
while (l == -1)
{
s1 = JOptionPane.showInputDialog(null, "[Edycja Przedmiotow:\n\nWpisy Indeksu [od "+0+" do "+(Przedmioty.length-1)+"]\n\nEdycja wpisu:");
l = Integer.parseInt(s1);
if (l != -1 && (l > Przedmioty.length - 1 || l < 0))
{ l = -1;
JOptionPane.showMessageDialog(null, "Edycja Przedmiotow:\n\nNumer indeksu z poza zakresu!"); };
}
Nazwa = JOptionPane.showInputDialog(null, "[Edycja Przedmiotow:\n\nEdycja Wpisu ["+l+"]\n\n"+Przedmioty[l].get_wyswietl()+"\nPrzedmiot:");
Wykladowca = JOptionPane.showInputDialog(null, "[Edycja Przedmiotow:\n\nEdycja Wpisu ["+l+"]\n\n"+Przedmioty[l].get_wyswietl()+"\nWykladowca:");
Przedmioty[l].uzupelnij(Nazwa,Wykladowca);
JOptionPane.showMessageDialog(null, "Edycja Przedmiotow:\n\nWpis zoasla zmodyfikowany !");
}
}
public void edycja_ocen()
{
int l = -1;
String Data = "";
float Ocena = 0;
String s1 = "";
if (Przedmioty == null)
{ JOptionPane.showMessageDialog(null, "Edycja Ocen:\n\nBrak wpisow w Indeksie!"); }
else
{
while (l == -1)
{
s1 = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nWpisy Indeksu [od "+0+" do "+(Przedmioty.length-1)+"]\n\nEdycja wpisu:");
l = Integer.parseInt(s1);
if (l != -1 && (l > Przedmioty.length - 1 || l < 0))
{ l = -1;
JOptionPane.showMessageDialog(null, "Edycja Ocen:\n\nNumer indeksu z poza zakresu!"); };
}
if (Przedmioty[l].zal1 == null)
{ JOptionPane.showMessageDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nBrak Ocen do Edycji!"); }
else
{
Data = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nTermin [1]\n\nData:");
s1 = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nTermin [1]\n\nOcena:");
Ocena = Float.parseFloat(s1);
Przedmioty[l].zal1.uzupelnij(Data,Ocena);
if (Przedmioty[l].zal2 != null)
{
Data = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nTermin [2] - Poprawkowy\n\nData:");
s1 = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nTermin [2] - Poprawkowy\n\nOcena:");
Ocena = Float.parseFloat(s1);
Przedmioty[l].zal2.uzupelnij(Data,Ocena);
}
if (Przedmioty[l].zal3 != null)
{
Data = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nTermin [3] - Warunkowy\n\nData:");
s1 = JOptionPane.showInputDialog(null, "Edycja Ocen:\n\nEdycja Wpisu ["+l+"]\n"+Przedmioty[l].get_wyswietl()+"\nTermin [3] - Warunkowy\n\nOcena:");
Ocena = Float.parseFloat(s1);
Przedmioty[l].zal3.uzupelnij(Data,Ocena);
}
JOptionPane.showMessageDialog(null, "Edycja Ocen:\n\nWpis zoasla zmodyfikowany !");
}
}
}
public void uzupelnij_osoba(String NImie, String NNazwisko, int NNumer)
{
if (NImie != null) Imie = NImie;
if (NNazwisko != null) Nazwisko = NNazwisko;
if (NNumer != 0) Numer = NNumer;
}
public void wyswietl_osoba()
{
if (Imie == "" && Nazwisko == "" && Numer == 0)
{ JOptionPane.showMessageDialog(null, "Dane Osobowe:\n\nBrak wprowadzonych danych osobowych !"); }
else
{
JOptionPane.showMessageDialog(null, "Dane Osobowe:\n"
+"\nImie : " + Imie
+"\nNazwisko : " + Nazwisko
+"\nNr. Indeksu : " + Numer);
}
}
public void dane_osobowe()
{
String s1,s2,s3;
int nr;
s1 = JOptionPane.showInputDialog(null, "Dane Osobowe:\n\nImie studenta:");
s2 = JOptionPane.showInputDialog(null, "Dane Osobowe:\n\nNazwisko studenta:");
s3 = JOptionPane.showInputDialog(null, "Dane Osobowe:\n\nNr. Indeksu studenta:");
nr = Integer.parseInt(s3);
uzupelnij_osoba(s1,s2,nr);
JOptionPane.showMessageDialog(null,"Dane idetyfikacyjne studenta - uzupelnione!");
}
///// Indeks - End /////
public static void main(String[] args)
{
Zad2 Index = new Zad2();
char cho = 'z';
Index.auto();
String Menu;
while (cho != '0')
{
Menu=JOptionPane.showInputDialog(null, "[L2Z1] by Patryk Czechowski\n"
+"\n1. Indeks - Dodaj przedmioty"
+"\n2. Indeks - Dodaj zaliczenie"
+"\n3. Zawartosc Indeksu"
+"\n4. Edycja Przedmiotow"
+"\n5. Edycja Ocen\n"
+"\n6. Srednia\n"
+"\n8. Wprowadz dane osobowe"
+"\n9. Przegladaj dane osobowe\n"
+"\n0. Wyjscie\n\n");
cho = Menu.charAt(0);
switch (cho)
{
case '1' : Index.dodaj();
break;
case '2' : Index.zaliczenie();
break;
case '3' : Index.wyswietl();
break;
case '4' : Index.edytuj();
break;
case '5' : Index.edycja_ocen();
break;
case '6' : Index.srednia();
break;
case '8' : Index.dane_osobowe();
break;
case '9' : Index.wyswietl_osoba();
break;
case '0' : JOptionPane.showMessageDialog(null,"Koniec programu - Bye!");
break;
default : JOptionPane.showMessageDialog(null,"Brak takiej opcji !");
}
}
System.exit(0);
}
private static String GetStr()
{
String temp = "";
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try
{ temp = br.readLine(); }
catch (IOException err)
{ System.out.println("Nie moge odczytac bufora!"); }
return temp;
}
private static float GetFloat()
{
String temp = "";
float z = 0;
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
try
{ temp = br.readLine(); }
catch (IOException err)
{ System.out.println(err + "Blad wejscia"); }
try
{ z = Float.parseFloat(temp); }
catch (NumberFormatException err)
{
System.out.println("Podana wartosc nie jest zmienna liczbowa!");
z = -1;
}
return z;
}
}
|
|