Kort introduktion till POV-Ray, del 6

Storlek: px
Starta visningen från sidan:

Download "Kort introduktion till POV-Ray, del 6"

Transkript

1 Kort introduktion till POV-Ray, del 6 Kjell Y Svensson, 2004, Detta avsnitt kommer att bli en liten lathund till hur man gör saker snabbare med mindre skrivande. Koppla dock inte ur hjärnan för det kommer finnas saker som #declare och #while för att inte tala om matematikens kusiner sinus och cosinus. Och eftersom det är avsnitt 6 så tar vi även upp en ny sexig objektform torus. Lata tips Det är inte nödvändigt att skriva color i en pigment-beskrivning, utan man kan skriva Pigment { Red direkt. Man behöver inte skriva ut nollan vid decimal-tal, utan 0.01 kan skrivas som enbart.01. Rotation kring en axel, tex 90 grader kring y-axeln har jag tidigare beskrivit som rotate <0,90,0>, detta kan förkortas till rotate y*90. Om man vill skala lika i x,y och z-led, tex skala upp en faktor 2, så kan man istället för att skriva scale <2,2,2> bara skriva scale 2. Loopar En mycket bra och arbetsbesparande finess i POV-Ray är möjligheten att beskriva loopar, dvs en aktivitet som görs flera gången, men bara behöver beskrivas en gång. Antag att vi i vår scen vill ha 10 lika sfärer. Då kan vi istället för att göra 10 sfärer beskriva en sfär och skapa en loop som gör att det blir 10 stycken. Loopar skapas genom att deklarerar en loop-variabel med uttrycket #declare variablename = 0; Därefter bildas loopen mellan uttrycket #while och. Vi tittar på hur det ser ut i beskrivningen. Innan måste loop-variabeln räknas upp så att villkoret counter < 10 blir falskt när counter blir 10. #declare counter = 0; #while (counter < 10) pigment { Red #declare counter = counter + 1;

2 Figur 6-1. Loop med 10 röda sfärer Vad gick fel med denna loop? Vi ser ju bara en sfär när vi trodde att vi skapade 10 stycken. Det finns en logisk förklaring, visst vi skapade 10 sfärer, man alla på samma position. Vi måste förflytta sfären som skapas i loopen, och det kan vi göra med en translate som tar loopräknaren counter till sin hjälp. Tips 12. Om det POV-Ray tar en evighet på sig att beräkna en scen, kontrollera då att du verkligen räknar upp loop-variabeln i varje varv av loopen. Vi modifierar loop till detta. #declare counter = 0; #while (counter < 10) pigment { Red translate <counter * 0.5, 0,0> #declare counter = counter + 1; Figur 6-2. Loop med 10 förflyttade sfärer Detta var väl vad vi förväntade oss, inte sant, men nu när vi har blivit varma i kläderna låt oss fortsätta. Varför inte skapa sfärerna i en ring. Det är nu vi kommer fram till er värsta mardröm, vi måste använda oss av de förskräckliga kusinerna sinus och cosinus. Du trodde väl aldrig att du skulle få någon nytta av dem, eller hur. I loopen förflyttar vi sfärerna både

3 längs X-axeln och Y-axeln, och vi förflyttar oss 36 grader per varv i loopen. För att förstå vad som händer kan du söka på sinus och cosinus på nätet, det finns säkert någon bra introduktion. #declare counter = 0; #while (counter < 11) pigment { Red translate <sin(36*counter),0.5 +cos(36*counter),0> #declare counter = counter + 1; Figur sfärer i en ring Nu när vi kan skriva en enkel loop, varför inte gå vidare skriva en loop inuti en loop, och på så sätt skapa figurer i ett två-dimensionellt mönster. Låt oss test och skapa en uppställd hop av krigiska sfärer. #declare Xcounter = 0; #while (Xcounter < 10) #declare Zcounter = 0; #while (Zcounter < 10) pigment { Red translate <Xcounter* 0.5, 0, Zcounter*0.5> #declare Zcounter = Zcounter + 1; #declare Xcounter = Xcounter + 1;

4 Figur sfärer i perfekt formation Eller varför inte sfärer som väller fram in i en enda lång ström. Figur sfärer i en lång kö. Eller varför inte 1 miljon sfärer. Du förstår kanske potentialen för att skapa många objekt med några få raders beskrivning. Jag ska avsluta denna orgie i att skapa röda sfärer med att visa hur man kan skapa dem i 3 dimensioner med följande loop. #declare Xcounter = 0; #while (Xcounter < 10) #declare Zcounter = 0; #while (Zcounter < 10) #declare Ycounter = 0; #while (Ycounter < 10) pigment { Red translate <Xcounter* 0.5, Ycounter*0.5, Zcounter*0.5> #declare Ycounter = Ycounter + 1; #declare Zcounter = Zcounter + 1; #declare Xcounter = Xcounter + 1;

