F2 1 Programmeringsteknik, 4p vt-00 Kommentarer Allt mellan /* och */ Varje kommentar byts ut mot en blank av kompilatorn /* Exempel på uttryck, tilldelningsoperatorn.

Slides:



Advertisements
Liknande presentationer
INTRODUKTION TILL PROGRAMMERING
Advertisements

void hittaMax(int tal[], int antal, int *pmax) { int i; ??=tal[0]; for(i=1;i??) ??=tal[i]; } int main() { int v[]={1,2,3,4,2}; int.
Anders Sjögren Lagringsklasser •en variabel i C har två attribut –type( int, float, char..... ) –lagringsklass( auto, extern, register, static ) •lagringsklassens.
Introduktion till C för enchipsdatorer
Funktioner och programorganisation
Föreläsning 3 Repetition Operatorer Styrstrukturer Deklaration och anrop av metoder.
De fundamentala datatyperna
Operatorer.
#include void fun(char s[]) { int i=-1; while(s[++i]!=0) { if('a'
Arrays Indicerade variabler.
Föreläsning 2. Operatorer Tilldelning Kodblock { } if – satsen Logiska uttryck Att programmera.
Om Java C =>Java syntax variabler metoder färdiga klasser
Välkommen Vahid Mosavat
Grundläggande programmering
Föreläsning 2 Primitiva datatyper Variabler och konstanter Tilldelning Inläsning Operatorer Villkorssatsen if Slingor: while och for.
INTRODUKTION TILL PROGRAMMERING
Anders Sjögren Selektion i C ”vägval” if och switch - satserna.
Programmering B PHP Lektion 3
Föreläsning 11 Arrayer.
Sid period2CD5250 OOP med C++ Mats Medin MDH/IDT C++ - förbättrat C?  Procedurellt program ser ut som C: sekvens, selektion, iteration  /* kommentar.
Programmering i C# 3. Klasser.
Pekare och speciell programstruktur i inbyggda system
Ali Ghodsi Variabler En variabel är en sorts behållare som man kan placera data i Man måste ange typ och namn för alla variabler.
Pointers. int a=5; int f(int b) { a--; b++; return b; } int main() { int a=3; printf("%d,",f(a)); printf("%d",a); return 0; }
Programmering B PHP Lektion 2
Föreläsning 2 Kort Översikt Över Javaspråket. Källkodsformat Unicode används åäöμψζ tillåtna Inte alla miljöer klarar av det Källkod Bytekod Java VM för.
Deklarera en struct som kan användas för att representera en rät linje Använd den I main för att deklarera en variabel som du initierar så att den representerar.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 4 ( ) INNEHÅLL: -Logiska opertorer -Poster.
Programspråk Två olika typer av program omvandlar högnivå till lågnivå program: Interpreterande program och kompilerande program. Python är ett interpreterande.
Anders Sjögren Mer om datatyper. Anders Sjögren const det finns ett elegantare sätt att skapa konstanter i C än sättet med makro som vi använt tidigare.
Arrayer och strängar Arrayer Strängar operatorer typkonvertering.
Modulär programutveckling
1 Föreläsning 6 Programmeringsteknik och Matlab 2D1312/2D1305 Metoder & parametrar Array API och klassen ArrayList.
Objektorienterad Programmering i C++ I
Föreläsning 1 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
Anders Sjögren ANSI - standard ?. Anders Sjögren ANSI - standard ? Om man skriver ett bra C-program och kompilerar fram ”exe”-filen så vore det ju trevligt.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 2 ( ) INNEHÅLL: -Variabler och datatyper -Tilldelning av variabler -Aritmetiska.
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 3 ( ) INNEHÅLL: -Tabeller -Villkorssatser -Repetitionssatser.
F4 - Funktioner & parametrar 1 Programmeringsteknik, 4p vt-00 Modularisering ”svarta lådor” Väl definierade arbetsuppgifter Enklare validering Enklare.
William Sandqvist C-programmering ID120V Stack och Kö William Sandqvist
15 September, Lexikala element mm Eftersom C är ett språk, har det ett alfabet och regler för hur bokstäverna kan bilda ord och hur olika strukturella.
Anders Sjögren Selektion i C ”vägval” if och switch - satserna.
Föreläsning 4 programmeringsteknik och Matlab 2D1312/ 2D1305
Föreläsning 1 Om kursen Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
INTRODUKTION TILL PROGRAMMERING
Jonny Karlsson INTRODUKTION TILL PROGRAMMERING Föreläsning 5 ( ) INNEHÅLL: -Repetitionssatser: do-satsen och for-satsen -Operatorer:
F6 - Pekare 1 Programmeringsteknik, 4p vt-00 Pekare & adresser Alla variabler är knutna till en viss adress i minnet int i; adressen till denna fås med.
F5 - Fält & strängar 1 Programmeringsteknik, 4p vt-00 Fält Många element av samma typ Typexempel : lista av heltal Gemensamt namn Individuella värden nås.
Anders Sjögren Deklarationsområde och funktioner.
Föreläsning 17 Repetition. Källkodsformat Unicode används åäöμψζ tillåtna i namn på identifierare Inte alla miljöer klarar av det Källkod Bytekod Java.
Övning2 programmeringsteknik och Matlab 2D1312/ 2D1305
© Anders Broberg, Ulrika Hägglund, Lena Kallin Westin, 2003 Datastrukturer och algoritmer Gruppövning 0.
Kronljusströmställaren 0, 1, 2, 3
Föreläsning 7 programmeringsteknik och Matlab 2D1312/2D1305 Metoddeklaration och parametrar Arrayer och ArrayList.
-Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =,,!=, !) -String.
Mer om operatorer logiska operatorer bit-operatorer adress-operatorn ”komma”-operatorn punkt - operatorn.
1 Föreläsning 2 Reserverade ord Javas API Identifierare Litteraler Variabler Kompilering och interpretering.
-Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =,,!=, !) -String.
OOP&M - teori1 OOP&M – Föreläsning 5 kap 8-13 Operatorer,typkonvertering, booleska operatorer, if och else.
OOP&M - teori1 OOP– Föreläsning vecka Genomgång uppgifter Arbetsmetoder Repetition Kapitel 14 Metoder.
Föreläsning4 Repetition slingor Metoder. while-sats består av följande delar: 1. while 2. Villkor-sats (condition) 3. uttryck (statement) while-sats int.
Anders Sjögren Mer om datatyper. Anders Sjögren const det finns ett elegantare sätt att skapa konstanter i C än sättet med makro som vi använt tidigare.
OOP&M - teori1 OOP – Föreläsning 7 (Sista oop I) Konstruktioner för att hantera upprepningar Kapitel 11.
Överlagring av operatorer, friends, user-defined conversions, klassmallar sid. 1 6/29/2015 CD5250 OOP med C++ Mats Medin MDH/IDT Överlagring av operatorer.
Anders Sjögren Operatorer. Anders Sjögren Operand(er)
Föreläsning 3 Väsentliga delar i ett Javaprogram Input i paketet extra
Anders Sjögren Minnen, variabler, att lagra i primärminnet forts. Den här bilden känner ni igen sedan tidigare. Vi skall fortsätta att prata variabeltyper.
Anders Sjögren Programmering i ANSI-C Ett första program för att se vart vi ska...
Mer om operatorer logiska operatorer bit-operatorer adress-operatorn ”komma”-operatorn punkt - operatorn.
Anders Sjögren Funktioner något in och något annat ut.
Presentationens avskrift:

F2 1 Programmeringsteknik, 4p vt-00 Kommentarer Allt mellan /* och */ Varje kommentar byts ut mot en blank av kompilatorn /* Exempel på uttryck, tilldelningsoperatorn och kommentarer*/ #include int main(void) { int x,y; x = 7; /* x får värdet 7 */ y = 3; /* y får värdet 3 */ x = 2*y; /* x får värdet 6 */ y = 5; /* y får värdet 5, x påverkas ej */... }

