Sanningar om programmering
|
|
- Robert Andreasson
- för 5 år sedan
- Visningar:
Transkript
1 Grundläggande programmering Sanningar om programmering Ett MATLAB-program är ett antal MATLABkommandon samlade i en m-fil. Att utveckla och skriva program kallas att programmera. Att skriva ett större program som löser ett större problem är oftast en ganska omfattande uppgift Kräver förarbete med t ex papper och penna innan man sätter sig vid datorn Programmeringsprocessen innehåller egentligen många moment, inte bara kodning Programmeringsprocessen 1. Formulering av problemet 2. Strukturering av problemet 3. Val av lösningsmetod 4. Kodning 5. Felsökning och testning 6. Dokumentering 1
2 Programmeringsprocessen Formulering av problemet. Kravspecifikation. Vad ska lösas? Strukturering av problemet. Dela upp i mindre delproblem. Vissa löser man själv (egna funktioner), andra kräver expertkunskaper (MATLAB-funktioner). Val av lösningsmetod. Bestäm lösningsmetod och formulera algoritm, dvs steg-för-steg metod för att lösa de olika delproblemen Programmeringsprocessen Kodning eller implementering algoritmen omformas till programmeringsspråk, dvs i denna kurs till MATLAB-kod. Många vill gärna hoppa direkt till detta moment, eftersom det är roligt att snabbt se resultat. För mindre problem går det oftast bra, men men för större problem är brist på förarbete ofta förödande. Felsökning och testning Ovanligt att program fungerar korrekt från början :-) Måste testköra för olika indata. Försöka hitta felen, för att sedan rätta till dem och köra igen. Programmeringsprocessen Dokumentering För att ett program skall kunna vara användbart för andra, så måste det dokumenteras och kommenteras. Beskriver sina tankegångar i struktureringsmomentet i ett separat dokument och även se till att koden innehåller "lagom med kommentarer på vettiga ställen (dvs %-rader). 2
3 Programmeringsprocessen I den här kursen ska vi mest titta på själva kodningen, dvs MATLAB-koden De övriga delarna ingår (mer eller mindre) i olika programmeringskurser Det är ändå en god idé att skissa på lösningen innan man skriver själva koden, fundera över hur problemet ska delas upp i mindre delproblem etc Rita och skissa med papper o penna hur vektorer ser ut och vilka tal som lagras var etc Programmeringskomponenter Programmeringsspråk innehåller några viktiga komponenter som används när man skriver kod. Komponenter för selektion, t ex if-satser iteration, s k loopar, t ex for-satsen MATLAB: Selektion (if) Selektion (val) Formulering av typen: om... så... om... så... annars... om... så... annars om... så Använd if-satsen i MATLAB x = input('give a number x: '); if x > 0 disp('x is greater than zero!') 3
4 MATLAB: Selektion (if) Varianter med else-gren x = input('give a number x: '); if x > 0 disp('x is greater than zero!') else disp('x is less than or equal to zero!') MATLAB: Selektion (if) Varianter med else-gren x = input('give a number x: '); if x > 0 disp('x is greater than zero!') elseif x < 0 disp('x is less than zero!') else disp('x is equal to zero!') MATLAB: Selektion (switch) Kan även använda switch % Kasta tärning. % result har ett tärningsvärde innan switch result case {1,3,5} disp('odd number of eyes') case {2,4,6} disp('even number of eyes') otherwise disp('what kind of dice do you have?') 4
5 MATLAB: Iteration (for) Iteration Iteration med for innebär att något blir exekverat (utfört) ett förutbestämt antal gånger. % Bygg upp en vektor med for-loop. x = []; % Starta med tom vektor for k = 1:5 x(k) = input('give element in x:'); k = 1:5 betyder att k i tur och ordning antar värdena 1, 2, 3, 4, 5 MATLAB: Iteration (for) Körning ger: Give element in x:2 Give element in x:3 Give element in x:5 Give element in x:7 Give element in x:8 >> x x = MATLAB: Iteration (for) % Bygg vektor på annat sätt r = []; s = []; for x = -2.0:0.25:-0.75 y = 1 + 1/x; r = [r x]; s = [s y]; [r; s]' k = -2.0:0.25:-0.75 betyder att x i tur och ordning antar värdena 2, -1.75,...,-0.50,
6 MATLAB: Iteration (for) Resultatet blir en tabell för funktionen f(x)=1+1/x i intervallet [-2,-0.75]: ans = MATLAB: Iteration (while) Iteration (while) Iteration med while innebär att något blir exekverat (utfört) tills ett visst villkor är uppfyllt x = []; % Tom vektor vid start a = 1; while a > 0 % utför så länge som x = [x a]; % a större än 0 a = input('enter value: '); Observera att i while finns ingen räknare motsvarande k och x i for-exemplen MATLAB: Iteration (while) Resultat vid körning: Enter value: 1 Enter value: 2 Enter value: 6 Enter value: 5 Enter value: -2 >> x x =
7 MATLAB: Relationsoperatorer I while-satsen används logiska uttryck MATLAB har flera relationsoperatorer (Booleska operatorer) för jämförelser < Mindre än <= Mindre än eller lika med > Större än >= Större än eller lika med == Lika med ~= Skilt från I MATLAB gäller att om något är sant så har det värdet 1 (ett) och om något är falskt så har det värdet 0 (noll). MATLAB: Logiska operatorer Följande logiska operatorer finns i MATLAB: & Och ~ Negation (inte) Eller Xor Exklusivt eller A & B A och B: sant om både A och B är sanna A B A eller B: sant om antingen A, B, eller båda är sanna ~A inte A: sant om A är falskt och falskt om A är sant xor(a,b) Exkl eller: sant om A är sant eller om B är sant (ej sant om A och B är sanna) Programmeringsexempel 1 Skriv ett program som läser in två tal, beräknar medelvärdet av dessa och skriver ut resultatet. Analys av problemet a. Vilka indata är nödvändiga? Svar: Två tal b. Av vilken typ är indata? Vektor eller matris? Svar: I detta fall ett tal (skalär) c. Uppkommer det några specialfall? Svar: Inte i det här exemplet. d. Vad är utdata? Vilken datatyp? Svar: Resutatet också ett tal 7
8 Programmeringsexempel 1 Algoritmformulering Med hjälp av naturligt språk 1. Läs in två tal. 2. Beräkna medelvärdet. 3. Skriv ut medelvärdet. Programmeringsexempel 1 MATLAB-kod % Program som beräknar medelvärdet av % två tal. disp('ge två tal, så beräknas medelvärdet:'); tal1 = input('tal1: '); % inläsning tal2 = input('tal2: '); medel = mean( [tal1, tal2] ); %beräkning texten = ['Medelvärdet av talen är ', num2str(medel) ]; %utskrift disp( texten ); Programmeringsexempel 1 Exekvering körning av programmet ger följande: >> prog_1 Ge två tal, så beräknas medelvärdet: Tal1: 3 Tal2: 6 Medelvärdet av talen är 4.5 8
9 Programmeringsexempel 2 Skriv ett program som läser in två tal och beräkna sedan kvoten och skriv ut denna. Analys av problemet a. Vilka indata är nödvändiga? Svar: Två tal b. Av vilken typ är indata? Svar: Skalärer c. Uppkommer det några specialfall eller komplikationer? Svar: Ja, om nämnaren är lika med noll. d. Vad är utdata? Svar: Kvoten, också en skalär Programmeringsexempel 2 Algoritmformulering 1. Ge ledtext: Ge två tal, Läs in värden till variablerna taljare och namnare. 3. Om namnare = 0 så skriv ut ett felmeddelande annars sätt kvot = taljare/namnare 4. Skriv ut resultatet, dvs värdet av kvot, på lämpligt sätt. Programmeringsexempel 2 MATLAB-kod (sparat i m-filen prog2.m) % Program som dividerar två tal disp('ge två tal så beräknas kvoten.'); taljare = input('ge täljare: '); namnare = input('ge nämnare: '); if abs(namnare) < eps %ungefär: == 0 disp('division med noll!'); else kvot = taljare/namnare; disp(['kvoten blir: ',num2str(kvot)]); 9
10 Programmeringsexempel 2 Exekvering >> prog_2 Ge två tal så beräknas kvoten. Ge täljare: 1 Ge nämnare: 2 Kvoten blir: 0.5 >> prog_2 Ge två tal, så beräknas kvoten. Ge täljare: 2 Ge nämnare: 0 Division med noll! Programmeringsexempel 3 Skriv ett program som läser in heltal, ett i taget, och sedan beräknar summan samt medel av dessa. Resultaten skall skrivas ut. Programmeringsexempel 3 Analys av problemet a. Vilka indata är nödvändiga? Svar: Ett antal heltal. b. Av vilken typ är indata? Svar: skalärer som kan lagras i vektor c. Specialfall eller komplikationer? Svar: Ja, hur ska man veta när man matat in sista talet, dvs stoppvillkor? Dessutom, om antalet tal är 0, ska man då beräkna medel och summa? d. Vad är utdata? Av vilken datatyp? Svar: Summan är ett heltal, men medel är ett reellt tal. 10
11 Programmeringsexempel 3 Hur löser vi komplikationerna? a. Stoppvillkor? I MATLAB ger return-tangenten tomma matrisen [] när man använder input. Använd detta som stoppvillkor: så länge som tal skild från [] b. Om inga tal matas in? Vektorn talvect blir då tom och ingen beräkning bör ske. Lös detta med if-sats: om talvect skild från [] så beräkna summa och medelvärde annars gör utskrift Programmeringsexempel 3 Algoritm 1. Läs in första talet, tal, med input 2. Initiera vektor talvect: talvect = [] 3. Loop: så länge som tal skilt från [], dvs tomma matrisen (return) Placera tal i vektor talvect: talvect = [talvect; tal] Läs in ett nytt tal, lagra i tal 4. Om talvect skild från tomma mängden, beräkna medelvärdet och summan. I MATLAB med inbyggda funktioner sum och mean Programmeringsexempel 3 disp( Ge ett antal tal och medelvärde och summa beräknas. Avsluta inmatningen med talet return); tal = input('ge tal 1: '); talvect = []; i = 1; while tal ~= [] i = i+1 tal = input(['ge tal nr ', num2str(i), ': ']); talvect = [talvect; tal]; if talvect ~= [] medel = mean(talvect); summa=sum(talvect); disp(['summa = ', num2str(summa),... ' och medel = ', num2str(medel)]); else disp('inga tal har bearbetats.'); 11
12 Exempel 1.3: Körning >> whiletest Ge tal nr 1: 5 Ge tal nr 2: 4 Ge tal nr 3: 6 Ge tal nr 4: 7 Ge tal nr 5: 1 Ge tal nr 6: 3 Ge tal nr 7: här ges ett return Summa = 21 och medel = 4.2 Egna funktioner Var lagrar man sin kod? Hittills i m-filer i form av kommandofiler Finns även en annan form av m-filer: funktioner Egna funktioner Funktion kan ses som en en svart låda. Man stoppar in indata och får som resultat utdata. I den svarat lådan utförs beräkningar och liknande Den svarta lådan har egna variabler, för mellanlagring av data, som vi utanför ej behöver bry oss om Enda kommunikation med omvärlden via in- och utdata (in- och utparametrar) indata utdata 12
13 Egna funktioner Första raden i funktionsfil inleds med function, därefter utparameterlista, funktionsnamn och inparameterlista. function [y1,y2,,yn]=funknamn(x1,x2,,xm) % Kommentarer Satser En funktion kan ha noll, en, eller flera in- och utparametrar. Kan t o m ha variabelt antal parametrar Funktioner lagras i m-filer. Filnamnet måste stämma överens med funktionsnamnet, funknamn.m Jämför med inbyggda funktioner Det finns många inbyggda funktioner i MATLAB, t ex för elementär matematik och linjär algebra grafik i 2D och 3D integraler och differentialekvationer statistik kurvanpassning Exempel: if abs(sum(x)) > 10, plot(x,y), Egentligen: abs.m, sum.m, plot.m Egna funktioner Funktioner körs genom att anropas [b1,b2,,bn]=filnamn(a1,a2,,am) Efter anropet behåller inparametrarna sina värden. De påverkas ej av funktionen. I en funktion kan finnas anrop till andra funktioner 13
14 Egna funktioner: exempel 1 Matematiska funktionen f(x) = sin(x)cos(x) blir så här som MATLAB-funktion function f = sincos(x) % Beräknar sin(x)*cos(x) f = sin(x)*cos(x); Anrop: >> x = 0.5; y = sincos(x) y = OBS. Funktionen lagras i m-filen sincos.m Egna funktioner: exempel 2 Funktion som beräknar medelvärdet av två tal. function z = medelfunk( x, y ) % Beräknar medelvärdet av två tal % Filnamn: medelfunk.m z = ( x + y )/2; Anrop: a=22; b=6; c=medelfunk(a,b); disp(['medel=', num2str(c)]); Ger vid körning resultatet: medel=4 Egna funktioner: exempel 3 function rita_graf % Funktion som plottar x*sin(x) x = linspace(0,1); y = x.*sin(x); plot(x,y); Anrop: >> rita_graf OBS! Inga in- och utparametrar 14
15 Stora problem och m-filer Hittills haft en m-fil (kommandofil) för varje program när vi löst ett problem. Större problem måste delas upp i delproblem, var och en med egen algoritm Större program blir uppdelade i fler delprogram, dvs flera m-filer per problem vanligen funktionsfiler En m-fil, vanligen kommandofil utgör själva huvudprogrammet detta styr problemlösningen och anropar funktionerna. Olika sorters fel Det finns tre typer av fel, s.k. buggar som kan inträffa i program: 1. Syntaxfel. Ett grammatiskt fel. Kan ej översätta MATLABkoden till "datorkod". Felmeddelanden från inte alltid så lätta att tolka. 2. Exekveringsfel. Fel som uppkommer under körningen och medför att programmet "kraschar", dvs slutar exekvera, kallas exekveringsfel eller runtimefel. 3. Logiska fel. Programmeraren har tänkt fel, men programmet kör. Svårupptäckt. Vanliga syntaxfel i MATLAB Skrivfel, t ex plott(x,y); Utelämnade tecken, t ex multiplikationstecknet, *: 3(x+5) Felstavad identifierare, t ex skyldigmig = 50; if SkyldigMig > 100 Oidentifierade variabler, t ex glömt nollställa sum for i=1:5 sum=sum+i; 15
16 Vanliga syntaxfel Glömd punkt vid elementvisa operationer. Ger??? Error using ==> ^ Matrix must be square. Slarv med kolon, komma, seminkolon Goda råd vid programmering 1. Ha enbart en sats per rad. 2. Indentera på vettigt sätt. 3. Använd blanka rader för att dela upp koden i segment, t ex före/efter block. 4. Använd vettiga variabelnamn o funktionsnamn 5. Kommentera och förklara variabler 6. Kommentera delar av koden. 7. Ha alltid ett kommentarhuvud" i början av filen. Fel kan undvikas om koden är vettig 16
Sanningar om programmering
Block 3: Programmering, del 1 Beräkningsvetenskap I Sanningar om programmering n Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer n Att utveckla och skriva program
Läs merExempel att testa. Stora problem och m-filer. Grundläggande programmering 4. Informationsteknologi. Informationsteknologi.
Grundläggande programmering 4 stefan@it.uu.se - Huvudprogram och underprogram - Egna funktioner - Olika typer av fel - Lite om effektiv programmering Exempel att testa Programmen för några vardagsproblem
Läs merSanningar om programmering. Sanningar om programmering. Programmeringsprocessen. Att skriva program i Matlab. Programmeringsprocessen
Sanningar om programmering Block 3: Programmering Beräkningsvetenskap I Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer Att utveckla och skriva program kallas
Läs merSanningar om programmering. Ett vardagsexempel. Ett vardagsexempel (forts.) Grundläggande byggstenar i algoritmer/program. Programmet som recept
Sanningar om programmering Block 3: Programmering Beräkningsvetenskap I Ett program är ett antal kommandon och särskilda kontrollstrukturer lagrade i en eller flera filer Att utveckla och skriva program
Läs merFrån labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while
Från labben if, for och while Programmering if, for, while, Beräkningsvetenskap I/KF n Det finns tre grundläggande strukturer i programmering, s k kontrollstrukturer Alternativ, if if logiskt uttryck if
Läs merFrån labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while. Från labben: if, for och while
Programmering Beräkningsvetenskap I/KF n Det finns tre grundläggande strukturer i programmering, s k kontrollstrukturer Alternativ, if if logiskt uttryck if logiskt uttryck 1 elseif logiskt uttryck 2 :
Läs merSanningar om programmering. Sanningar om programmering. Programmeringsprocessen. Att skriva program i Matlab. Programmeringsprocessen
Sanningar om programmering Block 3: Programmering Beräkningsvetenskap I Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer Att utveckla och skriva program kallas
Läs merSanningar om programmering. Sanningar om programmering. Programmeringsprocessen. Att skriva program i Matlab. Programmeringsprocessen
Sanningar om programmering Block 3: Programmering Beräkningsvetenskap I Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer Att utveckla och skriva program kallas
Läs merSanningar om programmering. Programmeringsprocessen. Sanningar om programmering. Att skriva program i Matlab. Programmeringsprocessen
Sanningar om programmering Block 3: Programmering, del 1 Beräkningsvetenskap I Ett program är ett antal kommandon och särskilda strukturer lagrade i en eller flera filer Att utveckla och skriva program
Läs merIntroduktion till MATLAB
29 augusti 2017 Introduktion till MATLAB 1 Inledning MATLAB är ett interaktivt program för numeriska beräkningar med matriser. Med enkla kommandon kan man till exempel utföra matrismultiplikation, beräkna
Läs merMATLAB the Matrix Laboratory. Introduktion till MATLAB. Martin Nilsson. Enkel användning: Variabler i MATLAB. utvecklat av MathWorks, Inc.
Introduktion till MATLAB Martin Nilsson Avdelningen för teknisk databehandling Institutionen för informationsteknologi Uppsala universitet MATLAB the Matrix Laboratory utvecklat av MathWorks, Inc. Matematisk
Läs merStora problem och m-filer
Programmering, del 2 Beräkningsvetenskap I Stora problem och m-filer n Hittills har vi haft en m-fil (kommandofil) för varje program när vi löst ett problem eller skrivit Matlab-kod direkt i kommandofönstret
Läs merKomponentvisa 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 merVariabler och konstanter
Variabler och konstanter Deklareras automatisk när man stoppar in data i dem. X = 7 Y = A Z = Kalle Definieras av att de har: ett namn (X) en datatyp (Integer) ett värde (t.ex. 7) Lagras i datorns minne!
Läs merVad är MATLAB? Användningsområden. Var kan man köra MATLAB? MATLAB-miljön: avsluta. MATLAB-miljön: Start. Informationsteknologi. Grunderna i MATLAB
Vad är MATLAB? Grunderna i MATLAB stefan@it.uu.se Utvecklat av MathWorks, Inc. http://www.mathworks.com Ursprungligen MATrix LABoratory. Första versionen klar i slutet av 70-talet Matematisk labbmiljö
Läs merVariabler. 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 merBeräkningsverktyg HT07
Beräkningsverktyg HT07 Föreläsning 1, Kapitel 1 6 1.Introduktion till MATLAB 2.Tal och matematiska funktioner 3.Datatyper och variabler 4.Vektorer och matriser 5.Grafik och plottar 6.Programmering Introduktion
Läs merTentamen 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 merMATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...
Allt du behöver veta om MATLAB: Industristandard för numeriska beräkningar och simulationer. Används som ett steg i utvecklingen (rapid prototyping) Har ett syntax Ett teleskopord för «matrix laboratory»
Läs merMatlabö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 merNumeriska Metoder och Grundläggande Programmering för P1, VT2014
Numeriska Metoder och Grundläggande Programmering för P1, VT2014 Föreläsning 2: Styrstrukturer & Programmeringsstrategi (Kap. 3 4 i MATLAB Programming for Engineers, S. Chapman) January 21, 2014 Innehåll:
Läs merMatlabö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 merFö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 merUppgift 1 - programmet, Uppg6.m, visade jag på föreläsning 1. Luftmotståndet på ett objekt som färdas genom luft ges av formeln
Matlab-föreläsning (4), 10 september, 015 Innehåll m-filer (script) - fortsättning från föreläsning 1 In- och utmatning Sekvenser, vektorer och matriser Upprepning med for-slingor (inledning) Matlab-script
Läs merLogik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter.
TAIU07 Föreläsning 3 Logik och Jämförelser. Styrsatser: Villkorssatsen if och repetitonssatsen for. Scriptfiler. Kommentarer. Tillämpningar: Ett enkelt filter. 27 januari 2016 Sida 1 / 21 Logiska variabler
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 21:a April klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.
Läs merMMA132: 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 merBerä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 merKort om programmering i Python
CTH/GU mmgl50-2018 Matematiska vetenskaper Kort om programmering i Python 1 Inledning Redan i första laborationen gjorde ni ett litet program. Ni skrev en script eller skriptfil som beräknade summan 5
Läs merInstruktion 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
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 14:e Mars, 2017 Provkod: TEN1 Hjälpmedel:
Läs merProgrammering I Tobias Wrigstad fredag, 2009 augusti 28
Programmering I Tobias Wrigstad tobias@dsv.su.se Vad är programmering? Lågnivåspråk och högnivåspråk Kompilering och interpretering Variabler Notation för flödesschema (flow chart) Kontrollstrukturer (conditionals,
Läs merProgrammera 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 merTANA17 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 merTANA17 Matematiska beräkningar med Matlab
TANA17 Matematiska beräkningar med Matlab Datorlektion 2. Linjär Algebra, Villkor och Logik 1 Linjär Algebra Programsystemet Matlab utvecklades ursprungligen för att underlätta beräkningar från linjär
Läs merMatriser och Inbyggda funktioner i Matlab
Matematiska vetenskaper 2010/2011 Matriser och Inbyggda funktioner i Matlab 1 Inledning Vi skall denna vecka se på matriser och funktioner som är inbyggda i Matlab, dels (elementära) matematiska funktioner
Läs merDagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)
Programmeringsteknik och Matlab Övning Dagens program Övningsgrupp 2 (Sal Q22/E2) Johannes Hjorth hjorth@nada.kth.se Rum 458 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d2
Läs merMATLAB Matrix laboratory
MATLAB Matrix laboratory Utvecklat av MathWorks Inc Introduktion till MATLAB Stefan@it.uu.se Utvecklat av MathWorks, Inc Första versionen klar i slutet av 70-talet Matematisk labmiljö för Numeriska beräkningar
Läs merTSBB14 Laboration: Intro till Matlab 1D
TSBB14 Laboration: Intro till Matlab 1D Utvecklad av Maria Magnusson med mycket hjälp av Lasse Alfredssons material i kursen Introduktionskurs i Matlab, TSKS08 Avdelningen för Datorseende, Institutionen
Läs merProgrammering 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 merDagens 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 merLogik 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 merNågra inbyggda funktioner (med resultat!) Introduktion till programmering D0009E. Föreläsning 4: Villkor och rekursion. Modulus-operatorn.
Några inbyggda funktioner (med resultat!) Introduktion till programmering D0009E Föreläsning 4: Villkor och rekursion Konverterar mellan de grundläggande typerna: >>> int("") >>> int(.999) >>> float().0
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en
Läs merProjekt 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
Läs merTANA17 Matematiska beräkningar med Matlab
TANA17 Matematiska beräkningar med Matlab Datorlektion 3. Repetitionssatser och Programmering 1 Introduktion Denna övning syftar till att träna programmering med repetitionssatser och villkorssatser. Undvik
Läs merLaboration: Grunderna i MATLAB
Laboration: Grunderna i MATLAB 25 augusti 2005 Grunderna i MATLAB Vad är MATLAB? MATLAB är ett interaktivt program för vetenskapliga beräkningar. Som användare ger du enkla kommandon och MATLAB levererar
Läs merIntroduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion
Introduktion till programmering Föreläsning 4: Villkor och rekursion 1 1 Några inbyggda funktioner (med resultat!) Konverterar mellan de grundläggande typerna: >>> int("32") 32 >>> int(3.999) 3 >>> float(32)
Läs merTANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 9 november 2015 Sida 1 / 28
TANA17 Matematiska beräkningar med MATLAB för M, DPU Fredrik Berntsson, Linköpings Universitet 9 november 2015 Sida 1 / 28 Föreläsning 3 Linjära ekvationssystem. Invers. Rotationsmatriser. Tillämpning:
Läs merFÖRSÄTTSBLAD TILL TENTAMEN. ELLER (fyll bara i om du saknar tentamenskod): Datum: 16 januari Bordsnummer:
FÖRSÄTTSBLAD TILL TENTAMEN Din tentamenskod (6 siffror): ELLER (fyll bara i om du saknar tentamenskod): Personnummer: - Datum: 16 januari 2013 Kursens namn (inkl. grupp): Beräkningsvetenskap I (1TD393)
Läs merMatematisk Modellering
Matematisk Modellering Föreläsning 1 Anders Heyden Matematikcentrum Lunds Universitet Matematisk Modellering p.1/37 Denna föreläsning (läsvecka 1) Vad handlar kursen om, mål, kurskrav, ide. Matematisk
Läs merGrunderna i C++ T A. Skapad av Matz Johansson BergströmLIMY
Grunderna i C++ ARK 385: Virtuella Verktyg i en Materiell värld AT Arkitektur & Teknik Chalmers Tekniska Högskola 2009 - Kursen skapades (3 förel.) 2010-6 förel. + 2 projekt 2011-8 förel. Helt omarbetade
Läs merVillkor 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 merKort 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 merInstruktion 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
Läs merLaboration 3. Funktioner, vektorer, integraler och felskattning
1 SF1520 K2 HT2014 NA 21 december 2015 Laboration 3 Funktioner, vektorer, integraler och felskattning Efter den här laborationen skall du kunna använda och skriva egna funktioner med flera in- och utparametrar,
Läs merIntroduktion till MATLAB Föreläsning 1
Introduktion till MATLAB Föreläsning 1 FY021G Ingenjörsvetenskap Magnus.Eriksson@miun.se Reviderad 2007-09-23 1 Dagens agenda MATLAB - vad ska det vara bra för? Arrayer, matriser och vektorer Manipulation
Läs merFunktioner forts. F3: Funktioner (kap. 5) Parametrar. findgear.m forts
F3: Funktioner (kap. 5) Funktionsfil, funktionsanrop in- och utparametrar, anropsin- och anropsutparametrar lokala, globala och persistenta variabler lokala funktioner return variabelt antal parameterar,
Läs merMatriser och Inbyggda funktioner i Matlab
CTH/GU STUDIO 1 TMV036a - 2012/2013 Matematiska vetenskaper Matriser och Inbyggda funktioner i Matlab Analys och Linjär Algebra, del A, K1/Kf1/Bt1 Moore: 2.3, 3.1-3.4, 3..1-3.., 4.1, 7.4 1 Inledning Nu
Läs merFöreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk
Föreläsning 2 steknik och C DD1316 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer betyder att instruera en dator Ett program
Läs merFöreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod
Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer
Läs merBörja programmera. Kapitel 4 i kompendiet Jämförande uttryck Villkorssatser Loopar (slingor) Funktioner. Läs inte avsnitt 4.2.3
Börja programmera Kapitel 4 i kompendiet Jämförande uttryck Villkorssatser Loopar (slingor) Funktioner Läs inte avsnitt 4.2.3 2010-09-23 Datorlära, fysikexperiment - del 4 1 Jämförande uttryck 2010-09-23
Läs merFöreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera
Föreläsning 2 Variabler, tilldelning och kodblock if-satsen Logiska operatorer Andra operatorer Att programmera Variabler Det är i variabler som all data (information) lagras. Genom att ändra värde på
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 8p av totalt 20p Tid: 13:e januari klockan 8.00-12.00 Redovisning Lös först uppgifterna i Matlab.
Läs merIndex. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26
TAIU07 Föreläsning 2 Index. Vektorer och Elementvisa operationer. Summor och Medelvärden. Grafik i två eller tre dimensioner. Ytor. 20 januari 2016 Sida 1 / 26 Matriselement och Index För att manipulera
Läs merHI1024 Programmering, grundkurs TEN
HI1024 Programmering, grundkurs TEN2 2016-12-22 KTH STH Flemingsberg 8.15-13.00 Tillåtna hjälpmedel: Kursboken C PROGRAMMING A Modern Approach K. N. King helt utan anteckningar Alternativt C från början
Läs merFortsättningskurs i programmering F 2. Algoritmer i Programutveckling Hugo Quisbert 20130122. Problemexempel 1
Fortsättningskurs i programmering F 2 Algoritmer i Programutveckling Hugo Quisbert 20130122 1 Exempel 1 Problemexempel 1 En souvenirbutik behöver ett datorprogram som omvandlar ett pris i svenska kronor
Läs merFöreläsning 3-4 Innehåll
Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå
Läs mer2 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 merIntroduktion till MATLAB, med utgångspunkt från Ada
Introduktion till, med utgångspunkt från Desktop-miljö som innefattar editor, kommandofönster, graffönster och mycket mer. Interpreteras Snabbt att testa kommandon Terminal + emacs + gnatmake Kompileras
Läs merMatlabföreläsningen. Lite mer och lite mindre!
Inmatning: Här är lite exempel på inmatning i Matlab: >> pi 3.1416 >> format long >> ans 3.141592653589793 Matlabföreläsningen Lite mer och lite mindre! >> format %återställer format (%- tecknet gör att
Läs merTentamen TAIU07 Matematiska beräkningar med MATLAB för MI
TEKNISKA HÖGSKOLAN I LINKÖPING Matematiska institutionen Beräkningsmatematik/Fredrik Berntsson Tentamen TAIU07 Matematiska beräkningar med MATLAB för MI Tid: 14-18, 13:e Mars, 2018 Provkod: TEN1 Hjälpmedel:
Läs merMatriser och vektorer i Matlab
CTH/GU LABORATION 2 TMV157-2014/2015 Matematiska vetenskaper Matriser och vektorer i Matlab 1 Inledning Först skall vi se lite på matriser, vilket är den grundläggande datatypen i Matlab, sedan skall vi
Läs merViktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator
Viktiga begrepp Den här ordlistan är till för dig som går kursen Om Programmering. Eftersom detta är en grundläggande kurs har vi i vissa fall gjort en del förenklingar. En del begrepp är svåra att förenkla,
Läs merInnehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.
Grunderna i MATLAB stefan@it.uu.se Innehåll Vad är MATLAB? Användningsområden MATLAB-miljön Variabler i MATLAB Funktioner i MATLAB Exempel och smakprov: Grafik Beräkningar Bilder GUI Vad är MATLAB? Utvecklat
Läs merBeräkningsvetenskap och Matlab. Vad är MATLAB? Vad är MATLAB? Användningsområden. Vad är MATLAB? Grunderna i Matlab. Beräkningsvetenskap == Matlab?
Beräkningsvetenskap och Matlab Beräkningsvetenskap == Matlab? Grunderna i Matlab Beräkningsvetenskap I Institutionen för, Uppsala Universitet 1 november, 2011 Nej, Matlab är ett verktyg som används inom
Läs merMMA132: Laboration 1 Introduktion till MATLAB
MMA132: Laboration 1 Introduktion till MATLAB De flesta numeriska metoder låter oss få en tillräckligt bra lösning på ett matematiskt problem genom att byta ut komplexa matematiska operationer med kombinationer
Läs merTAIU07 Matematiska beräkningar med Matlab
TAIU07 Matematiska beräkningar med Matlab Datorlektion 3. Avbrott och Funktioner 1 Repetionssatsen while Uppgift 1.1 Skriv ett program som skriver ut det minsta tal av formen 3 n som är större än 5000.
Läs merAlla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.
Att förstå variabler Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata. Vad är en variabel? En variabel är en plats att lagra information. Precis
Läs merMatematisk Modellering
Matematisk Modellering Föreläsning 1 Magnus Oskarsson Matematikcentrum Lunds Universitet Matematisk Modellering p.1/34 Denna föreläsning (läsvecka 1) Vad handlar kursen om, mål, kurskrav, ide. Matematisk
Läs merTAIU07 Matematiska beräkningar med Matlab
TAIU07 Matematiska beräkningar med Matlab Datorlektion 2. Villkor och Repetition 1 Logiska uttryck Uppgift 1.1 Låt a=3 och b=6 Vad blir resultatet av testerna ab? Uppgift 1.2 Låt a, b,
Läs merLaboration 3. Funktioner, vektorer, integraler och felskattning
1 SF1520 VT2017 NA, KTH 16 januari 2017 Laboration 3 Funktioner, vektorer, integraler och felskattning Efter den här laborationen skall du kunna använda och skriva egna funktioner med flera in- och utparametrar,
Läs merUttryck och villkor. Föreläsning 2
Uttryck och villkor Föreläsning 2 Dagens kluring Finn fem fel! #include int main(void) printf("resistans hos R1 (ohm) : ") scanf("%d",r1); printf("resistans hos R2 (ohm) : "); scanf("%d",r2);
Läs merExempel på ett litet Ada-program
Exempel på ett litet Ada-program -- En kommentar som beskriver något. with Ada.Text_IO; procedure Mini is -- Deklarationer. K : constant Integer := 5; X, Y : Integer; -- Körbar kod. Ada.Text_IO.Put( Utskrift
Läs merC++ Slumptalsfunktioner + switch-satsen
C++ Slumptalsfunktioner + switch-satsen Veckans avsnitt består av ett antal lite udda funktioner man kan ha nytta av när man skriver program. Det är en slumptalsgenerator och lite annat smått och gott.
Läs merFöreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?
Föreläsning 10 Datalogi 1 DA2001 python introduktion Variabler Datatyp Aritmetiska operatorer av typer Reserverade ord logiska operatorer If-sats kommentarer på skärmen print( Hej ) print( Hur är det?
Läs merLinjära ekvationssystem i Matlab
CTH/GU LABORATION 2 MVE11-212/213 Matematiska vetenskaper Linjära ekvationssystem i Matlab 1 Inledning Först skall vi se lite på matriser, vilket är den grundläggande datatypen i Matlab, sedan skall vi
Läs merTentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB
MAI/Linköpings universitet Fredrik Berntsson Tentamen TANA17 Matematiska beräkningar Provkod: DAT1 Godkänd: 9p av totalt 20p Hjälpmedel: MATLAB Redovisning Lös först uppgifterna i Matlab. Då du har en
Läs merMATLAB. Vad är MATLAB? En kalkylator för linlär algebra. Ett programspråk liknande t.ex Java. Ett grafiskt verktyg.
MATLAB Vad är MATLAB? En kalkylator för linlär algebra. Ett programspråk liknande t.ex Java. Ett grafiskt verktyg. 1 När används MATLAB? Några exempel: För små beräkningar när en räknedosa inte riktigt
Läs merInnehåll. Vad är MATLAB? Grunderna i MATLAB. Informationsteknologi. Informationsteknologi.
Grunderna i MATLAB eva@it.uu.se Innehåll Vad är MATLAB? Användningsområden MATLAB-miljön Variabler i MATLAB Funktioner i MATLAB Eempel och smakprov: Grafik Beräkningar Bilder GUI Vad är MATLAB? Utvecklat
Läs mer729G04 Programmering och diskret matematik. Python 2: Villkorssatser, sanningsvärden och logiska operatorer
729G04 Programmering och diskret matematik Python 2: Villkorssatser, sanningsvärden och logiska operatorer Föreläsningsöversikt Vad händer när vi kör vår pythonkod? Programmerare Villkorssatser Jämförelser
Läs merUppgifter teknik HT17 (uppdaterad v. 40)
Uppgifter teknik HT17 (uppdaterad v. 40) Uppgifterna bedöms inte, de är bara till för att öva. Samarbeta gärna med andra! Du behöver inte skriva ner svaren, men se till att du förstår lösningarna! 1. Det
Läs merProgramdesign. 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
Läs merDagens program. Programmeringsteknik och Matlab. Viktiga datum. Ett första exempel. Programmall, vad behöver vi i ett javaprogram?
Programmeringsteknik och Matlab Övning 2 Dagens program Övningsgrupp 2 (Sal Q22/E32) Johannes Hjorth hjorth@nada.kth.se Rum 4538 på plan 5 i D-huset 08-790 69 02 Kurshemsida: http://www.nada.kth.se/kurser/kth/2d1312
Läs merOperatorer Tilldelning Kodblock { } if satsen Logiska uttryck Att programmera
Föreläsning 2 Operatorer Tilldelning Kodblock if satsen Logiska uttryck Att programmera En operator tar ett eller två data och producerar ett svar. Typexemplet är +. Den tar t.ex två heltal och producerar
Läs mer7 Programmeringsteknik
7 Programmeringsteknik Att skriva ett program innebär att man skriver en plan för hur bearbetningen av data ska utföras. Vilken typ av data och vilken typ av bearbetning, som ska göras, ska vara bestämt
Läs merProgrammering i C, 7,5 hp
Programmering i C, 7,5 hp Föreläsning 4 VÄLKOMNA! 31 switch-satsen Antag att vi har en heltalsvariabel a som skall styra programflödet Antag vidare att a kan anta tex 5 olika värden 1,2,3,4,5 printf( Mata
Läs merIntroduktion till Matlab Föreläsning 1. Ingenjörsvetenskap
Introduktion till Matlab Föreläsning 1 Ingenjörsvetenskap Magnus.Eriksson@miun.se 1 Dagens agenda MATLAB- vad ska det vara bra för? Arrayer, matriser och vektorer Manipulation av arrayer Kompakta arrayoperationer
Läs merIckelinjära ekvationer
Löpsedel: Icke-linjära ekvationer Ickelinjära ekvationer Beräkningsvetenskap I Varför är det svårt att lösa icke-linjära ekvationer? Iterativa metoder Bisektion/intervallhalvering Newton-Raphsons metod
Läs mer(a) Skriv en matlabsekvens som genererar en liknande figur som den ovan.
Matematik Chalmers tekniska högskola 2014-08-27 kl. 08:30-12:30 Tentamen MVE355, Programmering och numeriska beräkningar med matlab. Ansvarig: Katarina Blom, tel 772 10 97. Plats: L Inga hjälpmedel. Kalkylator
Läs mer