5 Figur 6-6. Kub med 10x10x10 sfärer Proffs-tips 2. Indentera alltid en loop så att du ser vilka #while som hör ihop med vilka. Vid långa looper, skriv då en kommentar efter #while och som visar vilka som hör ihop. Det finns mera möjligheter i POV-Rays programspråk, men det återkommer jag till i senare avsnitt. Glöm inte att avsnitt 256 kommer att avslöja hur man verkligen använder sig av POV- Ray. Torus En torus är formad precis som en badring, dvs en rund ring. Denna form finns inbyggd för att den är rätt så svår att beskriva med andra former. En torus definieras av två mätt, radien på själva ringen och radien på ringen som utgör kroppen på torusen. Ett exempel på en smal torus. torus { 4,.5 // ringens radie, kroppens radie rotate -90*x // rotation så vi kan se den från sidan pigment { Yellow Figur 6-7. Smal torus Om vi ändrar till torus { 4, 2 så ser torusen ut så här, så nu är det kanske mera klart vilket mått som påverkar vad.

6 Figur 6-7 med torus { 4,2 Och som final i detta avsnitt, en massa ringar. union { #declare Xcounter = 0; #while (Xcounter < 10) #declare Zcounter = 0; #while (Zcounter < 10) #declare Ycounter = 0; #while (Ycounter < 10) torus { 4, 0.6 rotate -90*x scale 0.1 translate <Xcounter* 0.7, Ycounter*0.7, Zcounter*2> #declare Ycounter = Ycounter + 1; #declare Zcounter = Zcounter + 1; #declare Xcounter = Xcounter + 1; pigment { BrightGold finish { phong 1 phong_size 100 Notera att jag lägger en union runt hela loopen. Detta gör att jag kan ange pigment och finish för alla object på en gång, vilket också gör att beräkandet av scenen går snabbare och kräver mindre minne.

7 Figur 6-8. Torus i ett tre-dimensionellt mönster. Nästa del, del 7 kommer att handla om slumpen, vi ska lära oss skriva och så undersöker vi några fler fördefinierade mönster i stil med schack vi sett tidigare.

Kort introduktion till POV-Ray, del 5

Kort introduktion till POV-Ray, del 5 Kort introduktion till POV-Ray, del 5 Kjell Y Svensson, 2004,2007-03-14 Denna del kommer att beskriva hur man modellerar glas, vatten och metall. Vi kommer som vanligt använda oss av lite fördefinierat,

Läs mer

Kort introduktion till POV-Ray, del 7

Kort introduktion till POV-Ray, del 7 Kort introduktion till POV-Ray, del 7 Kjell Y Svensson, 2004,2007-03-14 Detta avsnitt kommer att handla om slumpen, vi ska lära oss skriva och så undersöker vi några fler fördefinierade mönster i stil

Läs mer

Kort introduktion till POV-Ray, del 3

Kort introduktion till POV-Ray, del 3 Kort introduktion till POV-Ray, del 3 Kjell Y Svensson, 2004-02-03,2007-03-13 I denna del beskrivs hur man ger objekten lite mera liv genom att beskriva hur deras yta ser ut, med reflektion, ruggighet,

Läs mer

Kort introduktion till POV-Ray, del 1

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

Läs mer

Robotarm och algebra

Robotarm och algebra Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson 2010-12-07 Robotarm och algebra I denna laboration skall du lära dig lite mer om möjlighetera att rita ut mer avancerade

Läs mer

Lösning av trigonometriska ekvationer

Lösning av trigonometriska ekvationer Lösning av trigonometriska ekvationer Uppsala universitet 06 Per Engström per.engtrom@math.uu.se Inledning För att lösa problem i som innehåller trigonometriska funktioner kan mab bahöva lösa trigonometriska

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

Inledande programmering med C# (1DV402) Summera med while"-satsen

Inledande programmering med C# (1DV402) Summera med while-satsen Summera med while"-satsen Upphovsrätt för detta verk Inledande programmering med C# (1DV402) Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får

Läs mer

Visual Basic, en snabbgenomgång

Visual Basic, en snabbgenomgång Visual Basic, en snabbgenomgång Variabler och Datatyper En variabel är som en behållare. Olika behållare passar bra till olika saker. I Visual Basic(härefter VB) finns olika typer av behållare för olika

Läs mer

Klassdeklaration. Metoddeklaration. Parameteröverföring

Klassdeklaration. 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 mer

Statistiska samband: regression och korrelation

Statistiska samband: regression och korrelation Statistiska samband: regression och korrelation Vi ska nu gå igenom något som kallas regressionsanalys och som innebär att man identifierar sambandet mellan en beroende variabel (x) och en oberoende variabel

Läs mer

LÖSNINGSFÖRSLAG TENTAMEN

LÖSNINGSFÖRSLAG TENTAMEN LÖSNINGSFÖRSLAG TENTAMEN OBJEKTORIENTERAD PROGRAMMERING I JAVA 5P FRISTÅENDE KURS, DAG (ITM - ÖSTERSUND) MÅNDAG 2 JUNI, 2003, KL. 8-13 TID: 5 TIMMAR ANTAL UPPGIFTER: 8 MAX POÄNG: 43 BETYGSKALA: UNDERKÄND

Läs mer

Mattekollen. Mattekollen 1. Mattekollen 3. Mattekollen 2. 6 Mål för kapitlet. 156 mattekollen. För att avsluta kapitlet

Mattekollen. Mattekollen 1. Mattekollen 3. Mattekollen 2. 6 Mål för kapitlet. 156 mattekollen. För att avsluta kapitlet Mattekollen Eleven har redan under sin tidigare skolgång utvecklat vissa kunskaper kring olika matematiska förmågor genom det centrala innehållet. I Mattekollen 1 sätter eleven ord på det han/hon redan

Läs mer

Här hittar du ett exempel på ritprogrammet: https://scratch.mit.edu/projects/82515788/

Här hittar du ett exempel på ritprogrammet: https://scratch.mit.edu/projects/82515788/ Termin 1 Block 4 Ritprogram Nu kommer du att få skapa ett ritprogram där du sedan kan göra egna konstverk! Programmet låter dig rita med olika färgpennor, sudda med suddgummi och måla med stämplar som

Läs mer

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

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

Läs mer

Kap 5.7, Beräkning av plana areor, rotationsvolymer, rotationsareor, båglängder.

Kap 5.7, Beräkning av plana areor, rotationsvolymer, rotationsareor, båglängder. Kap 5.7, 7. 7.. Beräkning av plana areor, rotationsvolymer, rotationsareor, båglängder. 8. (A) Beräkna arean av det ändliga område som begränsas av kurvorna x a. y = + x och y = b. y = x e x och y = x

Läs mer

Objektorienterad programmering Föreläsning 2

Objektorienterad programmering Föreläsning 2 Objektorienterad programmering Föreläsning 2 Copyright Mahmud Al Hakim mahmud@webacademy.se www.webacademy.se Agenda Inläsning av data via dialogrutor Repetitioner (While-satsen och For-satsen) Nästlade

Läs mer

Beräkningsvetenskap föreläsning 2

Beräkningsvetenskap föreläsning 2 Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa

Läs mer

Vi börjar med en penna som ritar när du drar runt den på Scenen.

Vi börjar med en penna som ritar när du drar runt den på Scenen. Nivå 3 Målarlådan All Code Clubs must be registered. Registered clubs appear on the map at codeclubworld.org - if your club is not on the map then visit jumpto.cc/ccwreg to register your club. Introduktion

Läs mer

Bankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.

Bankkonto - ö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 mer

Användarhandledning Version 1.2

Användarhandledning Version 1.2 Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...

Läs mer

Tynker gratisapp på AppStore

Tynker gratisapp på AppStore Tynker gratisapp på AppStore Innehåll Använda appen 2 Koordinatsystemet 6 Rita rektanglar i koordinatsystemet 7 Rita ellipser i koordinatsystemet 9 Rita trianglar i koordinatsystemet 11 Skapa mönster med

Läs mer

TDIU01 - Programmering i C++, grundkurs

TDIU01 - Programmering i C++, grundkurs TDIU01 - Programmering i C++, grundkurs Grundläggande satser och uttryck Eric Elfving Institutionen för datavetenskap 5 augusti 2014 Översikt Uttryck Litteraler Operatorer Satser Villkor Upprepning Teckenhantering

Läs mer

MMA132: Laboration 2 Matriser i MATLAB

MMA132: Laboration 2 Matriser i MATLAB MMA132: Laboration 2 Matriser i MATLAB Introduktion I den här labben skall vi lära oss hur man använder matriser och vektorer i MATLAB. Det är rekommerad att du ser till att ha laborationshandledningen

Läs mer

Data, typ, selektion, iteration

Data, typ, selektion, iteration Data, typ, selektion, iteration En programmeringkurs på halvfart IDT, MDH ttp://www.negative-g.com/nolimits/no%20limits%20defunct%20coasters.htm 1 Dagens agenda Talrepresentation Typkonvertering Sekvens

Läs mer

Extramaterial till Matematik Y

Extramaterial till Matematik Y LIBER PROGRAMMERING OCH DIGITAL KOMPETENS Extramaterial till Matematik Y NIVÅ TRE Algebra ELEV Det finns många olika programmeringsspråk. Ett av dem är Python, som du ska få bekanta dig med i den här uppgiften.

Läs mer

Booleska variabler och översättning mellan programuttryck och booleska variabler

Booleska variabler och översättning mellan programuttryck och booleska variabler Vad är Boolesk algebra Lite förenklat kan man säga att Boolesk algebra är räkneregler konstruerade av den engelske matematikern Gerge Boole för att kunna räkna med logiska uttryck. I den booleska algebran

Läs mer

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter Inledande matematik för I1 MVE011 läsperiod 1 010 Matlab vecka övningsuppgifter Linjära ekvationssystem Matlab har många kraftfulla redskap för att hantera matriser och därmed också linjära ekvationssystem.

Läs mer

Vilken skillnad gör det var du placerar det? Prova båda.

Vilken skillnad gör det var du placerar det? Prova båda. Micro:bit- Namnskylt Vi börjar med att döpa programmet till något. Till exempel ditt namn. Det gör du längst ner i mitten. Nu ska vi göra ett enkelt program som med lysdioderna skriver ditt namn. När du

Läs mer

2 februari 2016 Sida 1 / 23

2 februari 2016 Sida 1 / 23 TAIU07 Föreläsning 4 Repetitonssatsen while. Avbrott med break. Exempel: En Talföljd och en enkel simulering. Egna funktioner. Skalärprodukt. Lösning av Triangulära Ekvationssystem. Programmeringstips.

Läs mer

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

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

Läs mer

Inociell Lösningsmanual Endimensionell analys. E. Oscar A. Nilsson

Inociell Lösningsmanual Endimensionell analys. E. Oscar A. Nilsson Inociell Lösningsmanual Endimensionell analys E. Oscar A. Nilsson January 31, 018 Dan Brown "The path of light is laid, a secret test..." Tillägnas Mina vänner i Förord Detta är en inociell lösningsmanual

Läs mer

2D1339 Programkonstruktion för F1, ht 2003

2D1339 Programkonstruktion för F1, ht 2003 2D1339 Programkonstruktion för F1, ht 2003 Kontrollskrivning 1 Onsdag 19/11 2003 kl 9.15 10.00 Endast ett svar är rätt på varje fråga! Om mer än ett svar givits blir det noll poäng på frågan. Alla skriftliga

Läs mer

Exempel: Exempel: Exempel: Exempel: $djur=array("ko","katt","älg"); foreach ($djur as $d) { echo $d. " "; } Resultat. ko katt älg

Exempel: Exempel: Exempel: Exempel: $djur=array(ko,katt,älg); foreach ($djur as $d) { echo $d.  ; } Resultat. ko katt älg Loopar och upprepning Vill man upprepa kod flera gånger så istället för att skriva en massa rader så kan man lägga koden i ett kodblock som man sedan loopar. Det finns ett par olika typer av loopar, FORloop,

Läs mer

Objektorienterad programmering i Java

Objektorienterad programmering i Java bild 1 Objektorienterad programmering i Java Föreläsning 1 Kapitel 1-3 i kursboken Java Software Solutions bild 2 Läsanvisningar Kapitel 1 är en repetition av det ni förväntas kunna sedan tidigare. Det

Läs mer

Objektorientering: Lagring och livstid

Objektorientering: 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 mer

2. Avgör om x och z är implicit definierade som funktion av y via följande ekvationssystem. x 3 + xy + y 2 + z 2 = 0 x + x 3 y + xy 3 + xz 3 = 0

2. Avgör om x och z är implicit definierade som funktion av y via följande ekvationssystem. x 3 + xy + y 2 + z 2 = 0 x + x 3 y + xy 3 + xz 3 = 0 ATM-Matematik Mikael Forsberg 734-41 3 31 För distans och campus Flervariabelanalys ma1b 14 1 Skrivtid: 9:-14:. Inga hjälpmedel, förutom den bifogade formelsamlingen. Lösningarna skall vara fullständiga

Läs mer

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander

F5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander F5 Selektion och iteration ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Boolska uttryck Boolska uttryck använder sig av jämförelseoperatorer < > = ==!= Resultatets datatyp är boolean

Läs mer

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska

Komponentvisa operationer,.-notation Multiplikation (*), division (/) och upphöj till (ˆ) av vektorer följer vanliga vektoralgebraiska Matlab-föreläsning 3 (4), 17 september, 2015 Innehåll Sekvenser (från förra föreläsningen) Upprepning med for-slingor och while-slingor Villkorssatser med if - then -else - Logik Sekvenser - repetion från

Läs mer

Matlabövning 1 Funktioner och grafer i Matlab

Matlabövning 1 Funktioner och grafer i Matlab Matlabövning 1 Funktioner och grafer i Matlab I den här övningen ska vi titta på hur man konstruerar funktioner i Matlab och hur man kan rita funktionsgrafer. Läs först igenom PM:et. Gå sedan igenom exemplen

Läs mer

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2019 Introduktion till Java -- för Pythonprogrammerare Historia: C, C++ 3 Historia: Oak 1 4 1990: Sun Microsystems påbörjade projekt StarSeven Avancerad

Läs mer

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan

Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 14:e januari klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.

Läs mer

Programmeringsteknik med C och Matlab

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

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare

TDDD78, TDDE30, 729A Introduktion till Java -- för Pythonprogrammerare TDDD78, TDDE30, 729A85 jonas.kvarnstrom@liu.se 2018 Introduktion till Java -- för Pythonprogrammerare Historia: C, C++ 3 Historia: Oak 1 4 1990: Sun Microsystems påbörjade projekt StarSeven Avancerad

Läs mer

En kort text om programmering i C.

En kort text om programmering i C. En kort text om programmering i C C skapades 1972 av Brian Ritchie och Dennis Kerighan på Bell Labs i USA Det blev det språk som är mest använt genom tiderna Det finns många olika språk Pascal, FORTH,

Läs mer

Villkor if, switch. F2: Styrstrukturer, programmeringsteknik (kap. 3 4) If-kommando forts. If-kommando forts.

Villkor if, switch. F2: Styrstrukturer, programmeringsteknik (kap. 3 4) If-kommando forts. If-kommando forts. F2: Styrstrukturer, programmeringsteknik (kap. 3 4) Villkors, if, switch Villkor, logiska värden, relationsoperatorer, logiska operatorer Skottårsexempel Triangelanalysexempel, strängar Switch, tärningsexempel

Läs mer

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C DD1316 Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C Python introduktion Utskrift Inläsning Variabler Datatyp Aritmetiska operatorer Omvandling

Läs mer

JavaScript del 3 If, Operatorer och Confirm

JavaScript del 3 If, Operatorer och Confirm JavaScript del 3 If, Operatorer och Confirm Under förra uppgiften så kollade vi på hur användaren kan ge oss information via promt(), vi använde den informationen både för att skriva ut den och för att

Läs mer

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping

Fuzzy Logic. När oskarpa definitioner blir kristallklara. Åsa Svensson. Linköpings Universitet. Linköping Fuzzy Logic När oskarpa definitioner blir kristallklara Linköpings Universitet Linköping Sammanfattning I denna fördjupningsuppgift har jag fokuserat på Fuzzy Logic och försökt att beskriva det på ett

Läs mer

Matlabövning 1 Funktioner och grafer i Matlab

Matlabövning 1 Funktioner och grafer i Matlab Matlabövning 1 Funktioner och grafer i Matlab I den här övningen ska vi titta på hur man konstruerar funktioner i Matlab och hur man kan rita funktionsgrafer. Läs först igenom hela PM:et. Gå sedan igenom

Läs mer

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt

Läs mer

Koda ett mattetest 3 av 5. Lektionen handlar om att göra en variabel i programmet för ett multiplikationstest. Koda ett mattetest 3 av 5

Koda ett mattetest 3 av 5. Lektionen handlar om att göra en variabel i programmet för ett multiplikationstest. Koda ett mattetest 3 av 5 Lektionen handlar om att göra en variabel i programmet för ett multiplikationstest. Lektionsförfattare: Christer Sjöberg Till läraren 1. Skapa en variabel för poäng 2. Nollställ räknaren En digital lektion

Läs mer

4-10 Rymdgeometri fördjupning Namn:..

4-10 Rymdgeometri fördjupning Namn:.. 4-10 Rymdgeometri fördjupning Namn:.. Inledning I kapitlet om rymdgeometri lärde du dig känna igen de vanligaste tredimensionella kropparna, och hur man beräknar deras yta och volym. I detta kapitel skall

Läs mer

Känguru 2012 Student sid 1 / 8 (gymnasiet åk 2 och 3) i samarbete med Jan-Anders Salenius vid Brändö gymnasiet

Känguru 2012 Student sid 1 / 8 (gymnasiet åk 2 och 3) i samarbete med Jan-Anders Salenius vid Brändö gymnasiet Känguru 2012 Student sid 1 / 8 NAMN GRUPP Poängsumma: Känguruskutt: Lösgör svarsblanketten. Skriv ditt svarsalternativ under uppgiftsnumret. Lämna rutan tom om du inte vill besvara den frågan. Felaktigt

Läs mer

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i

Läs mer

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Muddy. Funktioner / metoder. Punktnotation. Evalueringsordning

732G 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 mer

JavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript?

JavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript? Innehåll JavaScript En introduktion till skriptspråket JavaScript och till DOM Scripting Introduktion till JavaScript och DOM JavaScript Syntax DOM och DOM Scripting Händelsehantering och CSS Historia

Läs mer

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde: TANA81: Beräkningar med Matlab - Variabler och Matriser - Logiska uttryck och Villkor - Repetitionssatser - Grafik - Funktioner Variabler I Matlab skapas en variabel genom att man anger dess namn och ger

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

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Laboration 1. Linjär Algebra och Avbildningar Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion I denna övning skall

Läs mer

a) 4a + a b) 4a 3a c) 4(a + 1)

