Avatar billede javanoobuser Nybegynder
08. januar 2007 - 04:11 Der er 1 kommentar

arrays mm.

Hejsa, Jeg har fået nedenstående opgave som jeg gerne skulle løse. Men jeg skal have lidt hjælp med på vejen.

Beskrivelse:
Opgaven går på at udarbejde et konferencesystem som kan håndtere flere konferencer.
Deltagerne kommer enten fra firmaer eller deltager på privat basis. De deltagere, der er foredragsholdere, skal ikke betale for deltagelse i selve konferencen, men selvfølgelig for overnatning og øvrige arrangementer.

Deltagerne medbringer ofte en ledsager, og for at disse ikke skal kede sig, arrangeres der særlige udflugter (kun) for ledsagerne.

Foreningen laver aftaler om indkvartering på hoteller i nærheden af konferencestedet, typisk et luksushotel, et mellemklassehotel og et billigt hotel. Det er ikke alle deltagerne, der bor på hotel, da enkelte arrangerer indkvarteringen selv.

En deltager skal selv sørge for at sende den samlede betaling til foreningen. Han/hun skal således selv regne ud, hvor meget tilmeldingen løber op i. Foreningen registrerer betalingerne, efterhånden som de indløber.


Efterhånden som tilmeldingerne ankommer, skal disse registreres. Hvis en deltager har angivet firma, skal der kunne vises en liste over de registrerede firmaer, som der så kan vælges fra. Hvis firmaet ikke allerede findes, skal der være mulighed for at registrere det. Ligeledes skal de mulige hoteller kunne vises i en liste (det kan i opgaveløsningen antages, at der altid er plads på et hotel). Tilmelding af ledsager til udflugt foretages på samme måde.
Når vi modtager betalinger, er det enten i form af checks eller en liste fra vores bank. På begge måder får vi fat i deltagerens navn og det beløb, der er indbetalt. I det nye system skal vi så have mulighed for at finde den enkelte deltager frem via navn, så vi kan indtaste et nyt eller opdateret beløb og en dato for, hvornår det er sket. Banken har tilbudt, at vi kan få oplysningerne pr. mail, så vi kunne indlæse dem direkte, men vi har fravalgt denne mulighed.

Forudsætninger:
• En deltager behøver ikke være tilknyttet et firma, men er det ofte.
• En deltager kan have en ledsager med, men behøver det ikke.
• Udflugter er forbeholdt ledsagere.
• En deltager kan reservere et hotelværelse, men behøver det ikke.
• En deltager med ledsager får automatisk dobbeltværelse (forudsat han har booket et hotelværelse).
• En deltager med hotelreservation bliver automatisk booket for en periode svarende til tilmeldingen
(én overnatning mindre end antal dage herpå).
• Deltagerne hæfter for tilmelding, så der skal ikke være mulighed for at annullere eller ændre
en tilmelding.
• Den samlede pris for en deltager er summen af konferenceafgiften, hotelreservationen og
priserne for de reserverede udflugter.
Spørgsmål 1
•    Jeg starter med at oprette en new Controller ved navn ”controll1”
•    Fra controll1 kan jeg så oprette en person og en konference.
•    Næst skulle jeg gerne kunne oprette en deltager hvor jeg skal kunne referere til den netop oprettede person og konference.
o    Det er mig ikke muligt. Jeg kan ikke finde den person/ konference som jeg forsøger at referere til. Hvordan laver jeg den reference?

Spørgsmål 2
•    Når jeg har oprettet en eller flere personer ville jeg gerne kunne udskrive en liste over de personer som er oprettet.
o    Det er mig heller ikke muligt. Det er sikkert fordi jeg refererer til et array som indeholder endnu et array.

Spørgsmål 3
o    Hvordan opretter jeg en udskrift hvor jeg tager fat i class’en Deltager, og hvordan får jeg så returneret person data.

Det kunne være super hvis nogen kunne hjælpe mig lidt på vej..

------------------------------------------
kode
------------------------------------------



Controller.java
------------------------------------------
import java.util.*;
public class Controller
{
    public ArrayList konferencer;
    public ArrayList personer;
    public ArrayList deltagere;
   


    public Controller()
    {
        konferencer = new ArrayList();
        personer = new ArrayList();
        deltagere = new ArrayList();
       
    }
 
