Øvingsforelesning TDT4105

Størrelse: px
Begynne med side:

Download "Øvingsforelesning TDT4105"

Transkript

1 Øvingsforelesning TDT4105 Gjennomgang øving 9, intro øving 10. Eksamensoppgaver. Benjamin A. Bjørnseth 10. november 2015

2 2 Oversikt Praktisk Gjennomgang øving 9 Introduksjon sudoku Oppgave 4 Kont-eksamen 2014

3 3 Resterende øvingsforelesninger Tre forelesninger igjen. Uke Tema > 46 Øving 9, sudoku, eksamensoppgaver 47 Basert på avstemning 48 Basert på avstemning Stem over tema for de to siste forelesningene (link også på piazza): Tirsdag: Onsdag: Torsdag:

4 4 Innlevering av øving 10 Teller dobbelt hvis godkjent. Må godkjennes hos studass innen fristen. Kan ikke sende epost og få godkjenning i etterkant.

5 5 Oversikt Praktisk Gjennomgang øving 9 Introduksjon sudoku Oppgave 4 Kont-eksamen 2014

6 6 Persondatabase: Tekst- og filbehandling serialize_person(person)

7 6 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year serialize_person() <name>#<date>#<phone>

8 7 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year serialize_person() <name>#<date>#<phone> = %s#%s#%d

9 8 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year <name>#<date>#<phone> = %s#%s#%d

10 9 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year <name>#<date>#<phone> = %s#%s#%d

11 10 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year as string <name>#<date>#<phone> = %s#%s#%d

12 11 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year <name>#<date>#<phone> = %s#%s#%d

13 12 Persondatabase: Tekst- og filbehandling serialize_person(person) person name date_of_birth phone day month year as string = serialize <name>#<date>#<phone> = %s#%s#%d

14 13 Persondatabase: Tekst- og filbehandling deserialize_person(person)

15 13 Persondatabase: Tekst- og filbehandling deserialize_person(person) <name>#<date>#<phone> deserialize_person() person name date_of_birth phone day month year

16 14 Persondatabase: Tekst- og filbehandling deserialize_person(person) <name>#<date>#<phone> person name date_of_birth phone day month year

17 15 Persondatabase: Tekst- og filbehandling deserialize_person(person) <name>#<date>#<phone> person name date_of_birth phone day month year

18 16 Persondatabase: Tekst- og filbehandling deserialize_person(person) <name>#<date>#<phone> person name date_of_birth phone day month year

19 17 Persondatabase: Tekst- og filbehandling deserialize_person(person)? <name>#<date>#<phone> person name date_of_birth phone day month year

20 18 Persondatabase: Tekst- og filbehandling deserialize_person(person)? <name>#<date>#<phone> - strsplit() - strtok() - sscanf() person name date_of_birth phone day month year

21 19 Persondatabase: Tekst- og filbehandling store(filename, persons)

22 19 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> store() <navnn>#<daton>#<tlfn>

23 20 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <fil-id> åpne fil <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <navnn>#<daton>#<tlfn>

24 21 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <fil-id> åpne fil skriv linje <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <navnn>#<daton>#<tlfn>

25 22 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <fil-id> åpne fil serialize_person() skriv linje <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <navnn>#<daton>#<tlfn>

26 23 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <fil-id> åpne fil serialize_person() skriv linje <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <navnn>#<daton>#<tlfn>

27 24 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <fil-id> åpne fil serialize_person() skriv linje <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <navnn>#<daton>#<tlfn>

28 25 Persondatabase: Tekst- og filbehandling store(filename, persons) Person 1 Person 2... Person n <filnavn> <fil-id> åpne fil serialize_person() <filnavn> skriv linje <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> Husk å lukke filen! <navnn>#<daton>#<tlfn>

29 26 Persondatabase: Tekst- og filbehandling loadfile(filename)

30 26 Persondatabase: Tekst- og filbehandling loadfile(filename) <filnavn> <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> loadfile() <navnn>#<daton>#<tlfn> Person 1 Person 2... Person n

31 27 Persondatabase: Tekst- og filbehandling loadfile(filename) <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> <fil-id> <filnavn> åpne fil <navnn>#<daton>#<tlfn>

32 28 Persondatabase: Tekst- og filbehandling loadfile(filename) <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> les linje <fil-id> <filnavn> åpne fil <navnn>#<daton>#<tlfn> Person 1

33 29 Persondatabase: Tekst- og filbehandling loadfile(filename) <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> les linje <fil-id> <filnavn> åpne fil <navnn>#<daton>#<tlfn> deserialize_person() Person 1

34 30 Persondatabase: Tekst- og filbehandling loadfile(filename) <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> les linje <fil-id> <filnavn> åpne fil <navnn>#<daton>#<tlfn> deserialize_person() Person 1 Person 2

35 31 Persondatabase: Tekst- og filbehandling loadfile(filename) <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> les linje <fil-id> <filnavn> åpne fil <navnn>#<daton>#<tlfn> deserialize_person() Person 1 Person 2... Person n

36 32 Persondatabase: Tekst- og filbehandling loadfile(filename) <navn1>#<dato1>#<tlf1> <navn2>#<dato2>#<tlf2> <filnavn> <navnn>#<daton>#<tlfn> <filnavn> <fil-id> åpne fil les linje deserialize_person() Husk å lukke filen! Person 1 Person 2... Person n

37 33 Personprogram Programmet skal vise en meny til brukeren og la brukeren velge hva den vil gjøre. Altså et program som lar brukeren behandle en personsdatabase. Demonstrerer hvordan man lager et større program ved å sette sammen mange mindre funksjoner. Som vi må i Sudoku! Jeg antar at det vanskeligste med oppgaven er omfanget. Vi starter derfor med å se på hvordan vi ser overordnet på problemløsning ved komposisjon av funksjoner.

38 34 Personprogram: Angående funksjoner function res = tverrsum(n) %... end Hva var tanken bak funksjoner, igjen?

39 34 Personprogram: Angående funksjoner function res = tverrsum(n) %... end Hva var tanken bak funksjoner, igjen? De lar oss gjenbruke kode.

40 35 Personprogram: Angående funksjoner function res = tverrsum(n) %... end Hva var tanken bak funksjoner, igjen? De lar oss gjenbruke kode. For forskjellige input-verdier % Kommandovindu %... >> tverrsum(143) ans = 8 >> tverrsum(884) ans = 20 >> tverrsum(59) ans = 14 Kan variere

41 36 Personprogram: Angående funksjoner function res = tverrsum(n) %... end Hva var tanken bak funksjoner, igjen? De lar oss gjenbruke kode. For forskjellige input-verdier På tvers av prosjekt/oppgaver. Brukes flere steder, men må lages bare én gang function res = delelig(n, k) %... if k == 3 res = delelig(tverrsum(n), k) %... elseif k == 9 res = delelig(tverrsum(n), k) %... end %... end

42 37 Personprogram: Angående funksjoner Hva var tanken bak funksjoner, igjen? De lar oss gjenbruke kode. For forskjellige input-verdier På tvers av prosjekt/oppgaver. De lar oss dele opp koden. function res = tverrsum(n) %... end