a) 4a + a b) 4a 3a c) 4(a + 1) REPETITION 2 A 1 Förenkla uttrycken. a) 4a + a b) 4a 3a c) 4(a + 1) 2 Johannas väg till skolan är a m lång. a) Robins skolväg är 200 m längre än Johannas. Teckna ett uttryck för hur lång skolväg Robin

Läs mer

REPETITION 2 A. a) 4a + a b) 4a 3a c) 4(a + 1)

REPETITION 2 A. a) 4a + a b) 4a 3a c) 4(a + 1) REPETITION 2 A 1 Förenkla uttrycken. a) 4a + a b) 4a 3a c) 4(a + 1) 2 Johannas väg till skolan är a m lång. a) Robins skolväg är 200 m längre än Johannas. Teckna ett uttryck för hur lång skolväg Robin

Läs mer

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Torsdagen den 4 juni 2015

SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Torsdagen den 4 juni 2015 SF1669 Matematisk och numerisk analys II Bedömningskriterier till tentamen Torsdagen den 4 juni 2015 Allmänt gäller följande: För full poäng på en uppgift krävs att lösningen är väl presenterad och lätt

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

16 Programmering TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5

16 Programmering TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5 16 Programmering Skriva program till TI-86... 214 Köra program... 221 Arbeta med program... 223 Hämta och köra assemblerprogram... 226 Arbeta med strängar... 227 TI -86 M1 M2 M3 M4 M5 F1 F2 F3 F4 F5 214

