Grundläggande in- och utmatning

Storlek: px
Starta visningen från sidan:

Download "Grundläggande in- och utmatning"

Transkript

1 Grundläggande in- och utmatning I denna inledande laboration kommer du att öva på de mest grundläggande operationerna för in- och utmatning. Mål Du ska efter denna laboration ha god insikt i Det generella utseendet hos ett C++-program Inläsnings- respektive utskriftbuffert Grundläggande datatyper Utskriftsformatering Uppgift Skriv ett program som hämtar data från tangentbordet enligt exemplen som följer. Det som syns på skärmen när man kör programmet ska överensstämma till fullo med givna exempel. Det gäller även antal blanktecken mellan ord och tal. Observera att denna laboration till stor del är till för att introducera hur man hanterar IDAs datormiljö för att skriva, kompilera och köra program. Om ni inte hinner med allt på laborationstiden är det ingen katastrof. Fortsätt på egen tid med resterande delar så att målen med uppgiften är uppfyllda. På kurshemsidan finns en fil som ni kan hämta med ett litet programskelett som innehåller alla texter som programmet ska skriva ut på skärmen. Detta för att ni ska slippa skriva en massa text och istället kunna fokusera på hur bufferthanteringen fungerar. Ett tips är att ni gör en liten del i taget och ser till att den fungerar för båda de givna körexemplen (se följande sidor). På detta sätt undviker ni att få alla fel på en gång. Det kan vara en bra ide att kommentera bort den kod ni inte vill testa för att på så sätt slippa mata in mer än nödvändigt. OBS! Ditt program ska klara av både körexempel 1 och 2 (samma program). Dock behöver det inte klara av alla möjliga varianter av indata, vilket i princip är omöjligt i detta läge. Sida 1

2 Programkörningar Programmet ska ge resultat enligt följande exempel vid olika körningar (användarens indata markeras med kursiverad stil). Observera att eventuella inmatningar som är extra skal plockas bort innan nästa inmatning görs. Observera att du i ditt program endast får ha en variabel av respektive datatyp (det får alltså inte finnas t.ex. två stycken strängar). Det blir alltså bara fyra variabler i programmet. Exempel 1: Skriv in ett heltal: 10 Du skrev in talet: 10 Skriv in fem heltal: Du skrev in talen: Skriv in ett heltal och ett flyttal: Du skrev in heltalet: 67 Du skrev in flyttalet: Skriv in ett flyttal och ett heltal: Du skrev in heltalet: Du skrev in flyttalet: Skriv in ett tecken: T Du skrev in tecknet: T Skriv in ett ord: Kalle Du skrev in ordet: Kalle Skriv in ett heltal och ett ord: -5 Nisse Du skrev in talet -5 och ordet Nisse. Skriv in ett tecken och ett ord: A Ria Du skrev in Ria och A. Skriv in en rad text: Hej världen Du skrev in: Hej världen Skriv in en till rad text: Hej igen världen Du skrev in: Hej igen världen Skriv in tre ord: Testar ett program Du skrev in: Testar, ett och program Sida 2

3 Exempel 2: Skriv in ett heltal: 10.3 Du skrev in talet: 10 Skriv in fem heltal: fem Du skrev in talen: Skriv in ett heltal och ett flyttal: lite text Du skrev in heltalet: 3267 Du skrev in flyttalet: Skriv in ett flyttal och ett heltal: Du skrev in heltalet: Du skrev in flyttalet: Skriv in ett tecken: Tomas Du skrev in tecknet: T Skriv in ett ord: 123Kalle Du skrev in ordet: 123Kalle Skriv in ett heltal och ett ord: 12är det lunch Du skrev in talet 12 och ordet är. Skriv in ett tecken och ett ord: oklart Du skrev in klart och o. Skriv in en rad text: här skriver vi lite mer Du skrev in: här skriver vi lite mer Skriv in en till rad text: lite mera text här Du skrev in: lite mera text här Skriv in tre ord: Testar ett program Du skrev in: Testar, ett och program Sida 3

4 Sida 4

5 Uttryck, satser och teckenhantering I denna laboration kommer du lära dig grundläggande satser och uttryck i c++ samt hantering av tecken. Mål I denna laboration ska du lära dig följande: Vanliga repititions- och villkorssatser Enkla artimetiska uttryck och operatorer Använding av teckenhanteringsfunktioner från <cctype>. Uppgift 1 - Temperaturtabell Du ska skriva ett program som ska skriva ut en tabell med temperaturer i grader Celsius, Kelvin, Fahrenheit ochréaumur. Användaren ska få mata in startvärde och slutvärde för tabellen i celcius. Rimlighetskontroll på indatat ska utföras. Följande formler för omvandling från Celsius ( C) till Kelvin (K), Fahrenheit ( R) resp. Réaumur ( R) gäller: kelvin = celsius fahrenheit = celsius * (eller celsius * 9/5 + 32) réaumur = celsius * 0.8 Körexempel: Ange startvärde: 0 Ange slutvärde: -20 Felaktigt intervall! Ange slutvärde: 20 Celsius Kelvin Fahrenheit Réaumur Sida 5

