Uppgift 1 ( Betyg 3 uppgift )

Storlek: px
Starta visningen från sidan:

Download "Uppgift 1 ( Betyg 3 uppgift )"

Transkript

1 kl Uppgift 1 ( Betyg 3 uppgift ) Skriv ett program som ritar ut svenska flaggan i färg (tips: den är blå med ett gult kors :-) ). Till din hjälp finns det ett par procedurer som ställer om terminalen till olika färger. Dessa procedurer ligger i paketet Graphics_Handling. Proportionerna på flaggan ser ni i följande figur: För att rita ut det blå respektive det gula skriver man ut blanktecken med respektive bakgrundsfärg. För att proportionerna skall bli rätt måste man dock ta hänsyn till att ett tecken inte är kvadradiskt utan har proportionerna 5x9 (5 enheter i bredd och 9 enheter i höjd). Din uppgift är att skriva programmet så att man kan mata in vilket antal tecken man vill ha i höjdled och sen skall flaggan bli så bra som möjligt i dimensioner. Exempel 1: Antag att man matar in att det skall vara 10 tecken i höjdled. Detta innebär att den gula vågräta linjen skall vara 2 tecken hög och de två blå fälten ovanför/under blir 4 tecken höga. I bredd kommer detta att innebära att man vill ha 4*9/5*5/4 = 9 tecken i bredd på det första blå fältet. Dessutom vill man ha 2*9/5 = 3.6 => 4 gula tecken i bredd (vi avrundar till närmaste heltal). Den totala bredden på flaggan skall vara 10*9/5*16/10 = 28.8 => 29 tecken Detta ger att det högra blå fältet skall vara = 16 tecken brett. Exempel 2: Antag att man matar in att det skall vara 9 tecken i höjdled. Detta innebär att den gula vågräta linjen skall vara 9/10*2 = 1.8 => 2 tecken hög. Vi väljer att räkna ut hur hög den övre blå delen skall vara först och får då 9*4/10 = 3.6 => 4 tecken högt vilket i sin tur ger att den nedre blå delen skall vara = 3 tecken (flaggan blir lite ojämn, men det är det bästa vi kan göra i denna uppgift). I bredd kommer detta att innebära (om vi utgår från att den övre vänstra blå delen avgör i första hand) att man vill ha 4*9/5*5/4 = 9 tecken i bredd på det första blå fältet (vilket får gälla även den nedra vänstra blå delen). Dessutom vill man ha 2*9/5 = 3.6 => 4 gula tecken i bredd. Den totala bredden på flaggan skall vara 9*9/5*16/10 = 25.9 => 26 tecken Detta ger att det högra blå fältet skall vara = 13 tecken brett. Tips: I Ada finns några specialare vad det gäller avrundning m.m. Här kommer några sådana: Float Rounding(x) avrundar flyttalet x till ett flyttal. Integer(x) omvandlar flyttalet x till ett heltal. Float(x) omvandlar heltalet x till ett flyttal.

2 kl Uppgift 2 Skriv ett program som ritar ut en vimpel med fransar enligt exemplen nedan. Användaren matar in dimensionen (som kan vara godtyckligt stor, d.v.s. inte begränsad av de få fall som finns i exemplen nedan). Körexempel 1: Mata in dimension: Körexempel 2: Mata in dimension: Körexempel 3: Mata in dimension: Körexempel 4: Mata in dimension:

3 kl Uppgift 3 Det finns en given textfil, MENINGAR.TXT, som innehåller en liten text. Denna text skall krypteras av dig. Själva krypteringen skall göras på så sätt att man stoppar in fyra tecken i ett heltal och därefter lagrar detta heltal på en binär fil som skall heta MENINGAR.BIN. Att man kan stoppa in fyra tecken i ett heltal visar sig vara möjligt då heltalet består av 32 bitar (nollor/ ettor) och ett tecken består av 8 bitar. Lagringen kan alltså göras enligt nedanstående figur Det som krävs när man krypterar tecknen i ett heltal är att man måste omvandla tecknet till ett motvarande heltal (görs med Character Pos(c) där c är tecknet) och sen multiplicera det med en lämplig faktor för att lägga in det på rätt plats i det slutgiltiga heltalet. Faktorerna för respektive position i heltalet är 2 0, 2 8, 2 16 samt Ett specialfall är att radslutstecknen i textfilen skall omvandlas till talet 10. Specialfall eftersom man inte kan räkna med att man i Ada kan läsa in ett radslutstecken på samma sätt som de övriga tecknen. Det är givet att textfilen innehåller exakt en multipel av 4 antal tecken. TIPS: Läs in fyra tecken i taget och lägga in dem i heltalet innan du skriver ut heltalet på den binära filen. Självklart, men... KURIOSA: Krypteringsalgoritmen är uppfunnen av en norrman. Det ser man då originaltextfilen innehåller en norsk flagga.

4 kl Uppgift 4 Du skall skriva ett program som visar hur den Japanska flaggan såg ut i TV 1941 (OBS! Då var det bara svart-vit TV som fanns). Det som motsvarar den röda färgen i flaggan skriver du ut med tecknet #. Användaren skall mata in höjden på flaggan. Bredden skall vara ca 28.8 gånger större än höjden. Radien på den röda fyllda cirkeln skall vara ca en fjärdedel av höjden. Det är givet att användaren skall mata in udda heltal för höjden och bredden skall avrundas till det närmaste udda heltalet. Radien avrundas nedåt till närmaste heltal. Cirkeln, som ligger centrerad på flaggan och innehåller den röda färgen, ritas ut som en fylld ellips (för att kompensera för teckenproportioner m.m.) som beskrivs av följande formel: r 2 5x = y 9 2 Ytterramen på flaggan skall också ritas ut. Se körexempel. Körexempel 1: Mata in höjd: ### ####### ### Körexempel 2: Mata in höjd: ### ########### ############### ############### ################# ############### ############### ########### ###