Läs mer

Fall 1 2x = sin 1 (1) + n 2π 2x = π 2 + n 2π. x = π 4 + n π. Fall 2 2x = π sin 1 (1) + n 2π. 2x = π π 2 + n 2π

Fall 1 2x = sin 1 (1) + n 2π 2x = π 2 + n 2π. x = π 4 + n π. Fall 2 2x = π sin 1 (1) + n 2π. 2x = π π 2 + n 2π 48 a sin x + cos x = cos x Trigonometriska ettan sin v + cos v = 1 1 = cos x cos x = 1 x = ±cos 1 (1) + n π x = 0 + n π x = n π b sin x cos x = 1 Multiplicera båda led med sin x cos x = 1 sin x cos x =

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Laboration 3. Linjär algebra Namn: Personnummer: Epost: Namn: Personnummer: Epost: Godkänd den: Sign: Retur: 1 Introduktion 2 En Komet Kometer rör sig enligt ellipsformade

Läs mer

Objektorienterad programmering Föreläsning 4

Objektorienterad programmering Föreläsning 4 Objektorienterad programmering Föreläsning 4 Copyright Mahmud Al Hakim mahmud@dynamicos.se www.webbacademy.se Agenda Introduktion till objektorientering Klasser och Objekt Instansvariabler Metoder Introduktion

