Uppföljning till lektion 5 om pekare. Grundläggande symboler. En struct, en pekartyp och lite variabler
|
|
- Eva Hedlund
- för 5 år sedan
- Visningar:
Transkript
1 Uppföljning till lektion 5 om pekare Pekare, structar och rekursiva funktioner kan sannerligen vara lite knepigt att förstå. Denna lilla skrift är ett försök att me hjälp av många illustrationer göra et hela något klarare. Grunläggane symboler Ett ataobjekt är en plats i minnet är vären av en viss bestäm typ kan lagras. I etta sammanhang beskrivs ataobjekt me e här symbolerna, som anger atatyp och aktuellt väre. Dataobjekt behöver e vara associerae me ett varibelnamn. 36 char P Variabler ritas så här, vilket ska visa att et finns en association mellan ett namn och ett ataobjekt. Till vänster har Value ännu e fått något väre (et är oefinierat), till höger har Value fått väret -19. Value? Value -19 Dataobjekt som är pekarvären visas me essa symboler. Här heter en tänkta pekartypen Ref, och från vänster till höger har vi ett oefinierat pekarväre, icke-pekaren (väret 0), och ett pekare till något annat ataobjekt (e visat). Ref? Ref Ref En struct, en pekartyp och lite variabler Vi gör följane efinitioner: typeef struct Noe* ; struct Noe { ata; next; }; Noe Ett ataobjekt av typen Noe tecknas å som till höger. Det består ju av två inre variabler me varsina namn och atatyper. Från värena bortser vi för ögonblicket. I något sammanhang görs essa två variabeleklarationer: Noe my_noe; = 0; Innehållet i my_noes två komponenter är förstås oefinierat. Observera också att my_noe här är (irekt) en Noe, en är e en pekare till en sån. my_noe Noe??
2 Vi tänker oss nu att et är main vi betraktar. Där görs etta: = new Noe; -> ata = 8; -> next = 0; För att tyligt visa var variabler och ataobjekt hör hemma införs också e streckae boxarna u ser här. Namnet hör till main, och är finns också et associerae ataobjektet. Noen har äremot skapats i et ynamiska utrymmet (heapen), är objekt alrig får namn automatiskt. Noe 8 Parameteröverföring Detta lilla avsnitt använer symbolerna ovan för att illustrera en väsentliga skillnaen mellan vanliga parametrar (väreparametrar) och referensparametrar. Vi utgår från situationen närmast ovan, är mains variabel pekar på en Noe. Vi antar också att et existerar en funktion me specifikationen voi foo( pnt); Va en gör är utan resse, eftersom enast et som häner vi anropet och överföring av parametern ska beskrivas. main gör foo(), och när foo sean startar gäller figuren nean. Det karakteristiska är att pnt skapas som en ny variabel i foo, och att ess väre är blir en kopia av s väre. Om väret av pnt föränras påverkar et e s väre! foos variabler pnt Noe 8 Nean råer samma utgångsläge, men main gör i stället anropet fie(), är fie har specifikationen voi fie(& pnt). I etta fall blir fies pnt e en ny variabel, utan bara ett nytt (tillfälligt) namn på ett rean existerane ataobjekt. I et fall pnt ges något nytt väre blir etta också nytt väre i mains! fies variabler pnt Noe 8
3 Funktionen insert_first Den funktion som lektionen hanlae om kommer här. Kanhäna namnen på parametrarna är anra, men uppträanet är etsamma. Om l är en är avsikten att insert_first(l,v) ska sätta in en ny no innehållane :en v först i l. voi insert_first(&, ) { = new Noe; -> ata = ; -> next = ; = ; } Här följer nu en genomgång av hur insert_first jobbar, steg för steg, i ett par olika fall. main gör först = 0; och ärefter anropet insert_first(, ); voi insert_first(&, ) { I insert_first blir givetvis bara ett annat namn på ataobjektet i main (ett alias), mean blir en helt ny variabel vars väre är en kopia av et som main skickar. = new Noe; -> ata = ; En ny Noe skapas, och sätts att peka på en. Därefter får ata-fältet i en nya noen sitt väre. Noe? -> next = ; Här får en nya noens next-fält samma väre som (vs icke-pekaren 0). Noe
4 = ; När sätts att peka på samma no som innebär et att också i main får enna pekare som väre. Därefter lämnas insert_first. Noe Tillbaka i main. main gör nu ett nytt anrop, insert_first(, ); Alleles efter att anropet är bilen enna: Noe = new Noe; -> ata = ; sätts att peka på en ny no, vars ata-fält sen får sitt väre. Noe? Noe
5 -> next = ; Nu sätts en nya noen in före en rean existerane, genom att en nya noens next-fält sätts att peka på samma väre som har. Noe Noe = ; Slutligen kopieras s väre till (och ärme till!), och i och me etta har en senaste nya noen hamnat före alla tiigare. Noe Noe
6 Sammanfattning av insert_first insert_first tar emot a) ett -objekt och en, b) skapar via en ny Noe me :en och s väre som innehåll och c) kopierar till sist pekaren till nya Noen (vs ) till. Nean följer en illustration av en serie av tre anrop av insert_first me hjälp av lite enklare symboler: a) b) c) anrop 1 14 ny no efter före anrop 2 22 ny no efter före 14 anrop 3 8 ny no efter före Det är nu e növänigt att betecknar starten på en lista. Den kan vara ett -objekt var som he i en keja av noer. Skissen här visar att är associera me next-fältet i en anra av noerna i en längre lista. Effekten av insert_first i et här fallet blir att en ny no läggs in irekt efter en no är råkar vara placera, och före återstoen av listan. Detta är viktigt att inse för att förstå nästa funktion. huvulista huvulista ny no före 23 ny no efter Funktionen insert Denna funktion presenteraes också på lektionen. insert(l, v) ska sortera in en ny no me v som innehåll på rätt plats i listan l. l förväntas i förväg vara en tom lista eller vara sortera i stigane orning, och ska alltså bibehålla sorteringsorningen. voi insert(& hea, ) { if(hea == 0 < hea -> ata) insert_first(hea, ); else insert(hea -> next, ); }
7 main gör nu på nytt = 0; för att starta me en tom lista, och gör sen anropet insert(, ); voi insert(& hea, ) { Direkt efter anropet ser et ut så här. hea blir alias för. inserts variabler hea if(hea == 0 < hea -> ata) insert_first(hea, ata); Eftersom hea verkligen är 0 sker här anropet till insert_first. voi insert_first(&, ) { blir nytt namn på et ataobjekt som hör till hea, som fortfarane är etsamma som s. Alltså, samma ataobjekt har nu tre olika namn, i olika sammanhang. inserts variabler hea När insert_first gjort sitt jobb, så när som på en sista raen, har vi följane situation. inserts variabler hea Noe
8 = ; Till sist får /hea/ sitt väre från, varefter insert_first lämnas. inserts variabler hea Noe Nu lämnas också insert, och vi är tillbaka i main. Där är nu en lista me väret som ena innehåll. main gör sen anropet insert(, 49); if(hea == 0 < hea -> ata) insert_first(hea, ata); hea är e 0 (vs är e tom) och (49) är > hea->ata () så villkoret är e uppfyllt. else insert(hea -> next, ); Det betyer att insert anropar sig själv, rekursion uppstår alltså!
9 voi insert(& hea, ) { // anra gången! I figuren nean visar en övre insert (1) läget när main anropae insert. hea är är samma ataobjekt som mains, eftersom et var et objektet som main överföre till hea. När insert anropar sig själv gäller insert(2). När et anropet sker är et hea->next i version 1 som överförs till hea i version 2 av insert. Det förekommer alltså 2 hea, men alla utom en senaste är ola. inserts (1) variabler hea 49 inserts (2) variabler hea 49 Noe if(hea == 0 < hea -> ata) insert_first(hea, ata); Det är nu insert(2) som är en exekverane insert, mean insert(1) och ess hea vilar. heas väre är å 0, villkoret alltså uppfyllt och ärme anropas insert_first. insert_first kommer som vanligt att lägga en ny no (nu me 49) först i et -objekt en får som parameter. Efter att insert_first gjort sitt jobb och vi återvänt till insert(2) ser et ärme ut så här: inserts (1) variabler hea 49 inserts (2) variabler hea 49 Noe Noe 49
10 insert(2) har jobbat klart och vi återväner till en som gjort anropet. Detta är insert(1). Den är nu också färig, och vi återväner å till ess anropare, som är main. På vägen tillbaka har ingenting räffat som påverkat hea, och sluteffekten är att nu består av och 49, i en orningen. Sammanfattning av insert Som u tiigare insett är et insert_first som gör jobbet att skapa en ny no och placera in en på en ut plats. Det insert gör är egentligen bara att hitta en position (en no) är en ny no ska in. Därefter överlåts jobbet åt insert_first. insert arbetar rekursivt, och i varje varv i rekursionen (i varje ny version av insert) har variabeln hea stegats fram till nästa -objekt i listan. Det första -objektet är et som utifrån pekar på listans första no, e återståene finns i e successiva noerna. Detta stegane pågår till ess hea är antingen 1) ett -objekt me icke-pekaren, eller 2) ett -objekt som pekar ut en no före vilken en nya noen ska placeras in. Det ska ha framgått av figurerna ovan, men kan förtjäna att förtyligas: varje ny version av insert har också en ny, egen version av variabeln/parametern hea. De olika versionernas resp hea får e förväxlas me varanra. Det är allti en exekverane versionens hea som gäller e älre versionernas öljs tillsviare. När insert(2) lämnas försvinner ess hea, insert(1) väcks upp och ess hea blir i stället en råane. Anropet av insert_first är alltså slutvillkoret i rekursionen; när et gjorts sker e längre några ytterligare anrop av insert, eftersom jobbet har blivit gjort. På återvägen från båe anropet av insert_first och varje rekursivt anrop gör insert ingenting alls, så ingen ytterligare påverkan på hea kommer att ske.
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 merTDDD78 Objektorientering: Lagring och livstid
jonas.kvarnstrom@liu.se 2017 TDDD78 Objektorientering: Lagring och livstid Tre sorters variabel (1): Lokal 3 Deklareras i en metod Lokal variabel Varje anrop får sin egen "kopia": Två anrop till foo()
Läs merTDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Pekare och Listor Eric Elfving Institutionen för datavetenskap 31 oktober 2014 Översikt 2/41 Internminne Pekare Dynamiska datastrukturer (Enkellänkade) listor Arbeta
Läs mer15. Ordinära differentialekvationer
153 15. Orinära ifferentialekvationer 15.1. Inlening Differentialekvationer är en gren inom matematiken som beskriver en värl vi lever i bäst. Såana ekvationer kan beskriva matematiska moeller för många
Läs merObjektorientering: Lagring och livstid
TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2018 Objektorientering: Lagring och livstid Tre sorters variabler Tre sorters variabel (1): Lokal 2 Lokal variabel Deklareras inuti en metod Vid varje anrop
Läs merObjektorienterad programmering
Objektorienterad programmering Föreläsning 7 Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda Konstanter och readonly Statiska klasser Standardklassen Math Parameteröverföring Referensen
Läs merStatic vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design Alex Gerdes, 2016
Static vs Dynamic binding Polymorfism Objekt-orienterad programmering och design Alex Gerdes, 2016 Diagnostiskt prov Shape + overlaps(shape): int return 1; Shape shape = new Shape(); Polygon tripoly =
Läs merF5: Högnivåprogrammering
F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data via
Läs merFunktioner, Procedurer och Parametrar. Funktioner, Procedurer och Parametrar... Funktioner, Procedurer och Parametrar procedurspecifikation
Funktioner, Procedurer och Parametrar I delar vi upp underprogram i två grupper : Funktioner: lämnar alltid ett värde som resultat Funktionsnamnet får ett värde i funktionen genom: funktionsnamn := expr;
Läs merF5: Högnivåprogrammering
1 F5: Högnivåprogrammering Parameteröverföring Koppling mellan låg- och högnivåprogrammering Lokala variabler Heapen Datatyper 1 Subrutin, parameteröverföring: 1(3) Via register genom värde Skicka data
Läs merKOMIHÅG 2: Kraft är en vektor med angreppspunkt och verkningslinje. Kraftmoment: M P. = r PA
1 KOMIHÅG 2: --------------------------------- Kraft är en vektor me angreppspunkt och verkningslinje. Kraftmoment: M P = r PA ", r P =momentpunkt, r A angreppspunkt, r PA = r A " r P. - Oberoene av om
Läs merObjektorientering: Lagring, räckvidd och livstid
TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2019 Objektorientering: Lagring, räckvidd och livstid Tre sorters variabler, två sorters metoder Räckvidd och livstid 2 Variabler (lokala och medlemsvariabler)
Läs merStatic vs Dynamic binding Polymorfism. Objekt-orienterad programmering och design (DIT953) Niklas Broberg, 2018
Static vs Dynamic binding Polymorfism Objekt-orienterad programmering och design (DIT95) Niklas Broberg, 2018 Diagnostiskt prov Shape + overlaps(shape): int return 1; Shape shape = new Shape(); Polygon
Läs merPresentationsmaterial Ljus som vågrörelse - Fysik B. Interferens i dubbelspalt gitter tunna skikt
Presentationsmaterial Ljus som vågrörelse - Fysik B Interferens i ubbelspalt gitter tunna skikt Syfte och omfattning Detta material behanlar på intet sätt fullstänigt såant som kan ingå i avsnitt me innebören
Läs merBo E. Sernelius Funktioner av Komplex Variabel 15 KOMPLEXVÄRDA FUNKTIONER AV KOMPLEX VARIABEL
Bo E. Sernelius Funktioner av Komplex Variabel 5 KOMPLEXVÄRDA FUNKTIONER AV KOMPLEX VARIABEL I etta kapitel efinierar vi en komplexvär funktion av en komplex variabel, ess erivata, begreppet analytiska
Läs merBankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.
Bankkonto - övning Övningar att göra efter lärardemostration. Filen bankkonto.zip innehåller ett projekt med klassen Bankkonto. Zippa upp denna fil och öppna projektet i BlueJ och skriv vidare på klassen
Läs merArrayer. results
Arrayer 85 Arrayer Deklarerar utrymme för många variabler i en enda deklaration Array (fält) Varje värde har ett numeriskt index i Java indexeras en array med N element med indexen till N-1 Exempel: 1
Läs merTDDC76 - Programmering och Datastrukturer
TDDC76 - Programmering och Datastrukturer Pekare och Listor Eric Elfving Institutionen för datavetenskap 1 / 20 Översikt Internminne Pekare Dynamiska datastrukturer (Enkellänkade) listor 2 / 20 Internminne
Läs merTENTAMEN TDDB77 Databaser och Bioinformatik 17 mars 2005, kl 8-12
Institutionen för atavetenskap Linköpings universitet TENTAMEN TDDB77 Databaser och Bioinformatik 17 mars 2005, kl 8-12 Jourhavane lärare: Patrick Lambrix/Almut Herzog (28 26 05/28 26 08) Poäng: Tentan
Läs merAssocierade Legendre-funktioner och klotytefunktioner Ulf Torkelsson
Föreläsning 5/3 Associerae Legenre-funktioner och klotytefunktioner Ulf Torkelsson Laplaces ekvation i sfäriska koorinater I sfäriska koorinater kan vi skriva Laplaces ekvation som r 2 r 2 Ψ r r r 2 sin
Läs merÖVN 1 - DIFFERENTIALEKVATIONER OCH TRANSFORMMETODER - SF Nyckelord och innehåll.
ÖVN - DIFFERENTIALEKVATIONER OCH TRANSFORMMETODER - SF683 HTTP://KARLJODIFFTRANS.WORDPRESS.COM KARL JONSSON Nyckelor och innehåll Orinära ifferenitalekvationer (ODEer) y = f(t, y) Lösning y(t) och efinitionsmäng
Läs merAnmärkning: Härledning av ovanstående formel finns i slutet av stencilen.
VSTÅNDSERÄKNING I ETT TREDIMENSIONELLT ORTONORMERT KOORDINTSYSTEM ) vstånet mellan två punkter Låt = x, och = x, y, z ) vara två punkter i rummet vstånet mellan och är x) + y y) + z ) = = x z ===================================================
Läs merUniversitetet i Linköping Institutionen för datavetenskap Anders Haraldsson
1 2 - Block, räckvidd Dagens föreläsning Programmering i Lisp - Bindning av variabler (avs 14.6) fria variabler statisk/lexikalisk och dynamisk bindning - Felhantering (kap 17) icke-normala återhopp catch
Läs merJava, klasser, objekt (Skansholm: Kapitel 2)
Java, klasser, objekt (Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Objectorienterad programmering Sida 1 Vad är en klass? En klass är ett sätt att beskriva en mängd objekt och deras gemensamma
Läs merFöreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser
Föreläsning 5-6 Innehåll Exempel på program med objekt Skapa och använda objekt Skriva egna klasser public class DrawSquare { public static void main(string[] args) { SimpleWindow w = new SimpleWindow(600,
Läs merMotivation. Programmeringsuppgift: En första ansats: Lagra info om anställda Håll reda på varje anställds närmaste chef. som också är en anställd!
Pekare (till objekt) Objektvariabler är pekare vad är det? (Viktiga begrepp inte bara inom objektorientering!) Hur används pekare för att sätta samman objekt (composition)? TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se
Läs merGrundläggande C-programmering del 2 Pekare och Arrayer. Ulf Assarsson
Grundläggande C-programmering del 2 Pekare och Arrayer Ulf Assarsson Läromoment: Pekare Absolutadressering (portar): typedef, volatile, #define Arrayer av pekare, arrayer av arrayer Hemuppgifter: v2. Föregående
Läs merModul 2 Mål och Sammanfattning
Institutionen för Matematik SF1625 Envariabelanalys Läsåret 2017-2018 Lars Filipsson Moul 2 Mål och Sammanfattning Derivata. 1. MÅL FÖR MODUL 2 Förstå och använa erivatans efinition Förstå och använa erivata
Läs merFöreläsning 5-6 Innehåll
Föreläsning 5-6 Innehåll Skapa och använda objekt Skriva egna klasser Datavetenskap (LTH) Föreläsning 5-6 HT 2017 1 / 32 Exempel på program med objekt public class DrawSquare { public static void main(string[]
Läs merKlasser och objekt, referenser Grundkurs i programmering med Python
Hösten 2009 Dagens lektion Klasser och objekt Referenser 2 Klasser och objekt 3 KLASSER OCH OBJEKT Relaterat data Information om en fyrkant Bredd Höjd Färg 4 KLASSER OCH OBJEKT Egna datatyper Skapa en
Läs merDagens föreläsning Programmering i Lisp. - Bindning av variabler (avs 14.6) fria variabler statisk/lexikalisk och dynamisk bindning
1 Dagens föreläsning Programmering i Lisp - Block, räckvidd - Bindning av variabler (avs 14.6) fria variabler statisk/lexikalisk och dynamisk bindning - Felhantering (kap 17) icke-normala återhopp catch
Läs merGrundläggande C-programmering del 2 Pekare och Arrayer. Ulf Assarsson
Grundläggande C-programmering del 2 Pekare och Arrayer Ulf Assarsson Läromoment: Pekare Absolutadressering (portar): typedef, volatile, #define Arrayer av pekare, arrayer av arrayer Hemuppgifter: v2. Föregående
Läs merN = p E. F = (p )E(r)
1 Föreläsning 4 Motsvarar avsnitten 4.1 4.4. Kraftvekan på ipoler (Kap. 4.1.3) 1. Vrimoment N på elektrisk elementaripol p: N = p E p vill "ställa in sig" i E:s riktning. Exempel på elektriska ipoler:
Läs merLABORATION 4 DISPERSION
LABORATION 4 DISPERSION Personnummer Namn Laborationen gokän Datum Assistent Kungliga Tekniska högskolan BIOX (8) LABORATION 4 DISPERSION Att läsa i kursboken: si. 374-383, 4-45 Förbereelseuppgifter: Va
Läs merFÖRELÄSNING 2 ANALYS MN1 DISTANS HT06
FÖRELÄSNING 2 ANALYS MN1 DISTANS HT06 JONAS ELIASSON Detta är föreläsningsanteckningar för istanskursen Matematik A - analyselen vi Uppsala universitet höstterminen 2006. 1. Derivata I grunläggane analys
Läs mer732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning
Varför? 732G11 Linköpings universitet 2011-02-08 Varför? 1 2 3 Varför? 4 5 Medelvärde av 5000 tal Varför? while-loopen int nrofints = 5000; int [] integers = new int [ nrofints ]; int pos = 0; while (
Läs merEDA451 - Digital och Datorteknik 2009/2010. EDA Digital och Datorteknik 2009/2010. Binär Kodning, lärobokens kap.2
EDA45 - Digital och Datorteknik 009/00 EDA 45 - Digital och Datorteknik 009/00 Binär Koning, lärobokens kap. Ur innehållet: Grunläggane binära koer Talovanlingar EDA45 - Digital och Datorteknik 009/00
Läs merAtt 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
Läs merRekursion. Att tänka rekursivt Att programmera rekursivt i Java Exempel. Programmeringsmetodik -Java 254
Rekursion Rekursion är en grundläggande programmeringsteknik M h a rekursion kan vissa problem lösas på ett mycket elegant sätt Avsnitt 11 i kursboken: Att tänka rekursivt Att programmera rekursivt i Java
Läs merUlf Assarsson. Grundläggande C-programmering del 2 Pekare och Arrayer. Läromoment:
Grundläggande C-programmering del 2 Pekare och Arrayer Ulf Assarsson Läromoment: Pekare Absolutadressering (portar): typedef, volafle, #define Arrayer av pekare, arrayer av arrayer Hemuppgi9er: v2. Föregående
Läs merAtt deklarera och att använda variabler. Föreläsning 10. Synlighetsregler (2) Synlighetsregler (1)
Föreläsning 10 STRING OCH STRINGBUILDER; VARIABLERS SYNLIGHET Att deklarera och att använda variabler När vi deklarerar en variabel, t ex int x; inför vi en ny variabel med ett namn och en typ. När namnet
Läs merExempel på hur man ställer upp den styrande differentialekvationen.
inköpings tekniska högskola Mekanik Dynamik 214-2-21 IEI/Mekanik Ulf Elun Svängningsproblem Eempel på hur man ställer upp en styrane ifferentialekvationen. Betrakta följane system beståene av en partikel
Läs merFYSIKTÄVLINGEN. KVALIFICERINGS- OCH LAGTÄVLING 5 februari 2004 LÖSNINGSFÖRSLAG SVENSKA FYSIKERSAMFUNDET
FYSIKTÄVLINGEN KVALIFICERINGS- OCH LAGTÄVLING februari 004 LÖSNINGSFÖRSLAG SVENSKA FYSIKERSAMFUNDET. Skillnaen i avläsningen av vågen mellan bil och bestäms av vattnets lyftkraft på metallstaven som enligt
Läs merTommy Färnqvist, IDA, Linköpings universitet
Föreläsning 9 Pekare, länkade noder, länkade listor TDDD86: DALP Utskriftsversion av föreläsning i Datastrukturer, algoritmer och programmeringsparadigm 25 september 2015 Tommy Färnqvist, IDA, Linköpings
Läs mer2 Derivering av fält och nablaoperatorns roll
2 Derivering av fält och nablaoperatorns roll 2.1 Derivering av A(u) A ΔA A (u) rymkurva Ο A(u+Δu) Det sätt på vilket vektorvära funktioner (eller vektorfält) eriveras följer enkelt och irekt ur en vanliga
Läs merTeoretisk del. Facit Tentamen TDDC (6)
Facit Tentamen TDDC30 2013-06-05 1 (6) Teoretisk del 1. (3p) "Snabba frågor" Alla svar motiveras väl. a) Vad skiljer en statisk metod från en icke-statisk? (0.5p) Svar:En statisk metod är associerad till
Läs merAlgoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm.
Algoritmanalys Analys av algoritmer används för att uppskatta effektivitet. Om vi t. ex. har n stycken tal lagrat i en array och vi vill linjärsöka i denna. Det betyder att vi måste leta i arrayen tills
Läs merHandbok i materialstyrning - Del E Bestämning av säkerhetslager
Hanbok i materialstyrning - Del Bestämning av säkerhetslager 44 Säkerhetslager i två-låe system n grupp av materialstyrningsmetoer karakteriseras av att behov av material som uppstår hos en förbrukane
Läs merLösningsförslag. TDDC74 Programmering: Abstraktion och modellering. Dugga 3 (provkod TEN1), Tid: kl 14-16, Datum:
Dugga 3 (provkod TEN1), Tid: kl 14-16, Datum: 2013-03-12 Lösningsförslag Dugga 3 (provkod TEN1), Tid: kl 14-16, Datum: 2013-03- 12 Läs alla frågorna först och bestäm dig för den ordning som passar dig
Läs merTentamen i Värmetransporter (4A1601)
Tentamen i Värmetransporter (4A1601) 2005-12-15, kl. 14.00 19.00 Hjälpmeel: Uppgift 1-7: Inga hjälpmeel (enast papper och penna, ej räknare). Uppgift 8-10: Lärobok (Holman), formelsamling (Granry), räknare,
Läs merGPT föreläsning 8. Förra veckan: Man kan ta tiden på en sorterad teckensträng Förra gången: Problemlösning på lägre nivå kan sortera funktioner
GPT föreläsning 8 Förra veckan: Man kan ta tiden på en sorterad teckensträng Förra gången: Problemlösning på lägre nivå kan sortera funktioner Denna gång Reflektioner kring OU1 Funktioner Reflektioner
Läs mer1 Materiell derivata. i beräkningen och så att säga följa med elementet: φ δy + δz. (1) φ y Den materiella derivatan av φ definierar vi som.
Föreläsning 2. 1 Materiell erivata ätskor och gaser kallas me ett sammanfattane or för fluier. I verkligheten består fluier av partiklar, v s atomer eller molekyler. I strömningsmekaniken bortser vi från
Läs merProgrammering av inbyggda system. Kodningskonventioner. Viktor Kämpe
Kodningskonventioner Viktor Kämpe Varför kodningskonventioner? Förståelse för Skillnaden mellan lokala/globala variabler. Funktionsargument. Returvärde. Möjliggör Mix av assembler och C. Kodningskonventioner/VK
Läs merKalibreringsrapport. Utländska doktorander
Kalibreringsrapport Utlänska oktoraner Inlening I en urvalsunersökning är allti skattningarna beäftae me urvalsfel beroene på att enast en elmäng (urval) av populationen stueras. Ett annat fel uppkommer
Läs merRepetition i Python 3. Exemplen fac. Exemplen fac motivering. Exemplen fac i Python
Repetition i Python 3 Exemplen fac Orginalet I Scheme använde vi rekursion för all slags repetition. Efterom Scheme är ett funktionellt språk återsänder alla språkkonstruktioner ett värde men i Python
Läs merLite om felhantering och Exceptions Mer om variabler och parametrar Fält (eng array) och klassen ArrayList.
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Objektorienterad programvaruutveckling GU (DIT011) Föreläsning 3 Innehåll Lite om felhantering och Exceptions Mer om variabler och parametrar
Läs merTENTAMEN I. OBJEKTORIENTERAD PROGRAMMERING för Z1. På tentamen ges graderade betyg:. 3:a 24 poäng, 4:a 36 poäng och 5:a 48 poäng
Institutionen för Datavetenskap JSk TENTAMEN TDA540 TENTAMEN I OBJEKTORIENTERAD PROGRAMMERING för Z1 TID 14.15-18.15 Ansvarig: Betygsgränser: Hjälpmedel: Jan Skansholm Sammanlagt maximalt 60 poäng. På
Läs merTentamen i. TDDC67 Funktionell programmering och Lisp
1 Linköpings tekniska högskola Institutionen för datavetenskap Anders Haraldsson Tentamen i TDDC67 Funktionell programmering och Lisp och äldre kurser TDDC57 Programmering, Lisp och funktionell programmering
Läs merMATEMATIK Datum: Tid: förmiddag. A.Heintz Telefonvakt: Tel.:
MATEMATIK Datum: 009-0- Ti: förmiag Chalmers Hjälpmeel: inga A.Heintz Telefonvakt: Tel.: 076-786 Lösningar till tenta TMV06/TMV0 Analys och linjär algebra K/Bt/Kf, el A.. Sats Ange "geometriska" beviset
Läs merTENTAMEN HF1006 och HF1008
TENTAMEN HF006 och HF008 Datum TEN jan 0 Ti -7 Analys och linjär algebra, HF008 (Meicinsk teknik), lärare: Jonas Stenholm Analys och linjär algebra, HF008 (Elektroteknik), lärare: Marina Arakelyan Linjär
Läs merSTATISTISKA CENTRALBYRÅN
STATISTISKA CENTRALBYRÅN 2013-04-12 1(7) Kalibreringsrapport 1 Inlening I en urvalsunersöning är allti sattningarna behäftae me urvalsfel beroene på att enast en elmäng (urval) av populationen stueras.
Läs merVad händer när man kör ett program? Program och processer. Funktionsanrop. Avsluta programmet
Vad händer när man kör ett program? Program och processer När man kompilerar ett program och sedan länkar ihop det så stoppar länkaren in lite extra kod i programmet. Det är denna kod som i sin tur anropar
Läs merKalibreringsrapport. Bilaga 1(6)
Bilaga 1(6) Kalibreringsrapport 1 Inlening I en urvalsunersöning är allti sattningarna behäftae me urvalsfel beroene på att enast en elmäng (urval) av populationen stueras. Ett annat fel uppommer om vi
Läs merEtt problem. Kontrollstrukturer och arrayer. Arrayer. Lösningen. Arrayer och hakparanteser. Exempel int[] results; results = new int[10]; // 0..
Ett problem Kontrollstrukturer och er Hur sparas data T ex när man vill spara resultaten av en tävling Exempel med 3 deltagare: public class Competition private int result1; private int result2; private
Läs mer732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Exempelduggan. Luffarschack. Koda spel
732G11 Linköpings universitet 2011-02-15 1 2 3 4 Extrapass Extrapass håller på att bokas. Blir 3-4 st. och öppet för alla. Mer info på kursmailen när bokningen är klar. i Java En funktion i Java... public
Läs merC++ Funktioner 1. int summa( int a, int b) //funktionshuvud { return a+b; //funktionskropp } Värmdö Gymnasium Programmering B ++ Datainstitutionen
C++ Funktioner 1 Teori När programmen blir större och mer komplicerade är det bra att kunna dela upp programmet i olika delar som gör specifika saker, vilket kan göra programmet mer lättläst. Ett sätt
Läs merTentamen 1 i Matematik 1, HF dec 2017, kl. 8:00-12:00
Tentamen i Matematik HF9 8 ec 7 kl 8:-: Eaminator: rmin Halilovic Unervisane lärare: Jonas Stenholm Elias Sai Nils alarsson För gokänt betyg krävs av ma poäng etygsgränser: För betyg E krävs 9 6 respektive
Läs merTDDC76 - Programmering och Datastrukturer
TDDC76 - Programmering och Datastrukturer Pekare och Listor Eric Elfving Institutionen för datavetenskap 1 / 21 Översikt Internminne Pekare Dynamiska datastrukturer (Enkellänkade) listor 2 / 21 Internminne
Läs merClasses och Interfaces, Objects och References, Initialization
Classes och Interfaces, Objects och References, Initialization Objekt-orienterad programmering och design (DIT953) Niklas Broberg/Johannes Åman Pohjola, 2018 Abstract class En abstract class är en class
Läs merExempel. Arrayer. Lösningen. Ett problem. Arrayer och hakparanteser. Arrayer
Exempel for (int antal=; antal < 75; antal++) System.out.println (antal); Arrayer for (int num=5; num
Läs merTentamen i Introduktion till programmering
Tentamen i Introduktion till programmering Kurskod: Skrivtid: D0009E 09:00-13:00 (4 timmar) Totalt antal uppgifter: 7 Totalt antal poäng: 38 Tentamensdatum: 2014-05-17 Jourhavande lärare: Tillåtna hjälpmedel:
Läs merFöreläsning 2, vecka 8: Repetition
TDA 548: Grundläggande Programvaruutveckling Föreläsning 2, vecka 8: Repetition Magnus Myréen Chalmers, läsperiod 1, 2016-2017 Idag Metoder och terminologi Referensvärden och arrays Interface och ritning
Läs merFAG Sfäriska kullager
FAG 208 Normer asutföranen Toleranser Lagerglapp Avtätae lager Sneställning et sfäriska kullagret är ett tvåraigt lager me sfärisk ytterringlöpbana. ärigenom kan et ställa in sig och kompensera uppriktningsfel,
Läs merProgrammeringsteknik med C och Matlab
Programmeringsteknik med C och Matlab Kapitel 2: C-programmeringens grunder Henrik Björklund Umeå universitet Björklund (UmU) Programmeringsteknik 1 / 32 Mer organisatoriskt Imorgon: Datorintro i lab Logga
Läs merTentamen med lösningsdiskussion. TSFS06 Diagnos och övervakning 30 maj, 2012, kl
Tentamen me lösningsiskussion TSFS06 Diagnos och övervakning 30 maj, 2012, kl. 14.00-18.00 Tillåtna hjälpmeel: TeFyMa, Beta, Physics Hanbook, Reglerteknik (Gla och Ljung), Formelsamling i statistik och
Läs merKalibreringsrapport Elevpaneler - enkätundersökning
STATISTISKA CENTRALBYRÅN 014-05-8 1(6) Kalibreringsrapport Elevpaneler - enätunersöning 1 Inlening I en urvalsunersöning är allti sattningarna behäftae me urvalsfel beroene på att enast en elmäng (urval)
Läs merClasses och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016
Classes och Interfaces, Objects och References Objekt-orienterad programmering och design (DIT952) Niklas Broberg, 2016 Abstract class En abstract class är en class som inte kan skapa några objekt. Syfte:
Läs merObjektorienterad programmering Föreläsning 10. Copyright Mahmud Al Hakim Sorteringsalgoritmer
Objektorienterad programmering Föreläsning 10 Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda Fält fort. Fält som parametrar Parameterfält params Parametrar till Main Listor ArrayList
Läs merTentamen i Grundläggande Programvaruutveckling, TDA548
Tentamen i Grundläggande Programvaruutveckling, Joachim von Hacht/Magnus Myreen Datum: 2016-12-20 Tid: 08.30-12.30 Hjälpmedel: Engelskt-Valfritt språk lexikon Betygsgränser: U: -23 3: 24-37 4: 38-47 5
Läs merStickprovsvariabeln har en fördelning / sprindning
unktskattning räcker ofta inte Sannolikhet och statistik Intervallskattning HT 2008 Uwe.Menzel@math.uu.se http://www.math.uu.se/ uwe/ Figur: Mätresultat me stor varians Stickprovsvariabeln har en förelning
Läs merÖ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 merMAA151 Envariabelkalkyl läsåret 2016/17
Lektionsuppgifter A Omgång 1 (5) Funktioner 1. Bestäm inversen till funktionen f efiniera enligt f() = 1/ 1. Specificera speciellt inversens efinitionsmäng och väremäng. Skissa även i ett och samma koorinatsystem
Läs merRepetition i Pascal. Exemplen fac. Exemplen fac i Pascal. Exemplen fac motivering. Orginalet
Repetition Introduktion Repetition i Exemplen fac Orginalet I Scheme använde vi rekursion för all slags repetition. Efterom Scheme är ett funktionellt språk återsänder alla språkkonstruktioner ett värde
Läs merAllmänna bestämmelser
Författning 5.1 Antagen av fullmäktige 157, 2018 BESTÄMMELSER OM ERSÄTTNING TILL KOMMUNALA FÖRTROENDEVALDA Bestämmelser om ersättningar till alt förtroenevala. Allmänna bestämmelser 1 Förtroeneupprag som
Läs merProgramschemat är granskad och godkänd av akademichef vid akademin för Hälsa, vård och välfärd
Programschema för Socionomprogrammet, 210 hp Programko: Gäller för läsåret 20172018 Programschemat är granska och gokän av akaemichef vi akaemin för Hälsa, vår och välfär 20170228 Om programschemat Varje
Läs merLänkade listor kan ingå som en del av språket, dock ej i C Länkade listor är ett alternativ till:
Länkade listor i C Länkade listor kan ingå som en del av språket, dock ej i C Länkade listor är ett alternativ till: Dynamiskt allokerad array Arrayer allokerade på stacken Kan alltså användas till att
Läs merObjektorienterad programmering Föreläsning 5
Objektorienterad programmering Föreläsning 5 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Agenda UML Övning Mer om metoder Standardklassen String Konstruktorer Överlagrade metoder Standardklassen
Läs merAssemblerprogrammering, ARM-Cortex M4 del 3
Assemblerprogrammering, ARM-Cortex M4 del 3 Ur innehållet: Fler pekartyper Användning av stacken Lagringsklasser, synlighet - lokala variabler Funktioner - returvärden och parametrar Läsanvisningar: Arbetsbok
Läs merSCB :-0. Uno Holmer, Chalmers, höger 2 Ex. Induktiv definition av lista. // Basfall
Rekursiva funktioner Föreläsning 10 (Weiss kap. 7) Induktion och rekursion Rekursiva funktioner och processer Weiss 7.1-3 (7.4, 7.5.3 utgår) Fibonaccital (7.3.4) Exempel: Balansering av mobil (kod se lab
Läs merKlassdeklaration. Metoddeklaration. Parameteröverföring
Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar
Läs merBINÄRA TRÄD. (X = pekarvärdet NULL): struct int_bt_node *pivot, *ny; X X X 12 X X 12 X X -3 X X
Algoritmer och Datastrukturer Kary FRÄMLING/Göran PULKKIS (v23) Kap. 7, Sid 1 BINÄRA TRÄD Träd används för att representera olika slags hierarkier som ordnats på något sätt. Den mest använda trädstrukturen
Läs merTDDC74 Lab 04 Muterbara strukturer, omgivningar
TDDC74 Lab 04 Muterbara strukturer, omgivningar 1 Översikt I den här laborationen kommer ni att lära er mer om: Tillstånd, och skillnader mellan ren funktionell programmering och imperativ. Skillnaden
Läs merDD2387 Programsystemkonstruktion med C++ Tentamen 3 Onsdagen 7 januari, 14:00-18:00
DD2387 Programsystemkonstruktion med C++ Tentamen 3 Onsdagen 7 januari, 14:00-18:00 Introduktion Skriv dina svar på separata papper, dessa scannas in efter inlämning. Du kan skriva på båda sidor. Skriv
Läs merKalibreringsrapport. Bilaga 1(6)
Bilaga 1(6) Kalibreringsrapport 1 Inlening I en urvalsunersöning är allti sattningarna behäftae me urvalsfel beroene på att enast en elmäng (urval) av populationen stueras. Ett annat fel uppommer om vi
Läs merTDDC77 Objektorienterad Programmering
TDDC77 Objektorienterad Programmering Föreläsning 5 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Arrayer Metoder Räckvidd och Livslängd Arrayer Vända om inlästa värdena Vända om
Läs merstruct egendefinierad typ struct LECTURE_TYPE { char teacher[99]; float lengthinminutes; char type; /* L = lecture, E = exercise */ };
struct egendefinierad typ struct LECTURE_TYPE { char teacher[99]; float lengthinminutes; char type; /* L = lecture, E = exercise */ Vad är problemet? Att kunna lagra data som avser flera olika egenskaper
Läs merTDIU01 Programmering i C++
TDIU01 Programmering i C++ Föreläsning 6 - Klasser Eric Elfving, eric.elfving@liu.se Institutionen för datavetenskap (IDA) Avdelningen för Programvara och system (SaS) Klasser När vi skapade vår lista
Läs merSätt att skriva ut binärträd
Tilpro Övning 3 På programmet idag: Genomgång av Hemtalet samt rättning Begreppet Stabil sortering Hur man kodar olika sorteringsvilkor Inkapsling av data Länkade listor Användning av stackar och köer
Läs mer3 Gaspumpar. Några fläkttyper
Gaspumpar F1 Tå kategorier a gaspumpar: Fläktar, för transport a gaser. Försumbar ensitetsföränring. Stor likhet me pumpar. Kompressorer, för större tryckföränringar. Betyane ensitetsföränring. Några fläkttyper
Läs merLösningsförslag: Instuderingsfrågor, del D
Uppgift 1. Objektorienterad programmering, Z1 Lösningsförslag: Instuderingsfrågor, del D a) Inget fält behövs. Man kan läsa in ett tal i taget och addera dessa till summan. b) Här behövs ett fält. c) Här
Läs mer