Introduktion till Programutveckling - från Information till Tillämpning (7,5 hp)

Relevanta dokument
Introduktion till Programutveckling - från Information till Tillämpning (7,5 hp)

Introduktion till Programutveckling - från Information till Tillämpning (7,5 hp)

Objektorienterad Systemutveckling 1 (7,5 hp)

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för:

Grundläggande programmering med C# 7,5 högskolepoäng. Provmoment: Ladokkod: Tentamen ges för: TEN1 NGC011 ADAEK17, ASYST17 samt öppen för alla

Grundläggande programmering med C# 7,5 högskolepoäng

Tentamen DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga)

Tentamen på kursen Webbdesign, 7,5 hp

IT och Omvärlden (NIT01A 7,5 hp)

Tentamen Grundläggande programmering

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Viktigt! Glöm inte att skriva tentamenskod på alla blad du lämnar in.

Visual Basic, en snabbgenomgång

Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Tentamen DE14, IMIT14 och SYST14 samt öppen för alla

Tentamen på kursen Webbdesign, 7,5 hp

Tentamen i Algoritmer & Datastrukturer i Java

Enkla datatyper minne

Tentamen på kursen Informationsdesign, 7,5 hp

Omtentamen på kursen Webbdesign, 7,5 hp

Tentamen i Grundläggande programmering STS, åk 1 lördag

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Föreläsning 6: Introduktion av listor

Uppgift (poäng) 1 (2) 2 (3) 3 (4) 4 (4) 5 (3) 6 (4) 7 (6) 8 (6) 9 (8) Summa

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

Tentamen i Digitala system - EITA15 15hp varav denna tentamen 4,5hp

Tentamen'('Datastrukturer,'algoritmer'och'programkonstruktion.'

Tentamen Datastrukturer (DAT037)

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

Datalogi I, grundkurs med Java 10p, 2D4112, Fiktiv tentamen, svar och lösningar och extra kommentarer till vissa uppgifter 1a) Dividera förs

Föreläsning 3-4 Innehåll

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

Bakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT Lars Larsson Algoritmer 1

SMD 134 Objektorienterad programmering

Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Omtentamen i Programmering C, 5p, fristående, kväll,

Programmering för språkteknologer II, HT2011. Rum

Data, typ, selektion, iteration

Namn: Personnr: 1 2D1310 Programmeringsteknik i Java för B,V (1p) 13 januari 2001, kl Hjälpmedel: En Javabok. För betyget godkänt krävs at

i LabVIEW. Några programmeringstekniska grundbegrepp

Exempel på ett litet Ada-program

Beräkningsvetenskap föreläsning 2

Introduktion till MATLAB

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar

Klassdeklaration. Metoddeklaration. Parameteröverföring

Tentamen. Datalogi I, grundkurs med Java 10p, 2D4112, Lördagen den 30 november 2002 kl , salar E33, E34

Grundkurs i programmering, 6 hp (725G61) Dugga 1 tillfälle 3

Introduktion till MATLAB, med utgångspunkt från Ada

Variabler och konstanter

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

PROGRAMMERINGSTEKNIK TIN212

OOP Tenta

TENTAMEN OOP

Objektorienterad Programmering (TDDC77)

Johan Karlsson Datavetenskap för teknisk kemi, 10p, moment 1 Datavetenskap Umeå Universitet. Tentamen

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

Lösningar till uppgifterna sätts ut på kurssidan och på WebCT (Gamla Tentor) i dag kl 19. Tentamen i Programmering C, 5p, Distans, övriga,

Tentamen i Grundläggande programmering STS, åk 1 fredag

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??

Det finns en referensbok (Java) hos vakten som du får gå fram och läsa men inte ta tillbaka till bänken.

Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1. Måndagen den 10 januari 2011,

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Kvalitets- och miljöstyrning/ Kvalitet och ledningssystem

Introduktion C-programmering

Tentamen ges för: Tentamensdatum: Tid:

Repetition C-programmering

TDIU01 - Programmering i C++, grundkurs

Introduktion till algoritmer - Lektion 4 Matematikgymnasiet, Läsåret Lektion 4

Tentamen i Grundläggande programmering STS, åk 1 fredag