5 kl 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 följer de format som finns uppräknade här (inga andra varianter är tillåtna): Enkelt decimaltal: Siffra/Siffror följt av en punkt följt av siffra/siffror. Teckenbaserat decimaltal: +/- följt av ett enkelt decimaltal. Ett exempel på indatafil skulle kunna vara: Kalle springer fort. 123,456 Nisse springer långsamt Berit är bäst av alla Nisse Hult har otur Guran är namnet på en gitarr. Varför är denna rad med? X Resultatet på skärmen skulle i detta fall bli: Kalle springer fort Nisse Hult har otur X Det finns en given textfil som heter just FIL.TXT att kopiera. OBS! Det är givet att raderna i filen är maximalt 70 tecken långa. OBS! Det är tyvärr så att man inte kan räkna med att talen går att hantera med datatypen Float.

6 kl Uppgift 2 Du skall skriva ett program som läser in en sträng från tangentbordet och därefter skriver ut den på skärmen. OBS! du får inte läsa delar och skriva ut utan hela strängen skall skrivas ut efter det att den är inläst. KRAV: Det skall i princip kunna vara en hur lång sträng som helst. Detta innebär att du inte kan dimensionera en sträng i förväg. Minnesbegränsningar i datorn behöver du inte fundera på när du löser uppgiften. När du löser uppgiften skall du läsa in strängen i en funktion som skall heta Get_Line. Funktionen skall inte ha några parametrar. Funktionen skall returnera den inlästa strängen. TIPS: Rekursion är tillåten. TIPS: Felmeddelandet segmentation fault betyder att du gjort för många rekursionssteg. TIPS: Operatorn & är bra. KRAV: Du får inte använda dig av den inbyggda datatypen Unbounded_String.

7 kl Uppgift 3 Vägverket funderar på att införa så kallade återvändsgrändsavgifter i Stockholm. För att se om detta kommer att slå ut väl har de behov av ett paket som hanterar att bilar kör in i respektive ut ur en återvändsgränder. Detta paket skall heta Blind_Alley_Handling och innehållade två procedurerna Drive_Into respektive Drive_Out_Of. Båda procedurerna skall ha en återvändsgränd respektive en bil som parametrar. Paketet skall innehålla en datatyp som heter Blind_Alley_Type som är privat och som skall skapas som en länkad lista (med pekare). I listan skall data av typen Car_Type ligga. Car_Type finns given i paketet Car_Handling som finns att kopiera. Det finns ett givet testprogram som heter Test_Blind_Alley (som inte skall modifieras) som låter ett antal bilar köra in i respektive ut ur en återvändsgränd. Självklart är det så att man kan köra in flera bilar och den som kört in sist skall köras ut först. Om det sen kommer nya bilar innan alla tidigare är utkörda skall dessa nya förstås ut före de gamla. Tänk er en riktig återvändsgränd där det är för trångt att vända.

8 kl Uppgift 4 Vägverket har genom tiderna haft en förkärlek för lite annorlunda matematiska saker. Bland annat har de använt något som kallas för gon istället för grader eller radianer när de räknat med vinklar i sina mätutrustningar. Följande figurer visar hur gon fungerar gentemot grader. sin(x) x sin(x) x Grader : Radianer: 0-2π Gon: De tal som står i figuren anger mellan vilka värden vinklarna anges inom ett varv i den enheten. Din uppgift är att skriva ett program som skriver ut en tabell med två kolumner innehållande x respektive sin(x) där x skall anges i gon. Tabellens starvärde samt slutvärde skall anges av användaren. Körexempel: Mata in startvärde på x: 0 Mata in slutvärde på x : 200 Mata in steglängd : 25 x sin(x) Inmatningarna ovan skall ske i heltalsform för att slippa eventuella avrundningsfel i datorn. Vi kan dessutom anta att steglängden alltid gör att det går jämnt upp till slutvärdet. KRAV: Beräkningen av sin(x) (där x är gon) skall ske i en funktion som heter Sin_Gon som tar emot vinkeln (x) angiven i gon (heltal) och returnerar sinusvärdet för denna. Ingen inmatning eller utskrift skall ske i denna funktion. TIPS: Den normala sin(x) finns i paketet Ada.Numerics.Elementary_Functions och den räknar i radianer (d.v.s. med datatypen Float). Konstanten Pi finns i paketet Ada.Numerics.

9 kl Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som ritar ut en bild på skärmen. Bilden finns lagrad i en textfil som heter PICTURE.CRYPT och är där lagrad på ett format som beskrivs enligt följande: Alla rader i filen motsvarar en rad i figuren En rad i filen består av ett antal markeringar (två tecken långa). Första tecknet i en markering är en siffra som anger hur många blanktecken som skall skrivas ut före det andra tecknet i markeringen skrivs ut. Ett exempel på indatafil skulle kunna vara: \2\ Resultatet på skärmen skulle i detta fall bli: +--+ \ \ +--+ Det finns en given textfil som heter just PICTURE.CRYPT att kopiera.

10 kl Uppgift 2 I Ada har vi begränsningar på hur stora heltal man kan arbeta med inom typen Integer. Du skall nu skapa ett paket som heter Big_Numbers som innehåller en funktion som skall heta Succ. Denna funktion skall ta emot en godtyckligt lång sträng där innehållet är ett vanligt positivt decimalt heltal (inklusive talet noll). Inga konstiga tecken får finnas i strängen (den innehåller alltså endast siffror). Funktionen skall returnera talet efter det som kom in. Dv.s. i princip skall funktionen addera talet ett till det tal som kom in. Talet som returneras skall också vara lagrat i en sträng och strängen får endast innehålla siffror. Inga inledande nollor får förekomma vare sig i det inkommande eller returnerade värdet. Det finns ett givet testprogram som heter Test_Big_Numbers_Succ att kopiera. Du skall inte behöva ändra något i detta program utan det skall gå att kompilera och köra när du skapat ditt paket.

