Några fakta om Standard Pascal. Serafim Dahl, Carina Edlund, m.fl.

Storlek: px
Starta visningen från sidan:

Download "Några fakta om Standard Pascal. Serafim Dahl, Carina Edlund, m.fl."

Transkript

1 Några fakta om Standard Pascal Serafim Dahl Carina Edlund m.fl. Hösten 2008

2

3 Några fakta om Standard Pascal 1 Fördefinierade procedurer och funktioner Typer som anges i denna sammanställning hänför till den i nästa avsnitt redovisade taxonomin över Pascals datatyper och har inte säkert en motsvarighet i Pascals typsystem utan kan motsvaras av en hel mängd möjliga typer. Abs(x: real): real eller Abs(x: Integer): Integer beräknar absolutvärdet av x. ArcTan(x: real): real beräknar det aritmetiska värdet arctangens x där x är uttryckt i radianer. Chr(i: integer): char returnerar det tecken som har ordningstalet i enligt den aktuella teckenkoden. Det blir ett felavbrott om det inte finns något sådant tecken. Cos(x: real): real beräknar cosinus x där x är givet i radianer. Dipose(q: pointer) där pointer måste vara av typen pekare till någon sorts post är en dynamisk allokeringsprocedur som avallokerar en identifierad variabel q och förstör det identifierande värdet q. Dispose(q) ger ett felavbrott om q är nil eller odefinierad. Värdet q måste ha skapats med kortformen för new. Dipose(q: pointer k 1... k n : variant) där pointer måste vara av typen pekare till någon sorts post och variant måste vara väljare för existerande varianta definitioner av den posttyp som q får referera till är en dynamisk allokeringsprocedur som avallokerar en identifierad variabel q och förstör det identifierande värdet q. Dispose(q k 1... k n ) ger ett felavbrott om q är nil eller odefinierad. Värdet q måste ha skapats med kortformen för new och k 1... k n måste välja samma varianter som de som valdes då q skapades. Eof(f: file): boolean där f får vara vilken slags filtyp som helst returnerar true om f är öppnad i skrivmod eller om f är öppnad i läsmod och f positionerats efter sista posten i filen. Eof(f) genererar ett fel om f inte är definierad. I alla andra fall returnerar eof(f) false. Om parametern utelämnas antas input vara parameter. Eoln(f: text): boolean returnerar true om textfilen f är öppnad för läsning och f positionerats på ett tecken som i den aktuella teckenkoden används för radslutsmarkering. Eoln(f) genererar ett fel om f är odefinierad eller om eof(f) är true. I alla andra fall returnerar eoln(f) false. Om parametern utelämnas antas input vara parameter. Exp(x: real): real beräknar det aritmetiska värdet e x (där e är basen för den naturliga logaritmen). Get(f: file) där f får vara vilken slags filtyp som helst är en procedur som avancerar positionspekaren för f så att den pekar på nästa i den sekvens av poster som f utgör om det finns en sådan post och också låter f anta denna posts värde. Om det inte finns någon nästa post i f så kommer eof(f) att få värdet true och f att bli helt odefinierad. Get(f) genererar ett fel om f är odefinierad eller om eof(f) har värdet true. Om parametern utelämnas antas input vara parameter. Ln(x: real): real beräknar den naturlig logaritmen för parametervärdet x som måste vara större än 0 (noll). Ln(x) genererar ett fel om x < 0.

4 2 Några fakta om Standard Pascal New(p: pointer) där pointer måste vara av typen pekare till någon sorts post är en dynamisk allokeringsprocedur som allokerar utrymme för en identifierad variabel p med samma domäntyp som p och skapar ett nytt identifierande pekarvärde som tilldelas p. Om p är en variant post allokerar new(p) tillräckligt med utrymme för att kunna få plats med den mest utrymmeskrävande varianten. New(p: pointer c 1... c n : variant) där pointer måste vara av typen pekare till någon sorts post och variant måste vara väljare för existerande (nästlade) varianta definitioner av den posttyp som p får referera till är en dynamisk allokeringsprocedur som allokerar utrymme för en identifierad variabel p med samma domäntyp som p med etiketterna c 1... c n för n nästlade varianter och skapar ett nytt identifierande pekarvärde som tilldelas p. Odd(i: integer): boolean returnerar true om i är ett udda heltal och false annars. Ord(x: discrete): integer där x är vilken diskret typ som helst fördefinierad eller användardefinierad returnerar ordningstalet för x i den mängd av värden där x ingår. Pack(a: array i: integer p: packed array) där a är någon sorts array-typ definierad i programmet och p är motsvarande packed array-typ är en dataöverföringsprocedur som packar innehållet i a från och med komponent i och lägger resultatet i p. Page(f: text): boolean lägger in en (implementationsberoende) markering i textfilen f som gör att text som skrivs till f efter anropet till page(f) vid utskrift kommer att hamna högst upp på en ny sida i utskriften. Om parametern utelämnas antas den var output och om f är odefinierad genereras ett fel. Pred(x: discrete): discrete är en funktion som returnerar den symbol i den diskreta ordning som x tillhör som står före x i den aktuella uppräkningen. Om x är det första värdet i den aktuella typens uppräkning genereras ett fel. OBS! att Ord(Pred(x)) = Ord(x) - 1. Put(f: file) där f får vara vilken slags filtyp som helst är en procedur som lägger värdet f sist i filen f. Ett fel genereras om f inte är definierad eller om f inte är öppnad för skrivning eller om f inte är definierad. Efter anropet till Put(f) är f helt odefinierad. Read(f: file v: variable) där v måste vara ett namn som är deklarerat i programmet och av samma typ som elementen i f eller om f är av typen text av någon typ vars literaler automatisk kan konverteras till v:s typ. Read(f v) tilldelar v värdet av nästa komponent i f om v har samma typ som elementen i f eller värdet som nästa literal i filen konverteras till. Positionspekaren i f avanceras till nästa position eller till positionen efter nästa literal vilket som är tillämpligt. Om parametern f utelämnas antas att dess värde är input. Read(f: file v 1 v 2... v n ) fungerar som om det stod read(f v 1 ) read(f v 2... v n ). Readln(f: file v: variable) fungerar som read med det tillägget att readln fungerar endast för textfiler och att resten av aktuell inmatningsrad ignoreras och att nästa läsning sker från nästa rad.

