Datorlära 3 Octave Workspace ovh mijlö Skriva text på skärmen Värdesiffror Variabler och typer Strängar Makro Vektorer

Relevanta dokument
Datorlära 6. Arbeta med strängar Inmatning med tangentbordet Bygga ett program med inmatning, funktioner, osv

Textsträngar från/till skärm eller fil

DATORLÄRA Christophe Clément - Fysikum

Enklast att skriva variabelnamn utan ; innehåll och variabelnamn skrivs ut

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

Funktioner och grafritning i Matlab

Matematisk Modellering

Kapitel 15: Data/Matrix Editor

Föreläsning 3.1: Datastrukturer, en översikt

MMA132: Laboration 1 Introduktion till MATLAB

Datorövning 1 Statistik med Excel (Office 2007, svenska)

Datorövning 1 Statistik med Excel (Office 2010, svenska)

Datorövning 1 Statistik med Excel (Office 2007, svenska)

Inledning till OpenOffice Calculator Datorlära 2 FK2005

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

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

Chapter 3: Using Classes and Objects

Introduktion till PHP

1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet

RödGrön-spelet Av: Jonas Hall. Högstadiet. Tid: minuter beroende på variant Material: TI-82/83/84 samt tärningar

Föreläsning 6: Introduktion av listor

Introduktion till integrering av Schenkers e-tjänster. Version 2.0

Tentaupplägg denna gång

TAIU07 Matematiska beräkningar med Matlab

Excelfiler läggs till i ArcMap på samma sätt som annan data, genom Lägg till Data-knappen.

TSBB14 Laboration: Intro till Matlab 1D

Programmeringsuppgifter 1

Vem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.

Programmeringsteknik med C och Matlab

Inlämningsuppgift 4 NUM131

Börja programmera. Kapitel 4 i kompendiet Jämförande uttryck Villkorssatser Loopar (slingor) Funktioner. Läs inte avsnitt 4.2.3

4 Sammansatta datatyper

Import av utlandsresultat

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

5 Grundläggande in- och utmatning

Introduktion till Matlab

Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Omtentamen i Programmering C, 5p, fristående, kväll,

Välkommen till QuickQuest 2.0!

Syftet med den här laborationen är att du skall bli mer förtrogen med följande viktiga områden inom matematisk statistik

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

Kort om programmering i Matlab

TAIU07 Matematiska beräkningar med MATLAB för MI. Fredrik Berntsson, Linköpings Universitet. 15 januari 2016 Sida 1 / 26

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 4 december 2015 Sida 1 / 26

8-1 Formler och uttryck. Namn:.

Övning 2: I cellerna B19 och F26 ska du beräkna den totala ytan för respektive hus. I cell C28 den totala ytan, för båda husen.

Grunderna i stegkodsprogrammering

Excelfiler läggs till i ArcMap på samma sätt som annan data, genom Lägg till Dataknappen.

FÖRELÄSNING 1 ANALYS MN1 DISTANS HT06

TANA17 Matematiska beräkningar med MATLAB för M, DPU. Fredrik Berntsson, Linköpings Universitet. 27 oktober 2015 Sida 1 / 31

Användarhandledning Version 1.2

Datorövning 1 Calc i OpenOffice 1

Processidentifiering och Polplacerad Reglering

Programmering A C# VT Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson

Repetition av filer Grundkurs i programmering med Python

Procedurell grottgenerator och eld i GLSL. Marcus Widegren

4.4. Mera om grafiken i MATLAB

Tentamen OOP

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Sta. Sta. Sta. ulricaelisson.se. Scratch STARTA PROVA KODEN KÖR! TIPS. Rita en ny sprite. Eller välj en från mappen

Att göra investeringskalkyler med hjälp av

Begrepp Uttryck, värdet av ett uttryck, samband, formel, graf, funktion, lista, diagram, storhet, enhet, tabell.

Övningar i JavaScript del 2

Diffraktion och interferens

Innehållsförteckning. Exempel. Åtkomst & användarhandledning

Kurvlängd och geometri på en sfärisk yta