11 kl Uppgift 3 Vägverket funderar på att införa så kallade tunnelavgifter i Stockholm. För att se om detta kommer att slå ut väl har de behov av ett paket som hanterar att bilar kör in i respektive ut ur en tunnel. Detta paket skall heta Tunnel_Handling och innehållade två procedurerna Drive_Into respektive Drive_Out_Of. Båda procedurerna skall ha en tunnel respektive en bil som parametrar. Paketet skall innehålla en datatyp som heter Tunnel_Type som är privat och som skall skapas som en länkad lista (med pekare). I listan skall data av typen Car_Type ligga. Car_Type finns given i paketet Car_Handling som finns att kopiera. Det finns ett givet testprogram som heter Test_Tunnel (som inte skall modifieras) som låter ett antal bilar köra in i respektive ut ur en tunnel. Självklart är det så att man kan köra in flera bilar och den som kört in först skall köras ut först. Om det sen kommer nya bilar innan alla tidigare är utkörda skall dessa nya förstås ut efter de gamla. Tänk er en riktig tunnel där man inte kan köra om varandra.

12 kl Uppgift 4 Du skall skriva ut det diagram man får för funktionen y = roten ur x. Det som är lite udda är att användaren inte matar in värden på x utan istället matar in min- och maxvärde på y samt den steglängd i y-led som skall användas (steglängden skall alltid gå jämnt upp med y-max och y-min). Se i exemplen nedan hur utskrifterna skall se ut för olika indata. Körexempel 1: Mata in startvärde på y: 1 Mata in slutvärde på y : 5 Mata in steglängd : 2 5 * 3 * 1 * Körexempel 2: Mata in startvärde på y: 0 Mata in slutvärde på y : 7 Mata in steglängd : 1 7 * 6 * 5 * 4 * 3 * 2 * 1 * 0* Körexempel 3: Mata in startvärde på y: 3 Mata in slutvärde på y : 7 Mata in steglängd : 1 7 * 6 * 5 * 4 * 3 * Tips: Den ordinarie funktionen för roten ur heter Sqrt och ligger i paketet Ada.Numerics.Elementary_Functions.

13 kl Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som ritar ut en bild på skärmen. Bilden finns lagrad i en textfil som heter PICTURE_BLANCS.CRYPT och är där lagrad på ett format som beskrivs enligt följande: Alla rader i filen motsvarar en rad i figuren En rad i filen består av ett antal markeringar (två tecken långa) samt eventuellt en extra halv markering. Första tecknet i en markering är en siffra som anger hur många blanktecken som skall skrivas ut före det andra tecknet i markeringen skrivs ut. En halv markering består endast av siffran som anger antalet blanktecken som finns i slutet av raden. Ett exempel på indatafil skulle kunna vara: \2\ Resultatet på skärmen skulle i detta fall bli (OBS! Första och sista raden innehåller alltså blanktecken i slutet av raderna): +--+ \ \ +--+ Det finns en given textfil som heter just PICTURE_BLANCS.CRYPT att kopiera.

14 kl Uppgift 2 I Ada har vi begränsningar på hur stora heltal man kan arbeta med inom typen Integer. Du skall nu skapa ett paket som heter Big_Numbers som innehåller en funktion som skall heta Pred. Denna funktion skall ta emot en godtyckligt lång sträng där innehållet är ett vanligt positivt decimalt heltal (större än talet noll). Inga konstiga tecken får finnas i strängen (den innehåller alltså endast siffror). Funktionen skall returnera talet före det som kom in. Dv.s. i princip skall funktionen subtrahera talet ett från det tal som kom in. Talet som returneras skall också vara lagrat i en sträng och strängen får endast innehålla siffror. Inga inledande nollor får förekomma vare sig i det inkommande eller returnerade värdet (undantag är givetvis att talet noll skall vara talet noll). Det finns ett givet testprogram som heter Test_Big_Numbers_Pred att kopiera. Du skall inte behöva ändra något i detta program utan det skall gå att kompilera och köra när du skapat ditt paket.

15 kl Uppgift 3 Vägverket funderar på att införa så kallade tunnelavgifter i Stockholm. För att se om detta kommer att slå ut väl har de behov av ett paket som hanterar att bilar kör in i respektive ut ur en tunnel. Detta paket skall heta Tunnel_Handling och innehållade två procedurerna Drive_Into respektive Drive_Out_Of. Båda procedurerna skall ha en tunnel respektive en bil som parametrar. Paketet skall innehålla en datatyp som heter Tunnel_Type som är privat och som skall skapas med hjälp av två stycken återvändsgränder (datatyp och rutiner för att hantera sådana finns i paketet Blind_Alley_Handling som är givet). Titta över de givna filer som finns att kopiera så finner du det du behöver för att slippa göra en massa i onödan. Det finns ett givet testprogram som heter Test_Tunnel (som inte skall modifieras) som låter ett antal bilar köra in i respektive ut ur en tunnel. OBS! Din datatyp Tunnel_Type skall ENDAST bestå av återvändsgränderna. För att simulera en tunnel med hjälp av två återvändsgränder kan man tänka sig följande scenarion. Kör in i tunnel motsvarar att köra in bilar i den första återvändsgränden. ALLTID! När man begär att få ut en bil ur tunnel finns det två fall. 1. Det finns bilar i den andra återvändsgränden: Plocka bil från den andra återvändsgränden. 2. Det är tomt i den andra återvändsgränden: Backa ut alla bilarna ur den första återvändsgränden och backa in dem i den andra återvändsgränden. Plocka sen en bil ut den andra återvändsgränden.

