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



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

Høgskoleni østfold EKSAMEN

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

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

EKSAMEN ITF Webprogrammering 1 Dato: Eksamenstid: Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne)

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

Høgskoleni østfold EKSAMEN

EKSAMEN (Konvertert fra en gammel PHPeksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

EKSAMEN (Konvertert fra en gammel PHP-eksamen)

Høgskoleni østfold EKSAMEN. Emne: Innføring i programmering

Høgskoleni østfold EKSAMEN

EKSAMEN (Konvertert fra en gammel PHPeksamen)

EKSAMEN. Algoritmer og datastrukturer. Eksamensoppgaven: Oppgavesettet består av 11 sider inklusiv vedlegg og denne forsiden.

Hjelpemidler: 4 A4-sider (2 to-sidige ark eller 4 en-sidige ark) med egenproduserte notater (håndskrevne/maskinskrevne)

Høgskoleni østfold EKSAMEN. ITF10213 Innføring i programmering (Høst 2013)

EKSAMEN. Dato: 9. mai 2016 Eksamenstid: 09:00 13:00

EKSAMEN. Objektorientert programmering

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

EKSAMEN. Emne: Algoritmer og datastrukturer

EKSAMEN. Emne: Algoritmer og datastrukturer

EKSAMEN. Algoritmer og datastrukturer

Løsningsforslag til EKSAMEN

EKSAMEN med løsningsforslag

HØGSKOLEN I SØR-TRØNDELAG

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

Løsningsforslag til 1. del av Del - EKSAMEN

Høgskoleni østfold EKSAMEN. Dato: Eksamenstid: kl til kl. 1200

Oppgavesettet består av 7 sider, inkludert denne forsiden. Kontroll& at oppgaven er komplett før du begynner å besvare spørsmålene.

EKSAMEN. Operativsystemer. 1. Læreboken "A Practical Guide to Red Hat Linux" av Mark Sobell 2. Maks. tre A-4 ark med selvskrevne notater.

Dersom noen oppgaver er så vanskelige at du ikke vet hvordan du skal løse de, gjør forenklinger og forklar nøye hva du har forenklet/tatt bort.

Oppsummering - Kurset (10/ )

Løsningsforslag EKSAMEN

EKSAMEN Løsningsforslag. med forbehold om bugs :-)

1. del av Del - EKSAMEN

består av 7 sider inklusiv denne forsiden og vedlegg. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

Høgskoleni østfold EKSAMEN. Emnekode: Emne: ITD13012 Datateknikk (deleksamen 1, høstsemesteret) Dato: Eksamenstid: kl til kl.

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærer: Robert Roppestad. består av 5 sider inklusiv denne forsiden, samt 1 vedleggside.

HØGSKOLEN I SØR-TRØNDELAG

Ny/utsatt EKSAMEN. Dato: 6. januar 2017 Eksamenstid: 09:00 13:00

Løsningsforslag Øving 7

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

LITT OM OPPLEGGET. INF1000 EKSTRATILBUD Stoff fra uke September 2012 Siri Moe Jensen EKSEMPLER

Emnenavn: Datateknikk. Eksamenstid: 3 timer. Faglærere: Robert Roppestad. Hele oppgavesettet består av 8 oppgaver, samt 1 vedlegg.

EKSAMEN (Del 1, høsten 2015)

EKSAMEN Emnekode: ITD13012

UNIVERSITETET I OSLO

IN1140, H2018 gruppetime oppgaver Introduksjon til Tekst i Python

EKSAMEN. Operativsystemer. Kontroller at oppgaven er komplett før du begynner å besvare spørsmålene.

KANDIDATEN MÅ SELV KONTROLLERE AT OPPGAVESETTET ER FULLSTENDIG

UNIVERSITETET I OSLO

EKSAMEN. Evaluering av IT-systemer. Eksamenstid: kl 0900 til kl 1300

Algoritmer og Datastrukturer

EKSAMEN ITF Innføring i programmering Dato: Eksamenstid: 11/

UNIVERSITETET I OSLO