6 Uppgift 2 - Ordbehandling Du ska skriva ett program som läser en text som användaren matar in varefter programmet ska beräkna lite statistik för texten. Det som ska beräknas är totala antalet ord och medellängden för orden i texten. Programmet ska även skriva ut det kortaste respektive längsta ordet som matades in. Texten ska läsas från standard inmatningsström (cin) till filslut. Om inga ord har lästs in ska en varning skrivas ut. Körexempel: Texten innehöll 4711 ord. Det kortaste ordet var nu med 2 bokstäver. Det längsta ordet var kompilatorkonstruktion med 22 bokstäver. Medelordlängden var 5 bokstäver. Uppgift 3 - Teckenhantering Skriv ett program som läser en text och räknar hur många tecken totalt som finns i texten, samt antalet bokstäver, siffror respektive vita tecken. Endast bokstäver ur det engelska alfabetet, dvs a-z, förutsätts förekomma. Texten ska läsas från standard inmatningsström (cin) till filslut. Ingen ledtext ska skrivas ut då programmet startas. Körexempel: Indata innehöll: Alfabetiska tecken: 553 Siffertecken...: 11 Vita tecken...: 352 Tecken totalt...: 1144 Kontrollera noga att programmet räknar korrekt! Låt t.ex. programmet läsa sin egen källkod genom omdirigering på kommandoraden: lab3 < lab3.cc Tips, se man -s3c ctype för mer information. Det finns även tre andra teckenomvandlingsfunktioner som kan vara bra att ha. Dessa är toupper() för att omvandla en liten bokstav till stor bokstav, tolower() för att omvandla en stor bokstav till liten bokstav och toascii() för att omvandla ett int-värde till teckenvärde. Sida 6

7 Mål Funktioner och vector I denna laboration ska ni lära er att skapa underprogram och hantera vektorer I denna laboration ska du få insikt i Funktionsdefinitioner och deklarationer Argument, parametrar och returvärden Standardcontainern vector Uppgift Du ska skriva ett program som simulerar ett antal kast med en tärning och räknar hur många gånger tärningens olika sidor kommer upp. Tärningar av typ T4, T6, T8, T10, T12 och T20 ska kunna simuleras. Resultaten av tärningskasten ska lagras som heltal i en vector som då blir en sorts frekvenstabell. Följande funktioner, förutom huvudprogrammet, ska skapas: die() roll() ska läsa in önskad tärningstyp och returnera denna som en int. Ledtexterna som uppmanar till inmatning av tärningstypen ska skrivas ut av die(). Anropet av die() motsvaras av de två första raderna i exemplet. die() ska inte ha någon parameter. ska simulera tärningskasten. roll() ska ha tärningstyp, antalet kast som ska simuleras och frekvenstabellen som parametrar. roll() ska inte returnera något. Biblioteksfunktionerna rand(), srand() och time() ska användas för simuleringen. Hur de används ges exempel på i kapitel 7 i C++ direkt. Inkludera <cstdlib> och <ctime>. result() ska skriva ut resultatet. En rubrik som anger hur många kast som har simulerats och för vilken tärningstyp ska skrivas ut först. För varje tärningssida ska sedan en rad skrivas ut enligt följande körexempel. result() ska ha tärningstyp, antalet kast som har simulerats och frekvenstabellen som parametrar. Körexempel Vilken typ av tärning ska simuleras? Ange något tal av 4, 6, 8, 10, 12 eller 20: 6 Hur många tärningskast ska simuleras? Resultatet av kast med en tärning av typ T6: Sida 7

8

9 Rekursion I denna laboration ska ni lära er det rekursiva tankesättet. Mål I denna laboration bör du få insikt i det rekursiva tankesättet och skapa några rekursiva program Uppgift 1 Du ska skriva ett program som låter användaren mata in ett heltal n och sedan skriver ut de n första fibonacci-talen. Fibonacci-serien defineras nedan: fib(0) = 1 fib(1) = 1 fib(n) = fib(n-1) + fib(n-2) Körexempel Mata in ett heltal: 4 De 4 första fibonaccitalen är: Uppgift 2 Skriv en funktion som beräknar det tal som står på rad N och kolumn K i Pascals triangel. Pascals triangel ser ut på följande sätt: Första raden anses vara rad nummer noll (0) och första talet på raden anses vara i kolumn noll (0). Kolumnerna går alltså lite snett nedåt och åt vänster. Formulera en rekursiv formel som beräknar ett specifikt tal i triangeln. Kalla din funktion för pascal och låt den ha som indata talen N och K. Tips: Tänk på att det skall vara en rekursiv lösning där pascal(n, K) beror på (använder sig av) sig själv på något sätt. Sida 9

10