5 Några fakta om Standard Pascal 3 Readln(f: file v 1 v 2... v n ) fungerar som om det stod read(f v 1 ) readln(f v 2... v n ). Reset(f: file) där f får vara vilken slags filtyp som helst är en procedur som öppnar f för läsning och som positionerar positionspekaren så att f antar värdet av den första posten i den sekvens av poster som f utgör och sätter värdet av eof(f) till false om filen f inte är tom. Om filen är tom sätts värdet av eof(f) till false och värdet av f blir helt odefinierat. Rewrite(f: file) där f får vara vilken slags filtyp som helst är en procedur som öppnar f för skrivning ersätter f med en tom sekvens samt sätter värdet av eof(f) till false. Round(r: real): integer beräknar trunc(r + 0.5) för r 0.0 och trunc(r - 0.5) för r < 0.0 om det existerar ett sådant värde i typen integer. Annars genereras ett fel. Sin(x: real): real beräknar sinus x där x är givet i radianer. Sqr(x: real): real eller Sqr(x: integer): integer beräknar x * x. Om det inte existerar ett sådant värde genereras ett fel. Sqrt(x: real): real beräknar x. Om det inte existerar ett sådant värde genereras ett fel. Succ(x: discrete): discrete är en funktion som returnerar den symbol i den diskreta ordning som x tillhör som står efter x i den aktuella uppräkningen. Om x är det sista värdet i den aktuella typens uppräkning genereras ett fel. OBS!: Ord(Succ(x)) = Ord(x) + 1. Trunc(r: real): integer returnerar det största heltal som är mindre än eller lika med parametern r om r 0.0 och det minsta heltalet som är större än eller lika med r om r < 0.0 om det finns ett sådant tal i mängden av heltal. Annars genereras ett fel. Unpack(p: packed array a: array i: integer) där a är någon sorts array-typ definierad i programmet och p är motsvarande packed array-typ. Unpack är en dataöverföringsprocedur som packar upp innehållet i p och lägger resultatet i a från och med komponent i. Write(f: file v: variable) där v måste vara ett namn som är deklarerat i programmet och av samma typ som elementen i f eller om f är av typen text av någon typ vars värden automatisk kan konverteras till literaler. Write(f v) skriver v:s värde sist i f om v har samma typ som elementen i f eller den literal som värdet konverteras till om f är av typen text. Om parametern f utelämnas antas att dess värde är output. Write(f: file v 1 v 2... v n ) fungerar som om det stod write(f v 1 ) write(f v 2... v n ). Writeln(f: file v: variable) fungerar som write med det tillägget att writeln fungerar endast för textfiler och att nästa skrivning sker på ny rad (en eoln-markering skrivs omedelbart efter variabelns värde). Writeln(f: file v 1 v 2... v n ) fungerar som om det stod write(f v 1 ) writeln(f v 2... v n ).

6 4 Några fakta om Standard Pascal Förenklad taxonomi över Pascals datatyper Datatyper Enkla typer Pekartyper Strukturerade typer Real Diskreta typer Array Set Record File Uppräknade typer Fördefinierade Intervall Text Boolean Integer Char

7 Några fakta om Standard Pascal 5 Sammanställning över operatorer Aritmetiska operatorer operator operation operandtyp resultattyp + (unärt) identitet integer integer + (unärt) identitet real real (unärt) negering integer integer (unärt) negering real real + addition integer integer + addition real real subtraktion integer integer subtraktion real real multiplikation integer integer multiplikation real real div division integer integer / division real real mod modulus integer integer Relationsoperatorer operator operation operandtyp resultattyp = likhet enkel boolean = likhet sträng boolean = likhet set boolean = likhet pekare boolean < mindre än enkel boolean < mindre än sträng boolean > större än enkel boolean > större än sträng boolean <= mindre än eller lika med enkel boolean <= mindre än eller lika med sträng boolean <= inklusion mängd boolean >= större än eller lika med enkel boolean >= större än eller lika med sträng boolean >= inklusion mängd boolean in mängdtillhörighet element mängd boolean Booleska operatorer operator operation operandtyp resultattyp not negation boolean boolean or disjunktion boolean boolean and konjunktion boolean boolean

8 6 Några fakta om Standard Pascal Mängdoperatorer operator operation operandtyp resultattyp + union mängdtyp T T differens mängdtyp T T snitt mängdtyp T T Andra operatorer Tilldelning notation operation operandtyp resultattyp := tilldelning någon typ T ingen Variabelaccess notation operation operandtyp resultattyp [ ] arrayindexering array komponenttyp. fältaccess record fälttyp identifikation pointer post buffertaccess filtyp komponenttyp Konstruktorer notation operation operandtyp resultattyp [ ] mängdkonstruktion bastyp mängd strängkonstruktion teckentyp sträng

