KOMPLETTERANDE HEMTENTAMEN TDDB53

Relevanta dokument
KOMPLETTERANDE HEMTENTAMEN TDDB53

KOMPLETTERANDE HEMTENTAMEN 2 TDDB53

TENTAMEN TDDB53. Programmering i Ada för MI (provkod TEN2) den 7 april 2010 kl Institutionen för datavetenskap, IDA Olle Willén mars 2010

Tentamen Grundläggande programmering

Exempel på ett litet Ada-program

Preliminär elmarknadsstatistik per månad för Sverige 2014

2016, Arbetslösa samt arbetslösa i program i GR i åldrarna år

Datatyp - mera. Begreppet värde, igen. Ett slags mått på en egenskap, eller något fenomen. Ska ges en bred tolkning!

Föreläsning 6: Introduktion av listor

Preliminär elmarknadsstatistik per månad för Sverige 2014

Tentamen ID1004 Objektorienterad programmering April 7, 2015

Inledande programmering med C# (1DV402) Summera med while"-satsen

Tentamen i. Programmering i språket C

Preliminär elmarknadsstatistik per månad för Sverige 2013

TDDE10 TDDE11, 725G90. Gemensam kurswebsida på:

Tentamen ID1004 Objektorienterad programmering October 29, 2013

Månadsnamn september Några deklarationer

TDDC77 Objektorienterad Programmering

Tentamen i. TDDC67 Funktionell programmering och Lisp

Översikt Introduktion DST 1. Nicholas Wickström. IDE, Högskolan i Halmstad. N. Wickström

Imperativ programmering. Föreläsning 2

Tentamen i. för D1 m fl, även distanskursen. lördag 26 februari 2011

Omgivningar. Omgivningar är viktiga eftersom de avgör vilka namn som är synliga och därmed dessas innebörd och de värden som är förknippade med dem.

Föreläsning 1 & 2 INTRODUKTION

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

Tentamen ID1004 Objektorienterad programmering May 29, 2012

Klassdeklaration. Metoddeklaration. Parameteröverföring

Programmering C: Tentamen of 5 Prioritet och associativitet hos operatorerna i C De viktigaste operatorerna: Prioritet Kategori Operator

Typkonvertering. Java versus C

2D1339 Programkonstruktion för F1, ht 2003

Föreläsning 3: Booleans, if, switch

Variabler och konstanter

Planering Programmering grundkurs HI1024 HT 2014

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Strukturdiagram. Styra. Algoritmer. Val

Outline. I Vi kan lätt göra samma sak för fyra variabler... I Hur gör vi för 400 inlästa värden? I Ofta behöver man flera likadana variabler

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

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

TDDC30. Kursledning Kursledare: Jonas Lindgren. Labassistent: Jonas Lindgren Labassistent: Niklas Holma Labassistent: Erik Nilsson

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

Det är principer och idéer som är viktiga. Skriv så att du övertygar examinatorn om att du har förstått dessa även om detaljer kan vara felaktiga.

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

Tentamen i Programmering grundkurs och Programmering C

Föreläsning 3-4 Innehåll

HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011,

DD1361 Programmeringsparadigm. Carina Edlund

Tentamen OOP

Föreläsning 5: Introduktion av pekare

Sista delen av kursen

Programspråkslingvistik. Sista delen av kursen. Ett programspråk

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,

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy cards. Slingor

Övning2. Variabler. Data typer

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner

Visual Basic, en snabbgenomgång

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Föreläsning 2, vecka 8: Repetition

Dugga i Grundläggande programmering STS, åk

HI1024 Programmering, grundkurs TEN

Tentamen i. för D1 m fl, även distanskursen. lördag 28 maj 2011

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,

Paket (2) nautisk_mil : constant Float := * foot; ångström : constant Float := 10.0E-10; mile : constant Float := 5280.

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,

Typsystem. Typsystem... Typsystem... Typsystem... 2 *

Repetition C-programmering

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19

Lösningsförslag: Instuderingsfrågor, del D

2D1310 Programmeringsteknik Tentamen (1p) lördag 29 april 2000 kl 14-17

2D1311 Programmeringsteknik för Bio1 och Bio2, vt 2003 Fiktivt prov På flervalsfrågorna är endast ett svar rätt om inget annat anges i frågan! Det rik

Datalogi, grundkurs 1. Lösningsförslag till tentamen