Översikt över Visual Basic

Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?

Provmoment: Omtentamen 1 (dvs salstentamen 2) för kursen under LP4, TS1A, 21TS1U (VT14P4) Tentamen ges för: För fastighetsmäklare (FM12)

Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng

Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl Tentamen i Programmering C, Fri, Kväll,

Tentamen i IE1204/5 Digital Design onsdagen den 5/

Multipel tilldelning. Introduktion till programmering D0009E. Föreläsning 6: Iteration. while-satsen. Kom ihåg. Snurror kontra rekursion

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Systemutvecklare SU13, Malmö

DD1314 Programmeringsteknik

Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.

Lösningar till uppgifterna sätts ut på kurssidan på nätet idag kl Omtentamen i Programmering C, 5p, A1, D1, E1, Fri, Pr1, Te/Ek1,

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

Tentamen Datastrukturer (DAT036)

Laboration 1 Introduktion till Visual Basic 6.0

Uppgift: Algoritm för att beräkna kontrollsiffran i ett personnummer givet de 9 första siffrorna. Torrsimning av algoritm för personnummer

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Tentamen OOP

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Tentamen i. Programmering i språket C

Tentamen PC-teknik 5 p Lösningar och kommentarer

PROGRAMMERING-Java Omtentamina

Objektorienterad Systemutveckling (7,5 hp)

JAVAUTVECKLING LEKTION 4

Planering Programmering grundkurs HI1024 HT 2014

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

KOMPLETTERANDE HEMTENTAMEN TDDB53

Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.

Introduktion till programmering och Python Grundkurs i programmering med Python

Tentamen Datastrukturer för D2 DAT 035

Transkript:

[ sida 1 ] Introduktion till Programutveckling - från Information till Tillämpning (7,5 hp) Provmoment: Ladokkod: Tentamen ges för: Tentamen (5 hp) 21IP1 SYST13h atum och tid: 2014-08-25, kl 09.00 13.00 Hjälpmedel: Inga hjälpmedel tillåtna Rättningstiden för en tentamen vid HIT är högst 20 arbetsdagar (ca 4 veckor). Utöver rättningstiden tillkommer administrativ tid för Studententrum och administration för distribution av tentamen samt inregistrering av resultat. Resultatet bör därför vara synligt på MittKonto senast inom 5 veckor efter skrivningstillfället. etyg: Maxpoäng på denna tentamen är 40 poäng. För betyget Godkänd på tentamen krävs minst 20 poäng. För betyget Väl Godkänd på tentamen krävs minst 30 poäng. llmänna anvisningar: 1. Skriv endast på ena sidan av pappret, ej fram och baksida. 2. nge tydligt till vilken fråga svaret hör. 3. Lägg svaren i samma ordning som frågorna i tentamenshäftet 4. Svårlästa svar kan inte rättas! 5. nsträng er att besvara frågorna tydligt. 6. Markera på omslaget till tentamen vilka frågor du lämnat svar på. 7. Om du finner uppgifterna i tentamenstexten ofullständiga skall du göra egna antaganden för de uppgifter du saknar. Redovisa dina egna antaganden. Samtliga frågor besvaras med kurslitteratur och föreläsningar som utgångspunkt. Om du använt ytterligare informationsmaterial för dina svar, anger du från vilket material i dina svar. Ett tips är att du ägnar som första steg lite tid åt att gå igenom frågorna för att därigenom planera och disponera tiden på bästa sätt. u bör även vid denna inspektion fundera lite över hur frågan är formulerad för att uttolka frågans intention. egrepp som t ex, diskutera, exemplifiera, beskriv och förklara säger något om frågans innebörd och hur du bör svara. Lycka till med tentamen! nna Palmquist, fråga 4-5 (0734-612003) jörn belli, fråga 1-3 (0709-955910) ecilia Sönströd, fråga 6-7 (0709-479852) OS!! Vid en skriftlig tentamen måste studenten visa att han/hon har tillräckliga kunskaper inom problemområdet. Många gånger är det möjligt att ge exempel och illustrera, ibland det bästa eller till och med det enda sättet, och kan påverka poängsättningen för svaret. Om du anser att en frågeställning inte är komplett, så är det upp till dig att komplettera med eventuellt saknade förutsättningarna. I sådana fall måste du också ange eventuella tillkommande förutsättningar i ditt svar.