9 Några fakta om Standard Pascal 7 Standardidentifierare (som inte är reserverade ord) Konstanter false true maxint nil Typer boolean char integer real text Variabler input output Funktioner abs arctan chr cos eof eoln exp ln odd ord pred round sin sqr sqrt succ trunc Procedurer dispose get new pack page put read readln reset rewrite unpack write writeln Alfabetisk lista abs false pack sin arctan get page sqr boolean input pred sqrt char integer put succ chr ln read text cos maxint readln true dispose new real trunc eof odd reset unpack eoln ord rewrite write exp output round writeln Fördefinierade symboler Specialtecken + / = < > <= >= <>. : :=.. ( ) [ ]

10 8 Några fakta om Standard Pascal Reserverade ord and end nil set array file not then begin for of to case function or type const goto packed until div if procedure var do in program while downto label record with else mod repeat Alternativ representation (. för [.) för eller ^ för Direktiv forward

11 Några fakta om Standard Pascal 9 Syntax Pascals syntax bestäms av hur man kan vandra genom de här presenterade diagrammen i pilarnas riktning. De här korrigerar dessutom de som finns i kursboken. Symboler i fet stil inom cirklar och ovaler skall skrivas exakt som de står skrivna. Dessa symboler kallas terminaler. Det som står i kursiv stil inom rektanglar beskrivs i andra syntaxdiagram. Observera att syntaxbeskrivningen endast klargör hur satser i språket kan formas. Syntaxen måste kompletteras med en semantisk beskrivning som klargör vilka av de syntaktiskt korrekta konstruktionerna som har en betydelse i språket. En sådan beskrivning ligger utanför ramen för den här sammanställningen och inhämtas lämpligen genom studium av en bok om programmering i Pascal t ex Dahl Lindqvist: Pascal helt enkelt ISBN I just den boken finns fel i syntaxbeskrivningarna och de nedan givna korrigerar de i boken och (i viss mån) kompletterar dem. Vissa symboler kompletteras med klargöranden inom parentes endast för det som står utanför parentesen finns syntaxdiagram det som står inom parentesen är att betrakta som ett semantiskt förtydligande. program program identifierare ( (fil-) identifierare ) block. block deklarationsdel sammansatt sats

12 10 Några fakta om Standard Pascal deklarationsdel label lägesdeklaration const konstantdefinition type typdefinition var variabeldeklaration procedurdeklaration funktionsdeklaration lägesdeklaration lägesetikett lägesetikett teckenlöst heltal konstantdefinition identifierare = konstant typdefinition identifierare = typ

13 Några fakta om Standard Pascal 11 variabeldeklaration identifierare : typ procedurdeklaration procedurhuvud block direktiv funktionsdeklaration funktionshuvud block direktiv procedurhuvud procedure identifierare ( formell parameter ) funktionshuvud function identifierare ( formell parameter ) : (typ-)identifierare

14 12 Några fakta om Standard Pascal formell parameter var identifierare : (typ-)identifierare procedurhuvud funktionshuvud sträng vilket skrivbart tecken som helst utom identifierare direktiv bokstav bokstav siffra teckenlöst heltal siffra

15 Några fakta om Standard Pascal 13 konstant teckenlös konstant + teckenlöst heltal teckenlöst reellt tal (konstant-)identifierare teckenlös konstant teckenlöst heltal teckenlöst reellt tal (konstant-)identifierare sträng nil teckenlöst reellt tal teckenlöst heltal. teckenlöst heltal E teckenlöst heltal +

16 14 Några fakta om Standard Pascal typ (typ-)identifierare uppräknad typ intervalltyp pekartyp arraytyp packed posttyp filtyp mängdtyp uppräknad typ ( (konstant-)identifierare ) intervalltyp konstant.. konstant pekartyp (typ-)identifierare

17 Några fakta om Standard Pascal 15 arraytyp array [ typ ] of typ posttyp record fältlista end fältlista identifierare : typ variant del variant del case identifierare : (typ-) identifierare of variant variant konstant : ( fältlista )

18 16 Några fakta om Standard Pascal filtyp file of typ mängdtyp set of (uppräknad eller intervall-)typ sammansatt sats begin sats end sats lägesetikett : tilldelningssats procedursats sammansatt sats IF-sats CASE-sats WHILE-sats FOR-sats REPEAT-sats WITH-sats hoppsats

19 Några fakta om Standard Pascal 17 tilldelningssats variabel := uttryck (funktions-) identifierare procedursats (procedur-) identifierare ( aktuell parameter ) IF-sats if (villkors-) uttryck then sats else sats CASE-sats case uttryck of konstant : sats end

20 18 Några fakta om Standard Pascal WHILE-sats while (villkors-) uttryck do sats FOR-sats for (variabel-) identifierare := uttryck to downto uttryck do sats REPEAT-sats repeat sats until (villkors-) uttryck WITH-sats with (post-) variabel do sats hoppsats goto lägesetikett

21 Några fakta om Standard Pascal 19 aktuell parameter uttryck variabel (funktions-)identifierare (procedur-)identifierare uttryck enkelt uttryck < <= = <> >= > in enkelt uttryck enkelt uttryck term + + or term term faktor * / div mod and faktor

22 20 Några fakta om Standard Pascal faktor teckenlös konstant variabel funktionsdesignator ( uttryck ) not faktor mängdvärde funktionsdesignator (funktions-) identifierare ( aktuell parameter ) mängdvärde [ ] uttryck.. uttryck

23 Några fakta om Standard Pascal 21 variabel (variabel-) identifierare [ uttryck ] (fält-) identifierare. (fält-)identifierare bokstav A B... Z a b... z siffra

24 22 Några fakta om Standard Pascal Några rättelser till Pascal-boken Rapportera till Serafim via e-post om ni hittar mera!! sida rad/stycke står skall stå rad 1 I exempel 10 I ex rad 2 & 6 currentsegment segm i rutan i retrieve retrieve(alist el) retrieve(alist) mittenstycket rad 2 NextItem next mittenstycket rad 3 readchartypelist readtypelist I procedure readword VAR ch:char Ingenting (används inte) I proc skipblanks VAR ch:char Ingenting (används inte) sista stycket rad 4 konsektivt konsekutivt I function fib inner:=fibn inner:=fibn I Ex1 rad 3 permits = (DC10 permit = (DC10 OBServera att många syntaxdiagram är felaktiga. Använd de som finns i detta häfte.

Pascal. reserverade ord fördefinierade funktioner och procedurer egendefinierade funktioner, procedurer och objekt

Pascal. reserverade ord fördefinierade funktioner och procedurer egendefinierade funktioner, procedurer och objekt Programspråk uppkallat efter Blaise. Skapat av Nicolaus Wirt. Avsett för undervisning för att lära ut typbegreppet och styrstrukturer. Har fått stor spridning p.g.a. enkelhet och att kompilatorn varken

Läs mer

Pascal... Pascal. Pascal... Pascal...

Pascal... Pascal. Pascal... Pascal... ... Programspråk uppkallat efter Blaise. Skapat av Nicolaus Wirt. Avsett för undervisning för att lära ut typbegreppet och styrstrukturer. Har fått stor spridning p.g.a. enkelhet och att kompilatorn varken

Läs mer

Standardfilerna Input och Output

Standardfilerna Input och Output Standardfilerna Input och Output Standardfilerna Input och Output är textfiler av typen TEXT (som bara finns för filer). Innehållet är av typen Char och filerna är strukturerade i form av rader. En sådan

Läs mer

Standardfilerna Input och Output. Filer... Filer... vanlig utbyggnad för ökad dynamik. Filer... filtyper

Standardfilerna Input och Output. Filer... Filer... vanlig utbyggnad för ökad dynamik. Filer... filtyper Standardfilerna Input och Output... Standardfilerna Input och Output är textfiler av typen TEXT (som bara finns för filer). Innehållet är av typen Char och filerna är strukturerade i form av rader. En

Läs mer

Exempel på ett litet Ada-program

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

Översikt över Visual Basic

Översikt över Visual Basic Översikt över Visual Basic Om denna översikt Denna översikt ger en kort introduktion till de viktigaste delarna i programspråket Visual Basic 6.0. På alla ställen där det beskrivs hur man skriver kod gäller

Läs mer

Tentamen Grundläggande programmering

Tentamen Grundläggande programmering Akademin för Innovation Design och Teknik Tentamen Grundläggande programmering Kurskod: DVA103 Datum 2012-06-11 Tid 14.10 16.30 Examinator: Lars Asplund Maxpoäng: 48 Betygsgränser: Betyg 3: 20 Betyg 4:

Läs mer

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek

Datatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000

Läs mer

GRUNDER I VHDL. Innehåll. Komponentmodell Kodmodell Entity Architecture Identifierare och objekt Operationer för jämförelse

GRUNDER I VHDL. Innehåll. Komponentmodell Kodmodell Entity Architecture Identifierare och objekt Operationer för jämförelse GRUNDER I VHDL Innehåll Komponentmodell Kodmodell Entity Architecture Identifierare och objekt Operationer för jämförelse KOMPONENTMODELL Modell för att beskriva komponenter Externt interface Intern funktion

Läs mer

Omgivningar. Omgivningar är viktiga eftersom de avgör vilka namn som är synliga och därmed dessas innebörd och de värden som är förknippade med dem.

Omgivningar. Omgivningar är viktiga eftersom de avgör vilka namn som är synliga och därmed dessas innebörd och de värden som är förknippade med dem. Omgivningar Omgivningar är viktiga eftersom de avgör vilka namn som är synliga och därmed dessas innebörd och de värden som är förknippade med dem. (define (sqrroot c) (define (fixpoint guess c eps) (define

Läs mer

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19

Typsystem. DA2001 (Föreläsning 23) Datalogi 1 Hösten / 19 Typsystem Typsystem finns i alla programmeringsspråk. Avsikten med typsystem är att kontrollera att uttryck är säkra i den bemärkelsen att innebörden i operanderna är klar och inte är motsägelsefull och

Läs mer

Språket Python - Del 1 Grundkurs i programmering med Python

Språket Python - Del 1 Grundkurs i programmering med Python Hösten 2009 Dagens lektion Ett programmeringsspråks byggstenar Några inbyggda datatyper Styra instruktionsflödet Modulen sys 2 Ett programmeringsspråks byggstenar 3 ETT PROGRAMMERINGSSPRÅKS BYGGSTENAR

Läs mer

Typsystem. Typsystem... Typsystem... Typsystem... 2 *

Typsystem. Typsystem... Typsystem... Typsystem... 2 * Typsystem Typsystem finns i alla programmeringsspråk. Avsikten med typsystem är att kontrollera att uttryck är säkra i den bemärkelsen att innebörden i operanderna är klar och inte är motsägelsefull och

Läs mer

Introduktion till formella metoder Programmeringsmetodik 1. Inledning

Introduktion till formella metoder Programmeringsmetodik 1. Inledning Introduktion till formella metoder Programmeringsmetodik 1. Inledning Fokus på imperativa program (ex. C, Java) program betyder härefter ett imperativt program Program bestäms i en abstrakt mening av hur

Läs mer

TDIU01 - Programmering i C++, grundkurs

TDIU01 - Programmering i C++, grundkurs TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner

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

2D1310 Programmeringsteknik Tentamen (1p) lördag 29 april 2000 kl 14-17

2D1310 Programmeringsteknik Tentamen (1p) lördag 29 april 2000 kl 14-17 2D1310 Programmeringsteknik Tentamen (1p) lördag 29 april 2000 kl 14-17 Hjälpmedel: En Pascalbok. För betyget godkänd krävs att a- eller b-delen av varje fråga (uppgift 1-6) är rätt besvarad. Ett mindre

Läs mer

Variabler och konstanter

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

Datalogi, grundkurs 1. Lösningsförslag till tentamen

Datalogi, grundkurs 1. Lösningsförslag till tentamen Datalogi, grundkurs 1 Lösningsförslag till tentamen 6 maj 2000 1. För att proceduren sortera ska fungera som tänkt kan den se ut på följande sätt: const min = 1; max = 3; type tal = integer; index = min..max;

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

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. Strukturdiagram. Styra. Algoritmer. Val

732G Linköpings universitet 732G11. Johan Jernlås. Översikt. Repetition. Strukturdiagram. Styra. Algoritmer. Val 732G11 Linköpings universitet 2011-01-26 1 2 3 4 Program recept 1 spaghetti = 100; 2 salt = 1; 3 olja = 5; 4 köttbullar = 8; 5 ketchup = 0,5; 6 koka(salt, spaghetti); 7 micra(köttbullar); 8 Om(micron ==

Läs mer

Imperativ programmering. Föreläsning 2

Imperativ programmering. Föreläsning 2 Imperativ programmering 1DL126 3p Föreläsning 2 Imperativ programmering Kännetecken för imperativa språk: Programmet består av en serie instruktioner. Olika språk har olika uppsättningar av instruktioner.

Läs mer

Datatyp - mera. Begreppet värde, igen. Ett slags mått på en egenskap, eller något fenomen. Ska ges en bred tolkning!

Datatyp - mera. Begreppet värde, igen. Ett slags mått på en egenskap, eller något fenomen. Ska ges en bred tolkning! Begreppet värde, igen Ett slags mått på en egenskap, eller något fenomen. Ska ges en bred tolkning! Kan vara mycket enkla: födår, ögonfärg, styckepris,.. eller lite sammansatta: en vektor, ett personnamn,

Läs mer

Kontinuerliga listor. Fält (listor) Kontinuerliga listor... Kontinuerliga listor...

Kontinuerliga listor. Fält (listor) Kontinuerliga listor... Kontinuerliga listor... Fält (listor) Kontinuerliga listor En lista av värden 2 3 4 5 6 7 8 9... kan naturligtvis representeras av tal1, tal2, tal3,... men det finns då ingen möjlighet att välja element utan att explicit ange

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

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

Några saker till och lite om snabbare sortering

Några saker till och lite om snabbare sortering Några saker till och lite om snabbare sortering GOTO hemskt eller ett måste? CASE enkla val över diskreta värdemängder Snabb sortering principer Snabb sortering i Scheme och Pascal QuickSort (dela städat

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

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

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

Enkla datatyper minne

Enkla datatyper minne Enkla datatyper minne 143.56 sant Sonja A falskt 18 1999-10-29 Bertil Gralvik, KTH Ingenjörsskolan 1 Addera två tal Algoritmen Summera tal Mata in två tal Beräkna Skriv ut resultat Mata in tal 1 Mata in

Läs mer

Obligatorisk uppgift 5

Obligatorisk uppgift 5 (5 oktober 2018 Symbolisk kalkylator 1 ) Obligatorisk uppgift 5 En kalkylator som hanterar uttryck symboliskt dvs värden är uttryck inte bara tal. Uppgiften exemplifierar: objektorientering återanvändning

Läs mer

TENTAMEN TDDB53. Programmering i Ada för MI (provkod TEN2) den 7 april 2010 kl Institutionen för datavetenskap, IDA Olle Willén mars 2010

TENTAMEN TDDB53. Programmering i Ada för MI (provkod TEN2) den 7 april 2010 kl Institutionen för datavetenskap, IDA Olle Willén mars 2010 Linköpings universitet Institutionen för datavetenskap, IDA Olle Willén mars 2010 Tentamen TDDB53 TENTAMEN TDDB53 (provkod TEN2) den 7 april 2010 kl 8 12 Jour: Emil Nielsen, tel 070 499 89 88 Hjälpmedel:

Läs mer

GOTO och lägen. Några saker till och lite om snabbare sortering. GOTO och lägen (3) GOTO och lägen (2)

GOTO och lägen. Några saker till och lite om snabbare sortering. GOTO och lägen (3) GOTO och lägen (2) Några saker till och lite om snabbare sortering GOTO och lägen GOTO hemskt eller ett måste? CASE enkla val över diskreta värdemängder Snabb sortering principer Snabb sortering i Scheme och Pascal QuickSort

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

Parameteröverföring. Exempel. Exempel. Metodkropp

Parameteröverföring. Exempel. Exempel. Metodkropp Exempel atriangle.changesize (100, 50); // OK atriangle.changesize (100); // fel antal atriangle.changesize ( 1, 50); // fel datatyp char c = atriangle.getarea (); // fel datatyp Parameteröverföring I

Läs mer

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.

Idag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C. Idag Javas datatyper, arrayer, referenssemantik Klasser Arv, polymorfi, typregler, typkonvertering Strängar Tänker inte säga nåt om det som är likadant som i C. Objectorienterad programmering Sida 1 Ett

Läs mer

Minnestilldelning (allokering) och frigörande (avallokering) av minne

Minnestilldelning (allokering) och frigörande (avallokering) av minne Pekare i C++ Pekare används mycket i C++. De är bra både för att de tillåter dynamisk minnesallokering och för att de är referenser. En pekarvariabel innehåller en adress till ett element, den pekar på

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

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

1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet 1 Texthantering I detta avsnitt tas det upp två sätt att arbeta med text i C++ program. Det första sättet som behandlas är hanteringen av textfält. Texter i C++ består utav en serie med enstaka tecken

Läs mer

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer

Hej Då, Karel! Programmering. Vårt första Javaprogram. hh.se/db2004. Java. Grundtyper, variabler och arrayer Programmering hh.se/db2004 Föreläsning 3: Java. Grundtyper, variabler och arrayer Hej Då, Karel! Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Center for Research on Embedded

Läs mer

Datalogi, grundkurs 1. Lösningsförslag till tentamen

Datalogi, grundkurs 1. Lösningsförslag till tentamen Datalogi, grundkurs 1 Lösningsförslag till tentamen 10 december 2008 1. a. Man testar med typiska värden, gränsvärden och värden utanför specificerad indatavärdemängd. Helst med alla permutationer av

Läs mer

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

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

Föreläsning 5: Introduktion av pekare

Föreläsning 5: Introduktion av pekare Föreläsning 5: Introduktion av pekare Det bör påpekas att det som tas upp i introduktionen inte är reella exempel på kod. Man anväder inte pekare till att peka på enstaka heltal som i exemplen nedan, men

Läs mer

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander

F2 Datatyper och variabler. ID1004 Objektorienterad programmering Fredrik Kilander F2 Datatyper och variabler ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Datatyper Java är ett starkt typat språk Varje slags data har en datatyp Datatyp Javasyntax Exempel Teckensträng

Läs mer

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.

Programmering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning. Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java

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

Föreläsning 3: Booleans, if, switch

Föreläsning 3: Booleans, if, switch TDA 545: Objektorienterad programmering Föreläsning 3: Booleans, if, switch Magnus Myréen Chalmers, läsperiod 1, 2015-2016 Påminnelse om klasser och objekt Boll boll1 = new Boll(5,12); skapar ett nytt

Läs mer

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java

(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java (Man brukar säga att) Java är... Denna föreläsning Allmänt om Java Javas datatyper, arrayer, referenssemantik Klasser Strängar enkelt baserat på C/C++ objekt-orienterat från början dynamiskt utbyggbart

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

Uppgift 1 ( Betyg 3 uppgift )

Uppgift 1 ( Betyg 3 uppgift ) 2008-03-12.kl.14-19 Uppgift 1 ( Betyg 3 uppgift ) Du skall skriva ett program som läser igenom en textfil som heter FIL.TXT och skriver ut alla rader där det står ett decimaltal först på raden. Decimaltal

Läs mer

5 Grundläggande in- och utmatning

5 Grundläggande in- och utmatning 5 Grundläggande in- och utmatning För att användaren skall kunna kommunicera med programmet krävs att man inkluderar ett eller flera bibliotek med rutiner. I Ada finns det ett antal paket som gör detta

Läs mer

Övning från förra gången: readword

Övning från förra gången: readword (9 september 2010 T4.1 ) Övning från förra gången: readword /** readword.c * * int readword(char w[], int n) { * * Läser tecken tills en bokstav påträffas. * Läser och lagrar sedan högst n-1 bokstäver

Läs mer

2.4. Teckensträngar och logiska uttryck

2.4. Teckensträngar och logiska uttryck 2.4. Teckensträngar och logiska uttryck I Fortran sparar man text i variabler av typen CHARACTER. För varje tecken reserveras normalt 1 byte i minnet. För att deklarera en teckenvariabel TEXT och samtidigt

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

Repetition i Pascal. Exemplen fac. Exemplen fac i Pascal. Exemplen fac motivering. Orginalet

Repetition i Pascal. Exemplen fac. Exemplen fac i Pascal. Exemplen fac motivering. Orginalet Repetition Introduktion Repetition i Exemplen fac Orginalet I Scheme använde vi rekursion för all slags repetition. Efterom Scheme är ett funktionellt språk återsänder alla språkkonstruktioner ett värde

Läs mer

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud. Analog Digitalitet Kontinuerlig Direkt proportionerlig mot källan Ex. sprittermometer Elektrisk signal som representerar ljud Diskret Digital Representation som siffror/symboler Ex. CD-skiva Varje siffra

Läs mer

Introduktion till programmering SMD180. Föreläsning 4: Villkor och rekursion

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

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

DD1314 Programmeringsteknik

DD1314 Programmeringsteknik Skolan för Datavetenskap och kommunikation DD1314 Programmeringsteknik Föreläsning 1 o print o variabler o reserverade ord o input o kommentarer o beräkningar o datatyper o if-satser Kursinformation Programmering:

Läs mer

Övningsuppgifter kapitel 8

Övningsuppgifter kapitel 8 Inst. för Systemteknik Introduktion till programmering (SMD 180), 5 p Övningsuppgifter kapitel 8 1. Listor är en viktig datatyp i Python. Hur definierar kursboken lista? Vad kallas de värden som tillsammans

Läs mer

729G04 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 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 mer

6.1 Kompilering och lite grundläggande information

6.1 Kompilering och lite grundläggande information 6 Förhoppningsvis ska de C-konstruktioner som gås igenom här tillsammans med de exempelprogram som ges här och i andra delar av lab-pm vara tillräckliga för att ni ska kunna klara av laborationerna. Syftet

Läs mer

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser

Programstruktur och terminologi. Programmet producerar följande utskrift i terminalfönstret: Ett Javaprogram består av en eller flera klasser // En första version av BankKonto-klassen class BankKonto { private String namn; private long nr; private double saldo; private double ränta; // Klassen TestaBankKonto // Klassens uppgift är att skapa

Läs mer

Programmeringsteknik med C och Matlab

Programmeringsteknik med C och Matlab Programmeringsteknik med C och Matlab Kapitel 6: Filhantering Henrik Björklund Umeå universitet 13 oktober 2009 Björklund (UmU) Programmeringsteknik 13 oktober 2009 1 / 22 Textfiler Filer är sekvenser

Läs mer

Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad

Föreläsningsanteckningar, Introduktion till datavetenskap HT S4 Datastrukturer. Tobias Wrigstad 1 Datatyper Tobias Wrigstad Det finns flera olika typer av (slags) data Olika datatyper har olika egenskaper. T.ex. är ett personnummer inte ett tal. (Den sista siffran skall stämma enligt den s.k. Luhnalgoritmen

Läs mer

DD1310/DD1314/DA3009 Programmeringsteknik LÄRANDEMÅL... Vilka läser kursen? ...FLER LÄRANDEMÅL. Föreläsning 1

DD1310/DD1314/DA3009 Programmeringsteknik LÄRANDEMÅL... Vilka läser kursen? ...FLER LÄRANDEMÅL. Föreläsning 1 Skolan för Datavetenskap och kommunikation DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 1 Kursinfo Python-intro: print variabler reserverade ord input kommentarer beräkningar datatyper if-satser

Läs mer

KOMPLETTERANDE HEMTENTAMEN TDDB53

KOMPLETTERANDE HEMTENTAMEN TDDB53 Linköpings universitet Institutionen för datavetenskap, IDA Olle Willén februari 2009 Tentamen TDDB53 KOMPLETTERANDE HEMTENTAMEN TDDB53 Programmering i Ada för MI (MI-ADA) i februari 2009 Tentan lämnas

Läs mer

TDDC77 Objektorienterad Programmering

TDDC77 Objektorienterad Programmering TDDC77 Objektorienterad Programmering Föreläsning 3 Sahand Sadjadee IDA, Linköpings Universitet Hösttermin 2018 Outline Operatorer Java Standard Library Inmatning Operatorer operatorer En operator är en

Läs mer

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

Inledande programmering med C# (1DV402) 27+15=42 1 (22) 27+15=42 1 (22) Variabler Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll

Läs mer

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar

Föreläsning 3: Typomvandling, villkor och val, samt textsträngar Föreläsning 3: Typomvandling, villkor och val, samt textsträngar Camilla Kirkegaard camilla.kirkegaard@liu.se Linköpings universitet Sweden October 14, 2013 1 Innehåll n n n n n Repetition Typomvandlingar

Läs mer

Twincat: PLC Control

Twincat: PLC Control Dokument Förklaring Dat. Revision KI-221-003-003 Kom igång med trukturerad Text 080402 1.0 Twincat: PLC Control Kom igång med Strukturerad Text (ST) programmering 1. Kod exempel. a. Exemplen som demonstreras

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

Nå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. 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 mer

Datalogi, grundkurs 1 Övningsuppgifter i Pascal. Serafim Dahl, Carina Edlund, Kjell Lindqvist m.fl.

Datalogi, grundkurs 1 Övningsuppgifter i Pascal. Serafim Dahl, Carina Edlund, Kjell Lindqvist m.fl. Datalogi, grundkurs 1 Övningsuppgifter i Pascal Serafim Dahl, Carina Edlund, Kjell Lindqvist m.fl. Hösten 2010 Datalogi, grundkurs 1, hösten 2009 1 1. Skriv en funktion som återsänder ett heltal som läses

Läs mer

Typkonvertering. Java versus C

Typkonvertering. Java versus C Typer Objektorienterad programmering E Typkonvertering Typkonvertering Satser: while, for, if Objekt Föreläsning 2 Implicit konvertering Antag att vi i ett program deklarerat int n=3; double x = 5.2; Då

Läs mer

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

Objektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner

Läs mer

1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler

1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler 1 Datorn som miniräknare I detta avsnitt tas upp hur man kan skriva program som utför enkla räkneoperationer och skriver resultat på skärmen. Syftet är i huvudsak att se hur flera satser kan bygga upp

Läs mer

Platser för att skriva och testa kod online. Workshop om programmering i matematikkurser, version 0.7 senast sparat

Platser för att skriva och testa kod online. Workshop om programmering i matematikkurser, version 0.7 senast sparat Cheat sheets Nedan finns referensblad för fyra olika programmeringsspråk, som kan bli aktuella att använda i matematikundervisning. MATLAB är en välkänd programvara för att göra matematiska beräkningar,

Läs mer

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python. är, som Scheme, ett interpreterat språk men det finns kompilatorer för. När man interpreterar ett språk tillhandahåller man en interpretator som läser sats för sats och försöker tolka den. När man kompilerar

Läs mer

Sista delen av kursen

Sista delen av kursen Sista delen av kursen handlar om hur program, delprogram och datatyper deklareras och vad det man åstadkommit egentligen betyder. Innehåll Syntaktisk (hur ser det ut) och semantisk (vad betyder det) beskrivning

Läs mer

Programspråkslingvistik. Sista delen av kursen. Ett programspråk

Programspråkslingvistik. Sista delen av kursen. Ett programspråk Sista delen av kursen Programspråkslingvistik handlar om hur program, delprogram och datatyper deklareras och vad det man åstadkommit egentligen betyder. Innehåll Syntaktisk (hur ser det ut) och semantisk

Läs mer

Introduktion till MATLAB, med utgångspunkt från Ada

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

C++ - En introduktion

C++ - En introduktion C++ - En introduktion De imperativa grunderna för dig som kan programmera Eric Elfving Institutionen för datavetenskap 1 / 72 Översikt 1 Grunderna 2 Uttryck och satser 3 Funktioner 4 Poster 1 Grunderna

Läs mer

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python.

Python. Python är, som Scheme, ett interpreterat språk men det finns kompilatorer för Python. är, som Scheme, ett interpreterat språk men det finns kompilatorer för. När man interpreterar ett språk tillhandahåller man en interpretator som läser sats för sats och försöker tolka den. När man kompilerar

Läs mer

1/15/2013. DD1310/DD1314/DA3009 Programmeringsteknik. Lärandemål... Vilka läser kursen? ...fler lärandemål VARFÖR? Föreläsning 1

1/15/2013. DD1310/DD1314/DA3009 Programmeringsteknik. Lärandemål... Vilka läser kursen? ...fler lärandemål VARFÖR? Föreläsning 1 Skolan för Datavetenskap och kommunikation DD1310/DD1314/DA3009 Programmeringsteknik Föreläsning 1 Kursinfo Diagnostiskt prov Python-intro: print variabler reserverade ord input kommentarer beräkningar

Läs mer

Inlämningsuppgift MiniPlotter

Inlämningsuppgift MiniPlotter LUNDS TEKNISKA HÖGSKOLA Institutionen för datavetenskap EDAA01 Programmeringsteknik fördjupningskurs Inlämningsuppgift MiniPlotter I den här uppgiften ska ett program som ritar grafer av matematiska funktioner

Läs mer

Övning2. Variabler. Data typer

Övning2. Variabler. Data typer Vahid 28 okt 2002 prgk02 Övning2 -Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =, ,!=,!) -String hur man

Läs mer

Föreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod

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

Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser

Introduktion till programmering SMD180. Föreläsning 2: Variabler, uttryck och satser Introduktion till programmering Föreläsning 2: Variabler, uttryck och satser 1 1 Värden De grundläggande saker som en dator manipulerar resultaten av beräkningar kallas värden Värden vi stött på: 2 och

Läs mer

Funktioner, Procedurer och Parametrar. Funktioner, Procedurer och Parametrar... Funktioner, Procedurer och Parametrar procedurspecifikation

Funktioner, Procedurer och Parametrar. Funktioner, Procedurer och Parametrar... Funktioner, Procedurer och Parametrar procedurspecifikation Funktioner, Procedurer och Parametrar I delar vi upp underprogram i två grupper : Funktioner: lämnar alltid ett värde som resultat Funktionsnamnet får ett värde i funktionen genom: funktionsnamn := expr;

Läs 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 för ingenjörer, VT06 2 Repetition Repetition -

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

Introduktion till MATLAB

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

Deklarationer/definitioner/specifikationer

Deklarationer/definitioner/specifikationer Deklarationer/definitioner/specifikationer Konstantdefinitioner innebär att ett namn binds och sätts att referera till ett värde som beräknas vid kompileringen/interpreteringen och som under programmets

Läs mer

Obligatorisk uppgift: Numerisk kalkylator

Obligatorisk uppgift: Numerisk kalkylator Informationsteknologi Tom Smedsaas 22 augusti 2018 Obligatorisk uppgift: Numerisk kalkylator Programmet skall läsa in aritmetiska uttryck samt beräkna och skriva ut deras värden. Programmet ska läsa från

Läs mer

Föreläsning 3-4 Innehåll

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

Programmering A. Johan Eliasson johane@cs.umu.se

Programmering A. Johan Eliasson johane@cs.umu.se Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer

Läs mer

Objektorienterad Programmering (TDDC77)

Objektorienterad Programmering (TDDC77) Objektorienterad Programmering (TDDC77) Föreläsning II: utmatning, variabler, typer Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2016 Kompilera och köra programmet under terminal 2: I Skapa Hej.java

Läs mer