F2 2 Programmeringsteknik, 4p vt-00 Identifierare Får innehålla siffror, bokstäver (A..Z, a..z) och _ Måste inledas med bokstav (A..Z, a..z) eller _ Antalet särskiljande tecken varierar, i ANSI-C minst de 31 första Identifierare som inleds med _ används i stort sett uteslutande för systemprogramändamål Nyckelorden reserverade identifierare som ej kan omdefinieras.

F2 3 Programmeringsteknik, 4p vt-00 Strängkonstanter Omges av dubbelsnuttar ”hejsan” ’a’ ≠ ”a”

F2 4 Programmeringsteknik, 4p vt-00 Operatorer & skiljetecken Aritmetiska operatorer (% resten vid heltalsdivision) % kontextberoende int a=0;b=7; printf(”a=%i och b=%i”,a,b); a = b%3; Operatorer, skiljetecken och blanktecken separerar element i språket

F2 5 Programmeringsteknik, 4p vt-00 Prioritetsordning I vilken ordning ett uttryck evalueras Parenteser bryter denna ordning Associativiteten avgör ordningen vid lika prioritet

F2 6 Programmeringsteknik, 4p vt & -- Unära operatorer för att öka resp. minska med ett Både post- och prefix (ex. sid 85) Bör användas mycket försiktigt!