Høgskoleni østfold NY/UTSATT EKSAMEN

EKSAMEN. Emne: V1: Tall og algebra, funksjoner 1. Eksamenstid: 6 timer kl til kl.15.00

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

1,r H øgs kolen i Østfol d

Høgskoleni østfold EKSAMEN. Oppgavesettet består av 8 sider inklusiv denne forsiden og vedlegg.

EKSAMEN. Emnekode: Emne: Matematikk for IT ITF Eksamenstid: Dato: kl til kl desember Hjelpemidler: Faglærer:

EKSAMEN (Del 1, høsten 2014)

Løsningsforslag til EKSAMEN

TDT4102 Prosedyreog objektorientert programmering Vår 2016

Høgskoleni østfold EKSAMEN. Ikke-programmerbar lommeregner uten grafisk skjerm Monica Nordbakke Marianne Maugesten

EKSAMEN. Oppgavesettet består av 11 oppgaver med i alt 21 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

Ny EKSAMEN. Operativsystemer og nettverk

EKSAMEN. Emne: Datakommunikasjon

Antall sider (inkl. forsiden): 7. Alle trykte og håndskrevne

lfæ~~~~:::j~~:~l -.~=:~-t::-d I Alle trykte og håndskrevne EKSAMENSOPPGA VE Side l av 5 Eksamenstid:

HØGSKOLEN I SØR-TRØNDELAG

Høgskoleni østfold EKSAMEN. Hjelpem idler: Faglærer: Kåre Sorteberg Ingen hjelpemidler. Monica Kristiansen

Objektorientert Programmering Ekstraordinær eksamen 2014

EKSAMEN. Emne: V1: Tall og algebra, funksjoner 1. Eksamenstid: 6 timer, kl til kl

EKSAMEN. Oppgavesettet består av 9 oppgaver med i alt 20 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

Kondisjonstest. Algoritmer og datastrukturer. Python-oppgaver. Onsdag 6. oktober Her er noen repetisjonsoppgaver i Python.

Høgskoleni østfold EKSAMEN. LSVIMAT12 Matematikk 1, V 1: Tall og algebra. funksjoner 1. Dato: 16. desember Eksamenstid: kl til kl 15.

Her er eksamenssett fra Vår '09. Av Robin Sværen og Simen Arvesen.

UNIVERSITETET I OSLO

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

Du må håndtere disse hendelsene ved å implementere funksjonene init(), changeh(), changev() og escape(), som beskrevet nedenfor.

Eksamen Objektorientert Programmering 2013

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

SAS FANS NYTT & NYTTIG FRA VERKTØYKASSA TIL SAS 4. MARS 2014, MIKKEL SØRHEIM

EKSAMEN. Oppgavesettet består av 9 oppgaver med i alt 21 deloppgaver. Ved sensur vil alle deloppgaver telle omtrent like mye.

EKSAMEN. Emne: Emnekode: Matematikk for IT ITF Dato: Eksamenstid: til desember Hjelpemidler: Faglærer:

Oblig 4. Alternativ A: Alternativ B: Denne obligen har 3 ulike alternativ: Alternativ A: For de som har lyst til å gjøre et eget prosjekt

Løsningsforslag. Emnekode: Emne: Matematikk for IT ITF Eksamenstid: Dato: kl til kl desember Hjelpemidler: Faglærer:

EKSAMEN. Oppgavesettet består av 16 oppgaver. Ved sensur vil alle oppgaver telle like mye med unntak av oppgave 6 som teller som to oppgaver.

Løsningsforslag til 1. del av Del - EKSAMEN

TDT4102 Prosedyreog objektorientert programmering Vår 2016

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

Løsningsforslag til 2. del av Del - EKSAMEN

EKSAMEN. Emne: Innføring i informasjons- og kommunikasjonsteknologi

EKSAMEN. Tall og algebra, funksjoner 2

EKSAMEN. Oppgavesettet består av 3 oppgaver. Alle spørsmål på oppgavene skal besvares, og alle spørsmål teller likt til eksamen.

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

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

