Innhold Innledning 1. 5 Løkke som kontrollstruktur 131 5-1 Et program med løkke som kontrollstruktur 132. vii



Like dokumenter
Innhold. 3.7 Å lese data fra brukeren Klassen String Å formatere utskrift av desimaltall... 80

Innhold Forst a program

Innhold Forstå program iii

Innhold. Forord Det første programmet Variabler, tilordninger og uttrykk Innlesing og utskrift...49

Oversikt. Introduksjon Kildekode Kompilering Hello world Hello world med argumenter. 1 C programmering. 2 Funksjoner. 3 Datatyper. 4 Pekere og arrays

TDT4105 Informasjonsteknologi, grunnkurs. Introduksjon til programmering i Matlab

1. Grunnleggende C Introduksjon til kurset og til C++ Innhold

TDT4105 Informasjonsteknologi, grunnkurs

Programmering i C++ Løsningsforslag Eksamen høsten 2005

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Innhold uke 4. INF 1000 høsten 2011 Uke 4: 13. september. Deklarasjon av peker og opprettelse av arrayobjektet. Representasjon av array i Java

Python: Løkker. TDT4110 IT Grunnkurs Professor Guttorm Sindre

HØYSKOLEN I OSLO, AVDELING FOR INGENIØRUTDANNING

INF1000 undervisningen INF 1000 høsten 2011 Uke september

INF 1000 høsten 2011 Uke september

Velkommen til. INF våren 2016

Plan for dagen. Vprg 4. Dagens tema - filbehandling! Strømmer. Klassen FilLeser.java. Tekstfiler

Repitisjonskurs. Arv, Subklasser og Grensesnitt

Praktisk informasjon. I dag. Repetisjon: While-løkker. INF1000 (Uke 5) Mer om løkker, arrayer og metoder

HØGSKOLEN I SØR-TRØNDELAG

Innhold. Innledning 1

UNIVERSITETET I OSLO

Del 1 En oversikt over C-programmering

Velkommen til. INF våren 2017

2. Pekere og referanser.

INNHOLDSFORTEGNELSE. 1. HOVEDEMNER... 1-i 1. INNHOLDSFORTEGNELSE... 1-i 1. Datamaskiner og programmeringsspråk...1-1

INF1000 (Uke 5) Mer om løkker, arrayer og metoder

Leksjon 3. Kontrollstrukturer

INF1000 Uke 4. Innlesning fra terminal. Uttrykk og presedens. Oversikt

IN1010 Objektorientert programmering Våren 2019

Praktisk informasjon. Repetisjon: While-løkker. I dag. INF1000 (Uke 5) Mer om løkker, arrayer og metoder. Oblig 2 er lagt ut

1 OM PLS-ER Historikk Utviklingen de senere år Kort om oppbygning Inn- og Utganger... 11

HØGSKOLEN I SØR-TRØNDELAG

Konstruktører. Bruk av konstruktører når vi opererer med "enkle" klasser er ganske ukomplisert. Når vi skriver. skjer følgende:

AlgDat 10. Forelesning 2. Gunnar Misund

MAKE MAKE Arkitekter AS Maridalsveien Oslo Tlf Org.nr

AlgDat 12. Forelesning 2. Gunnar Misund

Velkommen til. IN1010 Objektorientert programmering Våren 2018

Python: Variable og beregninger, innlesing fra tastatur utskrift til skjerm. TDT4110 IT Grunnkurs Professor Guttorm Sindre

TDT Prosedyre- og objektorientert programmering

Python: Variable og beregninger, input og utskrift. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Debugging. Tore Berg Hansen, TISIP

UNIVERSITETET I OSLO

Algoritmer og datastrukturer E Løkker i Java

Innhold. IN1000 Høst Hva skal evalueres? Fra kurssidene. Uke 12: Pensumgjennomgang og eksamenstips

UKEOPPGAVER. for. Objekt-orientert programmering. Våren 2015