16 kl Uppgift 4 Du skall skriva ut det diagram man får för funktionen y = round(roten ur x). Det som är lite udda är att användaren inte matar in värden på x utan istället matar in min- och maxvärde på y samt den steglängd i y-led som skall användas (steglängden skall alltid gå jämnt upp med y- max och y-min). Se i exemplen nedan hur utskrifterna skall se ut för olika indata. Körexempel 1: Mata in startvärde på y: 1 Mata in slutvärde på y : 5 Mata in steglängd : 2 5 ********** 3 ****** 1 ** Körexempel 2: Mata in startvärde på y: 0 Mata in slutvärde på y : 7 Mata in steglängd : 1 7 ************** 6 ************ 5 ********** 4 ******** 3 ****** 2 **** 1 ** 0* Körexempel 3: Mata in startvärde på y: 3 Mata in slutvärde på y : 7 Mata in steglängd : 1 7 ************** 6 ************ 5 ********** 4 ******** 3 ****** Tips: Den ordinarie funktionen för roten ur heter Sqrt och ligger i paketet Ada.Numerics.Elementary_Functions. Avrundning kan göras med t.ex. Float Rounding.

17 kl Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som läser igenom en textfil som heter DATA.XML och skriver ut på skärmen hur många taggar det finns inuti. Vi räknar inte de taggar som är rena avslutningstaggar. De taggar som kan förekomma är: Inledningstag: <xxx> Avslutningstag: </xxx> Inledning och avslutning i samma tag: <xxx/> Ett exempel på indatafil skulle kunna vara: <aaa>... <bbb>... </bbb> <ccc>... </ccc>... <ddd/>... </aaa> <eee/> Resultatet på skärmen skulle i detta fall bli: Det finns 5 taggar i filen. Det finns en given textfil som heter just DATA.XML att kopiera. Det är givet att filen består av en korrekt datamängd. D.v.s. det fattas inga avslutningstaggar och det finns inga taggar som ligger i fel ordning. Det är också givet att texten i övrigt inte innehåller några /, < eller >.

18 kl Uppgift 2 I Ada har vi lite problem med hantering av riktigt stora heltal. Datatypen Integer räcker liksom inte till. Detta i kombination med att man ofta vill hantera andra talbaser än det decimala gör att vi är ute efter ett paket som klarar av att addera binära tal. Din uppgift är att skapa paketet Big_Binary_Numbers och där skapa operatorn + som adderar två binära tal. Det är givet att din operator skall ta emot två strängar (som inte är begränsade i längd) och addera ihop innehållet och returnera en ny sträng med resultatet. Strängarna innehåller endast ett antal tecken 0 och 1. Inga inledande nollor får finnas med (förutom för talet noll som givetvis representeras som 0 ). Det är givet att det endat är positiva binära heltal som skall adderas. Att addera binära tal är inget konstigare än att addera två vanliga tal. Man får tänka på att det blir en minnessiffra till nästa position om man adderar minst två ettor. OBS! Tänk på att minnessiffran räknas med i additionen. Körexempel 1: Mata in två binära tal (ett per rad): Resultatet av additionen blir: Körexempel 2: Mata in två binära tal (ett per rad): Resultatet av additionen blir: 1100 Körexempel 3: Mata in två binära tal (ett per rad): Resultatet av additionen blir: Körexempel 4: Mata in två binära tal (ett per rad): 0 0 Resultatet av additionen blir: 0

19 kl Uppgift 3 Du skall komplettera paketet Data_Structure_Handling som redan är påbörjat. Din uppgift är att se till att proceduren Insert fungerar enligt nedan. Det är givet att varje nod har ett tecken som data och att den kan kopplas mot två andra noder. Detta leder till att det kan bli cirkulariteter i datastrukturen, men det är alltid givet att man inte behöver leta sig vidare i strukturen om nästa nod är en nod med en tidigare bokstav (i alfabetet). Indata till programmet kommer att vara en sekvens av rader med beskrivningar av vilka noder som skall kopplas ihop i datastrukturen. Indatasekvensen kommer alltid att vara ordnad så att den kan ses som sorterad i bokstavsordning och man kan aldrig koppla sig mot en tidigare nod om inte existerar. Indatasekvensen avslutas med en enkel nolla (tecknet 0 ). Exempel på indatasekvens: a-b b-c c-b c-d d-a d-e e-c 0 Datastrukturen efter detta: Data b e a d c Du har i paketet en utskriftsprocedur given som återskapar indatasekvensen om du fått till datastrukturen rätt.

20 kl Uppgift 4 Du skall skriva ut det diagram man får för funktionen y = roten ur x. Det som är lite udda är att användaren inte matar in värden på x utan istället matar in min- och maxvärde på y. Steglängden skall alltid vara 1. Se i exemplen nedan hur utskrifterna skall se ut för olika indata. Körexempel 1: Mata in startvärde på y: 1 Mata in slutvärde på y : 5 5 * 4 * * 3 * * * 2 * * * * 1 * * * * * Körexempel 2: Mata in startvärde på y: 0 Mata in slutvärde på y : 7 7 * 6 * * 5 * * * 4 * * * * 3 * * * * * 2 * * * * * * 1 * * * * * * * 0** * * * * * * Körexempel 3: Mata in startvärde på y: 3 Mata in slutvärde på y : 7 7 * 6 * * 5 * * * 4 * * * * 3 * * * * * Tips: Den ordinarie funktionen för roten ur heter Sqrt och ligger i paketet Ada.Numerics.Elementary_Functions.

21 kl Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som ritar ut en almanacka för en given månad. Indata till programmet (matas in från tangentbordet) är hur många dagar det är i månaden och vilken dag första dagen i månaden är. Dagen matas in som ett heltal (1 = mån, 2 = tis,..., 7 = sön). Krav: Almanackan skall alltid vara utskriven med måndag som första dag. Exempel 1 på programkörning: Mata in antal dagar i månaden : 31 Mata in första dagen i månaden: 3 Mån Tis Ons Tor Fre Lör Sön Exempel 2 på programkörning: Mata in antal dagar i månaden : 28 Mata in första dagen i månaden: 1 Mån Tis Ons Tor Fre Lör Sön Exempel 3 på programkörning: Mata in antal dagar i månaden : 30 Mata in första dagen i månaden: 7 Mån Tis Ons Tor Fre Lör Sön

