import java.io.*;
import fi.jyu.mit.ohj2.*;
public class Jasen {
private int tunnus_nro;
private String nimi = "";
private String hetu = "";
private String katuosoite = "";
private String postinumero = "";
private String postiosoite = "";
private String kotipuhelin = "";
private String tyopuhelin = "";
private String autopuhelin = "";
private int liittymisvuosi = 0;
private double jmaksu = 0;
private double maksu = 0;
private String lisatietoja = "";
private static int seuraava_nro = 1;
public Jasen() { }
public static int rand(int ala, int yla) {
double n = (yla-ala)*Math.random() + ala;
return (int)Math.round(n);
}
public void vastaa_aku_ankka() {
String apuhetu = Mjonot.fmt(rand(1,31),2,'0') +
Mjonot.fmt(rand(1,12),2,'0') +
Mjonot.fmt(rand(1,99),2,'0') + "-" +
Mjonot.fmt(rand(1,1000),3,'0') +
( (char)((int)'A'+rand(1,25)));
nimi = "Ankka Aku";
hetu = apuhetu;
katuosoite = "Ankkakuja 6";
postinumero = "12345";
postiosoite = "ANKKALINNA";
kotipuhelin = "12-1234";
tyopuhelin = "";
autopuhelin = "";
liittymisvuosi = 1996;
jmaksu = 50.00;
maksu = 30.00;
lisatietoja = "Velkaa Roopelle";
}
public void tulosta(PrintStream out) {
out.println(Mjonot.fmt(tunnus_nro,3,'0')+ " " + nimi + " " + hetu);
out.println(" " + katuosoite + " " + postinumero + " " + postiosoite);
out.println(" k: " + kotipuhelin +
" t: " + tyopuhelin +
" a: " + autopuhelin);
out.print(" Liittynyt " + liittymisvuosi + ".");
out.println(" Jäsenmaksu " + Mjonot.fmt(jmaksu,4,2) + " mk." +
" Maksettu " + Mjonot.fmt(maksu,4,2) + " mk.");
out.println(" " + lisatietoja);
}
public void tulosta(OutputStream os) {
tulosta(new PrintStream(os));
}
public int rekisteroi() {
tunnus_nro = seuraava_nro;
seuraava_nro++;
return tunnus_nro;
}
public int getTunnus_nro() { return tunnus_nro; }
public String toString() {
return "" +
tunnus_nro + "|" +
nimi + "|" +
hetu + "|" +
katuosoite + "|" +
postinumero + "|" +
postiosoite + "|" +
kotipuhelin + "|" +
tyopuhelin + "|" +
autopuhelin + "|" +
liittymisvuosi + "|" +
jmaksu + "|" +
maksu + "|" +
lisatietoja ;
}
public void parse(String rivi) {
StringBuffer sb = new StringBuffer(rivi);
tunnus_nro = Mjonot.erota(sb,'|',tunnus_nro);
if ( tunnus_nro >= seuraava_nro ) seuraava_nro = tunnus_nro + 1;
nimi = Mjonot.erota(sb,'|',nimi);
hetu = Mjonot.erota(sb,'|',hetu);
katuosoite = Mjonot.erota(sb,'|',katuosoite);
postinumero = Mjonot.erota(sb,'|',postinumero);
postiosoite = Mjonot.erota(sb,'|',postiosoite);
kotipuhelin = Mjonot.erota(sb,'|',kotipuhelin);
tyopuhelin = Mjonot.erota(sb,'|',tyopuhelin);
autopuhelin = Mjonot.erota(sb,'|',autopuhelin);
liittymisvuosi = Mjonot.erota(sb,'|',liittymisvuosi);
jmaksu = Mjonot.erota(sb,'|',jmaksu);
maksu = Mjonot.erota(sb,'|',maksu);
lisatietoja = Mjonot.erota(sb,'|',lisatietoja);
}
public static void main(String args[]) {
Jasen aku = new Jasen(), aku2 = new Jasen();
aku.rekisteroi();
aku2.rekisteroi();
aku.tulosta(System.out);
aku.vastaa_aku_ankka();
aku.tulosta(System.out);
aku2.vastaa_aku_ankka();
aku2.tulosta(System.out);
aku2.vastaa_aku_ankka();
aku2.tulosta(System.out);
System.out.println(aku2.toString());
}
}