Föreläsning 1 & 2 INTRODUKTION

INDUKTION OCH DEDUKTION

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010

Linjär algebra med tillämpningar, lab 1

Datastrukturer. Erik Forslin. Rum 1445, plan 4 på Nada

FK2005 Datorövning 3

Föreläsning 4: Poster

1 Funktioner och procedurell abstraktion

Datorsystem Laboration 2: Minnesmappade bussar

DE FYRA RÄKNESÄTTEN (SID. 11) MA1C: AVRUNDNING

DATORÖVNING 4: DISKRETA

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

Tentamen i Programmering grundkurs och Programmering C

Instruktion för laboration 1

MATLAB handbok Introduktion

VASS HBI Användarmanual

Tentaupplägg denna gång

DN1212/numpm Numeriska metoder och grundläggande programmering Laboration 1 Introduktion

ORDNA DINA BILDER. Var finns bilderna Var bör de finnas

Steg 4 b. Molntjänster Onedrive Office 365 Windows 10. Mars -16 Liljedalsdata.se. Liljedalsdata Molntjänster En del av steg 4 Sida 1

Omtentamen i DV & TDV

Lösningar till uppgifterna sätts ut på kurssidan på nätet idag kl Omtentamen i Programmering C, 5p, A1, D1, E1, Fri, Pr1, Te/Ek1,

Digitalt lärande och programmering i klassrummet

9-1 Koordinatsystem och funktioner. Namn:

Föreläsning 2: Avlusning och antilustekniker

Uppgift 1 ( Betyg 3 uppgift )

Instruktion för laboration 1

Programmering A. Johan Eliasson

ÖVNINGSUPPGIFTER KAPITEL 9

MMA132: Laboration 2 Matriser i MATLAB

Objektorienterad programmering D2

Lathund för att arbeta med pdf

UMEÅ UNIVERSITET 26 april 2002 Instutionen för datavetenskap. Grafproblem. Laboration 4, Datastrukturer och Algoritmer VT02

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6

Användarmanual Körjournal för iphone

Transkript:

Datorlära 1 Introduktion till datasystemet, epost konto, afs hemkonto Introduktion till datorer och datasalar Open Office Calculator Beräkningar med Open Office Calc Diagram med OO Calc Datorlära 2 Utforma en rapport med OO Writer Inkludera tabeller, diagram och formler i rapporter Importera tabeller och diagram från OOCalc till OOWriter Korsreferenser i rapporter 1 Datorlära 3 Octave Workspace ovh mijlö Skriva text på skärmen Värdesiffror Variabler och typer Strängar Makro Vektorer

Datorlära 4 Börja programmera Booleska variabler Vilkorsatser Slingor Funktioner Att läsa in en fil med mätvärden Datorövningar (dagen efter datorlära 4) Skriva en egen funktion Programmera med if-satser Läsa in en fil med mätdata Behandla en mätserie med olika operationer genom att använda vektorer Datorlära 5 Matriser Lösa ekvationsystem Matrisanpassningar Statistiska funktioner Polynomer 2

Här kommer Finn ett samband Laborationen 2 => Databehandling med Octave Datorlära 6 Rita funktioner Grafer och diagram Titlar, beskrivning Grafikfönster Stapeldiagram Här kommer Multimetern Laborationen 3 => Databehandling med Octave Datorlära 7 Arbeta med strängar Formatera inmatning och utmatning Skriva ut en fil med värden Att programmera Sammanfatting 3 Datorövningar Här erbjuds nya övningar i datasalen som berör hela datorlära delen. Övningarna tränar upp vissa delar nödvändiga för att klara inlämningsuppgifterna.

Datorlära 7 Arbeta med strängar Formatera inmatning och utmatning Skriva ut en fil med värden Att programmera Sammanfatting Idag: Kapitel 10 (Text-strängar, ) i Octave kompendiet 4 Datorlära 7 FK2002 HT2011

