OOPJ dag 1

Hvis du læser dette fra papir, så log ind på din konto og åbn hjemmesiden for dit hold og find denne tekst (opgaver for dag 1). Nu kan du hente eksemplerne i stedet for at taste dem ind.

Installation af udviklingsværktøjet BlueJ

BlueJ hentes fra: http://www.bluej.org/download/download.html

BlueJ kræver Java (JDK), som kan hentes herfra: JDK download

Du behøver sandsynligvis kun hente det herfra hvis du bruger Windows; Mac har allerede Java installeret og med Ubuntu/Linux skal det installeres fra pakkesystemet.

Efter installationen kan du ændre brugergrænsefladen til at køre på dansk ved at åbne filen <bluej_dir>/lib/bluej.defs og rette til bluej.language=danish

Øvelser

1) Opret et nyt projekt i BlueJ, kald det for eksempel 'dag1'.

2) Opret en ny klasse i BlueJ (klassenavnet er ligegyldigt).

Kopiér et Java-eksempel ind:

public class HejVerden
{
        public static void main (String[] arg)
        {
                System.out.println("Hej Verden!");
                System.out.println("Hvornår smager en Tuborg bedst?");
                System.out.println("Hvergang!");
        }
}

3) Oversæt klassen og luk den. Den har nu skiftet navn til HejVerden

4) Højreklik på HejVerden og vælg 'void main(...' og tryk OK

5) Ret i teksten så den gengiver dit yndlings-ordsprog

Prøv derefter Cylinderberegning og Skatteberegning.

Prøv at forstå hvad der sker. Kig eventuelt i de relevante afsnit i bogen.

2.2.8 Opgaver

  1. Skriv et program, som ud fra længde og bredde på et rektangel udskriver dets areal.

  2. Skriv et program, som for ligningen y=3*x*x+6*x+9 udskriver værdien af y for x=7.

  3. Skriv et program, som omregner et beløb fra dollar til euro (f.eks. kurs 95).

  4. Skriv et program, som udskriver tre tilfældige tal (lavet med Math.random()), deres sum og gennemsnittet.

  5. Hvad skriver følgende program ud? Hvis du kan regne det ud, uden at køre programmet, har du forstået idéen i tildelinger.

public class Tildelinger
{
  public static void main(String[] arg)
  {
    int a, b, c, d;
    a = 5;
    b = 6;
    c = 7;
    d = 8;
    System.out.println("a er "+a+", b er "+b+", c er "+c+", d er "+d);
    a = b + d;
    d = c + a;
    System.out.println("a er "+a+", b er "+b+", c er "+c+", d er "+d);
    b = a;
    d = c;
    System.out.println("a er "+a+", b er "+b+", c er "+c+", d er "+d);
  }
}

Betingelser

Prøv nu Alder og Alder2 og løs:

2.3.3 Opgaver

  1. Skriv Alder2 om til at indeholde flere aldersgrænser.

  2. Lav et veksleprogram fra dollar til euro. Det skal påregne en kommission på 2 %, dog mindst 0,5 euro.

  3. Skriv et program, der beregner porto for et brev. Inddata er brevets vægt (i gram). Uddata er prisen for at sende det som A-post i Danmark.

  4. Skriv et program, som finder det største og det mindste af tre tal.

Afprøv programmerne med forskellige værdier, enten ved at bruge Math.random() - der giver et tilfældigt tal mellem 0,0 og 0,9999 - eller indlæse værdierne fra tastaturet (se herunder).

Indlæsning fra tastaturet

Afprøv AlderMedTastaturindlaesning

Ændr dine programmer så brugeren indtaster værdierne og afprøv, at programmerne virker.

Kig derefter på resten af eksemplerne fra lærebogen kapitel 2.

For de erfarne

Kig på (og afprøv) de avancerede emner i afsnit 2.12 i bogen.

Til næste gang

Lav de øvelser færdige, som du ikke nåede i undervisningen.

Tag en papir-udskrift af portoprogrammet (opg. 2.3.3 punkt 3) med, hvor brugeren indtaster brevets vægt via tastaturet.