43 38 Personprogram: Angående funksjoner function res = tverrsum(n) sifre = del_i_sifre(n) res = summer(sifre); end Hva var tanken bak funksjoner, igjen? De lar oss gjenbruke kode. For forskjellige input-verdier På tvers av prosjekt/oppgaver. De lar oss dele opp koden. function res = del_i_sifre(n) %... end function res = summer(sifre) %... end

44 38 Personprogram: Angående funksjoner function res = tverrsum(n) sifre = del_i_sifre(n) res = summer(sifre); end Hva var tanken bak funksjoner, igjen? De lar oss gjenbruke kode. For forskjellige input-verdier På tvers av prosjekt/oppgaver. De lar oss dele opp koden. Å dele opp koden er å dele opp problemet. Jo mindre, jo enklere Jo mer eksplisitt, jo enklere function res = del_i_sifre(n) %... end function res = summer(sifre) %... end

45 39 Personprogram: Angående funksjoner Konklusjon: Når vi løser problem, er det naturlig å bryte det ned i mindre biter For å få mindre å tenke på av gangen. Som vi så, brukes funksjoner til å dele opp problem. Ergo: det er naturlig å løse problem ved å kombinere funksjoner som løser delproblem.

46 40 Personprogram: Programløsning Vi ser for oss hvordan vi kan tenke oss at programmet skal fungere. Basert på våre ønsker, finner vi ut hvilke delproblem som må løses. Lag en funksjon for disse Fyll den med ingenting først - en stubfunksjon. Med stubfunksjoner kan vi lage løsningen på det overordnede problemet før delproblemløsningene er på plass. Hovedfordel: del opp problemet, og behold oversikt over det store bildet.

47 41 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** person_program

48 42 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** person_program print_header()

49 43 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet print_header() person_program

50 44 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet print_header() person_program print_header()

51 45 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 print_header() person_program print_header()

52 46 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 person_program valg = input( > ) print_header() print_header()

53 47 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. print_header() person_program print_header()

54 48 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. person_program print_header() print_header() process(p, choice)

55 49 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. person_program print_header() print_header() process(p, choice) process_list_persons(p)

56 50 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 person_program print_header() print_header() process(p, choice) process_list_persons(p)

57 51 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 Skriv inn databasefil: personer.txt person_program print_header() print_header() process(p, choice) process_load() filnavn = input( >, s ) process_list_persons(p)

58 52 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 Skriv inn databasefil: personer.txt person_program print_header() print_header() process(p, choice) process_load() Returner ny P loadfile() process_list_persons(p)

59 53 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 Skriv inn databasefil: personer.txt 2 personer lastet inn. person_program print_header() print_header() process(p, choice) process_load() fprintf( %d personer lastet inn., length(p)) process_list_persons(p)

60 54 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 Skriv inn databasefil: personer.txt 2 personer lastet inn. print_header() process_load() person_program process(p, choice) Returner ny P Returner ny P print_header() process_list_persons(p)

61 55 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 Skriv inn databasefil: personer.txt 2 personer lastet inn. Velg handling fra menyen: > 4 Hva heter du? Urgolf Hvilken dato er du født? Ny person lagt til. Returner ny P print_header() process_load() person_program process(p, choice) Returner ny P print_header() process_new_person() Returner ny person prompt_person() process_list_persons(p)

62 56 Personprogram: Tenkt programflyt % I kommandovindu %... >> person_program ** Velkommen til personprogram! *** Velg handling fra menyen: 1. Hent database fra fil 2. Lagre database til fil 3. List alle personer 4. Legg inn ny person 5. Endre en person 0. Avslutt programmet > 3 Ingen personer i databasen. Velg handling fra menyen: 1. Hent database fra fil > 1 Skriv inn databasefil: personer.txt 2 personer lastet inn. Velg handling fra menyen: > 4 Hva heter du? Urgolf Hvilken dato er du født? Ny person lagt til. Velg handling fra menyen: > 3 Person 1: Lynx lynx, , 33 Person 2: Lynx lynx lynx, Person 3: Urgolf, person_program print_header() print_header() process(p, choice) process_load() process_new_person() prompt_person() process_list_persons(p)

63 57 Personprogram: Implementasjon 1. Lag stub-funksjonene vi har identifisert. 2. Implementer person_program ved å bruke dem. 2.1 Ha en personlistevariabel P 2.2 Les inn et brukervalg. 2.3 Gjør operasjon med listen P ved å kalle funksjonen process. 2.4 Repeter til brukeren går lei. 3. Implementer de enkle print-funksjonene 4. Implementer generell logikk for process-funksjonen 5. Programmet kan nå utvides (fullføres) ved å 5.1 Lage en ny funksjon for hver ekstra funksjonalitet. 5.2 Legge inn støtte i process for å kalle denne funksjonen.

64 58 Oversikt Praktisk Gjennomgang øving 9 Introduksjon sudoku Oppgave 4 Kont-eksamen 2014

65 59 Krav til funksjonalitet Skriv tall i rute.

66 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler.

67 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre)

68 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre) Pen utskrift

69 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre) Pen utskrift Laste inn brett fra tekstfil.

70 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre) Pen utskrift Laste inn brett fra tekstfil. Lagre brett til fil.

71 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre) Pen utskrift Laste inn brett fra tekstfil. Lagre brett til fil. Oppdage seier.

72 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre) Pen utskrift Laste inn brett fra tekstfil. Lagre brett til fil. Oppdage seier. Brukervennlig grensesnitt.

73 59 Krav til funksjonalitet Skriv tall i rute. Med gyldighetssjekk etter sudoku-regler. Slette tall (altså angre) Pen utskrift Laste inn brett fra tekstfil. Lagre brett til fil. Oppdage seier. Brukervennlig grensesnitt. Menybasert valg.

74 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som

75 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall.

76 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg:

77 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku.

78 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett.

79 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett.

80 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt.

81 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt. Basert på valg, kaller enten:

82 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt. Basert på valg, kaller enten: brett = spill_sudoku(brett)

83 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt. Basert på valg, kaller enten: brett = spill_sudoku(brett) brett = last_brett()

84 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt. Basert på valg, kaller enten: brett = spill_sudoku(brett) brett = last_brett() lagre_brett(brett)

85 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt. Basert på valg, kaller enten: brett = spill_sudoku(brett) brett = last_brett() lagre_brett(brett) Skriv ut brettet ved å kalle skriv_ut_brett(brett)

86 60 Forslag til rekkefølge 1. Overordnet arkitektur: lag funksjonen sudoku(), som Først lager en variabel brett, som holder spillets tilstand som en 9x9-matrise med tall. Lar brukeren velge mellom tre meny-valg: 1.1 Spill sudoku. 1.2 Last brett. 1.3 Lagre brett. 1.4 Avslutt. Basert på valg, kaller enten: brett = spill_sudoku(brett) brett = last_brett() lagre_brett(brett) Skriv ut brettet ved å kalle skriv_ut_brett(brett) 2. Lag tomme funksjoner for spill_sudoku, last_brett og lagre_brett som alle kaller error( Ikke laget enda )

87 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett)

88 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall.

89 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden.

90 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke:

91 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer:

92 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall>

93 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne>