11 Filströmmar Laborationen är uppdelad i tre delar. Det är viktigt att du visar din assistent programmet för deluppgift 1 innan du går vidare. Det finns textfiler med data som du kan använda för att testa programmet. Deluppgift 1 Programmet ska läsa in reella tal (double) från standard inmatningsström cin, lagra talen i en std::vector och sedan beräkna lite statistik för värdena. Programmet ska bestå av tre funktioner, förutom huvudprogrammet i main(): read() ska läsa in värden och lagra dem i vectorn. compute() ska göra beräkningar på värdena i vectorn. print() ska skriva ut resultaten som beräknats av compute(). Alla in- och utdata till och från funktionerna ska överföras via parametrar. Varje funktion ska ha de hjälpvariabler som kan behövas för att utföra sin uppgift som lokala variabler. Efter att read() har gjort inläsningen ska huvudprogrammet kontrollera om några värden lästs in eller ej. Om inga värden alls har lästs in ska programmet skriva ut Inga indata och sedan avslutas Om det finns inlästa värden ska compute() anropas för att hitta det minsta och det största värdet i vectorn samt beräkna medelvärdet av alla värden. compute() ska ha fyra parametrar: vectorn med de inlästa värdena, samt minsta värdet, största värdet och medelvärdet. Efter att beräkningarna utförts ska resultatet skrivas ut av print(), som ska ha fyra parametrar: antalet värden, minsta värdet, största värdet och medelvärdet. Utskriften ska ha följande utseende: Antal värden...: 10 Minsta värde...: 1.00 Största värde..: Medelvärde...: 5.50 Reella värden ska skrivas ut i fixpunktsformat med två decimaler, som i exemplet ovan. Deluppgift 2 Gör en kopia av ditt program från deluppgift 1. Ändra programmet så att det, i stället för att läsa talen från cin, frågar efter ett filnamn, läser in filnamnet och öppnar en filström för läsning av indata. Om filen inte går att öppna ska programmet skriva ut ett felmeddelande och avslutas. Indatafiler ska vara textfiler, dvs filer med reella värden i textformat. Du hittar ett antal sådana filer med namn på formen data*.txt, t.ex. data1000.txt som innehåller 1000 tal. Deluppgift 3 Gör en kopia av ditt program från deluppgift 2. Ändra i programmet så att det läser från en binärfil, i stället för en textfil, och att namnet på binärfilen nu ska ges på kommandoraden. Indatafiler ska vara binärfiler med reella värden i binär representation (double). Det finns, förutom textfilerna (*.txt) som du använde i deluppgift B, också motsvarande binärfiler (*.bin). Tänk på att binärfiler vanligtvis inte kan flyttas mellan olika typer av datorer, eftersom binära tal kan representeras på helt olika sätt på olika datorer antal bitar som används för t.ex. double kan skilja och om det skulle råka vara samma antal bitar kan användningen av bitarna för att representera olika delar av flyttal skilja. Sida 11

12

13 Länkad lista Datorn Skynet har problem med att hålla reda på sina terminatorer. Din uppgift är att konstruera en enkel datastruktur i form av en länkad lista samt funktioner för att hantera denna som Skynet kan använda för detta. Varje terminator har ett unikt identitetsnummer och en typbeteckning. Ett identitetsnummer är ett heltal mellan 1 och Det finns tio terminatortyper, T-100, T-200, upp till T Informationen om terminatorerna ska lagras i enkellänkad lista av terminatornoder, som ska vara ordnad i stigande id-nummerordning enligt exemplet i figuren nedan: T-100 T-600 T-500 T-1000 T-800 Informationen för varje terminator ska lagras i en struct Terminator_Node, med tre datamedlemmar: identitetsnummer, terminatortyp och en pekare till nästa nod i listan. Pekaren ska vara 0 om noden är den sista i listan. Inga andra medlemsfunktioner än konstruktor(er) och eventuellt en destruktor ska finnas. Listan ska inte innehålla några extra noder, som t.ex. en headernod. Operationerna på en terminatorlista ska vara vanliga funktioner, som ska ha åtminstone en parameter för den lista, eller i något fall den nod, som operationen ska utföras på. Följande operationer ska finnas: insert(lista, id, typ) sätt in en ny terminator i lista, givet id och typ, och returnera true. Om en terminator med id redan finns i lista görs inget och insert returnerar i stället false. Om minnestilldelningen misslyckas kommer bad_alloc att kastas (av new). remove(lista, id) ta bort terminator med id ur lista och returnera true. Om ingen sådan terminator hittas returneras i stället false. is_registered(lista, id) returnera true om en terminator med id finns i lista. is_empty(lista) returnera true om lista är tom. print_terminator(lista, id) skriv ut terminator med id, om den finns i lista. Utskriften ska se ut enligt följande: Terminator nr 787 Typ T-600 print(lista) Terminator nr 17 Typ T-100 Terminator nr 787 Typ T-600 skriver ut en samtliga terminatorer i lista. Om lista är tom görs inget. Utskriften ska se ut enligt följande: clear(lista) tar bort alla terminatorer ur lista. Nya terminatorer ska kunna sättas in. Hjälpfunktioner kan behövas. Följande ska finnas: find(lista, id) söka efter en viss terminator i lista, givet id. Returnerar pekaren till sökt terminators nod om den finns, annars 0 (tomma pekaren). Denna funktion ska vara rekursiv. Sida 13

14 Genomförande Det finns ett givet testprogram och lite testdata på fil. programmet är ett menystyrt program där du med kommandon kan välja att ge terminatordata för att lägga till nya terminatorer i en terminatorlista eller operera på terminatorlistan. Dela upp programkoden för terminatorlistan på två filer. Definitionen av Terminator_Node och funktionerna för att operera på en lista av terminatornoder ska deklareras på filen Terminator_node.h. Definitionerna för funktionerna i Terminator_Node.h samt hjälpfunktioner placeras på filen Terminator_node.cc. Var noga med att hantera dynamiskt minne korrekt! Funktionerna insert och remove ska lösas både iterativt och rekursivt (och döpas insert_iter och insert_rekursive och analogt för remove). Övriga funktioner får lösas på valfritt sätt men om alla löses både iterativt och rekursivt ges extra bonustid för detta.