En kort text om programmering i C.

GRUNDER I VHDL. Innehåll. Komponentmodell Kodmodell Entity Architecture Identifierare och objekt Operationer för jämförelse

Objektorienterad Programmering (TDDC77)

TDDC74 Programmering, abstraktion och modellering DUGGA 2

EN BÄTTRE BALANS MED SVAGT SJUNKANDE TRÄVARUPRISER 2015 OCH EN NY PRISUPPGÅNG I MITTEN AV 2016

Läsvecka Mål för veckan Måndag Tisdag Onsdag Torsdag Fredag Lördag Söndag 31 aug 1 sep 2 sep 3 sep 4 sep 5 sep 6 sep

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

Sista delen av kursen

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

TDDC30. Objektorienterad programmering i Java, datastrukturer och algoritmer. Föreläsning 1 Jonas Lindgren, Institutionen för Datavetenskap, LiU

Tentamen i Introduktion till programmering

HI1024 Programmering, grundkurs TEN

Lite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.

Lösningsförslag till tentamen för TDA540 Objektorienterad Programmering

Tentamen ges för: Tentamensdatum: Tid:

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Twincat: PLC Control

2 b) Följande finns definierat: public class Käk String titel = "Chili con carne"; Krydda[] kryddor = new Krydda[10]; kryddor[0] = new Krydda("Svartpe

Beräkningsvetenskap föreläsning 2

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

2 b) Bodega bodegan = new Bodega(); double moms = 0.235; String namn = "Vargtass"; System.out.println(namn + " " + moms + bodegan.ändra(moms, namn); S

2D1339 Programkonstruktion för F1, ht 2004

Systemutvecklare SU13, Malmö

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Omtentamen för TDA540 Objektorienterad Programmering. Institutionen för Datavetenskap CTH HT-16, TDA540. Dag: , Tid:

Data, typ, selektion, iteration

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

2D1339 Programkonstruktion för F1, ht 2003

Tenta (TEN3) i kursen 729G04 Programmering och diskret matematik 5 feb 2016, kl 14:00-18:00

Transkript:

Linköpings universitet Institutionen för datavetenskap, IDA Olle Willén mars 2003 Tentamen TDDB53 KOMPLETTERANDE HEMTENTAMEN TDDB53 Programmering i Ada för MI (MI-ADA) i mars 2003 Tentan lämnas ut 24/3 efter kl 12.00 och skall lämnas in senast 26/3 kl 13.00 i Olle Willéns arbetsrum. Hjälpmedel: Godkännande: Försäkran: Procedur: Egna anteckningar och texter i tryck är tillåtna! Datorer och andra personers assistans är otilllåtna! Tentamen ger godkänt eller inte godkänt. För godkänt krävs 10 godkända uppgifter på den ordinarie och denna tentamen tillsammans. En sådan skall fyllas i och lämnas tillsammans med tentasvaren. Den finns i slutet av detta häfte. Redovisningen skall vara inlämnad till mig, i handen, senast onsdag 26 mars kl 13.00. Jag vill ha bara dina nya svar, och försättsblad, först, inget annat!

Hemtentamen i TDDB53 Programmering i Ada för MI (MI-ADA) 2(5) Varje uppgift ger godkänt (G) eller underkänt (U). OBS! Det antal G du fått på ordinarie hemtentan har du naturligtvis till godo. Kompletteringen innebär därmed att du skall skaffa dig så många G till att du totalt når upp till minst 10. Kompletteringstentan är mycket lik den ordinarie hemtentan; vissa frågor är desamma, men somliga har modifierats en aning. Du måste se upp med det; det är de nya frågorna som nu gäller! Numreringen av uppgifterna är dock densamma nu vid kompletteringen som tidigare. Det är alltså uppgifter med nummer du fick underkänt på vid ordinarie hemtentan som du ska redovisa denna gång. 1. Beskriv Adas tilldelningssats. 2. Jämför begreppen variabel och konstant. 3. Betrakta satsen X := (-0.5, 2.5, 1.0); Vad kallar man i Adas terminologi konstruktionen till höger om :=? Vad finns det att säga om X? 4. Vad för slags delkonstruktion, i allmänna termer, skall finnas mellan orden loop och end loop i Ada-konstruktionen while... loop... end loop? 5. Förklara - och exemplifiera - utsagan variabler har begränsad livslängd! 6. Uttrycket A mod 3 > 0 avgör en speciell egenskap hos A. Hur vill du i allmänna, mer vardagliga termer beskriva den egenskapen? 7. Givet är följande lilla bit kod: for i in 2.. 3 loop s := 0; for j in reverse 1.. i loop s := s + j;... För vilken följd av värden på s kommer avsnittet... att genomlöpas? 8. Använd vanlig svenska för att beskriva under vilka omständigheter den Booleska variabeln q nedan kommer att få värdet false. if p then if x < y and y < z then q := not p; else q := p; else q := x < y or x < z;

Hemtentamen i TDDB53 Programmering i Ada för MI (MI-ADA) 3(5) 9. ArrType nedan är typnamnet för en arraystruktur med plats för ett antal heltal. Funktionen GetLastIndex(a, v) skall försöka hitta sista förekomsten av värdet v i a, och ge tillbaka index för detta. Vad är fel med funktionen, fast den går att kompilera? function GetLastIndex(arr : ArrType; val : Integer) return Integer is pos : Integer := arr Last; while arr(pos) /= val loop pos := pos - 1; return pos; 10. Vilken uppgift fyller funktionen Q nedan? Gör den beskrivningen i mycket allmänna och övergripande termer (t ex: funktionen ger medelvärdet av sina två parametrar ), och inte i form av de detaljerade beräkningsstegen! Använd alltså ett utanförperspektiv! function Q(n : Integer) return Integer is r : Integer := 1; if n <= 0 then return 0; else while r * r < n loop r := r + 1; return r; 11. Beskriv på motsvarande sätt som i uppgift 10 vad ändamålet med funktionen R nedan är. Parametrarna ska här betraktas som koordinaterna för en punkt i planet, och din tolkning ska relatera till motsvarande begreppsvärld. function R(x, y : Float) return Integer is p : Integer := 1; if x * y /= 0.0 then return 3; if x = y then p := p - 1; elsif y /= 0.0 then p := p + 1; return p;

Hemtentamen i TDDB53 Programmering i Ada för MI (MI-ADA) 4(5) 12. En variabel DATA deklareras som nedan. Rita och förklara hur den strukturellt är uppbyggd, så att någon som inte är initierad ändå förstår. type T is record y : integer; m : integer; d : integer; type M is array(1.. 12) of Boolean; type R is record dat : T; sum : Float; mrk : M; DATA : R; 13. Nedan förekommer några deklarationer. Skriv de sammanhängande adakonstruktioner som behövs för att beräkna årsarbetstid - absolut och relativt - för variabeln empl, givet att hans/hennes arbetade timmar per månad är kända och att 100% årsarbetstid motsvarar 1750 timmar. type month is (jan, feb, mar, apr, maj, jun, jul, aug, sep, okt, nov, dec); type month_work is array(month) of Float; type employee_account is record work : month_work; -- arbetade timmar per månad sum : Float; -- årssumma arb.timmar percent : Float; -- proc av årsarbetstid empl : employee_account; 14. I en repetition över en följd av godtyckliga satser... skall variablerna p och c anta de successiva värden som schemat nedan visar. Variablerna antas deklarerade. Skriv denna repetition, och markera var satssekvensen... skall finnas i förhållande till din kod. varv 1 2... p: 1 1 2 3 5 8 13... 610 c: 1 2 3 5 8 13 21... 987 15. En funktion Floor är avsedd att ta emot en Float-parameter, och den ska ge tillbaka det största heltal som är mindre än eller lika med parametern. Exempel: Floor(3.2) -> 3, Floor(-1.25) -> -2, Floor(12.0) -> 12. Skriv funktionen Floor. Minns att typkonverteringen Integer(f), där f är ett Float-värde, avrundar detta korrekt till närmaste Integer!

Hemtentamen i TDDB53 Programmering i Ada för MI (MI-ADA) (Använd denna sida som försättsblad till det du lämnar in - häfta ihop.) [textat namn] [personnummer] FÖRSÄKRAN Härmed försäkrar jag på min heder att jag inte utnyttjat andra hjälpmedel än de tillåtna under denna tentamen, och att de svar jag redovisat är mina egna formuleringar. Linköping den [underskrift] För examinator 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: Godkänd Underkänd Saknas Antal G Tentan är godkänd Tentan skall kompletteras