UNIVERSITETET I OSLO

NY EKSAMEN Emnekode: ITD13012

Transkript:

EKSAMEN Emnekode: Emne: ITM20606 Webprogrammering med PHP Dato: Eksamenstid: 11/12-2007 09.00-13.00 Hjelpemidler: 2 A4 ark (4 sider) med egenproduserte notater (håndskrevne/maskinskrevne) Faglærer: Tom Heine Nätt Eksamensoppgaven: Oppgavesettet består av 10 sider inklusiv denne forsiden og vedlegg, og er inndelt i 4 deler med henholdsvis 10, 4, 2 og 3 oppgaver. Du er selv ansvarlig for å kontrollere at oppgavesettet er komplett. Det er på hver del og oppgave angitt hvor mye disse teller av totalen. Karakter fastsettes dog på basis av en helhetsvurdering av besvarelsen. Les gjennom alle oppgavene før du begynner. Husk at det ikke er gitt at oppgavene står sortert etter økende vanskelighetsgrad. Det alltid er bedre å svare noe, om så bare hvordan du ser for deg at oppgaven kunne vært løst, enn å ikke skrive noe i det hele tatt på en oppgave. Riktig god jul til dere alle, og takk for et veldig hyggelig semester :-) Lykke til! Sensurdato: 14/01-2008 Karakterene er tilgjengelige for studenter på studentweb senest 2 virkedager etter oppgitt sensurfrist. Følg instruksjoner gitt på: www.hiof.no/studentweb Side 1 av 10

Del 1 Kodeforståelse (20%) Her skal du kun svare på selve spørsmålet, og du trenger ikke forklare hvordan du kommer frem til svaret. NB! Les koden og selve spørsmålet nøye, for det kan være mange feller å gå i her... Oppgave 1.1 (2%) $tall = 5; if($tall > 3) echo $tall; if($tall > 0) echo ($tall-3); else echo ($tall-5); Oppgave 1.2 (2%) $tall = 5; if($tall > 3) echo $tall; else if($tall > 0) echo ($tall-3); else echo ($tall-5); Oppgave 1.3 (2%) for($i = 6; $i < 10 ; $i++) echo ($i - 1); Side 2 av 10

Oppgave 1.4 (2%) $i = 1; while($i > 0) echo "A"; $i--; Oppgave 1.5 (2%) Hvilken boolsk verdi får variablene $v1 og $v2, dersom $a=0, $b=7, $c = false og $d = true? $v1 =!($c!= $d); $v2 = ( ($a <= $b) && ($b!= $b) ) ($b 7 == $a); Oppgave 1.6 (2%) function magisk($tall1,$tall2,$valg) if($valg==true) return $tall1; else return $tall2; echo magisk(3,6,false). " ". magisk(4,7, (4<8)); Oppgave 1.7 (2%) function tull($tall1,$tall2) return $tall1+$tall2; echo tull( tull(4,5), tull(6,4) ); Side 3 av 10

Oppgave 1.8 (2%) for($i=10; $i>0; $i--) echo $i; if($i%4==0) break; Oppgave 1.9 (2%) $t = array(4,7,3,2,5); for($i = 0; $i < count($t) ; $i++) if($i>2) echo "A"; else echo $t[$i]; echo " - "; Oppgave 1.10 (2%) for($teller=0;$teller<5;$teller++) echo ($teller%2==0? "A" : "B" ); Slutt Del 1 Side 4 av 10