Hvordan angripe en større oppgave? (og hva skal jeg gjøre i oblig 7!?)

Oblig4 - forklaringer. Arne og Ole Christian

UNIVERSITETET I OSLO

Grunnleggende C++ Introduksjon til kurset og til C++

Kontinuasjonseksamen

Operasjoner på lenkede lister (enkeltlenket) Eksempel på en lenket liste: personliste. INF januar 2010 (uke 3) 2

INF1000 EKSTRATILBUD. Stoff fra uke 1-5 (6) 3. oktober 2012 Siri Moe Jensen

UNIVERSITETET I OSLO

Del 4 Noen spesielle C-elementer

Notat 2, ST Sammensatte uttrykk. 27. januar 2006

Nybegynnerkurs i C. Øyvind Grønnesby. 14. oktober Introduksjon Typer Operatorer Kontrollstrukturer Pekere Makroer Lenker

TDT4105 Informasjonsteknologi, grunnkurs (ITGK)

2 Om statiske variable/konstanter og statiske metoder.

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL

løsningsforslag-uke5.txt

UNIVERSITETET I OSLO

Excited. Hvordan komme i gang med tekstbasert programmering? Centre for Excellent IT Education. Guttorm Sindre

2 Klasser og objekter

HØGSKOLEN I SØR-TRØNDELAG

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Repetisjon INF 1000 våren 2006

INF våren 2017

Objektorientert programmering i Python

Beskrivelse av programmeringsspråket Simpila INF Kompilatorteknikk Våren 2012

Repetisjon: operatorene ++ og -- Java 5. Nøtt. Oppgave 1 (fra forrige gang) 0 udefinert udefinert. Alternativ 1 Prefiks-operator

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

Introduksjon til objektorientert programmering

Velkommen til INF1010

HØGSKOLEN I SØR-TRØNDELAG

Læringsmål og pensum. if (be): else (not_to_be):

INNFØRING I PRINSIPPER FOR OBJEKTORIENTERT PROGRAMMERING EMILIE HALLGREN OG KRISTIN BRÆNDEN

Lenkelister. Lister og køer.

i=0 i=1 Repetisjon: nesting av løkker INF1000 : Forelesning 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker j=0 j=1 j=2 j=3 j=4

Java-kurs. Andreas Knudsen Nils Grimsmo 9th October 2003

INF1000 : Forelesning 4

Beskrivelse av programmeringsspråket Compila15 INF Kompilatorteknikk Våren 2015

TDT4110 Informasjonsteknologi grunnkurs: Tema: Betingelser og logiske uttrykk. - 3rd edition: Kapittel 3. Professor Alf Inge Wang

Eksempel: Body Mass Index (BMI) Forelesning inf Java 3. Ferdig program (første del) Ferdig program (siste del)

Pekere og referanser.

NB: Vi trenger alle sitteplassene, så ikke la setene stå tomme i mellom dere! Fyll opp forfra, fra midten, er dere snill

Dagens tema Kapittel 8: Objekter og klasser

Øvingsforelesning TDT4105 Matlab

Forkurs i informatikk Python. Andreas Færøvig Olsen

Python: Intro til funksjoner. TDT4110 IT Grunnkurs Professor Guttorm Sindre

Eksamen. Objektorientert Programmering IGR 1372

Kontinuasjonseksamensoppgave i IMT1082 Objekt-orientert programmering

Hittil har programmene kommunisert med omverden via tastatur og skjerm Ønskelig at data kan leve fra en kjøring til neste

i=0 Repetisjon: arrayer Forelesning inf Java 4 Repetisjon: nesting av løkker Repetisjon: nesting av løkker 0*0 0*2 0*3 0*1 0*4

Forelesning inf Java 4

Tirsdag 21/11. Onsdag 24/11. Tirsdag 12/12. TDT4110 Informasjonsteknologi grunnkurs: Tema: Et større case

Innhold. Hva skal evalueres? Fra kurssidene. Kapittel 1: Introduction

Notat 2, ST januar 2005