15 Länkad lista, fortsättning Den enkla terminatorlistan från förra uppgiften ska nu utvecklas i objektorienterad riktning. En datatyp för terminatorlistor ska definieras i form av en klass Terminator_List. Syftet med Terminator_List är att kapsla pekaren till den första noden i en lista av terminatornoder och endast tillåta medlemsfunktioner i Terminator_List att operera på en sådan lista. Figuren nedan ska illustrera detta, genom att pekaren till första noden finns i en omslutande kvadrat, vilken motsvarar klassen Terminator_List T-100 T-600 T-500 T-1000 T-800 Genom att kapsla (private) pekaren till listan av terminatornoder i klassen Terminator_List kan vi säkerställa att initiering av en ny lista alltid görs (pekaren initieras till 0 av konstruktor) och att destruering av noderna alltid görs när en lista försvinner (minnet för alla terminatornoder lämnas tillbaka av destruktor). Operationerna på terminatorlistan som konstruerades i deluppgift 1 ska göras om till medlemsfunktioner i klassen Terminator_List. Det innebär i grunden att parametern lista ska tas bort, eftersom listpekaren nu kommer att finnas som en datamedlem i klassen Terminator_List och därmed är direkt åtkomlig i medlemsfunktionerna. Hjälpfunktionen find() ska vara en privat medlemsfunktion, eftersom den inte ska vara en allmänt tillgänglig operation. Terminator_Node blir en implementeringstyp för Terminator_List. En användare av Terminator_List ska alltså inte känna till Terminator_Node och den ska därför döljas på något bra sätt. En definition för klassen Terminator_List är given. Obs! I och med att Terminator_List innehåller en pekare till dynamiskt minne krävs egentligen att man definierar en kopieringskonstruktor och en kopieringstilldelningsoperator (=) som gör en djup kopiering. Detta ligger dock utanför denna kurs och det finns därför inget krav på att dessa ska definieras. I stället har de deklarerats som private i den givna klassdefinitionen för Terminator_List, vilket gör att det blir kompileringsfel om man skriver kod som kräver dem, vilket inte ska göras.genomförande deluppgift 2 Genomförande Definitionen för Terminator_List är given på filen Terminator_List.h. Operationerna på listan har du i princip redan kodat i förra laborationen, men de ska nu bli medlemsfunktioner i Terminator_List, vilket kräver viss enkel modifiering. Modifiera även det givna testprogrammet från förra laborationen. Listan ska nu vara av typen Terminator_List och operationerna är nu medlemsfunktioner i Terminator_List. För övrigt ska inga modifieringar behövas. Sida 15

16

Uttryck, satser och strömhantering

Uttryck, satser och strömhantering Linköpings Universitet Institutionen för datavetenskap (IDA) UPP-gruppen 2018-09-06 Mål Uttryck, satser och strömhantering I denna laboration ska du lära dig Formaterad inläsning och utskrift Vanliga repetitions-

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2008-03-12.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som läser igenom en textfil som heter FIL.TXT och skriver ut alla rader där det står ett decimaltal först på raden. Decimaltal

Läs mer

Uppgift 1 (grundläggande konstruktioner)

Uppgift 1 (grundläggande konstruktioner) Uppgift 1 (grundläggande konstruktioner) a) Skriv ett program som låter användaren mata in 7 heltal och som gör utskrifter enligt nedanstående körexempel. Mata in 7 heltal: 1 0 0 3 1 1 1 Tal nr 2 var en

Läs mer

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

Linköpings Tekniska Högskola Instutitionen för Datavetenskap (IDA) Torbjörn Jonsson, Erik Nilsson Lab 2: Underprogram Mål Lab 2: Underprogram Följande laboration introducerar underprogram; procedurer, funktioner och operatorer. I denna laboration kommer du att lära dig: Hur man skriver underprogram och hur dessa anropas.

Läs mer

Laboration 1. Imperativ programmering. Stilgranskning av Lab Slutredovisning av Laboration 1

Laboration 1. Imperativ programmering. Stilgranskning av Lab Slutredovisning av Laboration 1 TDDC76 Laborationshandledning 1 Laboration 1 Imperativ programmering Laboration 1 omfattar fem mindre programmeringsuppgifter. Avsikten med dessa är att ge övning på i huvudsak så kallad imperativ programmering

Läs mer

Kursmaterial för laborationer i

Kursmaterial för laborationer i Kursmaterial för laborationer i IMPA TDDC 68 Sammanställt av Torbjörn Jonsson 2007-02-09 INNEHÅLL Allmänt om C++-laborationerna 1 De olika laborationerna: Lab0: Grundläggande C++ 3 Lab1: Sortering med

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Uppgift 1a (Aktiekurser utan poster)

Uppgift 1a (Aktiekurser utan poster) Uppgift 1a (Aktiekurser utan poster) Vi har lite olika upplägg i de kurser vi håller och i vissa kurser finns det med något som vi kallar "poster" (eng. "record"). I andra har vi inte med detta. Vi har

Läs mer

Uppgift 1 (Sorterade heltal som är OK)

Uppgift 1 (Sorterade heltal som är OK) 2013-03-12.kl.14-19 Uppgift 1 (Sorterade heltal som är OK) Ibland råkar man ut för att man måste se till att man inte får dubletter i sina inmatningar. Denna uppgift baserar sig på detta, men dessutom

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

HI1024 Programmering, grundkurs TEN

HI1024 Programmering, grundkurs TEN HI1024 Programmering, grundkurs TEN2 2016-12-22 KTH STH Flemingsberg 8.15-13.00 Tillåtna hjälpmedel: Kursboken C PROGRAMMING A Modern Approach K. N. King helt utan anteckningar Alternativt C från början

Läs mer

TDIU01 Programmering i C++