94 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt

95 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando:

96 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen.

97 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall).

98 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne).

99 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet.

100 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet. 3. Lag brett = sett(brett, rad, kolonne, tall)

101 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet. 3. Lag brett = sett(brett, rad, kolonne, tall) Anta først at rad, kolonne og tall er gyldige.

102 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet. 3. Lag brett = sett(brett, rad, kolonne, tall) Anta først at rad, kolonne og tall er gyldige. Legg så til sjekker:

103 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet. 3. Lag brett = sett(brett, rad, kolonne, tall) Anta først at rad, kolonne og tall er gyldige. Legg så til sjekker: rad, kolonne og tall er gyldige verdier (heltall mellom 1 og 9).

104 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet. 3. Lag brett = sett(brett, rad, kolonne, tall) Anta først at rad, kolonne og tall er gyldige. Legg så til sjekker: rad, kolonne og tall er gyldige verdier (heltall mellom 1 og 9). Ingenting satt på plassen fra før.

105 61 Forslag til rekkefølge for selve spillet 1. Pen utskrift: skriv_ut_brett(brett) Anta at parameteren er en 9x9-matrise med tall. Start med noe enkelt, kan gjøres penere siden. 2. Overordnet løsning: brett = spill_sudoku(brett). I while-løkke: Les kommando, og reager. Kommandoer: sett <rad> <kolonne> <tall> slett <rad> <kolonne> avslutt Sjekk kommando: Hvis avslutt, returner fra funksjonen. Hvis sett, kall lokal funksjon brett = sett(brett, rad, kolonne, tall). Hvis slett, kall lokal funksjon brett = slett(brett, rad, kolonne). Skriv ut brettet. 3. Lag brett = sett(brett, rad, kolonne, tall) Anta først at rad, kolonne og tall er gyldige. Legg så til sjekker: rad, kolonne og tall er gyldige verdier (heltall mellom 1 og 9). Ingenting satt på plassen fra før. Tallet finnes ikke i raden, kolonnen eller kvadratet fra før.

106 62 Kommentar til lagring og lasting Det er gunstig om man kan laste inn spill man har lagret før. Man må laste inn fra tekstfil. Start med å skrive lagre_brett(brett), som lagrer brett i tekstformat. Lag så brett = last_brett(), som laster inn et brett fra fil med samme format.

107 63 Oversikt Praktisk Gjennomgang øving 9 Introduksjon sudoku Oppgave 4 Kont-eksamen 2014

108 64 Bridge!

109 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V

110 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller

111 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst)

112 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand

113 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6

114 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf>

115 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding

116 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk.

117 65 Oppgave pre-a): Forstå domenet To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk. Få for få stikk: beit.

118 66 Oppgave a) To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk. Få for få stikk: beit.

119 66 Oppgave a) To inn, en ut. To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk. Få for få stikk: beit.

120 66 Oppgave a) To inn, en ut. Returner har man klart meldingen To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk. Få for få stikk: beit.

121 66 Oppgave a) To inn, en ut. Returner har man klart meldingen Melding: forventet antall stikk oppgitt som trekk. To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk. Få for få stikk: beit.

122 66 Oppgave a) To inn, en ut. Returner har man klart meldingen Melding: forventet antall stikk oppgitt som trekk. Å klare en melding: få minst det forventede antall stikk. To lag: N/S og Ø/V 13 kort pr. spiller Meld forventet antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding Få for mange stikk: overstikk. Få for få stikk: beit.

123 67 Oppgave b) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*.

124 67 Oppgave b) To inn, én ut To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*.

125 67 Oppgave b) To inn, én ut Returner er det en utgang laget har klart? To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*.

126 67 Oppgave b) To inn, én ut Returner er det en utgang laget har klart? To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter

127 67 Oppgave b) To inn, én ut Returner er det en utgang laget har klart? Er utgang meldt? To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter

128 67 Oppgave b) To inn, én ut Returner er det en utgang laget har klart? Er utgang meldt? Er meldingen klart? To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter

129 68 Oppgave c) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter

130 68 Oppgave c) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter I beit: -50*<antall trekk unna>

131 68 Oppgave c) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter I beit: -50*<antall trekk unna> Ellers: <poeng pr trekk>*<antall trekk> + <bonus>

132 68 Oppgave c) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter I beit: -50*<antall trekk unna> Ellers: <poeng pr trekk>*<antall trekk> + <bonus> <poeng per trekk> varierer med trumf

133 68 Oppgave c) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter I beit: -50*<antall trekk unna> Ellers: <poeng pr trekk>*<antall trekk> + <bonus> <poeng per trekk> varierer med trumf <bonus> varierer med utgangstype og grand

134 69 Oppgave d) To lag: N/S og Ø/V 13 kort pr. spiller Meld antall stikk (et tall) og trumf (en tekst) Gyldige meldinger: 1 kløver - 7 grand Antall stikk = antall trekk + 6 Meldingsformat: <trekk> <trumf> Kontrakt: høyeste melding For mange stikk: overstikk. For få stikk: beit*. Utgang: 3+ grand, 4+ spar/hjerter, 5+ kløver/ruter I beit: -50*<antall trekk unna> Ellers: <poeng pr trekk>*<antall trekk> + <bonus> poeng per trekk varierer med trumf bonus varierer med utgangstype og grand

TDT4105 IT Grunnkurs Høst 2014

TDT4105 IT Grunnkurs Høst 2014 TDT4105 IT Grunnkurs Høst 2014 Norges teknisknaturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Øving 9 1 Teori a) Hva er en protokoll? b) Hva er HTTP og når brukes den?

Detaljer

TDT4105 IT Grunnkurs Høst 2014

TDT4105 IT Grunnkurs Høst 2014 TDT4105 IT Grunnkurs Høst 2014 Norges teknisknaturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Løsningsforslag Øving 9 1 Teori a) En protokoll er et regelverk som bestemmer

Detaljer

Utførelse av programmer, metoder og synlighet av variabler i JSP

Utførelse av programmer, metoder og synlighet av variabler i JSP Utførelse av programmer, metoder og synlighet av variabler i JSP Av Alf Inge Wang 1. Utførelse av programmer Et dataprogram består oftest av en rekke programlinjer som gir instruksjoner til datamaskinen

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 10 Frist: 2014-04-11 Mål for denne øvinga:

Detaljer

Kom i gang med Stata for Windows på UiO - hurtigstart for begynnere

Kom i gang med Stata for Windows på UiO - hurtigstart for begynnere Kom i gang med Stata for Windows på UiO - hurtigstart for begynnere Hensikten med denne introduksjonen er å lære hvordan man kommer raskt i gang med grunnleggende funksjoner i Stata. Teksten er tilpasset

Detaljer

Utførelse av programmer, funksjoner og synlighet av variabler (Matl.)

Utførelse av programmer, funksjoner og synlighet av variabler (Matl.) Utførelse av programmer, funksjoner og synlighet av variabler (Matl.) Av Jo Skjermo (basert på Alf Inge Wang sin versjon om JSP). 1. Utførelse av kode i kommando/kalkulatormodus Et dataprogram består oftest

Detaljer

I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt.

