Programmering i Java versjon 2001-05-18 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.

Slides:



Advertisements
Liknende presentasjoner
Repetisjon innkapsling static tabell av primitiv datatype LC191D Videregående programmering Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring.
Advertisements

Tabeller av objekter Klassen ArrayList
C++ for Java-programmerere
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Litt mer om PRIMTALL.
Datafiler og serialisering Tekstfiler Scanner-klassen Binær overføring av data Direkte tilgang til filinnholdet Serialisering LC191D Videregående programmering.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Høgskolen i Oslo Webprogrammering Grunnleggende PHP.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Uke 10 - Sortering, og hvordan lage en klasse for et klassebibliotek 21 okt. 2003, Arne Maus Inst. for informatikk, UiO.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
1 Java 6 Mer om metoder Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon januar 2005 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Samarbeid mellom objekter
Tabeller – Arrays Lage frekvenstabell Norske Bokstaver
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Java 4 Mer om forgreninger While-løkker Ole Christian Lingjærde
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
IS-102 Klassedefinisjoner
Åsmund Eldhuset asmunde stud.ntnu.no folk.ntnu.no/asmunde/algdat/
Generelt I/O if/else Funksjoner Lists Løkker Dictionaries Annet Listebehandling Klasser Python med noen algdat-anvendelser Åsmund Eldhuset asmunde *at*
En gang til!? .
Filer Finne minste Finne Største Beregne gjennomsnitt Variabler Tabeller – Arrays Lage frekvenstabell.
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 7.9 Bakgrunn for øvelse 2 Bruk av variabler i beregninger Ser på tekststrenger (3.4 Strings.
Gjennomgang av prøven Tidsangivelse. Prøven deles ut Vi fyller ut øvelsen sammen.
INF150 Programmering mandag 11.9
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
Programmering i Java versjon august 2004 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Objektorientert programmering
Repetisjon av JSP Variabler, tabeller, if-setninger, for/while-løkker
Grunnleggende PHP - Ronny Mandal1 Grunnleggende PHP.
Dynamiske nettsider PHP Del 1 – variable. PHP  PHP (Personal Home Page)  Fritt tilgjengelig programmeringsspråk  åpen kildekode  Plattformuavhengig.
Java 3 Mer om uttrykk Terminal I/O Forgreninger
Å lese tall fra en fil, klassen Scanner 1.Et Scanner-objekt kan knyttes til et strømobjekt eller til en streng. 2.Kan skanne teksten etter data av ulike.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
Tabeller Dette er en tabell, eller array. Den kan defineres sånn som dette: public int[] heltallsTabell = new int[11]; //Her er 11 tabellens lengde for.
Jæger: Robuste og sikre systemer INF150 Programmering Kapittel 2: Problemløsning Kapittel 3.1 og 3.2.
Objekt, Instanser og referanser + litt til. Objekter  Instanser  Kan sees på som det samme. Personen Per kan være både et objekt og en instans av klassen.
Main metoden n public static void main(String[] args){ } n Inni denne metoden skjer alt! n Det kan bare finnes en main metode per program. n Den kan ligge.
Programmering i Java versjon september 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
Ekstra mange tips til Oblig 3! 12. mars 2007 Are Magnus Bruaset og Arild Waaler Inst. for informatikk, UiO.
INF1000 (Uke 14) Eksamen V06 Grunnkurs i programmering Institutt for Informatikk Universitet i Oslo Are Magnus Bruaset og Arild Waaler.
Byggeklosser i java  Klassedefinisjon  Variabel deklarasjon  Metodedeklarasjoner  En ordentlig klasse  Spesielle/kryptiske skrivemåter  løkker og.
Programmering i Java versjon desember 2002 Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else.
Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik.
INF1000 (Uke 4) Mer om forgreninger, While-løkker
Inf1000 (Uke 5) Arrayer, filer og tekst
Kapittel 5 Vilkårssetningar og løkker. 5.1 Boolske uttrykk George Boole ( ), britisk matematikar Utvikla teori om logikk ved bruk av symbol i.
Variabler, datatyper og uttrykk
IS-102 Interaksjon med objekter
Begynnerkurs i Python Realfagskonferansen 2019 Henrik H. Løvold
IN3030 – Effektiv parallellprogrammering Uke 1 2. del, våren 2019
Utskrift av presentasjonen:

Programmering i Java versjon Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2 Variabler, datatyper og uttrykk Eksempelside 2-3 Algoritmer og programfeilside 4 Testdataside 5 Setninger, blokker og navnside 6 Om navnside 7 Variablerside 8-9 Datatyper for heltallside Datatyper for desimaltallside 12 Datatyper for logiske verdier og tegnside 13 En datatype for tekster: Stringside 14 Tilordninger og aritmetiske uttrykkside 15 Typeomformingside 16-17

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 2 Eksempel Å pusse opp en leilighet: –Hvor mye maling, hvor mye tapet, hvor mye golvbelegg og hva koster det? Her: Program som beregner arealet til en flate, dvs. vegg eller golv. Flere programeksempler utover i boka, til slutt et, forhåpentligvis, nyttig program med grafisk brukergrensesnitt (figur 15.8). Grunnleggende spørsmål når vi skal løse et programmeringsproblem: –Utdata: Hva forventer vi ut? Hva skal programmet skrive på skjermen, som brukeren kan lese? –Inndata: Hva må brukeren legge inn av data for at programmet skal kunne produsere de gitte utdata? I dette eksemplet: –Utdata: arealet i kvadratmeter –Inndata: lengde og bredde Desverre vanskelig å lese inn data, vi må forenkle her i kapittel 2. /* Kjøring av programmet: Skriv lengde (meter): 5 Skriv høyde (meter): 2.3 Arealet av veggen er 11.5 kvadratmeter */

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 3 Kildekoden ser slik ut class Veggberegninger { public static void main(String[] args) { double lengde = 5.0; double høyde = 2.3; double arealet = lengde * høyde; System.out.println("Arealet av veggen er " + arealet + " kvadratmeter"); } /* Kjøring av programmet: Arealet av veggen er 11.5 kvadratmeter */ inndata legges inn direkte i stedet for å leses inn beregning utdata 5.0 lengde 2.3 høyde 11.5 arealet Tre variabler. En variabel er en lagerplass i maskinens primærminne. Innholdet tolkes i henhold til datatypen, som her er desimaltall (double). Gjør oppgave 2 side 30. OBS: Legg merke til at vi bruker punktum som desimalskille i program. Vi skriver 2.3 og ikke 2,3.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 4 Algoritmer og programfeil En algoritme er et begrenset og ordnet sett med veldefinerte regler (instrukser) for løsning av et problem. Eksempler er bruksanvisninger og kakeoppskrifter. Algoritme for å beregne arealet til en flate: –Les inn lengde og høyde. –Beregn arealet etter en gitt formel. –Skriv ut arealet. Syntaks er regler som vi må sette opp et program etter for at kompilatoren skal skjønne hva vi mener. Logikken i et program sier hvordan vi programmerer algoritmen. Programfeil: –Syntaksfeil: Ord og skilletegn er ikke satt opp i henhold til syntaksreglene. Kompilatoren varsler om syntaksfeil. –Logiske feil: Vi har enten programmert algoritmen feil, eller vi har brukt feil algoritme. Kompilatoren hjelper oss ikke med å finne logiske feil Oppgave: Lag noen syntaksfeil og logiske feil i programmet foran.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 5 Testdata Et testdatasett er en mengde inn- og utdata-verdier der hensikten er å påvise logiske feil i programmet. –skal teste programmets ”yttergrenser” –testdata er sjelden realistiske data –eksempel: et arkivsystem i et bibliotek må fungere både for 0 bøker og for bøker, selv om de aller fleste realistiske data ligger godt innenfor disse grensene –testdata for arealprogrammet: datasett nr. lengde høyde forventet resultat feilmelding Oppgave: Vis hvordan vi kan prøve ut programmet vårt med disse dataene.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 6 class Veggberegninger { public static void main(String[] args) { double lengde = 5.0; double høyde = 2.3; double arealet = lengde * høyde; System.out.println("Arealet av veggen er " + arealet + " kvadratmeter"); } Setninger, blokker og navn En setning er en instruksjon til datamaskinen. Avsluttes med semikolon. En blokk er en eller flere setninger omsluttet av {}. Ordene i et program er enten reserverte ord (se vedlegg B) eller ord som er forklart ved hjelp av deklarasjoner. En deklarasjon introduserer et ord til Java og forteller hva dette er navnet på. Mange deklarasjoner følger med Java. Andre ord deklarerer vi selv. Oppgave: Markér blokker, reserverte ord, deklarasjoner som følger med Java og egne deklarasjoner i følgende program:

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 7 Om navn Syntaks: –Et navn kan bestå av bokstaver og sifre, samt understrekingstegnet _ og $. –Første tegn kan ikke være siffer. –Mellomrom kan ikke benyttes. –Stor og liten bokstav er to forskjellige tegn. –Ingen begrensning på antall tegn i navnet. Eksempler: tall, Tall, antallSmåHøner, student21 Navn bør gi direkte assosiasjon til den virkeligheten som programmet modellerer. For norske forhold: –æ, ø og å kan brukes i navn (gjelder ikke andre vanlige programmeringsspråk). –Men: Bruk ikke æ, ø og å i klassenavn, da vi får laget en fil for hver klasse, og æ, ø og å kodes ikke likt i Windows og MS-DOS.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 8 Variabler En variabel er en lagerplass i maskinens primærminne. En variabel kan inneholde en verdi, f.eks. et tall eller en bokstav. Vanligvis kan innholdet i en variabel endres: double pris = 14.50; pris = 21.70; pris = 29.90; En variabel deklarert inne i en metode kalles en lokal variabel. En lokal variabel må gis verdi før den kan brukes. Vanligvis gir vi variabelen verdi samtidig med at den deklareres. Vi initierer variabelen. Men kan også skrive: double pris; // dette er en deklarasjon uten initiering pris = 14.50; // her gir vi variabelen dens første verdi Definisjonsområdet til en variabel er den delen av et program der deklarasjonen gjelder. Definisjonsområdet til en lokal variabel er resten av den blokken der variabelen er deklarert. Innholdet i en variabel kan være konstant: final double moms = 23.0; final er en modifikator, det vil si et reservert ord som endrer på betydningen av det som kommer etterpå. Her får variabelen moms den egenskapen at den ikke kan forandres.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 9 Variabler, forts. Hvorfor lager vi variabelen moms med konstant innhold i stedet for å skrive tallet 23 der vi trenger det i et program? –Navnet forteller leseren mer enn tallet 23. –Dersom momsen endres, er det nok å forandre verdien ett sted, nemlig der konstanten moms er deklarert. –Tall med mange desimaler blir like overalt. Vi bruker for eksempel ikke 3,14 et sted og 3,14159 et annet sted. moms er nå en navngitt konstant, mens tallet 23 er en anonym konstant. Vi anbefaler følgende når det gjelder navn på variabler: –Liten forbokstav –Understrekingstegn og $ unngås –Hvis navnet består av flere ord, bruk stor forbokstav for hvert ord fra og med det andre ordet, eksempel: alleByeneIBelgia Gjør oppgave 1 og 2 side 38.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 10 Datatyper for heltall En datatype (eller bare “type”) beskriver en samling verdier. Vi begynner med datatyper som beskriver heltall. Anonyme konstanter: 105, -67, 0 Variabler av heltallstyper: int tall = 30; long stortTall = L; Oversikt over heltallstypene: navn antall byte tallområde byte 1 [-128, 127] short 2 [ , ] int 4 [ , ] long 8 [ , ] char 2 [0, ]

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 11 Datatyper for heltall, forts. En heltallskonstant som begynner med sifferet 0 tolkes etter 8- tallsystemet. Dette er en årsak til mange ”uforklarlige feil.” System.out.println(”Utskrift av 056 gir ” + 056); gir følgende utskrift: Utskrift av 056 gir 46 Dersom vi prøver å lagre et for stort tall direkte i i en heltallsvariabel, f.eks. slik: tall = ; får vi kompileringsfeil. Vi får imidlertid ikke feilmelding dersom resultatet fra en heltallsberegning ikke får plass i den heltallsvariabelen der vi prøver å lagre resultatet. Divisjon med 0 gir feilmelding, og programmet stopper.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 12 Datatyper for desimaltall Anonyme konstanter: 1.25, , 6.7e10 (= 6.7  ), 3.256e-5 (=  ) Variabler: double tall1 = 2.35; float tall2 = 2.35f; Vi har to datatyper for desimaltall: –float, 4 byte, tallområde ca ±[10-38, 10+38]. Antall sign. sifre er ca 7. –double, 8 byte, tallområde ca ±[10-308, ]. Ant. sign. sifre er ca 15. I tillegg inneholder tallområdene verdien 0.0. Hva skjer hvis vi kommer utenfor tallområdet ved regning med desimaltall? –Vi får verdien Infinity (uendelig) eller 0 som svar (i motsetning til ved heltall, der svaret blir feil). Divisjon med 0.0 gir verdien Infinity. (I motsetning til ved heltall, der programmet stopper ved divisjon med 0) Verdien til uttrykket 0.0/0.0 er NaN (Not-a-Number). Det har liten hensikt å fortsette beregningene med verdier lik Infinity eller NaN.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 13 Datatyper for logiske verdier og for tegn En datatype for logiske verdier - boolean –En variabel av denne typen kan ha verdien true eller false. boolean ferdigMedAlleVeggene = false; ferdigMedAlleVeggene = true; En datatype for tegn - char Anonyme konstanter omsluttes av apostrofer (bruk apostrofen ved siden av æ’en på det norske tastaturet): ' O ', ' 7 ', ' # ' Variabler: char bokstav = ' A ' ; char siffer = ' 4 ' ; Hvert tegn har sitt eget nummer i datamaskinen. –De fleste programmeringsspråk benytter ASCII-systemet, som bruker en byte pr. tegn. Dette gir maksimalt 256 verdier, men kun verdi er standardisert. Spesielt er ikke æ, ø og å standardisert, de har forskjellige nummer i Windows og MS-DOS. –Java bruker Unicode-nummereringssystem, som bruker to byte pr tegn. Dette gir maksimalt tegn. Tegn nr er sammenfallende med ASCII, æ, ø og å er standardisert. Se vedlegg D. Merk forskjellen mellom en variabel som inneholder tegnet ' 5 ' (datatypen char) og en som inneholder tallet 5 (datatypen int).

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 14 En datatype for tekster: String Anonyme konstanter av denne datatypen omsluttes av anførselstegn: " Dette er en tekst " " A " "" Eksempler: String by = " Trondheim " ; String tekst = " Dette er fire ord. " ; int antall = 17; System.out.println( " Vi har " + antall + " grupper " ); String byer = by + " Bergen " ; System.out.println(byer); Oppgave 1: Hva skrives ut på skjermen når kodebiten foran legges inn i et program og kjøres? Oppgave 2: Gjør oppgave 3 side 44. Vi kaller variabler av typen String for ”tekststrenger”, eller bare ”strenger”. Merk! Enkle apostrofer for tegn, anførselstegn for strenger.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 15 Tilordninger og aritmetiske uttrykk De fire regningsartene + - * / –Multiplikasjon og divisjon har prioritet over addisjon og subtraksjon. –Dersom vi i et sammensatt uttrykk har flere operasjoner med samme prioritet, tolkes disse fra venstre mot høyre. –Prioriteten kan overstyres med parenteser: * 2 = 22 (5 + 7) * 5 = / 3.0 *4.0 = / (3.0 * 4.0) = 0.5 –Divisjon mellom heltall gir ingen rest (heltallsdivisjon): 5 / 2 = 2-5 / 2 = -21 / 3 = 0-1 / -3 = 0 Modulusoperatoren % gir resten fra en divisjon 3 % 4 = % 2 = % 3 = % -2.2 = -1.1 Tegnet = i programkode betyr tilordning. Høyre side regnes ut, og resultatet legges i variabelen på venstre side. int tall = 4; tall = tall + 8; // etter denne setningen er innholdet i variabelen tall lik 12 Gjør oppgave 1 og 3 side 47.

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 16 Typeomforming Dersom operandene i et uttrykk er av forskjellig datatype, vil operanden som tilhører den minste datatypen av de to, omformes til den datatypen som den andre operanden tilhører. En datatype er mindre enn en annen datatyper dersom tallområdet til typen er mindre. Følgende rekkefølge gjelder for talltypene (fra størst til minst): double, float, long, int, short, byte. Eksempel: double sum = ; int antall = 14; double gjennomsnitt = sum / antall; // beregner /14.0 = Av og til trenger vi å styre typeomformingen. Spesielt dersom uttrykket er en heltallsdivisjon. Eksempel: int antallUnger = 5; int antallEpler = 23; double antEplerPrUnge = (double) antallEpler / (double) antallUnger; // svar 4.6 Spørsmål: Hva blir resultatet uten casting? Styrt typeomforming kalles ”casting”. Merk at innholdet i en variabel ikke forandres ved casting. Verdien hentes ut og omformes deretter, men før beregningen. ”casting”

Kun til bruk i tilknytning til læreboka ”Programmering i Java” skrevet av Else Lervik og Vegard B. Havdal, Stiftelsen TISIP og Gyldendal Akademisk ISBN Kapittel 2, side 17 Omforming fra desimaltall til heltall Skjer ved avkutting, ikke avrunding. Eksempler: int a = (int) 1.7; // a blir lik 1 int b = (int) ( ); // b blir lik 3 int c = (int) (int) 1.7; // c blir lik 2 Vi får til avrunding ved å legge 0,5 til den opprinnelige verdien: int a = (int)( ); // a blir 2, ikke 1 som i eksemplet over Gjør oppgavene 1 og 3 side 50.