TDIU01 Programmering i C++ TDIU01 Programmering i C++ Föreläsning 6 - Klasser Eric Elfving, eric.elfving@liu.se Institutionen för datavetenskap (IDA) Avdelningen för Programvara och system (SaS) Klasser När vi skapade vår lista

Läs mer

Föreläsning 6: Introduktion av listor

Föreläsning 6: Introduktion av listor Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.

Läs mer

Uppgift 1 (vadå sortering?)

Uppgift 1 (vadå sortering?) 2011-06-08.kl.14-19 Uppgift 1 (vadå sortering?) Du skall skriva ett program som sorterar in en sekvens av tal i en vektor (en array ) enligt en speciell metod. Inledningsvis skall vektorn innehålla endast

Läs mer

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

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

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

kl Tentaupplägg. TIPS 4: Du kan kompilera din kod med följande kommandon g++11, w++11 (för mer varningar) 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

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) Uppgift 1 ( Betyg 3 uppgift ) Skriv ett program, Draw_Hexagones, som ritar ut en bikupa enligt körexemplen nedan. Exempel 1: Mata in storlek på bikupan: 1 + / \ + + + + \ / + Exempel 3: Mata in storlek

Läs mer

Värmedistribution i plåt

Värmedistribution i plåt Sid 1 (6) Värmedistribution i plåt Introduktion Om vi med konstant temperatur värmer kanterna på en jämntjock plåt så kommer värmen att sprida sig och temperaturen i plåten så småningom stabilisera sig.

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) Uppgift 1 ( Betyg 3 uppgift ) Skriv ett program, Draw_Hexagones, som ritar ut en bikupa enligt körexemplen nedan. Exempel 1: Mata in storlek på bikupan: 1 Exempel 3: Mata in storlek på bikupan: 3 \ / \

Läs mer

Nedan skapar vi klassen Person innehållande datamedlemmar för förnamn, efternamn, ålder, längd och vikt:

Nedan skapar vi klassen Person innehållande datamedlemmar för förnamn, efternamn, ålder, längd och vikt: 8. Objektorientering Skälet till att C++ är ett av de mest använda programspråken är att det är objektorienterat. Detta bygger vidare på begreppet struct (ursprungligen från språket C som inte är objektorienterat),

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Frekvenstabell över tärningskast med C#

Frekvenstabell över tärningskast med C# Instruktion Frekvenstabell över tärningskast med C# Introduktionsuppgift Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Innehåll Du ska följa steg för steg -instruktionen i

Läs mer

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

Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1. Måndagen den 10 januari 2011, Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1 Måndagen den 10 januari 2011, 8.15 12.15 Tentamen består av två delar, del A och del B. Del A innehåller 10 kryssfrågor på olika teman

Läs mer

DUGGA Tentaupplägg

DUGGA Tentaupplägg 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

Läs mer

Övningsuppgifter. TDIU04 Programmering i C++, standardbibliotek. Innehåll. Vt Lektion Lektion Lektion Lektion 4...

Övningsuppgifter. TDIU04 Programmering i C++, standardbibliotek. Innehåll. Vt Lektion Lektion Lektion Lektion 4... TDIU04 Programmering i C++, standardbibliotek Vt1 2015 Övningsuppgifter Innehåll Lektion 1... 2 Lektion 2... 3 Lektion 3... 4 Lektion 4... 5 Lektion 5... 6 De tre senaste tentorna finns tillgängliga via

Läs mer

TDIU01 - Programmering i C++, grundkurs

TDIU01 - Programmering i C++, grundkurs TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner

Läs mer

Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson Plot och rekursion

Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson Plot och rekursion Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson 2010-11-19 Plot och rekursion I denna laboration skall du lära dig lite om hur plot i MatLab fungerar samt använda

Läs mer

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

Laboration 1. kompilera-ikonen exekvera-ikonen Programmerade system I1 Syfte Laboration 1. Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i att skriva

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Föreläsning 3.1: Datastrukturer, en översikt

Föreläsning 3.1: Datastrukturer, en översikt Föreläsning.: Datastrukturer, en översikt Hittills har vi i kursen lagt mycket fokus på algoritmiskt tänkande. Vi har inte egentligen ägna så mycket uppmärksamhet åt det andra som datorprogram också består,

Läs mer

Lab 0: Mycket grundläggande in- och utmatning

Lab 0: Mycket grundläggande in- och utmatning Mål Lab 0: Mycket grundläggande in- och utmatning I denna inledande laboration kommer du att öva på de mest grundläggande operationerna för in- och utmatning. Du ska efter denna laboration ha god insikt

Läs mer

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

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2006-12-08.kl.08-13 Uppgift 1 ( Betyg 3 uppgift ) Implementera följande funktion: fun(1) = 1 fun(n) = fun(n / 2), för jämna n fun(n) = n / (fun(n - 1) + fun(n + 1)), för udda n Exempel på korrekta resultat:

