Om Øvelse 7 Stoff relatert til øvelse 7 Generering av tilfeldige tall Bruk ting vi har lært før.

Slides:



Advertisements
Liknende presentasjoner
12.Studienreise nach Finnland,
Advertisements

Tabeller av objekter Klassen ArrayList
Når matematikk blir magisk
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.
Teknologi for et bedre samfunn 1 Asbjørn Følstad, SINTEF Det Digitale Trøndelag (DDT) Brukervennlig digitalisering av offentlig sektor.
Uke 10 - Sortering, og hvordan lage en klasse for et klassebibliotek 21 okt. 2003, Arne Maus Inst. for informatikk, UiO.
TIF seminar -Visual Basic (VBA) og RExcel Elisabeth Orskaug Norsk Regnesentral Oslo, 8. november 2011.
Kontrollstrukturer (Kapittel 3)
Webprogrammering Arrays.
Managerial Decision Modeling Cliff Ragsdale 6. edition Rasmus RasmussenBØK350 OPERASJONSANALYSE1 Chapter 5 Network Modeling.
Java 12 Mer filbehandling - skrive til fil HashMap Et større eksempel Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet.
Tabeller – Arrays Lage frekvenstabell Norske Bokstaver
Mer sortering Mer Debugging Introduksjon til strukturer.
Ulike sorteringsmetoder Kompleksitet av dem
Eksempel: Administrasjon av biler. Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell.
Databaseteori.
Variasjoner i subklasser.  Prinsippskissen er meget enkel  En abstrakt klasse har en konkret metode og en abstrakt metode  Hver subklasse realiserer.
Statistikk og sannsynlighetsregning
Fôr til oppdrettstorsk – bruk av vegetabilsk feitt Odd Leknes Forskningsdagene 2007 Alta.
Kap 05 Betinget sannsynlighet
Fra forelesningene om involveringspedagogikk Et utviklingsarbeid Philip Dammen Manuset er under arbeid.
Oblig4 - forklaringer Arne og Ole Christian.
Kapittel 14 Simulering.
Forside Korteste sti BFS Modifikasjon Dijkstra Eksempel Korrekthet Analyse Øving Spørsmål Dijkstras algoritme Åsmund Eldhuset asmunde *at* stud.ntnu.no.
Dijkstras algoritme Åsmund Eldhuset asmunde *at* stud.ntnu.no
Foreløpige tall pr Randi Sæther
En gang til!? .
Jæger: Robuste og sikre systemer Høgskolen i Molde INF150 Programmering Siste forelesning Pensum Kursevaluering.
Filer Finne minste Finne Største Beregne gjennomsnitt Variabler Tabeller – Arrays Lage frekvenstabell.
Tekstanalyse Mål: Vi skal sammenligne bøker fra to forfattere ved å se på frekvens av tegn.
Feilhåndtering. Feil er uunngåelige! Erfaring viser at feil i dataprogrammer som består av mer enn noen få linjer ikke er til å unngå. For å få et godt.
Utvider eksemplet om biler fra forrige gang med mer feilsjekk Tid og Dato.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 2.10 Default values – standardverdier ved oppstart MER OM: Sub-prosedyrer og sub-funksjoner.
Gjennomgang av prøven Tidsangivelse. Prøven deles ut Vi fyller ut øvelsen sammen.
R ESULTATER M UNKERUD SKOLE 2012 Nasjonale prøver 5.-8.trinn 2012 Brukerundersøkelsen 2012.
Klargjøring fra forrige gang
Jæger: Robuste og sikre systemer INF150 Programmering mandag 4.9 Forrige gang til og med: 3.2 Visual Basic Events (60-73) Nå: Litt om Group Box, CheckBox.
Sortering og søk. Sortering av data som ligger på en fil Prisipielt to hovedmåter gjøre dette på: 1.Arbeide mot filen 1.Lese en linje, og lese de resterende.
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 5.10 MER OM: Lesing fra fil Unntakshåndtering Kap 8.
Kap 06 Diskrete stokastiske variable
Oppland Arbeiderblad Kjønn i kildebruk - Utviklingstrekk over en to års periode.
DATABASE: Oppgave 2 et medlemsregister for en idrettsklubb med flere idrettsgrener (fotball, håndball, osv). klubben ønsker å lagre informasjon om medlemmenes.
Dynamiske nettsider PHP Del 2 – Kontrollstrukturer.
i:SEE Conceptual Learning DA
Eiendomsmeglerbransjens boligprisstatistikk Februar 2011 Norges Eiendomsmeglerforbund og Eiendomsmeglerforetakenes Forening ECON Poyry og FINN.
Bankenes sikringsfond Revisjonskontoret
Virksomhetsrapport Oktober Innhold 1. Oppsummering 2. Hovedmål 3. Pasient 5. Aktivitet 4. Bemanning 6. Økonomi 7. Klinikker 2.
Diskrete stokastiske variable
Å 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.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 18.9 Lesing av data fra fil og skriving av data til fil. Side 411 – 4.. Kap 4.
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
To accompany Quantitative Analysis for Management, 8e by Render/Stair/Hanna 15-1 © 2003 by Prentice Hall, Inc. Upper Saddle River, NJ Kapittel 15.
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.
GPS simulator Et C# program som sender data fra en GPS fil til RS232 og simulerer en GPS engine. Tre linjer pr. sekund er satt opp.
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.
Idrettens kvinner og kvinners idrett: fakta og visjoner Ørnulf Seippel Institutt for samfunnsforskning Munthesgt. 31, 0260 Oslo, Norge
Object  Klassen i java  Alle klasser arver fra denne om ikke noe annet blir spesifisert  ArrayList.add(Object instans)  Alle elementer formes til Object.
Trondheim Lytte- og Læresenter. Sammendrag Prosjektet ble iverksatt fordi Trondheim Lytte- og Læresenter så behovet i å ha et elektronisk kundearkiv i.
Byggeklosser i java  Klassedefinisjon  Variabel deklarasjon  Metodedeklarasjoner  En ordentlig klasse  Spesielle/kryptiske skrivemåter  løkker og.
Hypotesetesting, og kontinuerlige stokastiske variable
Jæger: Robuste og sikre systemer INF150 Programmering mandag 25.9 MER OM: Sub-prosedyrer og sub-funksjoner Kap 4.
Siste forelesning er i morgen!
Finne feil - Debugging Introduksjon til sortering.
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 14.9 Ulike måter for å lese inn og skrive ut data. Kap. 3.5 mer om if – setninger Ferdige.
Statistikk M4 Mandag 20. april 2009.
Statistikk Forkurs Hva er statistikk? undersøke registrere lage oversikt→ Presentasjon av informasjon formidle Arbeidet med statistikk kan vi dele.
Oversikt Access Hva en bør beherske så langt. Tabeller Felt Typer (heltall, desimaltall, tekst, Boolean) Primary Key.
For, While, prosedyrer m/ parametere, funskjoner
Utskrift av presentasjonen:

