Oblig 1 - obligatorisk oppgave nr. 1 i INF1000 høsten 2012.

Leveringsfrist: Fredag 7. september kl. 16.00 i Joly-systemet (åpner for levering i løpet av onsdag 5. september).

Denne oppgaven består av to deler (program), A og B, som begge må løses for å få oppgaven godkjent. Oppgaven skal løses og leveres individuelt. Løsningen trenger ikke være "perfekt", men du må ha gjort et grundig og selvstendig forsøk. Det som skal leveres i Joly er to filer - en med det ferdige programmet fra oppgave A (både A.1 og A.2) og en med det ferdige programmet fra oppgave B (både B.1 og B.2). Bruk Javas muligheter for kommentarer øverst i filene for å gi eventuelle ekstrabeskjeder til gruppelærer.

Les også generell informasjon om obliger i INF1000 (viktig!), inkludert informasjon om Joly.

Målet med obligen er å vise at du behersker grunnleggende programmering med variable, forgreninger (if-else) og innlesning fra terminal, slik at du er klar for å fortsette med å lære blant annet metoder uken etter fristen.

Oppgave A

Oppgave A.1

Denne oppgaven forutsetter at du kan:


''Alle'' sier at det har vært dårlig sommervær i år. Stemmer egentlig det? I denne oppgaven skal du bruke Java til å regne på noen værdata fra
Meteorologisk Institutt (met.no).

Det viser seg at for Blindern 2012 var det:

Du skal lage et Java-program hvor du i noen variable skriver inn opplysningene ovenfor og som så beregner i andre variable og skriver
ut på skjermen følgende tre opplysninger (med passende tekster foran tallene):

Du skal lage et Java-program, kompilere det og kjøre det, samt forsikre deg om at det regner riktig (ved å beregne de samme tallene for hånd).

Oppgave A.2

Denne oppgaven forutsetter at du kan:

i tillegg til elementene nevnt under oppgave A.1.

Deklarér tre variabler til. Programmet skal regne ut gjennomsnittsnedbør per regndag for hver av månedene (mai, juni, juli) og lagre det i de tre nye variablene. Utvid programmet slik at det finner og skriver ut den høyeste av disse tre gjennomsnittene. Ta med både gjennomsnittsverdien og månedsnavnet i utskriften. Med andre ord skal du finne måneden som hadde de våteste regndagene i sommer.

Sjekk at programmet finner den høyeste av tre verdier riktig ved å teste også med andre nedbørsverdier enn de som er oppgitt i oppgaveteksten. I leveringen skal imidlertid verdiene fra oppgaveteksten brukes.

 

Oppgave B

Oppgave B.1

Denne oppgaven krever i tillegg til det som er angitt under oppgave A at du kan:

Du skal nå skrive et Java-program som beregner ukelønn for en gitt ansatt. Programmet skal lese inn den ansattes navn, timelønn (i hele kroner) og antall timer jobbet forrige uke. Ved arbeid utover 40 timer per uke skal det betales et overtidstillegg på 50% av ordinær timelønn.

Etter å ha beregnet lønnen, skal programmet skrive ut en "lønnsslipp" hvor det fremgår hvilken ansatt dette gjelder, totallønnen for forrige uke og hvordan denne fordeler seg mellom ordinær lønn og overtidsbetaling.
 

Oppgave B.2

Vi anbefaler at du bruker en eller flere enkle løkker for å løse denne oppgaven, men det er også mulig å løse oppgaven uten løkker.

Utvid programmet slik at det beregner lønn for de siste fire ukene i stedet for bare forrige uke. Programmet skal lese inn hvor mye som er jobbet hver av de fire siste ukene separat, og beregne lønn for hver uke som beskrevet under oppgave B.1. I tillegg skal totallønn for alle fire ukene skrives ut.