Läs mer

IT OCH PROGRAMMERING I SKOLAN. Jan Erik Moström Peter Vinnervik

IT OCH PROGRAMMERING I SKOLAN. Jan Erik Moström Peter Vinnervik IT OCH PROGRAMMERING I SKOLAN Jan Erik Moström Peter Vinnervik VILKA ÄR VI OCH VAD KOMMER VI ATT PRATA OM? Jan Erik Moström - undervisar på institutionen för datavetenskap Peter Vinnervik - doktorand vid

Läs mer

Övningar i 2D2050. Per-Anders Staav (kallas Pa) Epost: eller

Övningar i 2D2050. Per-Anders Staav (kallas Pa) Epost: eller Övningar i 2D2050 Per-Anders Staav (kallas Pa) Epost: pasta@kth.se eller pastaav@algonet.se Läser till civilingengör på Elektro 180 p inriktning mot programmering. Har jobbat extra som lärare på Nada sedan

Läs mer

Arbetsblad 3:1. Vika kuber. 1 a) Figuren ska vikas till en kub. b) Vilken av figurerna kan. 2 Vilka av figurerna kan du vika till en kub?

Arbetsblad 3:1. Vika kuber. 1 a) Figuren ska vikas till en kub. b) Vilken av figurerna kan. 2 Vilka av figurerna kan du vika till en kub? Arbetsblad :1 sid 75 Vika kuber 1 a) Figuren ska vikas till en kub. b) Vilken av figurerna kan Vilken av kuberna blir det? vikas till den är kuben? 2 Vilka av figurerna kan du vika till en kub? Klipp ut

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