Versjon (vil bli endret).

Kapittel 1 En oversikt over C-språket

Transkript:

Innledning 1 1 Datamaskiner og programmer 5 1-1 Datamaskiner, programmer og programmering 6 1-2 Fra kildekode til kjørbart program 12 1-3 Elementene i et C++-program 15 1-4 Livsløpet til programmer 24 1-5 Algoritmer og kontrollstrukturer 26 Repetisjonsoppgaver 30 Programmeringsoppgaver 30 2 Program med sekvensiell struktur 33 2-1 Et program med sekvensiell struktur 34 2-2 Ord og setninger 35 2-3 Data 40 2-4 Kommentarer og programmeringsstandard 50 2-5 Tilordning og aritmetiske uttrykk 51 2-6 Å bruke interne variabler 55 2-7 Hva skjer ved innlesing og utskrift? 57 Repetisjonsoppgaver 61 Programmeringsoppgaver 62 3 Valg som kontrollstruktur 65 3-1 Et program med valg som kontrollstruktur 66 3-2 Blokker og rekkevidden til navn 70 3-3 if-setningen 74 3-4 Logiske uttrykk 79 3-5 Flervalgsetninger 84 3-6 Å programmere beslutningstabeller 88 Repetisjonsoppgaver 90 Programmeringsoppgaver 91 4 Funksjoner med returverdi og inn-argumenter 95 4-1 Å bruke funksjoner et eksempel 96 4-2 Å lage funksjoner 100 4-3 Flere funksjoner 106 4-4 Byggeklossprinsippet 119 4-5 Et gløtt bak kulissene 122 Repetisjonsoppgaver 126 Programmeringsoppgaver 127 5 Løkke som kontrollstruktur 131 5-1 Et program med løkke som kontrollstruktur 132 vii

Innledning 5-2 Data leses inn og behandles i løkke 137 5-3 Å huske en dataverdi fra et løkkegjennomløp til neste 141 5-4 Tellerkontrollerte løkker 143 5-5 Nøstede kontrollstrukturer 149 5-6 Kontroll av inndata 151 5-7 Testing og feilsøking 153 Repetisjonsoppgaver 159 Programmeringsoppgaver 161 6 Tekststrenger 165 6-1 Strengobjekter 166 6-2 Strengobjekt som funksjonsargument og returverdi 174 6-3 Funksjoner knyttet til strengobjekt 180 6-4 Nullterminerte tekststrenger 188 6-5 Innlesing av tekst og tall om hverandre 190 6-6 Å omforme tekst til tall og omvendt 194 6-7 Pseudokode 199 Repetisjonsoppgaver 201 Programmeringsoppgaver 202 7 Funksjoner med ut-argumenter 205 7-1 Verdioverføring 206 7-2 Referanseoverføring 212 7-3 Funksjoner på flere nivåer 219 7-4 Funksjoner med utvidet bruksområde 228 7-5 Funksjonsargument med standardverdi 230 Repetisjonsoppgaver 232 Programmeringsoppgaver 233 8 Datatyper, operatorer og uttrykk 237 8-1 Uttrykk 238 8-2 De enkelte operatorene 243 8-3 Datatyper 252 8-4 Typeomforming 264 Repetisjonsoppgaver 270 Programmeringsoppgaver 271 9 Tabeller 273 9-1 Datastrukturen tabell 274 9-2 Å definere og bruke en tabell 276 9-3 Aktuell og maksimal lengde av tabellen 284 9-4 Tabell som argument til en funksjon 287 9-5 Søking og sortering 291 viii