I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt. Hei JavaScript! Introduksjon Web Introduksjon I denne oppgaven blir du introdusert for programmeringsspråket JavaScript. Du skal gjøre den klassiske oppgaven Hei verden, med en katt. Steg 1: Bruke JS Bin

Detaljer

Øvingsforelesning i Python (TDT4110)

Øvingsforelesning i Python (TDT4110) Øvingsforelesning i Python (TDT4110) Tema: Øving 1, PyCharm, Print, Input, (funksjoner og globale variabler) Gå til https://www.jetbrains.com/pycharm/ og sett PyCharm på nedlasting NÅ Kristoffer Hagen

Detaljer

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59

Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Oblig 4 (av 4) INF1000, høsten 2012 Værdata, leveres innen 9. nov. kl. 23.59 Formål Formålet med denne oppgaven er å gi trening i hele pensum og i å lage et større program. Løsningen du lager skal være

Detaljer

TDT4105 Informasjonsteknologi, grunnkurs. Introduksjon til programmering i Matlab. Rune Sætre / Anders Christensen {satre, anders}@idi.ntnu.

TDT4105 Informasjonsteknologi, grunnkurs. Introduksjon til programmering i Matlab. Rune Sætre / Anders Christensen {satre, anders}@idi.ntnu. 1 TDT4105 Informasjonsteknologi, grunnkurs Introduksjon til programmering i Matlab Rune Sætre / Anders Christensen {satre, anders}@idi.ntnu.no 2 Frist for øving 1: Fredag 11. Sept. Noen oppstartsproblemer

Detaljer

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert.

23.09.2015. Introduksjon til objektorientert. programmering. Hva skjedde ~1967? Lokale (og globale) helter. Grunnkurs i objektorientert. Grunnkurs i objektorientert programmering Introduksjon til objektorientert programmering INF1000 Høst 2015 Siri Moe Jensen INF1000 - Høst 2015 uke 5 1 Siri Moe Jensen INF1000 - Høst 2015 uke 5 2 Kristen

Detaljer

Kapittel 4. 4. og 5. september 2012. Institutt for geofag Universitetet i Oslo. GEO1040 - En Introduksjon til MatLab. Kapittel 4.

Kapittel 4. 4. og 5. september 2012. Institutt for geofag Universitetet i Oslo. GEO1040 - En Introduksjon til MatLab. Kapittel 4. r r Institutt for geofag Universitetet i Oslo 4. og 5. september 2012 r r Ofte ønsker vi å utføre samme kommando flere ganger etter hverandre gjør det mulig å repetere en programsekvens veldig mange ganger

Detaljer

Høst 2014. Øving 5. 1 Teori. 2 Månedskalender. Norges teknisknaturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap

Høst 2014. Øving 5. 1 Teori. 2 Månedskalender. Norges teknisknaturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4105 IT Grunnkurs Høst 2014 Norges teknisknaturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Øving 5 1 Teori a) Hva er den binære ASCII-verdien av bokstaven E (stor e)?

Detaljer

Øvingsforelesning TDT4105 Matlab

Øvingsforelesning TDT4105 Matlab Øvingsforelesning TDT4105 Matlab Øving 2. Pensum: Funksjoner, matriser, sannhetsuttrykk, if-setninger. Benjamin A. Bjørnseth 8. september 2015 2 Innhold Disclaimer Funksjoner Matriser Matriseoperasjoner

Detaljer

Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006

Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006 Obligatorisk oppgave nr. 3 (av 4) i INF1000, våren 2006 Advarsel Etter forelesningen 6. mars har vi gjennomgått alt stoffet som trengs for å løse oppgaven. Du kan imidlertid godt starte arbeidet allerede

Detaljer

Kanter, kanter, mange mangekanter

Kanter, kanter, mange mangekanter Kanter, kanter, mange mangekanter Nybegynner Processing PDF Introduksjon: Her skal vi se på litt mer avansert opptegning og bevegelse. Vi skal ta utgangspunkt i oppgaven om den sprettende ballen, men bytte

Detaljer

Skilpaddefraktaler Erfaren Python PDF

Skilpaddefraktaler Erfaren Python PDF Skilpaddefraktaler Erfaren Python PDF Introduksjon Vi vil nå jobbe videre med skilpaddekunsten fra tidligere. Denne gangen skal vi tegne forskjellige figurer som kalles fraktaler. Fraktaler er figurer

Detaljer

TDT4102 Prosedyreog objektorientert programmering Vår 2016

TDT4102 Prosedyreog objektorientert programmering Vår 2016 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyreog objektorientert programmering Vår 2016 Øving 2 Frist: 2016-01-29 Mål for denne øvingen:

Detaljer

Soloball. Steg 1: En roterende katt. Sjekkliste. Test prosjektet. Introduksjon. Vi begynner med å se på hvordan vi kan få kattefiguren til å rotere.

Soloball. Steg 1: En roterende katt. Sjekkliste. Test prosjektet. Introduksjon. Vi begynner med å se på hvordan vi kan få kattefiguren til å rotere. Soloball Introduksjon Scratch Introduksjon Vi skal nå lære hvordan vi kan lage et enkelt ballspill med Scratch. I soloball skal du styre katten som kontrollerer ballen, slik at ballen ikke går i nettet.

Detaljer

Tre på rad mot datamaskinen. Steg 1: Vi fortsetter fra forrige gang. Sjekkliste. Introduksjon

Tre på rad mot datamaskinen. Steg 1: Vi fortsetter fra forrige gang. Sjekkliste. Introduksjon Tre på rad mot datamaskinen Erfaren Python Introduksjon I dag skal vi prøve å skrive kode slik at datamaskinen kan spille tre på rad mot oss. Datamaskinen vil ikke spille så bra i begynnelsen, men etterhvert

Detaljer

På tide med et nytt spill! I dag skal vi lage tre på rad, hvor spillerne etter tur merker ruter med X eller O inntil en av spillerne får tre på rad.

På tide med et nytt spill! I dag skal vi lage tre på rad, hvor spillerne etter tur merker ruter med X eller O inntil en av spillerne får tre på rad. Tre på rad Erfaren Python Introduksjon På tide med et nytt spill! I dag skal vi lage tre på rad, hvor spillerne etter tur merker ruter med X eller O inntil en av spillerne får tre på rad. Steg 1: Tegne

Detaljer

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad.

EKSAMEN. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad. EKSAMEN Emnekode: Emne: ITF10208 Webprogrammering 1 Dato: Eksamenstid: 09/12-2008 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom Heine

Detaljer

Matematikk 1000. Øvingsoppgaver i numerikk leksjon 8 Matriser. Løsningsforslag

Matematikk 1000. Øvingsoppgaver i numerikk leksjon 8 Matriser. Løsningsforslag Matematikk 1000 Øvingsoppgaver i numerikk leksjon 8 Matriser Løsningsforslag Oppgave 1 Redusert trappeform og løsning av lineære likningssystemer a) Totalmatrisa blir Vi tilordner dette i MATLAB: 5 1 1

Detaljer

Brukermanual for statistikk på Asset on web: Statistikk salg pr dag, uke eller måned fordelt på alle avdelinger:

Brukermanual for statistikk på Asset on web: Statistikk salg pr dag, uke eller måned fordelt på alle avdelinger: Brukermanual for statistikk på Asset on web: Statistikk salg pr dag, uke eller måned fordelt på alle avdelinger: 1. Velg først "Vis avanserte funksjoner" Evt. hvis du ønsker å se på salget i går eller

Detaljer

buildingsmart Norge Guiden

buildingsmart Norge Guiden Kom-i-gang med buildingsmart Norge Guiden Innhold 1. Om prosjektguider og maler... 1 2. Opprette bruker... 2 3. Logge inn... 3 4. Opprette prosjektguide og invitere brukere... 4 5. Åpne prosjektguide...

Detaljer

TDT4102 Prosedyreog objektorientert programmering Vår 2016

TDT4102 Prosedyreog objektorientert programmering Vår 2016 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyreog objektorientert programmering Vår 2016 Øving 4 Frist: 2016-02-12 Mål for denne øvingen:

Detaljer

TDT4105 Informasjonsteknologi, grunnkurs

TDT4105 Informasjonsteknologi, grunnkurs 1 TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling Anders Christensen (anders@idi.ntnu.no) Rune Sætre (satre@idi.ntnu.no) TDT4105 IT Grunnkurs 2 Læringsmål/pensum Filbehandling Mål: Forstå

Detaljer

Øvingsforelesning i Matlab (TDT4105)

Øvingsforelesning i Matlab (TDT4105) Øvingsforelesning i Matlab (TDT4105) Øving 1. Frist: 11.09. Tema: matematiske uttrykk, variabler, vektorer, funksjoner. Benjamin A. Bjørnseth 1. september 2015 2 Oversikt Praktisk informasjon Om øvingsforelesninger

Detaljer

Hvordan du kommer i gang med LOGO.

Hvordan du kommer i gang med LOGO. Hvordan du kommer i gang med LOGO. Innhold: Velkommen til et kurs for å lære grunnleggende bruk av LOGO. Vi går gjennom noen viktige funksjoner slik at du til slutt kan få til å programmere. Dette opplegget

Detaljer

Brukerveiledning WISEflow

Brukerveiledning WISEflow Brukerveiledning WISEflow Pålogging WISEflow s.2 Installasjon og test av Flowlock- browser s.4 Innlevering av oppgaver/hjemmeeksamen via WISEflow s. 6 Hvordan slette cookies? s. 9 1 Pålogging WISEflow

Detaljer

Straffespark Introduksjon Scratch Lærerveiledning

Straffespark Introduksjon Scratch Lærerveiledning Straffespark Introduksjon Scratch Lærerveiledning Introduksjon Vi skal lage et enkelt fotballspill, hvor du skal prøve å score på så mange straffespark som mulig. Steg 1: Katten og fotballbanen Vi begynner

Detaljer

TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose

TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose 1 TDT4105 Informasjonsteknologi, grunnkurs MatLab: Filbehandling - load, save, type - fopen, fgetl, feof, fprintf, fclose Anders Christensen (anders@ntnu.no) Rune Sætre (satre@ntnu.no) TDT4105 IT Grunnkurs

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6)

TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6) 1 TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6) Anders Christensen anders@idi.ntnu.no Rune Sætre satre@idi.ntnu.no 2 Læringsmål og pensum Læringsmål: Synlighet av variabler

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Eksamensdato: 15.des 2011 Studiepoeng: 6 Varighet: 4 timer. Start kl 09:00 og skal leveres inn senest kl 13:00 Emnekode: Emnenavn:

Detaljer

Velkommen som ny bruker av Uni Økonomi!

Velkommen som ny bruker av Uni Økonomi! Velkommen som ny bruker av Uni Økonomi! Som ny kunde har du fått tilsendt tilsendt epost som vist under, hvor du starter installasjonen av Uni Økonomi - ved å klikke på lenken som står etter "Gå til:"

Detaljer

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i.

Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell' og det andre er for å skrive kode i. Skilpaddeskolen Steg 1: Flere firkanter Nybegynner Python Åpne IDLE-editoren, og åpne en ny fil ved å trykke File > New File, og la oss begynne. Husk at du skal ha to vinduer åpne. Det ene er 'Python Shell'

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15.desember 2006 Varighet: Fagnummer: Fagnavn: 09.00 13.00 (4 timer) LO116D og LN116D Programmering i Visual

Detaljer

HØGSKOLEN I SØR-TRØNDELAG

HØGSKOLEN I SØR-TRØNDELAG HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring - AITeL Kandidatnr: Eksamensdato: 15. desember 2004 Varighet: Fagnummer: Fagnavn: Klasse(r): 3 timer LV197D Webprogrammering med PHP FU Studiepoeng:

Detaljer

PixEdit Guide MEDFAK (5. utkast)

PixEdit Guide MEDFAK (5. utkast) PixEdit Guide MEDFAK (5. utkast) Dette er en kjapp guide på hvordan vi har gjort PixEdit-oppsettet på arkivet ved MEDFAK. Denne guiden tar utgangspunkt i en dedikert kontormaskin med lokal skanner. Med

Detaljer

TDT4110 Informasjonsteknologi grunnkurs: Eksempler. Mangekanter

TDT4110 Informasjonsteknologi grunnkurs: Eksempler. Mangekanter 1 TDT4110 Informasjonsteknologi grunnkurs: Eksempler Kunnskap for en bedre verden Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no Tlf: 735 91845 TDT4105

Detaljer

16 Programmere TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5

16 Programmere TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5 16 Programmere Skrive et program på TI-86... 248 Kjøre et program... 256 Arbeide med programmer... 258 Laste ned og kjøre et assemblerspråkprogram... 261 Skrive inn og lagre en streng... 263 TI -86 M1

Detaljer

Systemutvikling (Software Engineering) TDT 4110 IT Grunnkurs Professor Guttorm Sindre

Systemutvikling (Software Engineering) TDT 4110 IT Grunnkurs Professor Guttorm Sindre Systemutvikling (Software Engineering) TDT 4110 IT Grunnkurs Professor Guttorm Sindre Læringsmål og pensum Mål Lære å lage større og sammensatte programmer Pensum Pythonboka kap. 1-9, 12 Teorikapitlet

Detaljer

Google Chrome. Microsoft Edge. Mozilla Firefox. Internet Explorer. Opera. Safari

Google Chrome. Microsoft Edge. Mozilla Firefox. Internet Explorer. Opera. Safari Google Chrome Microsoft Edge Mozilla Firefox Internet Explorer Opera Safari Google Chrome Dersom nettbanken ikke vises eller fungerer som den skal, så hjelper det ofte å slette midlertidige filer i din

Detaljer

Oppgaver til julekalenderen 2005 for mellomtrinnet; 5. - 7.trinn

Oppgaver til julekalenderen 2005 for mellomtrinnet; 5. - 7.trinn Oppgaver til julekalenderen 2005 for mellomtrinnet; 5. - 7.trinn Løsningsord for kalenderen er RAKETTBASE PRESIS KLOKKA TO A B C D E F G H I J K L M N O 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 P Q R S T U

Detaljer

Matematikk 1000. Øvingsoppgaver i numerikk leksjon 5 Skript

Matematikk 1000. Øvingsoppgaver i numerikk leksjon 5 Skript Matematikk 1000 Øvingsoppgaver i numerikk leksjon 5 Skript I denne øvinga skal vi lære oss mer om skript. Et skript kan vi se på som et lite program altså en sekvens av kommandoer. Til sist skal vi se

Detaljer

Redd verden. Steg 1: Legg til Ronny og søppelet. Sjekkliste. Introduksjon

Redd verden. Steg 1: Legg til Ronny og søppelet. Sjekkliste. Introduksjon Redd verden Nybegynner Scratch Introduksjon Kildesortering er viktig for å begrense hvor mye avfallet vårt påvirker miljøet. I dette spillet skal vi kildesortere og samtidig lære en hel del om meldinger

Detaljer

Mattespill Nybegynner Python PDF

Mattespill Nybegynner Python PDF Mattespill Nybegynner Python PDF Introduksjon I denne leksjonen vil vi se litt nærmere på hvordan Python jobber med tall, og vi vil lage et enkelt mattespill. Vi vil også se hvordan vi kan gjøre ting tilfeldige.

Detaljer

POLITISKE SAKSDOKUMENTER:

POLITISKE SAKSDOKUMENTER: POLITISKE SAKSDOKUMENTER: FRA PAPIR TIL PC Installasjons- og brukerveiledning Sunndal kommune Side 1 of 20 Side 2 of 20 Innholdsfortegnelse 1 Laste ned PDF-XChange Viewer...5 2 Installere PDF-XChange Viewer...6

Detaljer

13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER

13.09.2012 LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke 1-3 12. September 2012 Siri Moe Jensen EKSEMPLER .9.22 LITT OM OPPLEGGET INF EKSTRATILBUD Stoff fra uke - 2. September 22 Siri Moe Jensen Målgruppe: De som mangler forståelse for konseptene gjennomgått så langt. Trening får du ved å jobbe med oppgaver,

Detaljer

Klask-en-Muldvarp. Steg 1: Gjøre klart spillbrettet. Sjekkliste. Introduksjon

Klask-en-Muldvarp. Steg 1: Gjøre klart spillbrettet. Sjekkliste. Introduksjon Klask-en-Muldvarp Introduksjon App Inventor Introduksjon I denne oppgaven skal vi lage et veldig enkelt spill med litt animasjon. Det som skal skje er at en muldvarp hopper rundt på spillbrettet mens du

Detaljer

Høgskolen i Gjøvik Institutt for informatikk og medieteknikk E K S A M E N. Grunnleggende programmering

Høgskolen i Gjøvik Institutt for informatikk og medieteknikk E K S A M E N. Grunnleggende programmering Høgskolen i Gjøvik Institutt for informatikk og medieteknikk E K S A M E N FAGNAVN: Grunnleggende programmering FAGNUMMER: IMT 1031 EKSAMENSDATO: 19.desember 2005 KLASSE(R): 05HBIND*, 05HBINFA, 05HBISA,

Detaljer

Kapittel 3: Litt om representasjon av tall

Kapittel 3: Litt om representasjon av tall MAT1030 Diskret Matematikk Forelesning 3: Litt om representasjon av tall, logikk Roger Antonsen Institutt for informatikk, Universitetet i Oslo Kapittel 3: Litt om representasjon av tall 20. januar 2009

Detaljer

<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen.

<?php. count tar en array som argument, og returnerer et tall som uttrykker antallet innførsler i arrayen. Hver gang funksjonen printhallo kalles utføres instruksjonene spesifisert i den. [Kurssidene] [ ABI - fagsider bibin ] Webprogrammering høsten 2015 //funksjonskall printhallo(); //enda en gang printhallo();

Detaljer

Visma Oppvekst Skole. Temahefte. VO Timeplan

Visma Oppvekst Skole. Temahefte. VO Timeplan Visma Oppvekst Skole Temahefte VO Timeplan INNHOLD: Visma Oppvekst Skole... 1 Temahefte... 1 VO Timeplan... 1 INNHOLD:... 2 Import i VO Timeplan... 3 Å manøvrere i VO Timeplan... 5 Arbeidsvinduer... 6

Detaljer

Retningslinjer for innlegging av foto i NTNU Vitenskapsmuseets fotobase (MusIt)

Retningslinjer for innlegging av foto i NTNU Vitenskapsmuseets fotobase (MusIt) Retningslinjer for innlegging av foto i NTNU Vitenskapsmuseets fotobase (MusIt) Foto: Per Fredriksen, NTNU Vitenskapsmuseet 1. utgave 2010 Ellen Grav Ellingsen NTNU Vitenskapsmuseet Seksjon for arkeologi

Detaljer

Komme i gang med Skoleportalen

Komme i gang med Skoleportalen Generell brukerveiledning for Elevportalen Denne elevportalen er best egnet i nettleseren Internett Explorer. Dersom du opplever kompatibilitets-problemer kan det skyldes at du bruker en annen nettleser.

Detaljer

UI-View Installasjon og konfigurasjon for IGate + RX<->TX av meldinger og ingen ting annet!

UI-View Installasjon og konfigurasjon for IGate + RX<->TX av meldinger og ingen ting annet! UI-View Installasjon og konfigurasjon for IGate + RXTX av meldinger og ingen ting annet! For å fullføre denne installasjon trenger du en PC med Windows XP/Vista/7, fast Internett forbindelse og en TNC

Detaljer

TOD063 Datastrukturer og algoritmer

TOD063 Datastrukturer og algoritmer TOD063 Datastrukturer og algoritmer Øving : 3 Utlevert : Uke 7 Innleveringsfrist : 26. februar 2010 Klasse : 1 Data og 1 Informasjonsteknologi Gruppearbeid: 2-3 personer pr. gruppe. Oppgave 1 Vi skal lage

Detaljer

Noen innebygde funksjoner - Vektorisering

Noen innebygde funksjoner - Vektorisering 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6) Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no

Detaljer

BOKMÅL Side 1 av 5. KONTERINGSEKSAMEN I FAG TDT4102 Prosedyre og objektorientert programmering. Onsdag 6. august 2008 Kl. 09.00 13.

BOKMÅL Side 1 av 5. KONTERINGSEKSAMEN I FAG TDT4102 Prosedyre og objektorientert programmering. Onsdag 6. august 2008 Kl. 09.00 13. BOKMÅL Side 1 av 5 NTNU Norges teknisk-naturvitenskapelige universitet Fakultet for informasjonsteknologi, matematikk og elektroteknikk Institutt for datateknikk og informasjonsvitenskap KONTERINGSEKSAMEN

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 1 Frist: 2014-01-24 Mål for denne øvinga:

Detaljer

infotorg Enkel brukermanual

infotorg Enkel brukermanual infotorg Enkel brukermanual Innhold Innledning... 3 Logg inn... 3 Feilmelding... 3 Sperret bruker / Glemt passord... 4 Bytt passord... 5 Innstillinger og oppstartsregister... 5 Søk og Svar... 6 Velg tjeneste/register...

Detaljer

Brukerveiledning. For student hjemmeeksamen