Arbeta med Strängar Strängar skapas med text inom citattecken, enkla eller dubbla.!>> str= en text straeng ;!!>> str= en text straeng ;! Stora och små bokstäver skiljer sig åt. Kan vara problem med svenska bokstäver. Stränger kan också ses som vektorer av tecken, tex: >> str(1)! e! >> str(4)! t! 1:10 eller m:n betecknar alla heltal mellan m och n >> str(1:7)! en text! För att få längden för en vektor eller en sträng skriven man length(str)! 5 Datorlära 7 FK2002 HT2011

Att slå ihop strängar Man kan slå ihop strängar för att bygga kortare meningar!>> huvud_str1= [ Hej paa dig ];! Eller!>> huvud_str1= [ Hej, paa dig ];! >> disp(huvud_str2);! Hej paa dig! Eller!!>> str1 = Hej ;!!>> str2 = paa dig ;!!>> huvud_str2= [str1 str2];!!>> disp(huvud_str2);! Hej paa dig! 6 Datorlära 7 FK2002 HT2011

Att slå ihop strängar Sträng och tal är två olika typer av DATA. Det finns 3.14159 ett tal, eller 3.14159 en sträng Beroende på om det är en sträng eller ett tal kan man tillämpa olika funktion. Tal: +,-,/,*.. Sträng: length, slå ihop, osv. Ett tal kan konverteras till en sträng mha fördefinierade funktionen: num2str! Till exempel, man kommer ihåg att konstanten pi är fördefinierad. >> str=[ The number pi is equal to num2str(pi)];! >> disp(str);! The number pi is equal to 3.1416! 7 Datorlära 7 FK2002 HT2011

Enkel Inmatning av Tal Funktionen input används för enkel inmatning av tal eller strängar (beroende på hur den används) Inmatning av tal: >> x = input( Ange ett tal : );! Vad händer då? Octave skriver ut i workspace: Ange ett tal : Och väntar på att man matar in ett tal och sedan slår return. Värdet man matar in lagras i variabeln x. Så att om man gör: disp(x);! Får man tillbaka talet som matades in. 8

Övning 1 Skriv ett litet program kvadrat.m som: 1. Frågar efter ett tal Ange ett tal :! 2. Räknar kvadraten 3. Skriver ut resultatet, tex 10 i kvadrat aer lika med 100! 9

Enkel Inmatning av strängar För inmatning av strängar använder man samma funktiom input, men men med en annan syntax. Inmatning av text: >> text = input( Ange en straeng :, s );! berätta för Octave att det som läses in ska tolkas som en sträng text här är nu en variabel av typ sträng, i stället för tal. Vad händer när skriver detta i workspace: Ange en straeng : Och väntar på att man matar in en text sträng och sedan slår return. Värdet man matar in lagras i variabeln text. Så att om man gör: disp(text);! Får man tillbaka talet som matades in. 10

Övning 2 Skriv ett litet program namn.m som: 1. Frågar efter ett namn Vad heter du?! 2. Bygger en ny sträng som innehåller en hälsningsfras med namnet. 3. Skriver ut resultatet, tex Hej Krille!! 11

Leta efter ett mönster i en sträng Man kan analysera strängen som matas in mha funktionen!index = findstr( moenster,str); Denna funktion returnerna en vektor här index som innehåller positionen i str för stränger mönster. Om mönstret mönster finns inte då är index en tom vektor med längd noll. (length (index)=0 )! Mönstret man söker i strängen Ett exempel: >> str=( ababcabcdadcdeabcdef );! >> index=findstr( a,str);! >> disp(index);! 1 3 6 10! >> index2=findstr( z,str);! >> disp(index2);! [](0x0)! Betyder att vektor index2 är tom, dvs har längd noll. 12

Övning 3 Bygg på det tidigare programmet namn.m (Övning 2) och 4. Sök efter bokstaven a 5. Skriv ut antalet gånger denna bokstav uppstår i namnet 6. Om bokstaven inte finns med, skriv i stället ett särskilt meddelande som säger att bokstaven a inte finns med i namnet.! 13