9-6 Flerdimensjonale tabeller 297 Repetisjonsoppgaver 301 Programmeringsoppgaver 302 10 Objektorientert programmering 307 10-1 Eksempel på en klasse som byggekloss 308 10-2 Klasser som byggeklosser i et program 316 10-3 Å programmere med klasser 318 10-4 Tekststrenger som datamedlemmer 326 10-5 Relasjoner mellom objekter av samme klasse 330 10-6 Syntaksbeskrivelser og stil 332 10-7 Tabeller av objekter 334 Repetisjonsoppgaver 336 Programmeringsoppgaver 337 11 Å bruke datafiler 341 11-1 Enkel bruk av datafiler 342 11-2 Strømmer og filer 352 11-3 Filobjekter som funksjonsargumenter 352 11-4 Feil ved filen, eller bare filslutt? 357 11-5 Tekstfiler og binærfiler 360 11-6 Å bruke binærfiler 362 11-7 Direkte tilgang til innholdet i en fil 369 11-8 Noen spesielle filfunksjoner 376 Repetisjonsoppgaver 378 Programmeringsoppgaver 379 12 Å sette sammen flere filer til ett program 383 12-1 Kompilering og lenking 384 12-2 Navnerom 386 12-3 ISO/ANSI standardbibliotek 390 12-4 Å fordele programmet på flere filer 393 Repetisjonsoppgaver 403 Programmeringsoppgaver 404 13 Mer om kontrollstrukturer 407 13-1 Betingelsesoperatoren og rekkefølgeoperatoren 408 13-2 Flervalgsetningen switch 410 13-3 Mer om for-setningen 415 13-4 do-while -setningen 420 13-5 Løkker sammendrag 422 13-6 Hva er en kontrollstruktur? 423 Repetisjonsoppgaver 424 ix

Innledning Programmeringsoppgaver 425 14 Mer om klasser 427 14-1 Funksjonsargumenter og returverdier 428 14-2 Konstruktører 435 14-3 Destruktører 447 14-4 En-del-av-forhold mellom objekter 448 Repetisjonsoppgaver 459 Programmeringsoppgaver 461 15 Utvidet bruksområde for operatorer 463 15-1 Hva menes med å utvide bruksområdet for en operator? 464 15-2 Eksempel: klassen Broek 467 15-3 Å definere operatorer som ikke-medlemsfunksjoner 478 15-4 Spesielle ting å ta hensyn til 482 Repetisjonsoppgaver 485 Programmeringsoppgaver 486 16 Adresser og pekere 489 16-1 Å lage og bruke en peker 490 16-2 Tabeller og pekere 493 16-3 Aritmetikk på og sammenlikning av pekere 497 16-4 Pekere må behandles med forsiktighet! 502 16-5 Peker til et objekt 503 16-6 new og delete 505 16-7 Fra flerdimensjonal til endimensjonal tabell 509 16-8 Peker til en tabell og en tabell av pekere 515 Repetisjonsoppgaver 520 Programmeringsoppgaver 522 17 STL-vektorer og -algoritmer 525 17-1 Hva er STL? 526 17-2 Konteineren vektor 526 17-3 Iteratorer 535 17-4 Elevregisteret som et objekt 538 17-5 Algoritmer 544 17-6 Vektorer, et gløtt bak kulissene 559 Repetisjonsoppgaver 568 Programmeringsoppgaver 569 18 Arv og polymorfi 573 18-1 Er-forhold og en-del-av-forhold 574 18-2 Et er-forhold er et arvehierarki 576 x

18-3 Å implementere et arvehierarki 580 18-4 Å bruke objekter av avledede klasser 586 18-5 Arv av funksjoner med utvidet bruksområde 597 18-6 Medlemsfunksjoner med spesielle arveegenskaper 599 18-7 Vektorer og objekter i et arvehierarki 602 18-8 Syntaksbeskrivelser 604 Repetisjonsoppgaver 609 Programmeringsoppgaver 610 Litteratur 615 Vedlegg 617 V-1 ASCII-tegnsettet 618 V-2 Operatorer i C++ 619 V-3 Reserverte ord 621 V-4 Tallsystemer 622 V-5 Strukturer 625 V-6 Oversikt over standardbibliotekene 627 V-7 Norsk/engelsk ordliste 654 V-8 Programmeringsstandard 660 Stikkord 671 xi