22 kl Uppgift 2 Till denna uppgift finns det tre givna filer. Den första innehåller ett antal substantiv och heter SUBSTANTIV.TXT. Den andra heter VERB.TXT och innehåller verb. Den tredje filen heter MENINGAR.TXT och innehåller ett antal rader med försök till enkla meningar. Din uppgift är att skriva ett program som läser igenom filen med meningarna och plockar ut de rader som innehåller meningar uppbyggda enligt formen substantiv verb. Filerna innehåller endast ord skrivna som gemener och de ord som inte finns med i de två filerna som innehåller verb och substantiv räknas som felaktiga. Det kan finnas meningar som alltså är korrekta ur uppbyggnaden substantiv verb, men ändå inte räknas som korrekta då orden i dessa meningar inte kan hittas i de två andra filerna. I de två hjälpfilerna (VERB.TXT och SUBSTANTIV.TXT) är orden maximalt 20 tecken långa och det finns inga blanktecken någonstans. I meningsfilen är orden alltid separerade med exakt ett blanktecken. Det är alltid två ord per rad i denna fil. När ditt program körts skall alla de rader (själva innehållet i raderna) som uppfyllde kraven ovan vara utskrivna på skärmen. Exempel på hur utskriften skulle kunna vara givet någon variant av filinnehåll (OBS! I de filer du har tillgängliga finns det säkert helt andra meningar/ord att tillgå. Kolla därför i dessa filer): huset brinner bilen tutar motorbåten far far far mor ror

23 kl Uppgift 3 I matematiken vill man ofta kunna beräkna determinanten av en matris (alltid kvadratiska matriser). Det finns i denna uppgift givet ett huvudprogram som läser in en matris från tangentbordet och lagrar detta i en datastruktur som representerar matrisen (i detta fall en vektor av godtycklig längd). Din uppgift är att lägga till två funktioner. 1) En funktion som beräknar determinanten av matrisen. 2) En hjälpfunktion till den förra som plockar ut en delmatris ur en matris. Antag att man har en matris av dimension 3 (d.v.s. en 3x3-matris) enligt följande: M Lagras i programmet som När man skall beräkna determinanten behöver man plocka ut ett antal delmatriser ur den matris man har. Detta görs genom att plocka bort första raden och en av kolumnerna (alla varianter av detta skall plockas ut). I en 3x3-matris blir det alltså tre delmatriser som skall plockas ut. Dessa blir med ovanstående matris följande: V 1 V 2 V 3 M 1 M 2 M Att plocka ut en delmatris kommer alltså att behövas flera gånger och därför skulle du alltså skapa funktionen beskriven i 2) ovan. Till funktionen skickar du matrisen och vilken kolumn som skall plockas bort. Tillbaka från funktionen får du den nya (mindre) matrisen. OBS! representationen av matrisen är en vektor i programmet. Tag ut rätt delar ur vektorn! Originalmatrisens dimension kallar vi för N (i vårt fall = 3 då M är en 3x3-matris) Vi kan kalla originalmatrisen gör M och delmatriserna för M 1, M 2, M 3. Det värde som står i första raden i den kolumn som tagits bort för att få fram delmatriserna kallar vi för V 1 (=3), V 2 (=4), V 3 (=2). Själva formeln för att beräkna determinanten kan beskrivas enligt följande: N det( M) = ( 1) ( i 1) V det ( M ) i i i = 1 Man beräknar alltså determinanten genom att summera en formel som i sig har determinaten för en delmatris. När en delmatris endast består av en 1x1-matris är determinanten densamma som värdet (talet) i matrisen. Tips: Det finns ett färdigt program som skapar olika matriser och ger determinantvärdet så att du kan kontrollera ditt svar. Kör detta och använd dessa data som indata till ditt program.

24 kl Uppgift 4 Alla vet vi ju hur de vanliga operatorerna + och - fungerar. Din uppgift är att fullborda ett påbörjat paket som skall ge lite extra hjälp till dem som vill använda de vanliga operatorerna + och -. Paketet heter Math och dess ads -fil finns given. Det finns dessutom ett testprogram som använder detta paket. I paketspecifikationen står en del krav på hur de funktioner som skall implementeras skall fungera. Funktionerna som skall skapas heter Plus och Minus.

25 kl Uppgift 1 ( Betyg 3 uppgift ) Inte nog med att Albert Frank Einstein klöv en ölatom redan som ung, han uppfann också det matematiska begreppet relativa tal. Ett relativt tal, E, definieras enligt formeln E = m * c 2 De två delar talet består av är talets massa (m) och den hastighet talet färdas i rymden (c). Två relativa tal kan ha olika massa och fara med olika hastighet i rymden och ändå vara lika. På samma sätt kommer två tal med samma massa, men som färdas olika fort alternativt har samma hastighet, men har olika massor att vara olika till storlek. Din uppgift är att skapa en post som representerar ett relativt tal samt följande procedurer och funktioner för att bearbeta sådana tal. Get - som läser in ett relativt tal. =, < - som jämför två relativa tal. Det är tillåtet att skapa ett separat paket för datatypen och ovanstående underprogram, men det är inget krav. Programkörning, exempel 1: Mata in det första relativa talet: Ange m-värdet: 16 Ange c-värdet: 2 Mata in det andra relativa talet: Ange m-värdet: 4 Ange c-värdet: 4 Dessa relativa tal var lika. Programkörning, exempel 2: Mata in det första relativa talet: Ange m-värdet: 12 Ange c-värdet: 2 Mata in det andra relativa talet: Ange m-värdet: 4 Ange c-värdet: 4 Det andra relativa talet var störst. I ditt program behöver du inte ha någon felhantering. Generellt sett kommer E att bli relativt stort även för relativt små c-värden. Vi antar också att inga negativa tal matas in av användaren.