    public Konference opretKonference(String konferenceNavn,String konferenceAdresse,
                                String konferenceStartTidspunkt,String konferenceSlutTidspunkt)

    {
        Konference konference = new Konference(konferenceNavn,konferenceAdresse,konferenceStartTidspunkt,konferenceSlutTidspunkt);
        konferencer.add(konference);
        return konference;
    }
   
    public Person opretPerson(String personNavn,String personAdresse,String personTelefonnummer,String personId)
    {
        Person person = new Person(personNavn, personAdresse, personTelefonnummer, personId);
        personer.add(person);
        return person;
    }
   
        public void opretDeltager(String deltagerAnkomstDato,String deltagerAfrejseDato,
                    boolean deltagerForedragsholder,float deltagerBetalerBeloeb,String deltagerBetaltDato,
                    Person person, Konference konference)
    {
        konference.opretDeltager(deltagerAnkomstDato, deltagerAfrejseDato,
                    deltagerForedragsholder, deltagerBetalerBeloeb, deltagerBetaltDato, person);
    }

public void showPersoner()
    {
        String temp;
        Iterator iter = personer.iterator(); // create an
        // iterator object
        while (iter.hasNext()) // and keep going so long as
            // there are more elements in the list
                {
                    temp = (String)iter.next(); // get & convert
                        // current element
                    System.out.println(temp); // print it!
                } // end while loop
    }
}


Deltager.java
----------------------------------------

public class Deltager
{
    public String deltagerAnkomstDato;
    public String deltagerAfrejseDato;
    public boolean deltagerForedragsholder;
    public float deltagerBetalerBeloeb;
    public String deltagerBetaltDato;
    public Person person;
   
    public Deltager(String deltagerAnkomstDato,String deltagerAfrejseDato,
                    boolean deltagerForedragsholder,float deltagerBetalerBeloeb,String deltagerBetaltDato,Person person)
    {
        this.deltagerAnkomstDato = deltagerAnkomstDato;
        this.deltagerAfrejseDato =  deltagerAfrejseDato;
        this.deltagerForedragsholder = deltagerForedragsholder;
        this.deltagerBetalerBeloeb = deltagerBetalerBeloeb;
        this.deltagerBetaltDato = deltagerBetaltDato;
        this.person = person;
       
        // this. kommando refererer til "class Deltager"
       
         
    }

}


Konference.java
-------------------------------------------
import java.util.*;

public class Konference
{
    // instance variables - replace the example below with your own
    public String konferenceNavn;
    public String konferenceAdresse;
    public String konferenceStartTidspunkt;
    public String konferenceSlutTidspunkt;


    public ArrayList deltagere;
   
 
    public Konference(String konferenceNavn,String konferenceAdresse,String konferenceStartTidspunkt,String konferenceSlutTidspunkt)
    {
       
        deltagere = new ArrayList();
        this.konferenceNavn = konferenceNavn;
        this.konferenceAdresse =  konferenceAdresse;
        this.konferenceStartTidspunkt = konferenceStartTidspunkt;
        this.konferenceSlutTidspunkt = konferenceSlutTidspunkt;
       
        // this. kommando refererer til "class Konference"
       
         
    }
 
    public void opretDeltager(String deltagerAnkomstDato,String deltagerAfrejseDato,
                    boolean deltagerForedragsholder,float deltagerBetalerBeloeb,String deltagerBetaltDato,Person person)
        {
            Deltager deltager = new Deltager(deltagerAnkomstDato, deltagerAfrejseDato,
                            deltagerForedragsholder, deltagerBetalerBeloeb, deltagerBetaltDato, person);
            deltagere.add(deltager);
               
        }
}



Person.java
---------------------------------
public class Person
{
    private String personNavn;
    private String personAdresse;
    private String personTelefonnummer;
    private String personId;
   
    /**
    * Constructor for objects of class Person
    */
   
   
   
    public Person(String personNavn,String personAdresse,String personTelefonnummer,String personId)
    {
        this.personNavn = personNavn;
      this.personAdresse =  personAdresse;
      this.personTelefonnummer = personTelefonnummer;
      this.personId = personId;
       
      // this. kommando refererer til "class Person"
    }
     
}
Avatar billede winners79 Nybegynder
10. januar 2007 - 15:34 #1
Syntes du skulle spørge dine lærere, det er derfor du har dem ;) og de kan jo nok finde ud af det derude i Viby
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester