kl Tentaupplägg. TIPS 4: Du kan kompilera din kod med följande kommandon g++11, w++11 (för mer varningar)

Relevanta dokument
kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

Tentaupplägg. Betygsgränser: 1 uppg 19:00 Betyg 3 2 uppg 18:00 Betyg 4 2 uppg 16:30 Betyg 5 3 uppg 18:00 Betyg 5

DUGGA Tentaupplägg

DUGGA Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

kl Tentaupplägg

Tentaupplägg denna gång

kl Tentaupplägg

Tentaupplägg denna gång

kl Examination - Ada

TENTA: TDDD11 & TDDC68. Tillåtna hjälpmedel. Starta Emacs, terminal och tentakommunikationsfönster. Skicka in frågor och uppgifter

kl Tentaupplägg

Tentaupplägg denna gång

Tentaupplägg denna gång

Tentaupplägg denna gång

kl Tentaupplägg

kl Tentaupplägg

Uttryck, satser och strömhantering

Tentaupplägg denna gång

kl Tentaupplägg

kl Tentaupplägg

Uppgift 1 ( Betyg 3 uppgift )

2017-XX-XX.kl Tentaupplägg

kl Tentaupplägg

TDIU Regler

HI1024 Programmering, grundkurs TEN

Uppgift 1 (vadå sortering?)

Tentaupplägg denna gång

TDIU Regler

TDIU01 / 725G

TDP Regler

Uppgift 1a (Aktiekurser utan poster)

Uppgift 1 ( Betyg 3 uppgift )

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

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

TDP Regler

Uppgift 1 ( Betyg 3 uppgift )

TDIU Regler

kl Tentainformation

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

Uppgift 1 (Sorterade heltal som är OK)

Grundläggande programmering, STS 1, VT Sven Sandberg. Föreläsning 20

HI1024 Programmering, grundkurs TEN

TDP Regler

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

729G04 Programmering och diskret matematik

HI1024 Programmering, grundkurs TEN

TDP Regler

HI1024 Programmering, grundkurs TEN

Tentamen TEN1 HI

Uppgift 1 ( Betyg 3 uppgift )

HI1024 Programmering, grundkurs TEN

OBJEKTORIENTERAD PROGRAMVARUUTVECKLING

Projektdokumentation för Othello

UPPGIFT 1 V75 FIGUR 1.

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

Linköpings Tekniska Högskola Instutitionen för Datavetenskap (IDA) Torbjörn Jonsson, Erik Nilsson Lab 2: Underprogram

Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf

Uppgift 1 (grundläggande konstruktioner)

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

KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012

Uppgift 1 ( Betyg 3 uppgift )

Övningsuppgifter till föreläsning 2 Variabler och uttryck

HI1024 Programmering, grundkurs TEN

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

729G04 Programmering och diskret matematik

Program. Kapitel make Program Interpreterande och kompilerande program

Tentamen i Programmering grundkurs och Programmering C

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

TDP004 - (För)Tentamen

kl Tentaupplägg

UPPGIFT 1 VÄNSKAPLIGA REKTANGLAR

TDDI22 (exempel) TDDI22 Tentaregler

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

Diagnostiskt Prov. Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas.

Kom igång med Communicate In Print

Planering Programmering grundkurs HI1024 HT 2014

SeaClean städbeställning via hyttelefonerna

TDDI TDDI22 Tentaregler

Regler. Betygssättning

TDP Regler

Tentamen i TDP004 Objektorienterad Programmering Praktisk del

TDDC74 Programmering: Abstraktion och modellering Tenta, kl 14 18, 11 juni 2014

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

Transkript:

Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer att fastna på så kanske det är fel uppgift att ge sig på. Tiden du lägger på att noga läsa uppgifterna tjänar du in på att välja rätt uppgift. TIPS 2: Kolla ibland till kommunikationsfönstret. Det kan ha kommit information till alla utan att ni skickat in en fråga. Kanske gäller det dig också (d.v.s. den uppgift du jobbar med). TIPS 3: Om ni har problem med kompilator, Emacs eller annat som INTE har med uppgifterna att göra, räck upp handen så kommer en assistent. Detsamma gäller om hur man kopierar givna filer " cp given_files/*. " eller liknande. TIPS 4: Du kan kompilera din kod med följande kommandon g++11, w++11 (för mer varningar) Frågor om själva uppgifterna tar vi i första hand via tentasystemet. I körexemplen har vi markerat det som användaren matar in på tangentbordet med fet och kursiverad stil. Tänk på att körexemplen bara är ett exempel på när programmet körs. Testa ditt program noga och tänka över hur programmet skall fungera vid andra indata. Vi hinner normalt sett inte svara på frågor de sista 10 minuterna på tentan. Då ägnar vi all tid åt att rätta uppgifter för att alla skall hinna få svar innan ni går hem. Betygsgränser: Tid DI/EL 1 poäng 13:00 Betyg 3 3 poäng 12:00 Betyg 4 3 poäng 10:30 Betyg 5 4-6 poäng 12:00 Betyg 5 Bonustid från avklarade duggauppgifter tillkommer till dessa tidsgränser. Tiden för betyg 3/G överstiger dock aldrig 5 timmar. OBS: Delpoäng delas inte ut på uppgifterna. För att få poäng på en uppgift måste man alltså lösa uppgiften helt (och enligt specifikation). Lycka till med tenterandet och hoppas att alla får G på minst en uppgift idag. M.v.h. /Torbjörn (examinator)

Uppgift 1 - Tumkrig [1p] Tumbrottning är en lek som man leker med en annan person. Man tar den andra personen i handen (som i bilden till höger), säger "ett, två, tre!", sedan försöker man klämma ned den andres tumme och samtidigt undvika att ens egen tumme blir nedklämd. Om man vill leka flera personer så kan man ha ett tumkrig. I ett tumkrig så står ett jämnt antal personer i en ring. Varje person kommer använda båda sina händer för att ha två tumbrottningar, en med personen till höger och en annan med personen till vänster. (Detta kan dock kräva att någon eller några korsar sina armar.) Nu gäller följande regler: Om man vinner minst en tumbrottning så är man kvar till nästa runda. Men, om man förlorar båda sina tumbrottningar så har man åkt ut! * Skriv ett program där användaren får mata in hur många som är med i tumkriget. Programmet skall sedan fråga efter utgången i varje tumbrottning. Slutligen skall programmet mata ut hur många som åkte ut på grund av dubbel förlust. Du kan utgå ifrån att användaren alltid matar in korrekt. Ingen felhantering krävs. Körexempel 1: Mata in antalet tumkrigare: 4 Vem vann av spelare 1 och 2? 1 Vem vann av spelare 2 och 3? 3 Vem vann av spelare 3 och 4? 3 Vem vann av spelare 4 och 1? 1 2 spelare åkte ut! Körexempel 2: Mata in antalet tumkrigare: 6 Vem vann av spelare 1 och 2? 2 Vem vann av spelare 2 och 3? 3 Vem vann av spelare 3 och 4? 4 Vem vann av spelare 4 och 5? 5 Vem vann av spelare 5 och 6? 6 Vem vann av spelare 6 och 1? 1 0 spelare åkte ut! *Om det efter detta är ett ojämnt antal så låter man de spelare som bara vann en (och endast en) tumbrottning dra lott om vem mer som åker ut. Detta är dock inte relevant för den här uppgiften.

Uppgift 2 - Sök/Ersätt [1p] Skriv ett program som ber användaren mata in ett tecken X som skall sökas efter i en fil. Användaren skall också mata in vilket tecken Y som det sökta skall bytas ut mot. Programmet skall sedan gå igenom filen INDATA.TXT, skriva ut innehållet på skärmen men byta ut alla förekomster av tecknet X mot tecknet Y. Själva filen skall alltså förbli oförändrad. I körexemplen nedan antar vi att filen INDATA.TXT ser ut på sättet som visas i rutan till höger. Filen kan dock ha godtyckligt många rader av godtyckliga längder. of choice! Körexempel 1: Mata in tecken att söka efter:! Mata in tecken att ersätta med: % of choice! of choice% of choice% Körexempel 2: Mata in tecken att söka efter: o Mata in tecken att ersätta med: x Here's yxur freedxm xf chxice! Freedxm xf chxice, Freedxm xf chxice, Here's yxur freedxm xf chxice!

Uppgift 3 - Trollstavar [2p] Skriv ett program där användaren får mata in trollstavar. Programmet skall lagra varje trollstav som en post (struct i C++), varje sådan post skall lagras i en datastruktur. Godtyckligt många trollstavar skall kunna lagras. En trollstav har följande egenskaper: En längd (i cm), t.ex. 127 En vikt (i kilogram), t.ex. 0.75 En ägare (ett namn), t.ex. "Gandalf Grå" Du skall även ha en inmatningsfunktion get som läser in data till en trollstav och en utmatningsfunktion put som skriver ut en trollstav. I övrigt får du ha hur många funktioner du vill. Programmet skall endast lagra en trollstav per ägare. Om en ny trollstav med samma ägare som en tidigare matas in, skall ägarens förra stav plockas bort från datastrukturen och den nya lagras istället. Programmet skall, mellan varje inmatning, mata ut alla trollstavar som lagrats. Programmet avslutas med ctrl-c. Körexempel: Välkommen till Trollkarlarnas Arkiv över Ryktbara Stavar: Mata in längd: 127 Mata in vikt: 0.75 Mata in ägare: Gandalf Grå 1. Gandalf Grås stav, 127 cm, 0.75 kg Mata in längd: 111 Mata in vikt: 0.60 Mata in ägare: Saruman den Vite 1. Gandalf Grås stav, 127 cm, 0.75 kg 2. Saruman den Vites stav, 111 cm, 0.60 kg Mata in längd: 135 Mata in vikt: 1.1 Mata in ägare: Gandalf Grå 1. Gandalf Grås stav, 135 cm, 1.1 kg 2. Saruman den Vites stav, 111 cm, 0.60 kg... Programmet fortsätter tills användaren avslutar med ctrl-c.

Uppgift 4 - Textfil++ [2p] På textfilen STORT_HELTAL.TXT ligger ett stort heltal. Talet kan vara mycket större än vad som får plats i våra vanliga datatyper (int, long, o.s.v.). Din uppgifter är att skriva ut detta tal på skärmen, fast du skall först lägga till 1 till talet. Observera att ditt program skall fungera för godtyckliga heltal (dock minst 10). KRAV: Du får inte lagra hela talet i datorns primärminne (d.v.s. i en eller flera variabler). Vi accepterar alltså inte lösningar där man läser in hela talet till t.ex. en vector eller en string. Talet skulle teoretiskt sätt kunna vara större än vad som får plats i primärminnet. Talet är dock inte större än vad som kan lagras på en modern hårddisk. Körexempel 1 (på filen ligger talet 10000000000000000000000000000000000000000000000): Talet är 10000000000000000000000000000000000000000000001. Körexempel 2 (på filen ligger talet 999): Talet är 1000. Körexempel 3 (på filen ligger talet 115599): Talet är 115600. Körexempel 4 (på filen ligger talet 9998): Talet är 9999. TIPS: Låt ditt program läsa filens innehåll två gånger. Vid första genomläsningen, leta bara efter avslutande 9:or. Andra genomläsningen får skriva ut och modifiera talet.