In/utmatning med blandning av text och tal För detta kan vi använda funktionen: sprintf! Kopierar min straeng till str : str = sprintf( min straeng );! Kopierar en blandning av strängar och tal till str: Formatet anges här str = sprintf( pi med 15 decimaler aer %.15f,pi);! Här specificeras att det handlar om ett reellt (eller flytt)tal med f och att man vill ha 10 siffror efter kommatecknet. Med %.48f får man 48 decimaler på pi (allt som finns definierad i Octave.) 14

In/utmatning med blandning av text och tal (2) Man kan också be sprintf att skriva in ett heltal med %d %4d kommer att skriva ut minst fyra tecken, om talet består av mindre än fyra tecken, då blir det ändå 4 fyra tecken. Om talet består av mer än 4 tecken, då skrivs ut hela talet. Med %4.2f kan man specificera att hela talet ska vara minst fyra tecken bred med 2 decimaler. (Komman räknas som ett tecken). Mycket användbart för att formatera tabeller. Exempel >> N=1234;! >> str=sprintf( N = %5.2f,N);! 1234.00! 15

Utmatning till en fil För att skriva till en sträng använder man För att skriva till en fil använder man sprintf! fprintf! Första steget är att öppna en fil för utmatning, dvs man ska skriva i filen: filen= fopen( mintextfil.txt, w );! w för write, dvs en fil där man skriver När man är klar med att skriva i filen så ska den stängas. fclose(filen);! Filnamnet Observera att filen är av en annan datatyp, vi har strängar, tal, matriser och filer. 16

Utmatning till en fil (2) filen= fopen( mintextfil.txt, w );! for i=1:1000!!fprint(filen, i= %2d,i);! end! fclose(filen);! Resultatet blir en ny fil som heter mintextfil.txt i samma katalog som man befinner sig, och som innehåller: filen måste även anges 17

Inmatning från en fil Öppna filen för att läsa in den: filen= fopen( mintextfil.txt, r );! for i=1:1000!!str1=fscanf(filen, %s, C );!!str2=fscanf(filen, %s, C );!!tal=fscanf(filen, %d, C );! end! fclose(filen);! Behöver även läsa in oinstressanta strängar hur ska invärdet tolkas, som en sträng med %s eller som ett heltal %d eller som flyttal %f r för read, dvs en fil som man läser 18

Övning 4 Skriv ett program som skriver sinus(θ) och cosinus(3θ) värden till en fil i justerbara steg mellan två olika vinklar. 1. Fråga efter stegstorleken i grader 2. Fråga efter startvinkeln 3. Fråga efter maxvinkeln 4. Skriv ut i filen tre kolumner med vinkeln i radianer, cos och sin för alla vinklar mellan startvinkeln och maxvinkeln. 19

Övning 5 Skriv ett program som läser in filen som skrevs ut i Övning 4 och rita punkterna med koordinater (cos(3θ), sin(θ)) Man kan även rita i 3D (cos(3θ), sin(θ), θ). 20

21 Övning 1

22 Övning 2

23 Övning 3

24 Övning 4

25 Övning 5

Några Råd för att Programmera Kommentera ordentligt mha % Använd alltid.m för Octave program och.dat eller.txt för din data, så att man vet vad det är för typ av fil. Använd tydliga namn för variabler (undvik i, j, k!) Använd clear all i början av dina program för att rensa ut från tidigare försök. Octave hittar inte mitt program: Är jag i rätt katalog? Har jag talat om för Octave om sökvägen till katalogen med mitt program (kommer ihåg setmypath.m?) Har jag använt en variabel vars namn är samma som mitt program? (Att undvika!) 26

Några Råd för att Programmera (2) När man får problem med en variabel: Är den definierad? Har en vektor några element eller är den tom? Använder jag rätt datatyp? (sträng, ett tal, en fil, en vektor, en matris) Har variabeln i funktionsargument rätt datatyp? Hjälp om hur funktioner används med help function! Parenteser () används bara för funktioner och hämta element från en vektor Hakparenteser [] används för att konstruera strängar, vektorer och matriser, INTE för funktioner, inte för att hämta element från en vektor. 27