Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp
|
|
- Ann-Charlotte Maj-Britt Jansson
- för 8 år sedan
- Visningar:
Transkript
1 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 ska gå till. Läs och följ dessa instruktioner noga! Den här laborationen är den viktigaste examinationen i denna kurs. Klarar man av att utföra denna självständigt har man de kunskaper som behövs för de fortsatta studierna (kom ihåg att inte hjälpa varandra med koden). Den är krävande och kommer att ta er mycket tid och möda men när ni är klara är ni programmerare, om än ej fullärda. Till er hjälp har ni sist i detta dokument en ledning. Det är nämligen vår erfarenhet att det just nu för de flesta är lite för tidigt att helt själv strukturera upp arbetet runt en sådan här större uppgift. Att använda den är frivilligt. Det är inte tillräckligt att få ihop ett program som utför uppgifterna utan det måsta vara bra programmerat. Detta betyder först och främst att det bra uppdelat med hjälp av funktioner och att det använder arrayer och structar där så är lämpligt. Inga globala variabler får förekomma. Vidare ska ni välja bra variabel- och funktionsnamn. Kommentarer i koden bör det finnas en del men ni behöver inte överjobba denna del. Kommentera ganska lite och fokusera istället på att koden i sig blir lättläst. Uppgiften Årets uppgift är att skapa ett matematiskt program för hantering av sfärer. Varje sfär ska representeras av en struct och innehålla radie och position (x,y,z) som decimaltal samt sfärens färg. Positionen är positionen för sfärens mittpunkt. När programmet startar får användaren ange ett filnamn (på en text-fil med sfärer) och därefter via en meny möjlighet att utföra följande handlingar så länge användaren vill: Lägga till sfärer Skriva ut sfärer Sortera sfärer Söka efter sfärer Ändra radien för sfärer Avlägsna sfärer Avstånd från origo Avsluta Uppstart och avslut När programmet startar får användaren ange en fil. Finns filen skall programmet läsa in sfärer från filen och spara i en array av structar (glöm inte att kontrollera att de får plats). Om filen saknas skall programmet börja med en tom array. När programmet avslutas ska det skriva över/skapa en textfil (ej binärfil) med det tidigare angivna namnet och där spara ner sfärera i arrayen så att de kan läsas in nästa gång programmet körs. Observera att all filhantering sker vid programstart och vid avslut. Däremellan hanterar programmet endast sfärerna i den interna arrayen.
2 Lägga till sfärer Här har man möjlighet att lägga till nya sfärer till de som redan finns i arrayen. Det är viktigt att programmet kontrollerar att det hela tiden finns plats i arrayen. Användaren får välja mellan att mata in sfärer själv eller att slumpa fram ett visst antal sfärer. De slumpade sfärerna ska ha 0<radie<10 och 0 x,y,z 100 samt slumpvis erhålla färgerna röd, grön, gul, blå, vit, svart. För inmatade sfärer gäller endast att radien>0. Väljer användaren att slumpa fram 1000 sfärer men det endast finns plats för 810 till skall programmet slumpa fram 810 stycken och fylla arrayen med dessa. Skriva ut sfärer När användaren väljer detta alternativ skrivs alla sfärer ut i den ordning de är lagrade i programmets array. Därefter kommer huvudmenyn upp igen. Alla värden skrivs ut med 2 decimaler. En utskrift då tre sfärer är lagrade kan se ut enligt (er utskrift bör ha prydliga kolumner!): radie (x, y, z, farg) 1.00 (0.00, 0.00, 0.00, gul) (10.00, 12.23, , vit) 0.01 (1.00, 2.00, 3.00, svart) Sortera sfärer Här får man välja på att sortera sfärer efter radie, x-koordinat eller volym (ej färg). Beroende val sorteras sfärerna i den array de lagras i och programmet återvänder till huvudmenyn. För att se resultatet av sorteringen får man i huvudmenyn välja att skriva ut alla sfärer. Söka efter sfärer Här ska användaren kunna söka efter sfärer. Denne får välja mellan att söka med hjälp av ett intervall för radien eller med hjälp av ett intervall för någon koordinat (ej färg). En körning skulle kunna se ut enligt: Vill du soka pa (1)radie, (2) x, (3) y, eller (4) z? 2 Ange min och max: Sfarer med 2.00 <= x <= 3.50: radie (x,y,z, farg) 4.00 (2.00,0.00,0.00, bla) (3.30, 12.23, -13,00, vit)
3 Ändra radien för sfärer Här får man först den ange den nya radien. Sedan får man göra en sökning enligt förra punkten och de hittade sfärerna får den nya radien. En körning kan se ut enligt: Vilken ar den nya radien? Vill du soka pa (1)radie, (2) x, (3) y, eller (4) z? 2 Ange min och max: Sfarer med 2.00 <= x <= 3.50: radie (x,y,z,farg) 4.00 (2.00,0.00,0.00,bla) (3.30, 12.23, -13,00, vit) Efter detta skall alltså de två sfärerna ovan ha fått radien Försök att återanvända kod från alternativet ovan med hjälp av funktioner och inte kopiering efter bästa förmåga. Avlägsna sfärer Här får man ännu en gång söka på samma sätt som ovan men nu tas de sfärer som hittas bort från arrayen. Det är viktigt att man inte skapar några hål i arrayen utan ser till att alla sfärer som är kvar lagras kompakt på plats 0 till n-1 om man har n sfärer. Avstånd från origo Om du är godkänd på laboration 1 och du redovisar på något av de två ordinarie redovisningstillfällena behöver du inte göra denna uppgift. När användaren valt detta alternativ får denne ange ett avstånd och sedan listar programmet alla sfärer som har kortare avstånd från sin yta till origo. Observera alltså att det inte är avståndet från mittpunkten av sfären som räknas utan avståndet från origo till den närmaste punkten på sfärens yta. Förbättrad sökfunktion Om du är godkänd på laboration 2 och du redovisar på något av de två ordinarie redovisningstillfällena behöver du inte göra denna uppgift. Skriv om sökfunktionen så att man istället för att söka på ett intervall för radien, x, y, eller z kan söka på ett intervall för en eller flera av variablerna. Man ska då t.ex. kunna välja att söka upp alla sfärer med radie mellan 2 och 5 och y-koordinat mellan -3.5 och 7. Den nya sökfunktionen skall gälla på alla tre meny-alternativ där man söker. Redovisning Vid redovisningstillfället skall du ha en fil med minst 20 sfärer redo att läsa in.
4 Ledning Först observerar vi att redan instruktionen ger oss följande programflöde: 1. Programmet börjar med att läsa in data från fil till en array av structar (om filen finns). Programmet stänger sedan filen. 2. Programmet låter användaren välja från huvudmenyn tills denna väljer avsluta. Alla ändringar görs till arrayen. Ingen filhantering utförs. 3. När användaren väljer avsluta skrivs arrayen ut till fil och programmet avslutar. Nu ska vi dela upp programmet och börja programmera de olika delarna. Här kan man göra många olika val. Nedan följer ett förslag som gör det någorlunda enkelt att testa programmet vartefter. Börjar ni med labben innan ni lärt er någon del kan ni välja en annan ordning men får då lägga lite mera tid på att kunna testa koden. Arbetsordning 1. Skriv en kommandotolk i main-funktionen som kan hantera alla legala val på top-nivån. Denna anropar i sin tur funktioner för de olika alternativen. Börja med att kontrollera att det hela kompilerar och kör utan funktionsanrop. Sedan lägger du till funktionsanrop till funktioner som bara skriver ut en rad med sitt namn. Se också till att man efter ett funktionsanrop får möjlighet att göra ett nytt menyval men att programmet avslutar när man väljer avsluta. Sådär nu har du ett fungerande program som vi kan bygga på bit för bit. 2. Definiera din sfär-struct och deklarera en array av sådana structar i main. Sätt storleken på arrayen till med hjälp av #define. Deklarera och initiera i main också en variabel som ska hålla reda på antalet sfärer vi har i vårt program (nedan kallar jag denna nrofspheres). Skicka nu med arrayen och nrofspheres (allternatuvt en pekare till nrofspeheres) till de utförande funktionerna. (Du skickar en pekare till nrofspheres där du behöver kunna ändra variabelns värde.) Se nu till att utförarfunktionerna kan ta emot parametrarna och kompilera sedan och testkör. 3. Ska en initierad testvariabel av sfär struct typ och skapa därefter en rutin som kan skriva ut variablen! När det är klart skapar du en funktion som kan skriva ut hela struct arrayen oavsett om den är tom eller inte! Nu har du bra verktyg för att felsöka resterande programutveckling. Skriv nu funktionen för att lägga till sfärer. Även denna behöver arrayen och en pekare till nrofspheres (håll tungan rätt i mun med pekarna nu och läs på om du behöver). Använd tillfälliga printsatser för att se att den verkar fungera. Du kan nu köra programmet och lägga till konton och sedan välja skriv ut och se att det fungerar. Förfina nu utskrifterna och rätta eventuella buggar. 4. Du har nu ett fungerande program som gör något och en funktion som ger oss möjlighet att se vad som händer. Vi ska här nu välja att börja jobba med filhanteringen. Är du inte riktigt redo för filhantering än kan du hoppa detta just nu. Vi börjar med funktionen för att avsluta. Skriv denna så att den skriver ut all information i alla structar i vår array till en textfil. Låt den skriva antalet structar överst i filen så blir det lättare att läsa in senare. Namnet på filen kan du just nu hårdkoda. Öppna filen i en texteditor och kontrollera att det verkar fungera.
5 5. Det är nu dags att skriva initiera funktionen som ska anropas en gång i början av main. Det vore här naturligt att läsa in antalet sfärer i filen och sedan sätta arrayens storlek t.ex. till det dubbla. Pga att vi inte ännu gått igenom allokering blir detta krångligt och svårt att göra i funktioner. Av den anledningen är det mitt råd att du behåller en fast storlek på arrayen (i nuläget sfärer) även om detta känns lite primitivt. Vi kan då få en bra uppdelning av programmet i funktioner (om du bemästrar pekare till arrayer och allokering får du gärna allokera minne beroende på antal sfärer i filen). Denna funktion skall enligt instruktionen fråga efter filnamn och om det finns en sådan fil lagra alla sfärer i filen i vår array. Om filen saknas ska funktionen ta reda på filnamnet som sedan skall användas i avsluta. Ändra nu också funktionen avsluta så att denna skriver till korrekt fil. 6. Nu har vi kommit så långt så att jag tror ni är redo att själva välja i vilken ordning ni jobbar med övriga alternativ. Kom ihåg att kompilera och testköra ofta. Lycka till! Nicklas
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
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
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
HI1024 Programmering, grundkurs TEN2 2015-10-30
HI1024 Programmering, grundkurs TEN2 2015-10-30 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
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
HI1024 Programmering, grundkurs TEN
HI1024 Programmering, grundkurs TEN2 2015-01-08 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
HI1024 Programmering, grundkurs TEN2 2014-03-13
HI1024 Programmering, grundkurs TEN2 2014-03-13 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
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
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
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
KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012
KTH STH TENTAMEN HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012 Gamla kurskoder: HI1900, 6E2950, etc. Examinator: Johnny Panrike Rättande lärare: Nicklas Brandefelt, Johnny Panrike och
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
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
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
BMI = (vikt i kg) / (längd i m) 2. Lösningsförslag
HI1024 TEN2 2013-10-28 Betygsgränser: Fx-8, E-9, D-11, C-12, B-14, A-16 (MAX-18) Generella rättningsnormer: Mycket dåliga variabelnamn ger -1p totalt på provet vid andra tillfället Inga eller dåliga kommentarer
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,
Föreläsning 10. Pekare (Pointers)
Föreläsning 10 Pekare (Pointers) Dagens kluringar int a=5; int f(int b) a--; b++; return b; int main() int a=3; printf("%d,",f(a)); printf("%d",a); return 0; int f(int a) if(a==1) return a; else return
Att använda pekare i. C-kod
Att använda pekare i C-kod (Bör användas av de som känner sig lite hemma med C-programmering!) Rev 1, 2005-11-23 av Ted Wolfram www.wolfram.se Syfte: Man kan tycka att det är komplicerat att använda pekare
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.
Innehåll. Introduktion till objektorientering. OOP (objektorienterad programmering) Objekt, instanser, klasser
Föreläsning 1 Innehåll Introduktion till objektorientering OOP (objektorienterad programmering) Objekt, instanser, klasser C++ OO i C++ Standardbibliotek Utökningar från C (syntaktiskt socker) Introduktion
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
TUTORIAL: SAMLING & KONSOLL
TUTORIAL: SAMLING & KONSOLL Denna tutorial är en fortsättning på den tutorial där vi skapade klassen Car och sedan objekt av denna klass. Vi skall nu lära oss att lagra dessa objekt i en samling och även
Tentamen i. Programmering i språket C
1 of 6 Örebro universitet Akademin för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering i språket C för D1 m fl, även distanskursen lördag 25 februari
Dynamiskt minne. Vad är dynamiskt minne Motivering Hur gör man i C Övningar
Dynamiskt minne Agenda Vad är dynamiskt minne Motivering Hur gör man i C Övningar Minne Datorns primärminne används till olika ändamål De flesta system partitionerar minnet efter användningen: Programkoden
Agenda. Arrayer deklaration, åtkomst Makron Flerdimensionella arrayer Initiering Strängar Funktioner och arrayer. Övningar nu och då
Agenda Arrayer deklaration, åtkomst Makron Flerdimensionella arrayer Initiering Strängar Funktioner och arrayer Övningar nu och då 1 Motivering I de flesta problem ingår att hantera multipla data I de
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
#include <stdio.h> #include <string.h>
#include #include void fun(char s[]) int i=-1; while(s[++i]!=0) if('a'
Föreläsning 6 pekare och pekare tillsammans med arrayer
Föreläsning 6 pekare och pekare tillsammans med arrayer Vi ska nu undersöka vad pekare egentligen är och hur de relaterar till arrayer. Det är ett centralt tema i C-programmering. Vi följer boken och går
Kompilera och exekvera Javakod
Kompilera och exekvera Javakod Förberedelser För att kunna göra dessa övningar måste du ha installerat Java Development Kit, JDK, som bland annat innehåller Java kompilatorn, javac. Hur du installerar
HI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN1 - Teoretisk tentamen Tid: Torsdagen den 20 oktober 2011,
KTH STH TENTAMEN HI1024:TEN1 - Teoretisk tentamen Tid: Torsdagen den 20 oktober 2011, 8.15-12.15 Gamla kurskoder: HI1900, 6E2950, etc. Examinator: Johnny Panrike Rättande lärare: Nicklas Brandefelt, Johnny
Ö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
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
Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php
Introlektion PHP är ett av de enklare språken att lära sig just pga. dess dynamiska struktur. Det används för att bygga upp båda stora och mindre system. Några vanliga system som använder sig av PHP är
Föreläsning 13. In- och utmatning
Föreläsning 13 In- och utmatning Dagens kluring Deklarera en struct som kan användas för att representera en rät linje Använd den I main för att deklarera en variabel som du initierar så att den representerar
Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 19.00. Tentamen i Programmering C, Fri, Kväll, 041211.
1(8) ÖREBRO UNIVERSITET INSTITUTIONEN FÖR TEKNIK Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 19.00. Denna tenta kommer att vara färdigrättad Ti 14/12 och kan då hämtas på mitt tjänsterum,
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
Programmering för språkteknologer II, HT2011. Rum
Programmering för språkteknologer II, HT2011 evelina.andersson@lingfil.uu.se Rum 9-2035 http://stp.ling.uu.se/~evelina/uv/uv11/pst2/ Kursplan Mål Efter avslutad kurs skall studenten för att förtjäna betyget
Tentamen TEN1 HI
Tentamen TEN1 HI1029 2014-03-14 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
Programmering. Scratch - grundövningar
Programmering Scratch - grundövningar Lär känna programmet: Menyer för att växla mellan att arbeta med script, utseende/bakgrund och ljud. Scenen där allting utspelar sig. Här klickar du på bakgrunden
Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2
AID-nummer: Datum: 2014-12-18 Kurskod: 725G61 Provkod: LAB1 Grundkurs i programmering, 6 hp (725G61) Dugga 2 tillfälle 2 Skrivningstid: 2014-12-18 klockan 8.00-10.00. Hjälpmedel: Inga. För varje fråga
Kort introduktion till POV-Ray, del 1
Kort introduktion till POV-Ray, del 1 Kjell Y Svensson, 2004-02-02,2007-03-13 Denna serie av artiklar ger en grundläggande introduktion och förhoppningsvis en förståelse för hur man skapar realistiska
PC-teknik, 5 p LABORATION FILHANTERING
PC-teknik, 5 p LABORATION FILHANTERING Laborationsansvariga: Anders Arvidsson Utskriftsdatum: 2004-09-14 Laborant(er): 1 Syfte Laborationen ska illustrera möjligheten att använda funktioner i DOS för att
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
LABORATION 4 OBJEKTORIENTERAD PROGRAMMERING I C++ I
LABORATION 4 OBJEKTORIENTERAD PROGRAMMERING I C++ I Vt 2002 Mål: Lära sig: Filhantering Stränghantering Vektorer Funktioner Programstruktur Tid: Läroboken: 6 timmars handledd laborationstid. Beräknad klar
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
DD1311 Programmeringsteknik för S1 Laborationer läsåret 2007-2008
DD1311 meringsteknik för S1 Laborationer läsåret 2007-2008 Fyll i ditt namn och personnummer med bläck eller motsvarande. Kursledare är Linda Kann, linda@nada.kth.se. Namn... Personnr... Laborationer Labb
Introduktion till programmering D0009E. Föreläsning 5: Fruktbara funktioner
Introduktion till programmering D0009E Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner
RV03 Ändring av betygsskala
RV03 Ändring av betygsskala Ändringshistorik Revision Datum Av Kommentar 1.0 2015-07-01 Marita Nilsson Innehållsförteckning Ändringshistorik... 1 Innehållsförteckning... 1 1 Beskrivning av funktionen...
Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010
Föreläsning 6 Kapitel 5 5.1 switch-satsen Vi ser på ett par exempel ur boken: int a; srand(time(0)); a=rand()%6+1; if(a==1) printf("hej Du glade\n"); else if(a==2) printf("god dag\n"); else if(a==3) printf("är
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
Introduktion till programmering SMD180. Föreläsning 5: Fruktbara funktioner
Introduktion till programmering Föreläsning 5: Fruktbara funktioner 1 Retur-värden Funktioner kan både orsaka en effekt och returnera ett resultat. Hittills har vi ej definierat några egna funktioner med
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
Introduktion till programmering SMD180. Föreläsning 3: Funktioner
Introduktion till programmering Föreläsning 3: Funktioner 1 1 Mer matematik Vi har sett matematiska uttryck med variabler, värden och operatorer, ex: 17+n pi/2 hours*60+minutes Kan man även skriva uttryck
Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:
Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk
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
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
PROGRAMMERING I NXC. Sammanfattning KUNGLIGA TEKNISKA HÖGSKOLAN
KUNGLIGA TEKNISKA HÖGSKOLAN PROGRAMMERING I NXC Namn: Michel Bitar 2012-08- 25 E- post: mbitar@kth.se Introduktionskurs i datateknik, II1310 Sammanfattning Intressant och lärorik laboration om att programmera
Design av interaktiv multimedia. Läs i förväg om det som övningarna kommer att beröra. Träna hemma både före och efter övningarna.
Använd olika lager. Döp lagren! Organisera era bibliotek! Design av interaktiv multimedia Ge era symboler instansnamn för att hitta dem med AS. Nytt för denna kurs: Ingen ActionScript-kod i.fla-filen!
Introduktion till programmering med hjälp av Lego Mindstorm
Kungliga Tekniska Högskolan Introduktion till programmering med hjälp av Lego Mindstorm Laborationsrapport gällande programmering inom NXC Simon Jansson 31 08 2014 simonjan@kth.se Introduktionskurs i datateknik
Deklarera en struct som kan användas för att representera en rät linje
Deklarera en struct som kan användas för att representera en rät linje Använd den I main för att deklarera en variabel som du initierar så att den representerar en linje som går genom punken (0,2) och
Programmering, grundkurs, 8.0 hp HI1024, extra tentamen, TEN1, för TIDAA1. Fredagen den 11 mars 2011,
Programmering, grundkurs, 8.0 hp HI1024, extra tentamen, TEN1, för TIDAA1 Fredagen den 11 mars 2011, 13.15 17.15 Tentamen består av två delar, del A och del B. Del A innehåller 10 kryssfrågor på olika
Övningar Dag 2 En första klass
Kurs i C++ Sid 1 (5) Övningar Dag 2 En första klass Denna övning går ut på att steg för steg bygga upp en klass och skapa objekt. Vi kommer att utgå från en sammansatt datatyp i en struct och parallellt
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ösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 13.00. Omtentamen i Programmering C, Fri, Kväll, 050108.
1(8) ÖREBRO UNIVERSITET INSTITUTIONEN FÖR TEKNIK Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 13.00. Denna tenta kommer att vara färdigrättad Fr 14/1 och kan då hämtas på mitt tjänsterum,
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
Multipel tilldelning. Introduktion till programmering D0009E. Föreläsning 6: Iteration. while-satsen. Kom ihåg. Snurror kontra rekursion
Introduktion till programmering D0009E Föreläsning 6: Iteration Multipel tilldelning Helt ok att tilldela en variabel flera gånger: bruce = bruce, bruce = 7 bruce Output: 7 Som tillståndsdiagram: bruce
Språket Python - Del 2 Grundkurs i programmering med Python
Hösten 2009 Dagens lektion Funktioner Filhantering Felhantering 2 Funktioner 3 FUNKTIONER Att dela upp program Att dela upp program i mindre delar, funktioner är ett viktigt koncept i programmering. Viktigt
Micro:bit. Börja skapa egna program
Micro:bit Börja skapa egna program Att programmera är mer än att skriva kod 1. När man ska bygga något behövs först en ritning. Formulera i talspråk vad programmet ska göra. 2. Förbered att skriva koden
Grundläggande programmering med C# 7,5 högskolepoäng
Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Omtentamen DE13, IMIT13 och SYST13 samt öppen för alla (Ifylles av student) (Ifylles av student)
Programmeringsteknik II
Programmeringteknik II Kursintroduktion http://www.it.uu.se/edu/course/homepage/prog2/vt18/ 2018-03-19 Programmeringsteknik II 2018-03-19 1 / 9 Lärare Carl Nettelblad (kursansvarig) Anna Eckerdal Biträdande
Minnestilldelning (allokering) och frigörande (avallokering) av minne
Pekare i C++ Pekare används mycket i C++. De är bra både för att de tillåter dynamisk minnesallokering och för att de är referenser. En pekarvariabel innehåller en adress till ett element, den pekar på
Instruktion för laboration 1
STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. för matematisk statistik ANL/TB SANNOLIKHETSTEORI I, HT07. Instruktion för laboration 1 De skrifliga laborationsrapporterna skall vara skrivna så att
PC-teknik, 5 p LABORATION ASSEMBLERINTRODUKTION
PC-teknik, 5 p LABORATION ASSEMBLERINTRODUKTION Laborationsansvarig: Anders Arvidsson Utskriftsdatum: 2005-08-31 Laborant(er): 1 Syfte Laborationen ska ge studenten möjlighet att genom assemblerinlägg
Medieteknologi Webbprogrammering och databaser MEB725, 5p (7,5 ECTS) Klientprogrammering JavaScript Program på flera sidor
http://w3.msi.vxu.se/multimedia Medieteknologi Webbprogrammering och databaser MEB725, 5p (7,5 ECTS) Klientprogrammering JavaScript Program på flera sidor Rune Körnefors Innehåll Variabler i JavaScript
TENTAMEN CD5250. Objektorienterad programutveckling med C++, 5p. Datum: , Tid: 14:00-19:00
TENTAMEN CD5250 Objektorienterad programutveckling med C++, 5p Max poäng: 40 Betygsgränser: 3: 20 4: 28 5: 36 Datum: 1999-06-01, Tid: 14:00-19:00 Ansvarig: Ivica Crnkovic Upp till 5 poäng kan komma från
Funktioner och programstruktur. Föreläsning 5
Funktioner och programstruktur Föreläsning 5 Dagens kluring int v[10]=1,2,3,4,5,6,7,8,9,10; int i; for(i=0;i
Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik
Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 - Inbyggda system - Analog till digital signal - Utvecklingssystem, målsystem - Labutrustningen - Uppbyggnad av mikrokontroller - Masinkod, assemblerkod
EXTRA UPPGIFTER I C++ PROGRAMMERING-A
EXTRA UPPGIFTER I C++ PROGRAMMERING-A Uppgifterna är ej sorterade efter svårighetsgrad 1. Gör ett program som kan beräkna arean och omkretsen av en cirkel om användaren (du) matar in cirkelns radie. Skapa
Föreläsning 2. Operativsystem och programmering
Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data
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),
Lab1 Introduktion. 1 Syfte. 2 Innehåll Win32API Skapa trådar Kritiska sektioner Mailslothantering. 3 Förberedelse & Tips
Lab1 Introduktion Förberedelse för planetlabben genom att kapsla in (skapa wrappers) systemanrop. 1 Syfte Få en känsla av hur Win32API fungerar, dvs programmerarens interface gentemot Windows. Känsla för
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
Föreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Programdesign. Dokumentera. Dokumentera
Programdesign Dokumentera Välj datastruktur så programmet blir så enkelt som möjligt. Välj algoritm så programmet blir lättläst, robust och effektivt. Analysera programmet för att få en bra metod. Överväganden
Introduktionsmöte Innehåll
Introduktionsmöte Innehåll Introduktion till kursen Kursens mål och innehåll Undervisning Datavetenskap (LTH) Introduktionsmöte ST 2019 1 / 14 EDAA01 Programmeringsteknik - fördjupningskurs Ingen sommarkurs
Det finns många flaggor till g++,
C++, Övning 1 Jonas Sjöbergh, jsh@nada.kth.se Inge Frick, inge@nada.kth.se Alexander Baltsatsis hur man kompilerar och kör make preprocessor minnesallokering, pekare grundläggande C++, funktioner m.m.
Välkommen till. Datastrukturer, algoritmer och programkonstruktion. eller DOA
Välkommen till Datastrukturer, algoritmer och programkonstruktion eller DOA Jag: Christer Labbassar: Caroline: Johan: Agenda, före lunch Inledning om DOA-kursen Backspegel Mål Syfte Examination Om lärande
AVR 3 - datorteknik. Avbrott. Digitala system 15 hp. Förberedelser
Namn: Laborationen godkänd: Digitala system 15 hp AVR 3 - datorteknik LTH Ingenjörshögskolan vid Campus Helsingborg Avbrott. Syften med den här laborationen är att introducera avbrott. Avbrott som uppkommer
Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot
KUNGLIGA TEKNISKA HÖGSKOLAN Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot Josef Karlsson Malik 2015-09- 02 jkmalik@kth.se Introduktionskurs i datateknik (II0310) Sammanfattning
Systemkonstruktion SERIEKOMMUNIKATION
Systemkonstruktion SERIEKOMMUNIKATION Laborationsansvariga: Anders Arvidsson Utskriftsdatum: 2005-04-26 Syfte Laborationen syftar till att ge studenten tillfälle att närmare bekanta sig med RS-232-protokollet,
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
Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer
Programmering hh.se/db2004 Föreläsning 3: Java. Grundtyper, variabler och arrayer Hej Då, Karel! Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Center for Research on Embedded
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
EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.
EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade
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.
Labrapport: Programmering i NXC Programmera LEGO Maindstorm med NXC
KTH ICT Labrapport: Programmering i NXC Programmera LEGO Maindstorm med NXC Jonathan Kindfält 23/08-2012 E-post (kindfalt@kth.se) Introduktionskurs i datateknik II1310 Sammanfattning Denna rapport behandlar
Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut
F5: Filhantering in- och utmatning (kap. 2 och 8) 1 Utskrift på skärm, inläsning från tangentbord (kap. 2) Spara och hämta variabler med save och load (kap. 2) Kommandot textread Mer avancerad filhantering:
Programdesign. minnesutrymme storlek på indata. DA2001 (Föreläsning 15) Datalogi 1 Hösten / 20
Programdesign Välj datastruktur så programmet blir så enkelt som möjligt. Välj algoritm så programmet blir lättläst, robust och effektivt. Analysera programmet för att få en bra metod. Överväganden vid
Instruktion för laboration 1
STOCKHOLMS UNIVERSITET MATEMATISKA INSTITUTIONEN Avd. för matematisk statistik MD, ANL, TB (rev. JM, OE) SANNOLIKHETSTEORI I Instruktion för laboration 1 De skriftliga laborationsrapporterna skall vara
Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering...
Projekt i programmering 1 (ver 2)... 2 Projektidé... 2 Planering... 2 Genomförande... 2 Testning och buggar... 3 Utvärdering... 3 Planering... 4 Bussen (projektförslag)... 5 Bakgrund... 5 Klassen Buss