26 kl Uppgift 2 Alla vet att Albert Einstein var väldigt begåvad och att han löste problem som man inte ens visste att de fanns innan han löst dem. Mindre känt (kanske helt okänt) är att han hade en syster som gifte sig med med en byggnadsherre vid namn Berthold Zweistein och fick en son som efter sin far och sin morbror fick heta Bertbert Zweistein. Bertbert sitter på jobbet och har fått ett antal textfiler som var och en kan innehålla en massa positiva oktala tal (tal i basen 8) eller så är de tomma. Om det inte är en tom fil gäller att det på varje rad i filen finns ett eller flera oktala tal separerade med blanktecken. Det är också givet att det kan vara olika många rader med tal i de olika filerna. Bertberts uppgift är att han för varje textfil med oktala tal skall skapa en ny textfil som skall innehålla ett antal tal (i den normala basen 10) som motsvarar summan av alla oktala tal som finns på en rad i originalfilen. Summan av första radens oktala tal i originalfilen skall alltså stå i den nya filen på rad ett. Summan av andra raden med oktala tal skall stå på rad två i den nya filen etc. Den nya filen kommer alltså att ha ett tal per rad och det skall bli lika många rader i den nya filen som i originalfilen. Bertbert har inte den matematiska begåvning som morbror hade, men han har ju datorer och programspråket Ada till sin hjälp så han löser problemet trots allt. Din uppgift är att lösa samma problem som Bertbert hade. Det gäller alltså att skriva ett program som läser data från en originalfil, som vi kan anta i denna uppgift att den heter OKTALA_TAL.TXT, och skriver ut summorna på den nya filen som skall heta DECIMALA_SUMMOR.TXT. Exempel på innehåll i OKTALA_TAL.TXT: Resultatet i DECIMALA_SUMMOR.TXT: TIPS 1: Om du inte klarar av att omvandla ett oktalt tal till ett decimalt tal gör det inget. Man kan i Ada läsa in tal i olika baser med hjälp av den vanliga Get-proceduren för heltal. Det är dock ett litet problem. För att Get skall klara av inmatningen måste det som matas in vara på formatet talbas#värde# vilket inte är fallet i filen (det är upp till dig att lösa). Ett exempel skulle kunna vara 8#11# som motsvarar talet 11 8 som i sin tur är samma tal som 9 10, d.v.s. talet 9 i vårt decimala talsystem. TIPS 2: Det är ok att använda fler filer eller datatrukturer än de som nämns i uppgiften.

27 Uppgift 3 Inom modern vetenskap finns det många begrepp som har sina anor långt tillbaka i tiden. Numer finns det ett helt forskningsområde som handlar om strängteori (engelska string theory ). Barbara Dreistein, en avlägsen släkting till den numer välkände Bertbert Zweistein, håller på med just detta och vill ha hjälp med ett litet problem hon stött på. Det smala forskningsprojekt Barbara Dreistein är involverad i tittar på långa och korta palindrom och hur dessa matchar varandra. Hon forskar i så kallade palindrompar. Ett par exempel där man direkt ser att de matchar varandra är de två palindromparen ABBA RATAR ABBA och ABBA samt NATURRUTAN och NATAN. Själva matchningen går till så att man tittar på sista bokstaven i de båda palindromen och om dessa är lika går man vidare och tittar på första tecknet i palindromen. Är dessa också lika går man vidare och tittar på näst sista tecknet i respektive palindrom. Likhet ger att man tittar på de andra tecknet etc. Man arbetar sig mot mitten av palindromet och när man gått igenom alla tecken i den kortare strängen och alla tecken har matchat varandra anser man att det är ett palindrompar. Om vi tittar på exemplen ovan och markerar de matchande tecknen med versaler ser vi kanske mer hur matchningen gått till. ABba ratar abba <-> ABBA NAturruTAN <-> NATAN Andra exempel på strängteoripalindrompar är: GOD Arab åt tå bara DOG <-> GOD ARA DOG AnNA <-> ANA Skriv ett program som läser in två strängar (vi antar att användaren matar in korrekta palindrom så slipper vi felhantering av detta), som är maximalt 30 tecken långa, och utför ovanstående kontroll. Om det är två strängar som matchar skall programmet skriva ut att de matchar, annars skall det stå att de inte matchar. Exempel på programkörning: Mata in det längsta palindromet : GOD ARAB ÅT TÅ BARA DOG Mata in det kortaste palindromet: GOD ARA DOG Det var matchande palindrom. Ett ytterligare exempel: Mata in det längsta palindromet : SIRAP I PARIS Mata in det kortaste palindromet: LIM I MIL Det var inte matchande palindrom.