Om Øvelse 7 Stoff relatert til øvelse 7 Generering av tilfeldige tall Bruk ting vi har lært før

Den virkelige verden og dataprogrammer I den virkelige verden er det ofte slik at vi ikke kan vite hva som skal skje, men vi vet at det er et sett med muligheter og at en av dem vil skje. Eksempler: –Kasting av terning: Etter kast vet vi at at den vil vise et tall 1..6 og at hvert tall er like sannsynlig –I trafikken vet vi at det vil skje mange ulykker. Dette vet vi av erfaring og vi kan finne hvor sannsynlig det er at det vil skje en ulykke i fremtiden

Tilfeldige tall – The Random Class (side 485) Det er ofte nyttig å lage dataprogrammer som simulerer den virkelige verden For å innføre elementer med usikkerhet benyttes tilfeldige tall. Dette er så mye brukat at alle programmeringsspråk har laget ferdig kode som gir oss tilfeldige tall. I VB er det Random-klassen (Random-klassen kan også kalles en Random-kontroll om du vil, men den har ikke noe som i vises et skjermvindu slik som f.eks. en TextBox-kontroll.)

Eksempel Deklarerer et nytt objekt av type Random Dim lagTilfeldigTall As New Random Bruker det nye objektet: tall = lagTilfeldigTall.Next() Får et positivt tall mellom 0 og (Fordi VB bruker 32 bits tall som gir maks 2**32 = verdier)

... eksempel Private Sub btnBeregn_Click( ) Handles btnBeregn.Click Dim lagTilfeldigTall As New Random Dim tall As Integer tall = lagTilfeldigTall.Next() lstVis.Items.Add("Tilfeldig tall: " & tall) End Sub

... eksempel Lag et tilfeldig tall mellom m og n: tall = lagTilfeldigTall.Next(m, n) MERK: tall blir et tall fra m og opp til n, men ikke med n Eksempel: Lag et tilfeldig tall mellom 1 og 10: tall = lagTilfeldigTall.Next(1, 11)