Läs mer

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

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Felsökning. Datatyper. Referenstyper. Metoder / funktioner 732G11 Linköpings universitet 2011-01-21 1 2 3 4 5 6 Skapa program Kompilera: Källkod Kompilator bytekod Köra: Bytekod Virtuell maskin Ett riktigt program Hej.java class Hej { public static void main (

Läs mer

Uppgifter till praktiska tentan, del A. (7 / 27)

Uppgifter till praktiska tentan, del A. (7 / 27) Uppgifter till praktiska tentan, del A. (7 / 27) I. Sortering/Sökning: III II. Representation/Omvandling/format/protokoll: II III. Strukturering: II I alla problem, där bokstäver förekommer, antar vi att

Läs mer

TDIU01 (725G67) - Programmering i C++, grundkurs

TDIU01 (725G67) - Programmering i C++, grundkurs . TDIU01 (725G67) - Programmering i C++, grundkurs Program, datatyper och IO Eric Elfving Institutionen för datavetenskap 7 oktober 2015 Översikt 2/14 Struktur på ett C++-program Köra ett program Variabler

Läs mer

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

Johan Karlsson Datavetenskap för teknisk kemi, 10p, moment 1 Datavetenskap Umeå Universitet. Tentamen Tentamen för teknisk kemi, 10p, moment 1 29 november 1999 Skrivtid 9-15 Hjälpmedel: av följande böcker. - U. Bilting och J. Skansholm: Vägen till C - A. Kelley & I. Pohl: A Book on C Maxpoäng: Gräns för

Läs mer

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

Tentamen i. för D1 m fl, även distanskursen. lördag 26 februari 2011 1 of 7 Örebro universitet Akademin för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

För alla uppgifter på tentan gäller: Man får använda både standard-c++ (som till exempel har pekare som anges med * och objekt som skapas med new) och

För alla uppgifter på tentan gäller: Man får använda både standard-c++ (som till exempel har pekare som anges med * och objekt som skapas med new) och Örebro universitet Institutionen för teknik Thomas Padron-McCarthy (Thomas.Padron-McCarthy@tech.oru.se) Tentamen i Objektorienterad programmering för D2 m fl onsdag 1 november 2006 kl 14:00-19:00 i L003

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) Uppgift 1 ( Betyg 3 uppgift ) I filerna queue_handling.ads och queue_handling.adb finns en datastruktur som motsvarar en kö. Det finns fyra operationer som kan utföras på en kö. 1) Enqueue som stoppar

Läs mer

5 Grundläggande in- och utmatning

5 Grundläggande in- och utmatning 5 Grundläggande in- och utmatning För att användaren skall kunna kommunicera med programmet krävs att man inkluderar ett eller flera bibliotek med rutiner. I Ada finns det ett antal paket som gör detta

Läs mer

Planering Programmering grundkurs HI1024 HT TIDAA

Planering Programmering grundkurs HI1024 HT TIDAA Planering Programmering grundkurs HI1024 HT 2016 - TIDAA Föreläsning V35 Föreläsning 1 Programmering Kurs-PM Programmeringsmiljö Hello World! Variabler printf scanf Föreläsning 2 Operatorer Tilldelning

Läs mer

Planering Programmering grundkurs HI1024 HT 2014

Planering Programmering grundkurs HI1024 HT 2014 Planering Programmering grundkurs HI1024 HT 2014 Föreläsning V36 Föreläsning 1 Vad är programmering? Boken! Kurs-PM Vad är ett program? Kompilerande- Interpreterande Programmeringsmiljö Hello World! Att

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Dataingenjörsprogrammet, elektroingenjörsprogrammet och medicinsk teknik KTH Skolan för Teknik och Hälsa Redovisning: Se Kurs-PM om hur redovisningen

Läs mer

TDIU01 - Programmering i C++, grundkurs

TDIU01 - Programmering i C++, grundkurs TDIU01 - Programmering i C++, grundkurs Pekare och Listor Eric Elfving Institutionen för datavetenskap 31 oktober 2014 Översikt 2/41 Internminne Pekare Dynamiska datastrukturer (Enkellänkade) listor Arbeta

Läs mer

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp Dataingenjörsprogrammet, elektroingenjörsprogrammet och medicinsk teknik KTH Skolan för Teknik och Hälsa Redovisning: Se Kurs-PM om hur redovisningen

Läs mer

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 28 maj 2011 1 of 7 Örebro universitet Akademin för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen

Läs mer

Laboration 1 Introduktion till Visual Basic 6.0

Laboration 1 Introduktion till Visual Basic 6.0 Laboration 1 Introduktion till Visual Basic 6.0 Förberedelse Förbered dig genom att läsa föreläsningsanteckningar och de kapitel som gåtts igenom på föreläsningarna. Läs även igenom laborationen i förväg.