F2 7 Programmeringsteknik, 4p vt-00 Tilldelningsoperatorn Lägst prioritet Associerar höger-vänster Variabel på vänster sida Uttryck på höger sida (Obs! typerna)

F2 8 Programmeringsteknik, 4p vt-00 #include alla rader som inleds med # är direktiv till preprocessorn include fungerar som ”klistra in”/paste i ett ordbehandlingsprogram Primära syftet är att tillhandahålla funktionsprototyper i t.ex. stdio.h finns bl.a. följande prototyper : extern int printf (const char *format,...); extern int scanf (const char *format,...); Koden för dessa funktioner är redan kompilerad och läggs till i ett senare skede

F2 9 Programmeringsteknik, 4p vt-00 Datatyper Värdemängd [-128,…,127] (konstanter) Operationer [+,- *,/,%….] Relationer [,<=,….] Egenskaper [udda,jämna]

F2 10 Programmeringsteknik, 4p vt-00 Datatyper Minnet uppbyggt av bytes (8 informationsbitar) Varje byte finns i en minnesadress I en byte lagras ett bitmönster Hur skall ett bitmönster tolkas? Positivt binärt tal (0..255) Binärt tal med tecken ( )

F2 11 Programmeringsteknik, 4p vt-00 Datatyper i C

F2 12 Programmeringsteknik, 4p vt-00 forts. datatyper

F2 13 Programmeringsteknik, 4p vt-00 Mer än en byte unsigned måste anges, men signed är automatisk Flyttal –float –double –long double Tecken –Char

F2 14 Programmeringsteknik, 4p vt-00 Tecken & typen char Alla uppräkningsbara typer (integral type) är heltal Alla sådana kan anv. för att representera tecken ’4’, ’.’, ’ä’… En variabel av typen char kan lagra ett litet heltal (1 byte - men längden odef. I C) Oftast 8 bitar ->256 distinkta värden ASCII - numrering av teckenuppsättningen (app. D s.703)

F2 15 Programmeringsteknik, 4p vt & typen char Variabler av typen char, kan delta i aritmetiska ber. char c; c = ’5’; printf(”%i %i %i”,c,c+1,c+2); I utskrifter kan man välja format, och få antingen ASCII- värdet eller tecknet

F2 16 Programmeringsteknik, 4p vt-00 exempel /* * testar fenomenet med tecken som heltal */ #include int main(void) { unsigned char c = 'z'; /* med unsigned fungerar det!! */ printf(”I ASCII-tabellen ? z -> %c %c %c \n\n",c+1,c+2,c+3); c = ’å’; printf("ord('å')=%u ",c); c = ’ä’; printf("ord(’ä')=%u ",c); c = ’ö’; printf("ord(’ö')=%u ",c); return 0; } På min Mac!

F2 17 Programmeringsteknik, 4p vt-00 Heltal & flyttal int är den ”normala” heltalstypen (char, short, long, unsigned) Suffix används för att ange heltalstypen för en konstant (u,l,ul) Flyttalstyperna: float, double, long double (double default för konstanter)

F2 18 Programmeringsteknik, 4p vt-00 Representation av flyttal Normaliserat Signifikanta siffror Exponentdel

F2 19 Programmeringsteknik, 4p vt-00 Operatorn sizeof För att ta reda på hur många bytes som reserverats för ett objekt –typer –variabler –uttryck Garanterat att char ≤ short ≤ int ≤ long float ≤ double ≤ long double

F2 20 Programmeringsteknik, 4p vt-00 getchar & putchar Används för att läsa resp. skriva ett tecken i taget EOF definieras i stdio se ex. s.124

F2 21 Programmeringsteknik, 4p vt-00 Matematiska funktioner Finns i bibliotek Inkluderas med #include math.h Argumentet & resultatet av typen double int abs(int) (i stdlib.h) double fabs(double) (i math.h)

F2 22 Programmeringsteknik, 4p vt-00 Typkonvertering Flera slag av implicit konv. i uttryck cast - explicit konvertering (typ) Obs! cast operatorn är unär och har samma prioritet som övriga unära op.