[ sida 2 ] Markera rätt svar för kryssfrågorna med ett tydligt X i därför avsedd ruta i svarsfälten nedan. På kryssfrågorna är endast ett svar korrekt. Om mer än en ruta är ikryssad på en fråga räknas det som ett felaktigt svar. Svarsformulär för fråga 1 1.1 1.6 1.11 1.16 1.2 1.7 1.12 1.17 1.3 1.8 1.13 1.18 1.4 1.9 1.14 1.19 1.5 1.10 1.15 1.20 Varje korrekt svar ger 0,5 poäng, dvs max 10 poäng för fråga 1. Glöm inte att lägga denna sida i det gula tentamenshäftet!

[ sida 3 ] elfrågor för fråga 1. Kryssa i dina svar på sidan 2! 1.1. Vilket av följande skadliga program bäddar in en kopia av sig själv i ett annat program?. virus. mask (worm). trojansk häst. logisk bomb För uppgifterna 1.2 1.4, matcha nätverkstopologin med lämpligaste beskrivning 1.2. usstopologi 1.3. Stjärntopologi 1.4. Ringtopologi. Noderna är sammankopplade i en loop. lla meddelanden går i en riktning.. Noderna är kopplade till en centrum-nod genom vilken alla meddelanden går.. Noderna inom nätverket är hierarkiskt länkade till varandra.. Noderna är kopplade via en kommunikationslinje via vilken alla meddelanden går i båda riktningarna. 1.5. Vilket av följande beskriver aktiviteten att hämta in en sida från sekundärminnet, vilket kan leda till att en annan sida tvingas ut till sekundärminnet?. swapping. kontextbyte. partitionering. virtuellt minne För uppgifterna 1.6 1.8, matcha delen av den magnetiska disken med rätt benämning.. Spår. lock. xel. Sektor 1.9. Vilket av följande beskriver en fil som måste läsas eller skrivas på ett linjärt sätt?. binärfil. sekventiell fil. textfil. katalog 1.10. Vilket av följande är en nätverksenhet som dirigerar ett paket till sin slutdestination??. modem. gateway. nod. router

[ sida 4 ] För uppgifterna 1.11-1.13, matcha operatorn med rätt operatorkategori. 1.11. MO. Relationsoperatorer 1.12. N. oolska operatorer 1.13. >. Unära operatorer. ritmetiska operatorer 1.14. Vilken typ av moln används exklusivt av en specifik grupp eller organisation?. Publika moln. Privata moln. Gemensamma moln (community cloud). Hybridmoln 1.15. Vilket av följande utgör i Visual asic.net en 16-bitars heltalstyp? ) yte ) Short ) Integer ) Long 1.16. Vilket av följande innehåller programräknaren (program counter)?. kontrollenheten. arithmetisk/logiska enheten. sekundärminnet. primärminnet För uppgifterna 1.17-1.20, matcha grinden med ett korrekt påstående om den. 1.17. N 1.18. NN 1.19. OR 1.20. NOT. Ger utsignal 0 endast om alla insignaler är 1.. Ger utsignal 1 endast om alla insignaler är 1.. Ger utsignal 0 endast om alla insignaler är 0.. Inverterar insignalen. Glöm inte att lägga svarssidan (sida 2) för kryssvaren i det gula tentamenshäftet! För de följande frågorna bör svaren vara korta och koncisa, dvs att det inte borde behövas några längre essäer. Svaret för respektive fråga skall skrivas på ett separat blad, tydligt angivet vilken fråga det är ett svar på.