Läs mer

Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här:

Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här: Att skapa en klass kvadrat Uppgiften är att beskriva en kvadrat i ett Java program. En första version av programmet skulle kunna se ut så här: public class Kvadrat { private int sida; Det var väl inte

Läs mer

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

HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011, KTH STH TENTAMEN HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011, 8.15-13.15 Gamla kurskoder: HI1900, 6E2950, etc. Examinator: Johnny Panrike Rättande lärare: Nicklas Brandefelt, Johnny

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Kompilera och köra programmet under terminal 2: I Skapa Hej.java

Läs mer

Objektorienterad programmering D2

Objektorienterad programmering D2 Objektorienterad programmering D2 Laboration nr 2. Syfte Att få förståelse för de grundläggande objektorienterade begreppen. Redovisning Källkoden för uppgifterna skall skickas in via Fire. För senaste

Läs mer

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

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 Kompilera och köra programmet Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 under terminal 2: I Skapa Hej.java

Läs mer

TDDI14 Objektorienterad programmering

TDDI14 Objektorienterad programmering LINKÖPINGS TEKNISKA HÖGSKOLA Institutionen för datavetenskap Avdelningen för programvara och system Tommy Olsson 2015-05-27 Datortentamen i TDDI14 Objektorienterad programmering Provkod DAT1 Datum 2015-06-01

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Planering Programmering grundkurs HI1024 HT 2015 - data

Planering Programmering grundkurs HI1024 HT 2015 - data Planering Programmering grundkurs HI1024 HT 2015 - data Föreläsning V36 Föreläsning 1 Programmering Kurs-PM Programmeringsmiljö Hello World! Variabler printf scanf Föreläsning 2 Operatorer Tilldelning

Läs mer

Programmering B med Visual C++ 2008

Programmering B med Visual C++ 2008 Programmering B med Visual C++ 2008 Innehållsförteckning 1 Repetition och lite nytt...5 I detta kapitel... 5 Programexekvering... 5 Loop... 5 Källkod... 6 Verktyg... 6 Säkerhetskopiera... 6 Öppna, kompilera,

Läs mer

C++ - En introduktion

C++ - En introduktion C++ - En introduktion De imperativa grunderna för dig som kan programmera Eric Elfving Institutionen för datavetenskap 1 / 72 Översikt 1 Grunderna 2 Uttryck och satser 3 Funktioner 4 Poster 1 Grunderna

Läs mer

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

Diagnostiskt Prov. Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas. .0.0 DIAGNOSTISKT PROV Tid Klockan 09.00-2.00 Hjälpmedel Inga Antaganden Om förutsättningar saknas I en uppgift skall rimliga antaganden göras och nedtecknas. Rättning Tentamen omfattar 6 poäng Denna tentamen

Läs mer

Laboration 1. "kompilera"-ikonen "exekvera"-ikonen

Laboration 1. kompilera-ikonen exekvera-ikonen Syfte Laboration 1. Objektorienterad programmering, Z1 Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i

Läs mer

i LabVIEW. Några programmeringstekniska grundbegrepp

i LabVIEW. Några programmeringstekniska grundbegrepp Institutionen för elektroteknik Några programmeringstekniska grundbegrepp 1999-02-16 Inledning Inom datorprogrammering förekommer ett antal grundbegrepp som är i stort sett likadana oberoende om vi talar

Läs mer

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning. Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java

Läs mer

Tentamen TEN1 HI

Tentamen TEN1 HI Tentamen TEN1 HI1029 2015-03-17 Skrivtid: 8.15-13.00 Hjälpmedel: Referensblad (utdelas), papper (tomma), penna Logga in med tentamenskontot ni får av skrivvakten. Det kommer att ta tid att logga in ha

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten?

Dagens program. Programmeringsteknik och Matlab. Objektorienterad programmering. Vad är vitsen med att ha både metoder och data i objekten? Programmeringsteknik och Matlab Övning 4 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312

Läs mer

JAVA Mer om klasser och objektorientering

JAVA Mer om klasser och objektorientering JAVA Mer om klasser och objektorientering Begreppet package - paket Package används när man t ex vill skapa ett eget bibliotek med klasser. Sen är det då meningen att man ska importera detta paket i det

Läs mer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper Tentamen Programmeringsteknik I 2017-10-23 Skrivtid: 0800 1300 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer

Läs mer

HI1024 Programmering, grundkurs TEN

HI1024 Programmering, grundkurs TEN HI1024 Programmering, grundkurs TEN2 2014-10-27 KTH STH Haninge 13.15-18.00 Tillåtna hjälpmedel: En A4 handskriven på ena sidan med egna anteckningar Kursboken C PROGRAMMING A Modern Approach K. N. King

Läs mer

TDDI TDDI22 Tentaregler

TDDI TDDI22 Tentaregler Inloggning TDDI22 Tentaregler Logga in i tentasystemet genom att välja session exam system och logga in med ditt vanliga LiU- ID. Välj inte att ha denna session som standardsession. Verifiera att dina

Läs mer

TDDI22 (exempel) TDDI22 Tentaregler

TDDI22 (exempel) TDDI22 Tentaregler Inloggning TDDI22 Tentaregler Logga in i tentasystemet genom att välja session exam system och logga in med ditt vanliga LiU- ID. Välj inte att ha denna session som standardsession. Verifiera att dina

Läs mer

BINÄRA TRÄD. (X = pekarvärdet NULL): struct int_bt_node *pivot, *ny; X X X 12 X X 12 X X -3 X X

BINÄRA TRÄD. (X = pekarvärdet NULL): struct int_bt_node *pivot, *ny; X X X 12 X X 12 X X -3 X X Algoritmer och Datastrukturer Kary FRÄMLING/Göran PULKKIS (v23) Kap. 7, Sid 1 BINÄRA TRÄD Träd används för att representera olika slags hierarkier som ordnats på något sätt. Den mest använda trädstrukturen

Läs mer

kl Tentaupplägg

kl Tentaupplägg entaupplägg IP 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

Läs mer

Laboration: Whitebox- och blackboxtesting

Laboration: Whitebox- och blackboxtesting Tilda11 höstterminen 2011 Laboration: Whitebox- och blackboxtesting Mål med laborationen Du ska lära dig begreppen white-box testing och black-box testing Du ska öva dig på att konstruera testfall Du ska

Läs mer

Strängar. Strängar (forts.)

Strängar. Strängar (forts.) Strängar En sträng i C är helt enkelt en array av char: char namn[20]; För att få strängar att bete sig som om de vore av dynamisk längd markeras strängens slut med null-tecknet \0 : J o z e f S w i a

Läs mer

Laboration 1: Figurer i hierarki

Laboration 1: Figurer i hierarki Laboration 1: Figurer i hierarki Bakgrund Två grundläggande tekniker i objektorienterad konstruktion är arv och komposition. Mål Laborationen har flera avsikter: 1. Ge kunskaper i hur program kan organiseras

Läs mer

HI1024 Programmering, grundkurs TEN

HI1024 Programmering, grundkurs TEN HI1024 Programmering, grundkurs TEN2 2016-01-09 KTH STH Haninge 8.15-13.00 Tillåtna hjälpmedel: En A4 handskriven på ena sidan med egna anteckningar Kursboken C PROGRAMMING A Modern Approach K. N. King

Läs mer

Tentamen i Programmering grundkurs och Programmering C

Tentamen i Programmering grundkurs och Programmering C 1 of 7 Örebro universitet Institutionen för teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen fredag 15

Läs mer

TUTORIAL: KLASSER & OBJEKT

TUTORIAL: KLASSER & OBJEKT TUTORIAL: KLASSER & OBJEKT I denna tutorial lär vi oss att använda klasser och objekt samt hur vi bygger en enkel applikation kring dessa. I tutorialen kommer det finnas en mängd kod som du antingen kan

Läs mer

1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet

1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet 1 Texthantering I detta avsnitt tas det upp två sätt att arbeta med text i C++ program. Det första sättet som behandlas är hanteringen av textfält. Texter i C++ består utav en serie med enstaka tecken

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok, t.ex. den rekommenderade kursboken. Boken får ha anteckningar,

Läs mer

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

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer

Läs mer

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

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012 1 of 6 Örebro universitet Akademin för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen

Läs mer

Inlämningsuppgifter, EDAF30, 2015

Inlämningsuppgifter, EDAF30, 2015 LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap Programmering i C++ Inlämningsuppgifter, EDAF30, 2015 Det finns två deluppgifter som båda ska lösas: 1. skriv ett program för att hantera bankkonton

Läs mer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper Tentamen Programmeringsteknik I 2018-03-16 Skrivtid: 8:00 13:00 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer

Läs mer

DD1361 Programmeringsparadigm. Carina Edlund

DD1361 Programmeringsparadigm. Carina Edlund DD1361 Programmeringsparadigm Carina Edlund carina@nada.kth.se Funktionell programmering Grundidéen med funktionell programmering är att härma matematiken och dess funktionsbegrepp. Matematiskt funktionsbegrepp

Läs mer

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I

L04.1 Marodören. Inledning. Mål. Genomförande. Uppgift 1 Hello World. Moment I L04.1 Marodören Inledning Genom att öva sig på de grundläggande koncepten i JavaScript öppnas vägen allteftersom till de mer avancerade funktionerna. Man måste lära sig krypa innan man kan gå, även i JavaScript!

Läs mer

Idag. Exempel, version 2. Exempel, version 3. Ett lite större exempel

Idag. Exempel, version 2. Exempel, version 3. Ett lite större exempel Idag Ett exempel Undantag Substitutierbarhet, subtyper, subklasser När val av metod beror av typerna hos två objekt Lite om överlagring Exempel, version 2 Notera: för samtliga figurer gäller: arean av

Läs mer

Introduktion. Klasser. TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder

Introduktion. Klasser. TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder Introduktion TDP004 Objektorienterad Programmering Fö 2 Objektorientering grunder OO är den mest använda programmeringsparadigmen idag, viktigt steg att lära sig och använda OO. Klasser är byggstenen i

Läs mer

DUGGA Tentaupplägg

DUGGA Tentaupplägg 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

Läs mer

Frekvenstabell över tärningskast med C#

Frekvenstabell över tärningskast med C# Guide Frekvenstabell över tärningskast med C# Introduktionsuppgift Författare: Mats Loock Kurs: Inledande programmering med C# Kurskod:1DV402 Upphovsrätt för detta verk Detta verk är framtaget i anslutning

Läs mer

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2

Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Instruktioner - Datortentamen TDDD73 Funktionell och imperativ programmering i Python TDDE24 Funktionell och imperativ programmering del 2 Hjälpmedel Följande hjälpmedel är tillåtna: Exakt en valfri bok,

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Några tips på vägen kanske kan vara bra. Tentaupplägg denna gång TIPS 1: Läs igenom ALLA uppgifterna och välj den du känner att det är den lättaste först. Det kan gärna ta 10-20 minuter. Försök skriva

Läs mer

TDDC76 - Programmering och Datastrukturer

TDDC76 - Programmering och Datastrukturer TDDC76 - Programmering och Datastrukturer Klasser - speciella medlemsfunktioner Eric Elfving Institutionen för datavetenskap En klass ansvarar ofta för en resurs. Ibland är resursen så enkel som en datamedlem

Läs mer

Föreläsning 3-4 Innehåll

Föreläsning 3-4 Innehåll Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Några tips på vägen kanske kan vara bra. 2014-10-30.kl.08-13 Tentaupplägg denna gång TIPS1: 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

Läs mer

kl Tentaupplägg

kl Tentaupplägg 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

Läs mer

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper

Anmälningskod: Lägg uppgifterna i ordning. Skriv uppgiftsnummer (gäller B-delen) och din kod överst i högra hörnet på alla papper Tentamen Programmeringsteknik II 2018-10-19 Skrivtid: 8:00 13:00 Tänk på följande Skriv läsligt. Använd inte rödpenna. Skriv bara på framsidan av varje papper. Lägg uppgifterna i ordning. Skriv uppgiftsnummer

Läs mer