... eksempel Lag et tilfeldig tall mellom 0 og 9: tall = lagTilfeldigTall.Next(1, 10) Private Sub btnBeregn_Click( ) Handles btnBeregn.Click Dim lagTilfeldigTall As New Random Dim tall As Integer tall = lagTilfeldigTall.Next(1, 10) lstVis.Items.Add("Tilfeldig tall: " & tall) End Sub

... eksempel Lag en frekvenstabell for 100 tilfeldig tall hvor hvert tall er mellom 0 og 9: Dim frekvenstabell(9) As Integer frekvenstabell(0) inneholder antall 0'ere frekvenstabell(1) inneholder antall 1'ere osv frekvenstabell(9) inneholder antall 9'ere

... eksempel Kode for å lage 100 tilfeldig tall mellom 0 og 9 og telle opp antall av hvert tall. Resultatet av tellingene legges i en frekvenstabell. Private Sub btnBeregn_Click() Handles btnBeregn.Click Dim lagTilfeldigTall As New Random Dim tall As Integer Dim frekvenstabell(9) As Integer For i As Integer = 1 To 100 tall = lagTilfeldigTall.Next(0, 10) frekvenstabell(tall) += 1 Next For i As Integer = 0 To 9 lstVis.Items.Add(i & ": " & frekvenstabell(i)) Next End Sub

Oppgave Modifiser koden slik at den lager 200 tilfeldig tall mellom 1 og 10 og ellers som før: Telle opp antall av hvert tall og legg resultatet av tellingene i en frekvenstabell. Private Sub btnBeregn_Click() Handles btnBeregn.Click Dim lagTilfeldigTall As New Random Dim tall As Integer Dim frekvenstabell(9) As Integer For i As Integer = 1 To 100 tall = lagTilfeldigTall.Next(0, 10) frekvenstabell(tall) += 1 Next For i As Integer = 0 To 9 lstVis.Items.Add(i & ": " & frekvenstabell(i)) Next End Sub

Løsning Koden som lager 100 tilfeldig tall mellom 1 og 10 og ellers som før: Telle opp antall av hvert tall og legg resultatet av tellingene i en frekvenstabell. Private Sub btnBeregn_Click() Handles btnBeregn.Click Dim lagTilfeldigTall As New Random Dim tall As Integer Dim frekvenstabell(9) As Integer For i As Integer = 1 To 200 tall = lagTilfeldigTall.Next(1, 11) frekvenstabell(tall-1) += 1 Next For i As Integer = 0 To 9 lstVis.Items.Add(i+1 & ": " & frekvenstabell(i)) Next End Sub

... repeter noe fra slides fra forrige gang

Frekvenstabell Basert på tellinger av antall biler i ulike tellestasjoner laget i tabellMedTellinger(52 Lag en frekvenstabell som viser hvor mange tellinger det er i intervallene: –Mindre enn 20 tellinger –Mellom 20 og 40 tellinger –Mellom 40 og 65 tellinger –Mellom 60 og 80 tellinger –Over 80 tellinger

Prinsipp for kode 'Det er 5 intervaller Dim FrekvensTabell(4) As Integer 'plass til frekvens for hvert intervall ' Kode inni en løkke som går gjennom de 52 elementene i tabellen: If (tabellMedTellinger(i) < 20) Then FrekvensTabell(0) = FrekvensTabell(0) + 1 ElseIf (tabellMedTellinger(i) >= 20) or (tabellMedTellinger(i) < 40) Then FrekvensTabell(1) = FrekvensTabell(1) + 1 ’osv for alle intervallene End If

Fil: stasjon-og-antallBiler.txt Kleive 13 Nordbyen 45 Bjørset 12 Kvam 34 Fuglset 89 Sentrum 96

Eksempel: stasjonsnavn og tellinger 5 tellestasjoner teller antall biler som passerer på en time På filen stasjon-og-antallBiler.txt er det lagret stasjonsnavn og tellinger for hver stasjon Du skal: –beregne gjennomsnittlig antall biler for alle stasjonene –finne minste antall tellinger på en stasjon hvilken stasjon det er. –finne største antall tellinger på en stasjon hvilken stasjon det er. –Lage en frekvenstabell som viser hvor mange...

Dim sr As IO.StreamReader sr = IO.File.OpenText(“stasjon-og-antallBiler.txt”) ' MERK: To lesinger for å lese rett tall Do While (sr.peek() <> -1) stasjon = sr.ReadLine antallBilerPrStasjon = sr.ReadLine sum = sum + antallBilerPrStasjon antallStasjoner = antallStasjoner + 1 Loop gjennomsnitt = sum / antallStasjoner

antallBiler.txt

antallBiler-sortert.txt