[ sida 5 ] Fråga 2 (5p) Nedanstående program börjar med att användaren matar in ett tiosiffrigt personnummer (utan bindestreck), varefter programmet kontrollerar ifall personnumrets kontrollsiffra är korrekt eller inte. et inmatade personnumret lagras internt som en textsträng, ur vilken varje enskild siffra bryts ut och omvandlas från tecken till det tal siffran motsvarar med hjälp av den inbyggda funktionen Integer.Parse(). a) Om det inmatade personnumret är ofullständigt, dvs innehåller färre än 10 siffror, på vilken rad kommer då programmet att krascha? b) Under förutsättning att ett korrekt personnummer matas in, vad kommer då att skrivas ut i slutet av programmet? När en funktion anropas har de data som används vid metodanropet olika benämningar beroende på om man ser den utifrån (vid anropet) eller inifrån metoden. a) Vad är den korrekta benämningen på användningen av variabeln personnr på rad 9? b) Vad är de korrekta benämningarna (det finns två synonyma begrepp) på användningen av variabeln pnr på rad 6? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 Module Module1 Sub Main() onsole.write("mata in ett 10-siffrigt personnummer: ") im pnr s String = onsole.readline() onsole.writeline(validatepnr(pnr)) End Sub Public Function ValidatePnr(personnr s String) s oolean im siffra s Integer = 0 im summa s Integer = 0 im i s Integer = 0 While (i < 10) siffra = Integer.Parse(personnr(i)) ' Konverterar tecknet till tal siffra = siffra * 2 If siffra > 9 Then siffra = siffra \ 10 + siffra Mod 10 End If summa = summa + siffra + Integer.Parse(personnr(i + 1)) i = i + 2 End While Return (summa Mod 10 = 0) End Function End Module

[ sida 6 ] Fråga 3 (5p) Skriv källkoden för ett program i Visual asic.net som läser in ett tal från användaren och sedan med hjälp av en loop skriver ut multiplikationstabellen för det talet. Exempel på utskrift ser du nedan. Fråga 4 (2p) Namnge fem typer av data som kan lagras i en dator. Fråga 5 (3p) Subtraktion med binära tal. Vad blir resultatet av subtraktionen nedan? 0101-0011

[ sida 7 ] Fråga 6 (2+3p) a) Hur fungerar sorteringsalgoritmen ubble Sort? Ge en förklaring i ord som beskriver algoritmens arbetssätt. b) nvänd ubble Sort för att sortera nedanstående vektor. Visa stegvis hur algoritmen arbetar genom att visa exakt hur elementen förflyttas. 16 4 13 9 2 10 Fråga 7 (2+3p) Vid design av program och algoritmer kan man använda en metodologi som kallas topdown. a) Ge en detaljerad beskrivning av hur detta fungerar. b) Tillämpa top-downdesign för att designa en algoritm som spelar Hangman (hänga gubben). Observera att ni inte skall skriva någon kod eller pseudokod, utan bara tillämpa designprincipen så att ni kommer ner till delar som kan skrivas som pseudokod. Fråga 8 (2+3p) En av de stora utmaningarna inom artificiell intelligens är att få datorer att hantera mänskligt språk, så kallat naturligt språk. a) Vilka olika uppgifter måste en dator klara av för att kunna kommunicera med människor på naturligt språk? b) iskutera kort hur långt man har kommit i lösande av dessa uppgifter, dvs. vad man klarar ganska bra och vad man fortfarande har problem med. etta är sista sidan Glöm inte att lägga dina svar (inklusive sida 2 från detta häfte, formuläret för kryssfrågorna) i det gula tentamenshäftet! Lägg svaren i samma ordning som frågorna!

[ sida 8 ] ppendix Notation för pseudokods Variabler Enkla variabler: nvänd variabelnamn som inleds med liten bokstav, t.ex. summa eller tal. Enkla variabler behöver inte deklareras innan de används. Vektorer: skall deklareras innan de används, genom att ange typ och storlek. Exempelvis: integer data[20]. För att referera till en plats i vektorn, använd [ ], exempelvis data[7]. Enkla satser Tilldelning: nvänd Set to., exempelvis: Set summa to 64 eller Set tal to tal + 1 Input/output: Read för input och Write för output, exempelvis Read num eller Write summa eller Write Summan är + summa Kontrollstrukturer Selektion (Val): nvänd IF, eventuellt med ett ELSE. Syntaxen är: IF (villkor) satser om villkoret är sant respektive IF (villkor) satser om villkoret är sant ELSE satser om villkoret är falskt Repetition (Loop): nvänd WHILE med följande syntax: WHILE (villkor) satser att upprepa