28 Uppgift 4 Nu tror du att denna uppgift skall handla om den berömde musikern Beatrice Vierstein, men detta är helt fel. Den handlar istället om hennes broder Tuck som sysslade med broderier. Han behöver ett program som hjälper honom att rita ut de mönster han skall brodera. Det mönster som skall ritas av programmet ser ut på följande sätt (dimensionerna är här S=3, K=4, R=2) Ett körexempel (observera att dimensionerna endast avser övre vänstra kvadranten): Mata in S (antal stygn) : 6 Mata in K (antal kolumner): 4 Mata in R (antal rader) :

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 (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

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

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

TENTA: TDDD11 & TDDC68. Tillåtna hjälpmedel. Starta Emacs, terminal och tentakommunikationsfönster. Skicka in frågor och uppgifter TENTA: TDDD11 & TDDC68 Tillåtna hjälpmedel Det är tillåtet att ha böcker (t.ex. Ada-bok, formelsamlingar, lexikon,...) med sig samt utdelade lathundar (finns på kurshemsidan) för Ada, Unix och Emacs. Utdraget

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

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 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

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

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 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

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 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 (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

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2008-03-25.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program (en funktion), my_plot_figure, som läser in ett antal sekvenser av koordinater från tangentbordet och ritar ut dessa till en

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 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2004-03-10.kl.08-13 Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som ritar ut en åtthörning på skärmen. Åtthörningen skall dock se ut enligt exemplen nedan och det är så att användaren skall

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

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

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2009-12-16.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Skriv funktionen create_diagonal som tar emot de två parametrarna R och N. R markerar hur många rader den resulterande matrisen skall få och N markerar

Läs mer

kl Examination - Ada

kl Examination - Ada Examination - Ada 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

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2005-06-09.kl.08-13 Uppgift 1 ( Betyg 3 uppgift ) Ett plustecken kan se ut på många sätt. En variant är den som ses nedan. Skriv ett program som låter användaren mata in storleken på plusset enligt exemplen

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

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 4: Poster

Föreläsning 4: Poster Föreläsning 4: Poster Följande är genomgånget: type Person_Type is Namn : String(30); Skonr : Float; Kon : Boolean; Diskussion runt detta med olika typer m.m. Har tagit upp vilka operationer man kan göra

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

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

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

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

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

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

Talsystem Teori. Vad är talsystem? Av Johan Johansson

Talsystem Teori. Vad är talsystem? Av Johan Johansson Talsystem Teori Av Johan Johansson Vad är talsystem? Talsystem är det sätt som vi använder oss av när vi läser, räknar och skriver ner tal. Exempelvis hade romarna ett talsystem som var baserat på de romerska

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Tentaupplägg denna gång Denna tenta är uppdelad i två olika varianter. Det är helt ok att använda vilken variant ni vill. Det är ok att byta mitt under tentan om man så vill också. Variant 1: Uppgift 1,

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

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

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 TVÅPOTENSER. UPPGIFT 2 HISSEN I LUSTIGA HUSET.

UPPGIFT 1 TVÅPOTENSER. UPPGIFT 2 HISSEN I LUSTIGA HUSET. UPPGIFT 1 TVÅPOTENSER. 2 ½ ¾ = 5575186299632655785383929568162090376495104 n = 142 är det minsta värde på n för vilket 2 Ò inleds med siffrorna 55. Uppgiften består i att skriva ett program som tar emot

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

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

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

a = a a a a a a ± ± ± ±500

a = a a a a a a ± ± ± ±500 4.1 Felanalys Vill man hårddra det hela, kan man påstå att det inte finns några tal i den tillämpade matematiken, bara intervall. Man anger till exempel inte ett uppmätt värde till 134.78 meter utan att

Läs mer

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

Övningsuppgifter till föreläsning 2 Variabler och uttryck Sid 1 (5) Övningsuppgifter till föreläsning 2 Variabler och uttryck Syfte Syftet med övningsuppgifterna är att träna på: Aritmetik, variabler, tilldelning, scanf och printf Generellt Diskutera gärna uppgifterna

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2004-01-12.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) I denna uppgift skall du skapa ett paket som du skall kalla Get_Line_Package med en procedur som du skall kalla Get_Line. Denna skall ha två parametrar

Läs mer

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

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 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

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

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

TDIU Regler

TDIU Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

Läs mer

TDIU Regler

TDIU Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

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

TDIU Regler

TDIU Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

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

TDP Regler

TDP Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

Läs mer

TDIU01 / 725G

TDIU01 / 725G TDIU01 / 725G67 2011-12-16 08-13 Inloggning Börja med att logga in i tentasystemet genom att logga in med användare examx som har lösenordet kluring1. Verifiera att dina uppgifter stämmer och förbered

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

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

TDIU Regler

TDIU Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

Läs mer

TDP Regler

TDP Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

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

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2010-01-12.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Olika personer äter olika mycket mat. Vissa är sådana som alltid äter mycket. Andra äter lite och vissa äter mer vid vissa tillfällen. Hur hänger detta

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

Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1.

Introduktion Schenker-BTL AB, Stab IT Beskrivning över informationsintegreringmed Schenker, metodbeskrivning version 1. Schenker har interna system som handhar information som är av intresse för våra kunder/partners. Idag finns ett flertal av dem tillgängliga via Internet, sk Online-tjänster. Dessa erbjuder inte bara hämtning

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

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

Uppgift 1 (Oläsliga krypterade meddelanden)

Uppgift 1 (Oläsliga krypterade meddelanden) Uppgift 1 (Oläsliga krypterade meddelanden) Ofta vill man kryptera text för att inte andra skall se vad man skrivit. I den givna filen KRYPTERAD_TEXT.TXT finns en krypterad text som kan vara av intresse

Läs mer

Tentaupplägg denna gång

Tentaupplägg denna gång Tentaupplägg denna gång Denna tenta är uppdelad i två olika varianter. Det är helt ok att använda vilken variant ni vill. Det är ok att byta mitt under tentan om man så vill också. Variant 1: Uppgift 1,

Läs mer

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

TENTAMEN I PROGRAMMERING. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng TENTAMEN I PROGRAMMERING Ansvarig: Jan Skansholm, tel 7721012 Betygsgränser: Hjälpmedel: Sammanlagt maximalt 60 poäng. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng Skansholm,

Läs mer

kl Tentaupplägg

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

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

Programmering II (ID1019) :00-11:00

Programmering II (ID1019) :00-11:00 ID1019 Johan Montelius Programmering II (ID1019) 2015-06-11 08:00-11:00 Instruktioner Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten. Svaren

Läs mer

Programmeringsolympiaden 2012 Kvalificering

Programmeringsolympiaden 2012 Kvalificering Programmeringsolympiaden 2012 Kvalificering TÄVLINGSREGLER Tävlingen äger rum på ett av skolan bestämt datum under sex timmar effektiv tid. Tävlingen består av sex uppgifter som samtliga ska lösas genom

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 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 saker som kan vara

Läs mer

TDP Regler

TDP Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

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

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

Tema: Pythagoras sats. Linnéa Utterström & Malin Öberg

Tema: Pythagoras sats. Linnéa Utterström & Malin Öberg Tema: Pythagoras sats Linnéa Utterström & Malin Öberg Innehåll: Introduktion till Pythagoras sats! 3 Pythagoras sats! 4 Variabler! 5 Potenser! 5 Att komma tillbaka till ursprunget! 7 Vi bevisar Pythagoras

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

kl Tentaupplägg

kl Tentaupplägg Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. ä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

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

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2010-04-06.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Skriv den funktion, draw_figure, som ritar ut en liksidig figur enligt exemplen nedan med så många hörn som anges som parameter till funktionen (den ritar

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2007-03-14.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Skriv ett program, Draw_Tree, som ritar ut ett träd enligt körexemplen nedan. Exempel 1: Mata in storlek på trädet: 1 # # # # Exempel 2: Mata in storlek

Läs mer

Föreläsning 8: Aritmetik och stora heltal

Föreläsning 8: Aritmetik och stora heltal 2D1458, Problemlösning och programmering under press Föreläsning 8: Aritmetik och stora heltal Datum: 2006-11-06 Skribent(er): Elias Freider och Ulf Lundström Föreläsare: Per Austrin Den här föreläsningen

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

TENTAMEN MOM1 GRUNDLÄGGANDE PROGRAMMERINGSTEKNIK OCH

TENTAMEN MOM1 GRUNDLÄGGANDE PROGRAMMERINGSTEKNIK OCH UMEÅ UNIVERSITET Datavetenskap Marie Nordström 071207 TENTAMEN MOM1 GRUNDLÄGGANDE PROGRAMMERINGSTEKNIK OCH DATORSYSTEM/GRÄNSSNITT, 7.5HP. (5DV074/5DV075) Datum : 071207 Tid : 3 timmar Hjälpmedel : Allt.

Läs mer

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner

KPP053, HT2016 MATLAB, Föreläsning 1. Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner KPP053, HT2016 MATLAB, Föreläsning 1 Introduktion till MATLAB Skript Inläsning och utskrift av variabler Ekvationssystem Anonyma funktioner MATLAB Väletablerat Mycket omfattande program GNU OCTAVE Öppen

Läs mer

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg Introduktion till programmering D0009E Föreläsning 1: Programmets väg 1 Vad är en dator? En maskin vars beteende styrs av de innehållet (bitmönster) som finns lagrade i datorns minne (inte helt olikt förra

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

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

F2 Datarepresentation talbaser, dataformat och teckenkodning

F2 Datarepresentation talbaser, dataformat och teckenkodning F2 Datarepresentation talbaser, dataformat och teckenkodning EDAA05 Roger Henriksson Jonas Wisbrant Datarepresentation I en dator lagras och behandlas all information i form av binära tal ettor och nollor.

Läs mer

Övningshäfte 2: Induktion och rekursion

Övningshäfte 2: Induktion och rekursion GÖTEBORGS UNIVERSITET MATEMATIK 1, MMG200, HT2017 INLEDANDE ALGEBRA Övningshäfte 2: Induktion och rekursion Övning D Syftet är att öva förmågan att utgående från enkla samband, aritmetiska och geometriska,

Läs mer

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

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata. Att förstå variabler Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata. Vad är en variabel? En variabel är en plats att lagra information. Precis

Läs mer

Extramaterial till Matematik Y

Extramaterial till Matematik Y LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik Y NIVÅ TVÅ Taluppfattning och tals användning ELEV Det finns många olika programmeringsspråk. I den här uppgiften ska du få bekanta

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

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln

Uppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln Matlab-föreläsning (4), 10 september, 015 Innehåll m-filer (script) - fortsättning från föreläsning 1 In- och utmatning Sekvenser, vektorer och matriser Upprepning med for-slingor (inledning) Matlab-script

Läs mer

Övningsuppgifter kapitel 8

Övningsuppgifter kapitel 8 Inst. för Systemteknik Introduktion till programmering (SMD 180), 5 p Övningsuppgifter kapitel 8 1. Listor är en viktig datatyp i Python. Hur definierar kursboken lista? Vad kallas de värden som tillsammans

Läs mer

TDP Regler

TDP Regler Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt

Läs mer

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2009-04-14.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Du skall hitta det största tal N i intervallet [1, 999] där N 3 = produkten av alla heltalsdelare till N. Här följer två beskrivande exempel (inte körexempel)

Läs mer

Datalogi, grundkurs 1

Datalogi, grundkurs 1 Datalogi, grundkurs 1 Tentamen 9 dec 2014 Tillåtna hjälpmedel: Revised 6 Report on the Algorithmic Language Scheme och Tre olika s.k. Cheat Sheets för Scheme Sex olika s.k. Cheat Sheets för Python Tänk

Läs mer

TDDC74 Programmering: Abstraktion och modellering Datortenta , kl 14-18

TDDC74 Programmering: Abstraktion och modellering Datortenta , kl 14-18 TDDC74 Programmering: Abstraktion och modellering Datortenta - 017-10-7, kl 14-18 Läs alla frågorna först och bestäm dig för i vilken ordning du vill lösa uppgifterna. Uppgifterna är inte nödvändigtvis

Läs mer

Microsoft Office Excel, Grundkurs 1. Introduktion

Microsoft Office Excel, Grundkurs 1. Introduktion Dokumentation - Kursmaterial Innehåll 1. Introduktion 1.1. Programfönster 1.2. Inskrift och redigering 1.3. Cellformat 1.4. Arbeta med formler Kursövning E1.xlsx Egna Övningar E1E.xlsx - OnePRO IT, Bengt

Läs mer

UPPGIFT 1 TVETYDIGA DATUM

UPPGIFT 1 TVETYDIGA DATUM UPPGIFT 1 TVETYDIGA DATUM Datum skrivs på olika sätt i olika länder. Till exempel skulle datumet 03/05/01 i Sverige betyda 1 maj 2003, medan det i USA skulle vara 5 mars 2001 och i en del andra länder

Läs mer