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.

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
Bruke Gmail 3a Gmail er et e-postprogram.
Intro til programmering i Processing
Høgskolen i Sør-Trøndelag, Avdeling for informatikk og e-læring
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.
1 Java 6 Mer om metoder Tekster Ole Christian Lingjærde Gruppen for bioinformatikk Institutt for informatikk Universitetet i Oslo.
Høgskolen i Oslo Webprogrammering Introduksjon til Java-scripting.
Tabeller – Arrays Lage frekvenstabell Norske Bokstaver
Mer sortering Mer Debugging Introduksjon til strukturer.
Java 4 Mer om forgreninger While-løkker Ole Christian Lingjærde
Eksempel: Administrasjon av biler. Eksempel •Program for å administrere informasjon om biler •Vi ser på tre deler: –Registrere biler: legge inn i tabell.
Objektorientert programmering i PHP del 2
Formler og funksjoner.
IS-102 Klassedefinisjoner
C# for javaprogrammerere
Eksempel AOA (Activity On Arc)
Operativsystemer.  Tilstandsmaskiner kalles på engelsk Finite State Machines.  Tilstandsmaskiner er en metode til å beskrive systemer med logisk og.
Jæger: Robuste og sikre systemer Høgskolen i Molde INF150 Programmering Siste forelesning Pensum Kursevaluering.
Om Øvelse 7 Stoff relatert til øvelse 7 Generering av tilfeldige tall Bruk ting vi har lært før.
Filer Finne minste Finne Største Beregne gjennomsnitt Variabler Tabeller – Arrays Lage frekvenstabell.
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 torsdag 7.9 Bakgrunn for øvelse 2 Bruk av variabler i beregninger Ser på tekststrenger (3.4 Strings.
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.
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.
INF150 Programmering mandag 11.9
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 31.8 Kapittel 3: Grunnlag for programmering i Visual Basic.
Jæger: Robuste og sikre systemer INF150 Programmering torsdag 5.10 MER OM: Lesing fra fil Unntakshåndtering Kap 8.
Repetisjon av JSP Variabler, tabeller, if-setninger, for/while-løkker
INF 295 Algoritmer og datastrukturer Forelesning 7 ADT Lister, Stakker og Køer Hans Fr. Nordhaug (Ola Bø)
Høgskolen i Oslo Web-programmering Feilhåndtering i PHP.
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
VI LAGER EN PLATEBUTIKK
Diskrete stokastiske variable
1 Kap 06 Ordnede / Sorterte lister Oppgave nr 06_02 Polynomer Klassehierarki Javadokumentasjon.
Å 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.
Oppgaver til kodegenerering etc. INF-5110, 2013 Oppgave 1: Vi skal se på koden generert av TA-instruksjonene til høyre i figur 9.10 i det utdelte notatet,
Programmering sif8005. Praktisk informasjon  Innleveringsfrist øvinger: mandag kl  Alle øvinger er obligatoriske  Studass tilgjengelig 6 timer.
1 INF5110 – 23. april, 2013 Svar på noen oppgaver til kap. 8 Beklager noe trykkfeil og rot på forelesningene Håper dette er bedre (lagt ut 24/4) Nå fredag.
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.
1 INF5110 – 23. april, 2013 Noen oppgaver til kap. 8 Dette er en bedre utgave av oppgavene, lagt ut 24. april Nå fredag (26/4): Det blir ikke undervisning.
Opplæring: Pålogging Prosedyre for logge på og av, låse og åpne PC’er DatoVersjonForfatterGodkjent avEndringer utført André S. MathiesenTore.
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.
Jæger: Robuste og sikre systemer Høgskolen i Molde Velkommen til INF150 Programmering Foreleser Bjørn Jæger.
Jæger: Robuste og sikre systemer INF150 Programmering mandag 25.9 MER OM: Sub-prosedyrer og sub-funksjoner Kap 4.
INF1000 (Uke 4) Mer om forgreninger, While-løkker
Inf1000 (Uke 5) Arrayer, filer og tekst
Finne feil - Debugging Introduksjon til sortering.
Kapittel 3 Bruk av klasser og objekt. 3.1 Å lage objekt Eit variabelnamn i Java representerer Ein primitiv verdi (f eks boolean, int ) Eit objekt (f eks.
Kapittel 5 Vilkårssetningar og løkker. 5.1 Boolske uttrykk George Boole ( ), britisk matematikar Utvikla teori om logikk ved bruk av symbol i.
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.
Lokale variable Hvis vi trenger å ta vare på en verdi, inne i en metode kan vi definere en lokal variabel: int amount = 0; vi må fortelle hvilken type.
Oversikt Access Hva en bør beherske så langt. Tabeller Felt Typer (heltall, desimaltall, tekst, Boolean) Primary Key.
Kom i gang med Python Pål Hellesnes SYSTEMUTVIKLER
INF5110 – 23. april, 2013 Svar på noen oppgaver til kap
TDT4105 Informasjonsteknologi, grunnkurs
Variabler, datatyper og uttrykk
Multiplikasjon - Leksjon 1: Sammenheng mellom multiplikasjon og divisjon Lekse til mandag.
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:

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 og Radio Button ( ) og 3.3 Numbers (73-88)

Jæger: Robuste og sikre systemer Motivasjon - Analogi Anta at du synes det å komme på og formidle historier er givende. Dvs. Du er en forfatter- eller journalistspire MEN du må først lære alfabetet og et visst ordforråd. Det er tøft og ofte kjedelig Anta at vi liker å forbedre løsninger og gjøre livet lettere for mennesker vha. IKT MEN du må først lære et programmeringsspråk og noen teknikker. Det er tøft og ofte kjedelig

Jæger: Robuste og sikre systemer Foreløpig inntrykk fra innleverte øvelser Noen bruker ikke navne-reglene: –Eksempel: Default: Form1 Heller: frmOv1Oppg1 eller frmSpørreprogram

Jæger: Robuste og sikre systemer Husker de 3 stegene for å skrive VB program: 1.Tegn brukergrensesnittet 2.Sett egenskaper 3.Skriv koden til hendelser

Jæger: Robuste og sikre systemer … forts 1.Tegner ved å bruke ferdige objekter –TextBox, Button, … Group Box, Check Box, Radio Button 2.Setter properties til disse –Farge, posisjon, tekst, … 3.Skrive kode –Hvor og hvordan?

Jæger: Robuste og sikre systemer Radio Button (474), Check Box (473) og Group Control (472) ”Radio Button”: Den som lager programmet kan bruke Radio Button for å tvinge brukerne til kun å velge et av flere alternativer –Navn begynner med ”rad”: radButton –Eksempel: Velg statsminister –Legges i en Group Control for å kunne ha flere grupper ”Check Box”: Den som lager programmet kan bruke Check Box for å tvinge brukerne til å velge et eller flere av flere alternativer (IF – benyttes for at vi skal kunne lage kode som velger mellom ulike alternativer. Vi kommer tilbake til dette i Kap 5)

Jæger: Robuste og sikre systemer … skrive kode Hittil har vi endret egenskaper til objekt ved å skrive VB-kode for dette. Har laget en Application (et program) –Som har en Form (et skjema som brukergrensesnitt) Som har Objects (objekter: TextBox, Button, Label, …) –Som har properties (egenskaper) –Som reagerer på Events (hendelser) –Som automatisk starter Event Procedures (hendelsesprosedyrer) »Hvor vi skriver statements (kode) for det som skal skje Eksempel: Skriver tekst i en TextBox: txtBoks.Text = “hei”

Jæger: Robuste og sikre systemer 3.2 Visual Basic Events (60-73) Noen detaljer om event-prosedyre: Komplett skall for event-prosedyre/eventprogram: Private Sub objectName_event ( ByVal sender As System.Object, ByVal e As System.EventArgs ) Handles objectName.event Statements End Sub Forkorter det i parantes til (…): Private Sub (…) Handles objectName.event Statements End Sub Eksempel: Private Sub btnAvslutt_Click(…) Handles btnAvslutt.Click End End Sub

Jæger: Robuste og sikre systemer Om å avslutte program I vinduet til programmet kan brukeren: –Trykke X ikonet øverst til høyre i vinduet til programmet –Trykke “Alt-F4” Du kan lage kode som avslutter programmet når brukeren genererer et event på et objekt: –Skrive “End” i en Event-Procedure “You can place the End statement anywhere in a procedure to force the entire application to stop running.“ –Skrive “Me.Close()” i en Event-Procedure “When a form is closed, all resources created within the object are closed and the form is disposed.“ –(Bruk det du vi, det er først når vi skriver store programemr valg av metode betyr noe)

Jæger: Robuste og sikre systemer 3.3 Numbers Arithmetic Operations (73) Av gresk arithmos som betyr tall 5 standardoperasjoner: –addisjon., + –Subtraksjon, - –Multiplikasjon, * –Divisjon, / –Eksponent, ^ Resultatet kan legges i en TextBox eller en liste –Viser eksempler

Jæger: Robuste og sikre systemer Variables (75) Våre egne “properties” Lager logiske navn for verdier –Tallverdier (heltall, flyttall) –Tekst-verdier (et ord eller en setning) –Andre finnes Bruker de logiske navnene i koden for å referere til verdiene Kan da skrive kode som utfører matematiske beregninger

Jæger: Robuste og sikre systemer … forts Eksempel (s. 75) –Går gjennom dette

Jæger: Robuste og sikre systemer … forts Vanligste variabletype for tall er Double Dim varName As Double Double er den mest anvendelige typen for tall (kan inneholde både heltall og flyttall)

Jæger: Robuste og sikre systemer … forts Postkasse-analogi

Jæger: Robuste og sikre systemer Se eksempelet gjennomgått foran (om variabler) Uttrykk - Expressions (p 77)

Jæger: Robuste og sikre systemer Øke verdien i en variabel (78) Dim var As Double var = 9 var = var + 1 (leses: ny var er lik gammel var pluss 1) var += 1 var += n

Jæger: Robuste og sikre systemer Oppgave abc Private Sub btnEvaluate_Click(…) Handles btnEvaluate.Click Dim a, b, c As Double a = 2 b = 7 c = a + b a = c * a lstResults.Items.Add(a + b) a = a / a End Sub

Jæger: Robuste og sikre systemer Built-In Functions: Math.Sqrt, Int, Math.Round (78) Functions –Input: En eller flere verdier –Output: En verdi returneres –Eksempler: Math.sqrt(16) returnerer 4, Math.sqrt(0) returnerer 0 Int(2,7) = 2, Int(-2,7) = -3 Math.Round(2.7) returnerer 3 Math.Round(2.7181, 2) returnerer 2,72

Jæger: Robuste og sikre systemer Oppgave Beregn befolkning i Molde etter 5 år med 2% årlig vekst når folketallet i 2006 er 25000

Jæger: Robuste og sikre systemer Oppgave Beregn befolkning i Molde etter 5 år med 2% årlig vekst når folketallet i 2006 er Data INN: befolkning i 2006: årlig vekst på 2% Tid = 5 år Data UT: Befolkning etter 5 år, dvs. i 2011

Jæger: Robuste og sikre systemer Først: beregningsmåte ”for hånd”. Det finnes mange beregningsmåter/formler Metode 1: –Etter ett år: befolkning = * 0.02 = –Etter to år: befolkning = * 0.02 = Metode 2: –Etter ett år: befolkning = * 1.02 = –Etter to år: befolkning = * 1.02 = Metode 3: –Etter to år: befolkning = * 1.02^2 = Skriv hver av disse i VB med bruk av variabel for befolkning

Jæger: Robuste og sikre systemer … forts I INF150 er beregningsmåte er som regel oppgitt, for eksempel som i steg 3: Utfør stegene 1.Deklarer variabler 2.Tilordn til variabelen folketall 3.Multipliser variabelen folketall med 1.02 opphøyd i 5’te 4.Vis resultatet i en TextBox (Husk å vise resultatet som et helt antall mennesker, se Built in Functions foran)

Jæger: Robuste og sikre systemer The Integer Data Type (80) Dim varName As Integer –Heltall fra ca –2 milliarder til +2 milliarder –Brukes stort sett til å telle

Jæger: Robuste og sikre systemer Multiple Declarations (80) Kan effektivere skriving av kode ved å ha flere deklarasjoner sammen: –Dim a, b As Double –Dim a As Double, b As Integer –Dim c As Double = 2, b As Integer = 4

Jæger: Robuste og sikre systemer Paranteser (80) x(y+z) er ikke lov x*(y+z) er korrekt Regler for hva som beregnes først: 1.Parenthesis () inner to outer, left to right 2.Exponentiations ^, left to right 3.Multiplications and divisions * / left to right 4.Additions and subtractions + - left to right

Jæger: Robuste og sikre systemer Tre typer feil Syntax errors –Skrivefeil Run-time errors (Math.sqrt(-16)) –Beregningsfeil (typisk: dele på null) Logical error (semantic error) –Bruk av feil formel, dvs. Programmet utfører det vi har skrevet korrekt, problemet er at vi har skrevet noe som er logisk feil… (Eks: moms er 25%, dersom vi beregner moms ved å bruke en verdi lik 23% er det en logisk feil.)

Jæger: Robuste og sikre systemer Neste forelesning Torsdag 7. september På rom 076 Gjennomgang av blant annet 3.4 Strings side 88 …