Brukerveiledning. For student hjemmeeksamen Brukerveiledning For student hjemmeeksamen Oppdatert 26. oktober 2015 1 Innhold Innledning Pålogging Godkjente nettlesere Din oversikt over prøver og eksamener Gjennomføre eksamen Navigere i eksamensoppgaven

Detaljer

Spøkelsesjakten. Introduksjon

Spøkelsesjakten. Introduksjon 1 Spøkelsesjakten All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club. Introduksjon

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2015

TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2015 Øving 1 LF LØSNINGSFORSLAG Mål for denne øvinga:

Detaljer

Noen innebygde funksjoner - Vektorisering

Noen innebygde funksjoner - Vektorisering 1 Kunnskap for en bedre verden TDT4110 Informasjonsteknologi grunnkurs: Uke 41: «Matlab programs» (kapittel 6) Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no

Detaljer

Labquality/NKK ELEKTRONISK RESULTATSKJEMA VIA INTERNET. Åpning av skjemaet. Logg inn på Participant services. Velg resultatskjemaet

Labquality/NKK ELEKTRONISK RESULTATSKJEMA VIA INTERNET. Åpning av skjemaet. Logg inn på Participant services. Velg resultatskjemaet ELEKTRONISK RESULTATSKJEMA VIA INTERNET Åpning av skjemaet Logg inn på Participant services 1. Åpne internett leseren din (IE7 eller senere er den mest egnede nettleseren) 2. Skriv i adressefeltet: http://www.labquality.fi

Detaljer

Enkel veiledning for: GSM key3+

Enkel veiledning for: GSM key3+ Enkel veiledning for: GSM key3+ 1 Innhold Kort beskrivelse på oppstart:... 3 Tilkobling på GSM Key 3+... 4 1. Offline programmering vis SMS.... 6 2. Administrator: (Må legges inn)... 7 3. Enhetsinformasjon:...

Detaljer

TDT4102 Prosedyre og Objektorientert programmering Vår 2014

TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap TDT4102 Prosedyre og Objektorientert programmering Vår 2014 Øving 1 Frist: DD.MM.YYYY Mål for denne øvinga:

Detaljer

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00

EKSAMEN. Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 EKSAMEN Emnekode: ITM20606 ITF10208 Dato: Emne: Webprogrammering med PHP (kont.) Webprogrammering 1 (kont.) Eksamenstid: 09.00-13.00 01/06-2010 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater

Detaljer

INF109 - Uke 1b 20.01.2016

INF109 - Uke 1b 20.01.2016 INF109 - Uke 1b 20.01.2016 1 Variabler Et program er ikke til stor hjelp hvis det er statisk. Statisk betyr at programmet bare bearbeider faste data som er lagt inn i programkoden. For å gjøre programmer

Detaljer

Litt om dette dokumentet

Litt om dette dokumentet FINUT FINUT er et program som skal vise brukeren innholdet av våre findata-serier. Dette kan gjøres både for målinger og avledede data. Brukeren skal også kunne foreta enkle statistiske operasjoner på

Detaljer

IN1000 Obligatorisk innlevering 7

IN1000 Obligatorisk innlevering 7 IN1000 Obligatorisk innlevering 7 Frist for innlevering: 23.10. kl 12:00 Introduksjon I denne innleveringen skal du lage et program som simulerer cellers liv og død. Dette skal du gjøre ved hjelp av en

Detaljer

Go with the. Niende forelesning. Mye matematikk i boka her ikke så komplisert, men mye å holde styr på.

Go with the. Niende forelesning. Mye matematikk i boka her ikke så komplisert, men mye å holde styr på. Go with the Niende forelesning Mye matematikk i boka her ikke så komplisert, men mye å holde styr på. Fokuserer på de viktigste ideene i dagens forelesning, så det forhåpentligvis blir lettere å skjønne

Detaljer

Dagens tema: 12 gode råd for en kompilatorskriver. Sjekking av navn. Lagring av navn. Hvordan finne et navn?

Dagens tema: 12 gode råd for en kompilatorskriver. Sjekking av navn. Lagring av navn. Hvordan finne et navn? Dagens tema: 12 gode råd for en kompilatorskriver Hva skal gjøres med navn? Sjekking av navn Hvordan sjekke navn? Testutskrifter 12 gode råd En kompilator må også sjekke riktig navnebruk: Det må ikke forekomme

Detaljer

Asteroids. Oversikt over prosjektet. Steg 1: Enda et flyvende romskip. Plan. Sjekkliste. Introduksjon

Asteroids. Oversikt over prosjektet. Steg 1: Enda et flyvende romskip. Plan. Sjekkliste. Introduksjon Asteroids Ekspert Scratch Introduksjon På slutten av 1970-tallet ga Atari ut to spill hvor man skulle kontrollere et romskip. Det første var Lunar Lander, men dette ble utkonkurrert av Asteroids som Atari

Detaljer

Manual for å oppgrade TS 1000 fra:

Manual for å oppgrade TS 1000 fra: Manual for å oppgrade TS 1000 fra: Versjon 4.xx til versjon. 5.02 F01 04.02.2011 Første versjon TKi FK Rev. Dato: Beskrivelse: Utarbeidet Sign. Kontrollert Sign INNHOLD 1 GENERELT OM OPPGRADERING TIL VERSJON

Detaljer

Månedsoversikt gjennom hele året.

Månedsoversikt gjennom hele året. Ditt_navn_Avdeling_2016_Tidsregisteringsskjema-v01.0 Månedsoversikt gjennom hele året. Antall arbeidsdager Arbeidstid iht normal arbeidstid pr dag Normal Arbeidstid Ekstra arbeidstid Fravær i arbeidstiden

Detaljer

Månedsoversikt gjennom hele året.

Månedsoversikt gjennom hele året. Ditt_navn_Avdeling_2016_Tidsregisteringsskjema-v01.0 Månedsoversikt gjennom hele året. Antall arbeidsdager Arbeidstid iht normal arbeidstid pr dag Normal Arbeidstid Ekstra arbeidstid Fravær i arbeidstiden

Detaljer

Brukerveiledning for student skoleeksamen HIST Oppdatert 27. oktober 2014

Brukerveiledning for student skoleeksamen HIST Oppdatert 27. oktober 2014 Brukerveiledning for student skoleeksamen HIST Oppdatert 27. oktober 2014 1 Innhold Innledning Pålogging Din oversikt over prøver og eksamener Valg av språk og skriftstørrelse m.m Besvare eksamen med sikker

Detaljer

Gangemesteren Nybegynner Scratch PDF

Gangemesteren Nybegynner Scratch PDF Gangemesteren Nybegynner Scratch PDF Introduksjon I dag skal vi lage et nyttig spill, nemlig et spill som hjelper oss å lære andre ting. Vi skal få hjelp til å lære gangetabellen! Steg 1: Læremesteren

Detaljer

student s104111, s107911, s122357

student s104111, s107911, s122357 Forord Denne brukerveiledning er ment som et hjelpemiddel for brukerne av administrasjonssystemet og vaktsystemet. Målgruppen for administrasjonssystemet er avdelings ledere på Grefsenhjemmet, mens målgruppen

Detaljer

