Ukeoppgaver 11: 31. okt - 6. nov (INF1000 - H?st 2013)

_亚博娱乐官网_亚博pt手机客户端登录

[N?kkeloppg.]: Oppgave merket med n?kkelsymbol er plukket ut som spesielt representativ for de viktigste temaene fra ukens forelesning, og alle b?r ha som minimumsm?l ? l?se denne selvstendig.

Oppgave 1

Legg inn i et hashmap:

Du har klassen Dyr (se under). Lag en klasse DyreMap, som inneholder en main-metode. Her skal du deklarere et HashMap. Opprett minst tre objekter av klassen Dyr, finn p? navn og idnr. Husk at idnr b?r v?re unike! Legg disse inn i hashmappet med idnr som n?kkel.

class Dyr {
  String navn;
  String idnr;

  Dyr(String navn, String idnr) {
        this.navn = navn;
    this.idnr = idnr;      
  }

  String getIDnr() {
         return idnr;
  }
}

[N?kkeloppg.]: Oppgave 2

Uke 3: Array med tall

a) Lag et program med en for-l?kke som ber bruker taste inn fem heltall og lagrer disse i en array kalt tall:

int[] tall = new int[5];

b) Sum av array: Utvid programmet slik at det regner ut summen av tallene ved hjelp av en l?kke, og skriver ut resultatet.

c) Minste verdi: Utvid programmet slik at det finner og skriver ut det minste tallet i arrayen.

d) Lave verdier: Legg til programkode som skriver ut alle verdiene i arrayen som er mindre enn 10.

e) S?k: Legg til programkode som skriver ut en beskjed om verdien 5 finnes eller ikke finnes i arrayen.

Oppgave 3

Metoder (10 poeng) oppgave 5 fra eksamen h09

a) Nedenfor er det deklarert en metode sum(int[] array), som skal beregne summen av tallene i en int-array. Vil metoden kompilere? Hvis nei, forklar hva som m? endres for at metoden skal kompilere.

public void sum ( int[] array ) {
   int sum = 0;
   for (int i=0; i < array.length: i++) {
       sum += array { i };
   }
   return sum;
}

b) Deklararer en metode snitt(int[] array), som skal beregne gjennomsnittet av tallene i parameteren array av type int-array. Snittet skal beregnes med flyttallsdivisjon og returverdien skal v?re av type double. Du skal skrive hele metoden, inkludert signaturen.

c) Vi kan beregne en gjenstands snitthastighet ved ? dividere tilbakelangt distanse p? tid. Deklararer en metode som tar to double-parametre distanse og tid, og som returnerer hastigheten som en double-verdi. Hvis verdien til tid er 0, skal metoden returnere -1. Du skal skrive hele metoden, inkludert signaturen. Finn p? et passende metodenavn.

d) I sj?- og luftfart oppgis ofte hastigheter i knop. ?n knop er definert som én nautisk mil pr. time, som tilsvarer 1852 meter pr. time. Deklarer en metode som tar en double-parameter knop og returnerer den tilsvarende hastigheten i km/t som en double-verdi. Du skal skrive hele metoden, inkludert signaturen. Finn p? et passende metodenavn.

Oppgave 4

Klasser og objekter, Oppgave 11 eksamen h05 (25 poeng)

I programmet nedenfor skal du lage en konstrukt?r til klassen Pyramide som har pyramidens bredde, lengde og h?yde som tre double-parametreparameter. Du skal ogs? lage en objektmetode i klassen Pyramide som regner ut volumet og returnerer denne verdien (du skal bruke formelen: volum = 0.333*h?yde*bredde*lengde).

Du skal ogs? skrive programkode i main som oppretter to pyramider, en med langde =30.1,bredde=30.1 og h?yde = 22.9 og en med samme grunnflate, men med dobbelt s? stor h?yde som den f?rste pyramiden.

Fra main skal du s? kalle p? volumberegningsmetoden i hvert av de to objektene og skrive ut en linje for hver pyramide med h?yde, lengde og bredde samt volumet.

class PyramideTest {

  public static void main ( String [] args) {
    // skriv kode her som lager to Pyramide-objekter og
    // skriver ut deres h?yde, lengde og volum

  } // end main
} // end class PyramideTest

class Pyramide {
  double h?yde, lengde, bredde;
  // skriv konstrukt?r her

  // skriv objektmetode her som beregner og returnerer volumet

} // end class Pyramide

Hvis du har tilbakemelding til dette oppgavesettet kan du sende mail til ingridgg [a] ifi.uio.no

Publisert 30. okt. 2013 22:22 - Sist endret 21. nov. 2013 09:34