Matematik EXTRAUPPGIFTER FÖR SKOLÅR 7-9

Matematik EXTRAUPPGIFTER FÖR SKOLÅR 7-9 Matematik EXTRAUPPGIFTER FÖR SKOLÅR 7-9 Matematik Extrauppgifter för skolår 7-9 Pärm med kopieringsunderlag. Fri kopieringsrätt inom utbildningsenheten! Författare: Mikael Sandell Copyright 00 Sandell

Läs mer

Objektorientering: Lagring, räckvidd och livstid

Objektorientering: 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 mer

SMD 134 Objektorienterad programmering

SMD 134 Objektorienterad programmering SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning

Läs mer

Digitalt lärande och programmering i klassrummet

Digitalt lärande och programmering i klassrummet Stockholm 2018-02-14 14 februari 2018 Digitalt lärande och programmering i klassrummet Programmera i Python med micro:bit Introduktion I förra lektionen gick vi igenom grunderna i hur man programmerar

Läs mer

Produktrapport. Matematikförberedelser för nya Tekniska fysiker

Produktrapport. Matematikförberedelser för nya Tekniska fysiker Matematikförberedelser för nya Tekniska fysiker 2014-08-20 Mattias Tjernqvist - matj0016@student.umu.se - konst0004@student.umu.se Axel Andersson - axan0003@student.umu.se Sammanfattning I syfte att underlätta