Del 2 Koding (30%) Innebygde funksjoner i PHP, som kan være nyttige på noen av oppgavene, ligger vedlagt som utdrag av manualsider. Alle fire oppgavene i denne delen kan løses uavhengig av hverandre. Oppgave 2.1 (9 %) Skriv ferdig følgende funksjoner, og inkluder ett eksempel på bruk. Husk at du kan skrive eksempelet på bruk selv om du ikke klarer å gjøre ferdig selve funksjonen. a) Funksjon som returnerer det minste av to tall. function minimum($tall1,$tall2) b) Funksjon som konverterer en verdi fra grader Celsius til grader Fahrenheit. Formelen for dette er som følger: F = (9/5)*C + 32. function tilfahrenheit($c) c) Funksjon som finner ut hvordan to tall forholder seg til hverandre. Er tall1 mindre enn tall2 skal -1 returneres, er de like skal 0 returneres og er tall1 større enn tall2 skal 1 returneres. function sammenlign($tall1,$tall2) Oppgave 2.2 (9 %) Vi har en array med tallverdier som for eksempel kan være definert som følger: $talliste = array(4,5,6,-2,3,-4,5,7,-4); Skriv kode som gjør følgende operasjoner med arrayen: a) Skriver ut summen av alle positive tall. b) Skriver ut antallet negative tall. c) Skriver ut det største partallet. Oppgave 2.3 (4%) Skriv kode som sørger for at teksten i en variabel med navn $tekst ikke er lenger enn 100 tegn. Er den det, skal teksten kortes ned til 97 tegn og tre prikker skal legges til på slutten. Oppgave 2.4 (8%) Forklar kort (gjerne i stikkordsform/punktliste) følgende. Meningen her er å skrive nok til å overbevise sensor om at du har god forståelse for temaet. a) Hva er en funksjon, og hvorfor ønsker man å benytte funksjoner? b) Om vi sender data til et PHP-script kan vi velge mellom metodene GET og POST. Hva er forskjellen på disse metodene, og hvilke fordeler og ulemper ser du ved hver av dem? Slutt Del 2 Side 5 av 10

Del 3 Filbehandling (25%) Resultatene fra en test med tre ja/nei-spørsmål ligger lagret i en fil med navn resultater.dat på følgende format: deltakernummer;svara;svarb;svarc Et utdrag av fila kan derfor se ut som følger: 3;ja;nei;nei 4;ja;nei;ja 5;nei;ja;ja Riktige svar på spørsmålene er A=ja, B=ja og C=nei. For å bestå testen må man ha to eller flere riktige svar. Oppgave 3.1 (15%) Skriv kode som leser inn fila, og skriver ut en resultatliste på følgende form. Det som vises her er basert på det samme utdraget av fila som ble vist i innledningen til oppgaven. 3: 2 rette (Bestått) 4: 1 rett (Ikke Bestått) 5: 1 rett (Ikke Bestått) NB! Legg merke til entall/flertallsformen i utskriften (2 rette/1 rett). Oppgave 3.2 (10%) Hvilke endringer må du gjøre på koden fra oppgave 3.1, for å få følgende oppsummering til slutt i utskriften. Det som vises her er basert på det samme utdraget av fila som ble vist i innledningen til oppgaven. Antall bestått: 1 Antall ikke bestått: 2 Strykprosent: 66 % Tips: Formelen for å finne strykprosenten er: (antall stryk/antall besvarelser)*100 I utskriften av strykprosenten kan du benytte funksjonen round for å avrunde svaret. Denne funksjonen tar som argument den verdien som skal avrundes, og returnerer denne verdien i avrundet form. Et utdrag av manualsiden til round finnes i vedlegget. Husk at du ikke trenger skrive all koden fra oppgave 3.1 på nytt, kun indikere godt hvor endringene skal stå. Slutt Del 3 Side 6 av 10

