Ukeoppgaver 6: 26.9 - 2.10 (INF1000 - H?st 2013)

M?l: Trening i bruk av klasser, objekter og pekere. Bruk av lokale metoder og objektvariable.

 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.

Ekstraoppgaver med repetisjon ligger her.

 

Oppgave 1 - Returverdier

Fyll ut returverdiene for f?lgende programmer

a) 

[returVerdi] jegReturnererIngenting(){ }

b)

[returVerdi] summenAvToHeltall(){
   int a = 2; 
   int b = 3; 
   return a + b; 
}

c) 

[returVerdi] summenAvToDobule(){ 
   double a = 2.0; 
   double b = 3.0; 
   return a + b;
}

d)

[returVerdi] navnetTilBrukeren(){
   In tastatur = new In(); 
   String navn = in.inLine();
   return navn;
}

 

Oppgave 2 - String-metoder

a) Lag et program som skriver ut teksten "Agnes i senga" baklengs. Hint: Bruk en for-l?kke som teller nedover

b) Modifiser programmet over slik at det f?rst gj?r om teksten til kun ? inneholde sm? bokstaver.

 Oppgave 3 - String

Oppgaven er hentet fra Eksamen 2010. Denne kan v?re litt vanskelig, men pr?v!

a) Lag en metode som skal hete forekommer som sjekker forekomster av tegn i en tekst. Metoden skal returnere true hvis tegnet t forekommer i String-variabelen tekst, og som returnerer false ellers. Metoden du skal lage skal derfor returnere en boolean og ta inn to parametere: en character og en String.

boolean forekommer(char c, String tekst){


}

(Hint: Det kan v?re nyttig ? bruke String-metodene public char charAt(int index) og public int length())

b) Lag deretter en metode som skal hete "utenRepetisjon" og som tar i mot en String og som fjerner alle repetisjoner av tegn i String-variabelen. For eksempel skal utenRepetisjon("aababbabbac") returnere "abc".

utenRepetisjon(String tekst){


}

(Hint: Bruk metoden i oppgave a.)

c) Lag en metode som heter "antallForskjellige" og som returnere antall forskjellige tegn som forekommer i en String-variabel. For eksempel skal metoden returnere 3 hvis den kalles med String-verdien "aababbabbac". 

antallForskjellige(String tekst){


}

(Hint: Bruk metoden i oppgave b.)

 

Oppgave 4 - Kopier array i en metode

a) Skriv en egen metode hvor du lager en kopi av et array best?ende av tekststrenger. Metoden sin skal ta inn et array og kopiere alle elementene over i et nytt array. Her er det ikke lov ? bruke ferdige metoder!

Forslag til array: String[] navn = {"Ole", "Dole", "Doffen", "Donald", "Dolly", "Langbein", "Pluto"};

String[] arrayKopiering(String[] original){

}

b) Skriv deretter ut alle elementene i begge arrayene for ? sjekke at de faktisk er like, og skriv resultatet til skjerm.

c) Lag deretter en metode som tar inn to arrayer og sjekker at alle elementene er like.

void sammenliknArray(String[] array1, String[] array2){

}

d) Pr?v n? ? kopiere arrayen din med metoden System.arraycopy(). Er resultatet det samme?

 

Oppgave 5 - Tekst-behandling

a) Lag et program som oversetter fra tallsiffer til tekst slik at f.eks. 3 blir oversatt til "tre". Programmet skal kunne oversette alle 10 sifre (fra 0 til 9). Hint: Bruk en array med tekstene "null", "en", "to", osv.

b) Lag et program som oversetter fra tekst til tall. Programmet skal be brukeren skrive inn et tall mellom null og ni (med bokstaver), og skrive ut tilsvarende siffer. Hint: Bruk arrayen fra del (a).

Publisert 29. sep. 2013 13:39 - Sist endret 4. okt. 2013 11:03