Läs mer

2-1: Taltyper och tallinjen Namn:.

2-1: Taltyper och tallinjen Namn:. 2-1: Taltyper och tallinjen Namn:. Inledning I det här kapitlet skall du studera vad tal är för någonting och hur tal kan organiseras och sorteras efter storleksordning. Vad skall detta vara nödvändigt

Läs mer

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.

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!

Läs mer

f(x, y) = ln(x 2 + y 2 ) f(x, y, z) = (x 2 + yz, y 2 x ln x) 3. Beräkna en vektor som är tangent med skärningskurvan till de två cylindrarna

f(x, y) = ln(x 2 + y 2 ) f(x, y, z) = (x 2 + yz, y 2 x ln x) 3. Beräkna en vektor som är tangent med skärningskurvan till de två cylindrarna ATM-Matematik Mikael Forsberg 734-41 3 31 För studenter i Flervariabelanalys Flervariabelanalys mk1b 13 8 Skrivtid: 9:-14:. Hjälpmedel är formelbladen från insidan av Pärmen i Adams Calculus, dessa formler

Läs mer

TANA17 Matematiska beräkningar med Matlab

TANA17 Matematiska beräkningar med Matlab TANA17 Matematiska beräkningar med Matlab Datorlektion 4. Funktioner 1 Egna Funktioner Uppgift 1.1 En funktion f(x) ges av uttrycket 0, x 0, f(x)= sin(x), 0 < x π 2, 1, x > π 2 a) Skriv en Matlab funktion

Läs mer

Tentamen ID1004 Objektorienterad programmering April 7, 2015

Tentamen ID1004 Objektorienterad programmering April 7, 2015 Ordinarie tentamen för ID1004 Objektorienterad programmering, 7 april 2015 Denna tentamen examinerar 3.5 högskolepoäng av kursen. Inga hjälpmedel är tillåtna. Tentamen består av en obligatorisk del och

Läs mer

Kort om programmering i Matlab

Kort om programmering i Matlab CTH/GU 25/26 Matematiska vetenskaper Kort om programmering i Matlab Inledning Redan första tillfället gjorde ni ett litet program. Ni skrev ett script eller en skriptfil som beräknade summan 5 i 2 = 2

Läs mer

Tentamen IX1304 Matematik, Analys , lösningsidéer

Tentamen IX1304 Matematik, Analys , lösningsidéer Tentamen IX0 Matematik, Analys 0-05-0, lösningsidéer. Gör en linjär approximation till kurvan y x, kring den punkt på kurvan där lutningen är. Bestäm sedan för vilka x som det relativa felet för approximationen

Läs mer

SF1625 Envariabelanalys

SF1625 Envariabelanalys Föreläsning 7 Institutionen för matematik KTH 12 september 2016 Injektiva funktioner En funktion är en regel som till varje tal i definitionsmängden ordnar ett bestämt tal i värdemängden. Injektiva funktioner

Läs mer

Läsanvisningar till kapitel 4 i Naturlig matematik

Läsanvisningar till kapitel 4 i Naturlig matematik Läsanvisningar till kapitel 4 i Naturlig matematik Avsnitt 4.1 I kapitel 4 kommer du att möta de elementära funktionerna. Dessa är helt enkelt de vanligaste funktionerna som vi normalt arbetar med. Här

Läs mer

Koordinatsystem och Navigation