Del 4 SQL (og kobling mot databaser med PHP) (25%) I alle påfølgende oppgaver tar vi utgangspunkt i følgende tabell (med navn Vaerdata) med måledata for været på flere målestasjoner. Merk deg at under vises kun et utdrag av data fra denne tabellen. Den vil inneholde mange flere rader. Vaerdata tidspunkt maalestasjon grader vindstyrke vindretning nedboer tekst 2007-10-13 10:17:00 Halden -2.4 5.5 NNØ 0.1 Overskyet 2007-10-13 10:17:11 Sarpsborg -1.7 7.2 ØNØ 0.0 Lettskyet 2007-10-13 10:18:02 Halden -3.6 5.4 NØ 0.2 Overskyet, snø Oppgave 4.1 ( 10 %) Skriv SQL-spørringer som henter ut følgende data: a) Alle data for målestasjonen i Halden. b) Tidspunkt, målestasjon og antall grader for de målingene med en temperatur lavere enn -15.0 grader. c) Tidspunkt og antall grader for målinger gjort i Halden, sortert etter tidspunktet i stigende rekkefølge (eldste først, nyeste til slutt). d) Antall målinger vi har for Halden. e) Gjennomsnittstemperaturen av målingene gjort i Sarpsborg. Oppgave 4.2 (12 %) Lag et PHP-script som gjør følgende operasjoner mot databasen. Du velger selv om du vil løse dette som tre atskilte oppgaver, eller som én. a) Kobler til databasen. Brukernavnet er "vidar", passordet er "theisen", databasenavnet er "meteo", og databasen ligger på "localhost" i forhold til scriptet. b) Skriver ut alle målingene gjort i Halden med tidspunkt og antall grader. Du kan her velge om du vil formatere utskriften i tabellformat eller som vanlig tekst. Tabellformatet vil imidlertid gi litt bedre uttelling på oppgaven. c) Skriver ut laveste, høyeste og gjennomsnittstemperaturen for Halden på følgende format: Laveste: XXºC Høyeste: XXºC Gjennomsnitt: XXºC Oppgave 4.3 ( 3 %) Forklar kort (gjerne i stikkordsform/punkliste) fordelene og ulempene ved å benytte en database i forhold til filer. Meningen her er å skrive nok til å overbevise sensor om at du har god forståelse for temaet. Slutt Del 4 Side 7 av 10

Vedlegg PHP funksjoner Her følger en nedskalert utgave av diverse manualsider. strlen Get string length Description int strlen ( string $string ) Returns the length of the given string. Example $str = 'abcdef'; echo strlen($str); // 6 $str = 'ab cd'; echo strlen($str); // 5 split Split string into array by regular expression Description array split ( string $pattern, string $string [, int $limit] ) Returns an array of strings, each of which is a substring of string formed by splitting it on boundaries formed by the case-sensitive regular expression pattern. If limit is set, the returned array will contain a maximum of limit elements with the last element containing the whole rest of string. If an error occurs, split() returns FALSE. Example $date = "04/30/1973"; $ar = split("/", $date); echo "M: ". $ar[0]. " D: ". $ar[1]. " Y: ". $ar[2]; // M: 04 D: 30 Y: 1973 Side 8 av 10

trim Strip whitespace (or other characters) from the beginning and end of a string Description string trim ( string $str [, string $charlist] ) This function returns a string with whitespace stripped from the beginning and end of str. Example $text = " These are a few words :)... "; echo trim($text); // "These are a few words :)..." substr Return part of a string Description string substr ( string $string, int $start [, int $length] ) Returns the portion of string specified by the start and length parameters. Parameters string The input string. start If start is non-negative, the returned string will start at the start'th position in string, counting from zero. For instance, in the string 'abcdef', the character at position 0 is 'a', the character at position 2 is 'c', and so forth. length If length is given and is positive, the string returned will contain at most length characters beginning from start (depending on the length of string). If string is less than or equal to start characters long, FALSE will be returned. Example echo substr('abcdef', 1); // bcdef echo substr('abcdef', 1, 3); // bcd echo substr('abcdef', 0, 4); // abcd echo substr('abcdef', 0, 8); // abcdef Side 9 av 10

round Rounds a float float round ( float $val [, int $precision ] ) Returns the rounded value of val to specified precision (number of digits after the decimal point). precision can also be negative or zero (default). Parameters val The value to round precision The optional number of decimal digits to round to, defaults to 0 Example echo round(3.4); // 3 echo round(3.5); // 4 echo round(3.6); // 4 echo round(3.6, 0); // 4 echo round(1.95583, 2); // 1.96 echo round(1241757, -3); // 1242000 echo round(5.045, 2); // 5.05 echo round(5.055, 2); // 5.06 Side 10 av 10