Veileder for opplasting av AKTIV sporlogg til PC

Veileder for opplasting av AKTIV sporlogg til PC Veileder for opplasting av AKTIV sporlogg til PC Det finnes i dag flere forskjellige GPS merker på markedet. Til fritidsbruk, og spesielt i redningstjenesten er det Garmin som benyttes mest. Det finnes

Detaljer

3. Introduksjon til prosjektet Hringr. Scratch fra scratch Enkel programmering for nybegynnere

3. Introduksjon til prosjektet Hringr. Scratch fra scratch Enkel programmering for nybegynnere 3. Introduksjon til prosjektet Hringr 29 Sammenlikninger hvis og hvis-ellers Vi mennesker bruker sammenlikninger hundrevis av ganger hver eneste dag. Når vi utfører oppgaver, når vi tenker og når vi jobber.

Detaljer

TDT4105 IT Grunnkurs Høst 2012

TDT4105 IT Grunnkurs Høst 2012 TDT4105 IT Grunnkurs Høst 2012 Norges teknisk naturvitenskapelige universitet Institutt for datateknikk og informasjonsvitenskap Øving 9 1 Teori a) Hva er en protokoll? b) Hva er HTTP og når brukes den?

Detaljer

Arbeidskrav 1. Se fremdriftsplanen for innleveringsfrist. Emneansvarlig: Olav Dæhli 1

Arbeidskrav 1. Se fremdriftsplanen for innleveringsfrist. Emneansvarlig: Olav Dæhli 1 Arbeidskrav 1 Se fremdriftsplanen for innleveringsfrist Emneansvarlig: Olav Dæhli 1 Skjemaer Løsningen skal inneholde minst 3 skjemaer (Forms) Ett av skjemaene skal være en meny som kan åpne de andre skjemaene

Detaljer

Fra datax til Visma eaccounting

Fra datax til Visma eaccounting Fra datax til Visma eaccounting Steg 1 Eksport av data Dersom du har registre på kunder, leverandører og/eller artikler i datax, kan du enkelt få med deg alt dette over til Visma eaccounting. Hvordan eksportere

Detaljer

Tabellen viser en serie med verdier for den uavhengige variabelen, og viser den tilhørende verdien til den avhengige variabelen.

Tabellen viser en serie med verdier for den uavhengige variabelen, og viser den tilhørende verdien til den avhengige variabelen. Kapittel 13: Tabeller 13 Oversikt over tabeller... 222 Oversikt over fremgangsmåten for å generere en en tabell... 223 Velge tabellparametre... 224 Vise en automatisk tabell... 226 Bygge en manuell tabell

Detaljer

Binærfiler versus tekstfiler

Binærfiler versus tekstfiler 1 TDT4110 Informasjonsteknologi grunnkurs: Filbehandling Kunnskap for en bedre verden Amanuensis Terje Rydland Kontor: ITV-021 i IT-bygget vest (Gløshaugen) Epost: terjery@idi.ntnu.no Tlf: 735 91845 TDT4105

Detaljer

Skilpadder hele veien ned

Skilpadder hele veien ned Level 1 Skilpadder hele veien ned All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your

Detaljer

Hvor i All Verden? Del 3 Erfaren Scratch PDF

Hvor i All Verden? Del 3 Erfaren Scratch PDF Hvor i All Verden? Del 3 Erfaren Scratch PDF Introduksjon Hvor i All Verden? er et reise- og geografispill hvor man raskest mulig skal fly innom reisemål spredt rundt i Europa. Dette er den siste av tre

Detaljer

INF Ekstrainnlevering

INF Ekstrainnlevering INF000 - Ekstrainnlevering Temaer på innleveringen: Hele pensum fram til nå. Oppgave E.) Tema: Beslutninger (if/else) Filnavn: Rekkefolge.java a) Lag et program som leser inn tre tall fra brukeren. b)

Detaljer

Unix/Linux en annen måte å gjøre ting på

Unix/Linux en annen måte å gjøre ting på Velkommen Operativsystemer Operativsystemer Unix/Linux en annen måte å gjøre ting på Institutt for informatikk Alle datamaskiner (unntatt de helt knøttsmå) har et operativsystem som administrerer datamaskinen

Detaljer

WinMed Allmenn NPR. www.profdoc.no Lysaker Torg 15 Postboks 163 1325 LYSAKER. Tlf: 815 69 069 Fax: 21 93 63 01 E-post: firmapost@profdoc.

WinMed Allmenn NPR. www.profdoc.no Lysaker Torg 15 Postboks 163 1325 LYSAKER. Tlf: 815 69 069 Fax: 21 93 63 01 E-post: firmapost@profdoc. WinMed Allmenn NPR www.profdoc.no Lysaker Torg 15 Postboks 163 1325 LYSAKER Tlf: 815 69 069 Fax: 21 93 63 01 E-post: firmapost@profdoc.no Bakgrunn...3 Innledning...4 Winmed Admin...5 Oppsett...5 Avdeling...5

Detaljer

Oppgaven består av to deler, del A og del B. Alle skal besvare både del A og del B, men det finnes noen valgmuligheter innenfor hver del.

Oppgaven består av to deler, del A og del B. Alle skal besvare både del A og del B, men det finnes noen valgmuligheter innenfor hver del. Oblig 4 INF1000-SIKT Gulbrand Grås Husleiesystem Mål: Formålet med oppgaven er å gi erfaring med å løse et større programmeringsproblem ved hjelp av klasser og objekter (og tilhørende metoder), dessuten

Detaljer

PCK Håndterminal. Brukerveiledning

PCK Håndterminal. Brukerveiledning PCK Håndterminal Brukerveiledning Velkommen som bruker av PCK Håndterminal. I denne manualen skal vi gå igjennom installasjon og bruk av håndterminal programvaren fra. For å benytte håndterminal sammen

Detaljer

En oppsummering (og litt som står igjen)

En oppsummering (og litt som står igjen) En oppsummering (og litt som står igjen) Pensumoversikt Hovedtanker i kurset Selvmodifiserende kode Overflyt Eksamen En oppsummering Oppsummering Pensum læreboken til og med kapittel 7 forelesningene de

Detaljer

Oppgavesett videregående kurs i NVivo 9

Oppgavesett videregående kurs i NVivo 9 Oppgavesett videregående kurs i NVivo 9 Oppgave 1 Alt i en mappe Når man skal kode på lyd og video er det lurt å ha disse filene i samme mappa som NVivo-prosjektfila. Opprett en mappe på skrivebordet.

Detaljer

Veileder i bruk av GoodReader

Veileder i bruk av GoodReader RISØR KOMMUNE Veileder i bruk av GoodReader Innhold 1. Laste ned dokument fra kommunens hjemmeside til GoodReader... 2 2. Bruke GoodReader... 7 3. Redigere filnavn... 8 4. Opprette kataloger / mapper...

Detaljer

Eksamensoppgaver 2014

Eksamensoppgaver 2014 Eksamensoppgaver 2014 Først kommer alle de relevante små-oppgavene og deretter den store oppgaven. Oppgave 1 (4 p) a) Hva er verdien til tall etter at følgende kode er utført? tall = (5+3)*2 tall = tall+2

Detaljer