Koordinatsystem och Navigation 2D vs 3D VS Skillnaden mellan 2D och 3D må verka ganska självklar men ibland kan det uppkomma missförstånd kring detta. Vi refererar oftast på 3D som datorgenererad grafik (CG=Computer Graphics) vilket

Läs mer

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal??

Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? C är ett språk på relativt låg nivå vilket gör det möjligt att konstruera effektiva kompilatorer, samt att komma nära

Läs mer

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering

Kompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk

Läs mer

Lathund för spel med karta

Lathund för spel med karta Lathund för spel med karta Från lärardagarna 2018, Scratch fördjupning med Linda Folkesson, Lotta Korslid och Linn Bergqvist Steg 1: Skapa prickar som säger en världsdel Moment: Kopior/kloner Lägg in en

Läs mer

Lösningsförslag Inlämningsuppgift 1 elstatikens grunder

Lösningsförslag Inlämningsuppgift 1 elstatikens grunder Inst. för fysik och astronomi 017-11-08 1 Lösningsförslag Inlämningsuppgift 1 elstatikens grunder Elektromagnetism I, 5 hp, för ES och W (1FA514) höstterminen 017 (1.1) Laddningen q 1 7,0 10 6 C placeras

Läs mer

Introduktion till Datalogi DD1339. Föreläsning 3 29 sept 2014

Introduktion till Datalogi DD1339. Föreläsning 3 29 sept 2014 Introduktion till Datalogi DD1339 Föreläsning 3 29 sept 2014 Ett lite intelligentare program? Klassen Rectangle Rectangle height width color setheight setwidth getcolor getarea Rectangle public class Rectangle{

Läs mer

Talmängder. Målet med första föreläsningen:

Talmängder. Målet med första föreläsningen: Moment 1..1, 1.., 1..4, 1..5, 1.. 1..5, 1..6 Viktiga exempel 1.7, 1.8, 1.8,1.19,1. Handräkning 1.7, 1.9, 1.19, 1.4, 1.9 b,e 1.0 a,b Datorräkning 1.6-1.1 Målet med första föreläsningen: 1 En första kontakt

Läs mer

5. En metod som anropar sig själv a) får inte förekomma i Java-program b) kallas destruktiv c) kallas iterativ d) kallas rekursiv 6. Vilka värden har

5. En metod som anropar sig själv a) får inte förekomma i Java-program b) kallas destruktiv c) kallas iterativ d) kallas rekursiv 6. Vilka värden har Datalogi I, grundkurs med Java 10p, 2D4112, 2002-2003 Exempel på tentafrågor i Java Först följer frågor av flervalstyp. Frågorna är inte ordnade efter svårighetsgrad. 1. Skillnaden mellan typerna int och

Läs mer

3-8 Proportionalitet Namn:

3-8 Proportionalitet Namn: 3-8 Proportionalitet Namn: Inledning Det här kapitlet handlar om samband mellan olika storheter och formler. När du är klar är du mästare på att arbeta med proportionalitet, det vill säga du klarar enkelt

Läs mer

Logik och kontrollstrukturer

Logik och kontrollstrukturer Logik och kontrollstrukturer Flödet av instruktioner i ett programmeringsspråk bygger vi upp med hjälp av dess kontrollstrukturer. I C har vi exemplen if, if else, while, do while. Dessutom finns switch

Läs mer

Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02

Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02 Frivillig Java-swing-Graphics-lab Programmeringsteknik MN1 vt02 Denna laboration är frivillig och syftar till att låta dig lära mer om grafik i java. Labben är ganska grundlig och går igenom vad du skall

Läs mer

Vi människor föds in i en tredimensionell värld som vi accepterar och

Vi människor föds in i en tredimensionell värld som vi accepterar och Güner Ahmet & Thomas Lingefjärd Symbolen π och tredimensionellt arbete med Geogebra I grundskolans geometriundervisning möter elever oftast tvådimensionella former trots att de har störst vardagserfarenhet

Läs mer

Begreppen "mängd" och "element" är grundläggande begrepp i matematiken.

Begreppen mängd och element är grundläggande begrepp i matematiken. MÄNGDER Grundläggande begrepp och beteckningar Begreppen "mängd" och "element" är grundläggande begrepp i matematiken. Vi kan beskriva (ange, definiera) en mängd som innehåller ändligt många element genom

Läs mer

3D-TEKNIKENS GRUNDER JOHAN JÖNSSON

3D-TEKNIKENS GRUNDER JOHAN JÖNSSON 3D-TEKNIKENS GRUNDER JOHAN JÖNSSON GENOMGÅNG AV DE GRUNDLÄGGANDE FUNKTIONERNA I 3D-RITNING TOOLBAR: MODELING SOLID EDITING UCS, UCS 2 VIEW ORBIT VISUAL STYLES POLYSOLID-POLYLINJE I 3D RITAR I XY-PLAN OCH

Läs mer