INTRODUKTION TILL PROGRAMMERING Frelsning 2 14 11 2005
- Slides: 16
INTRODUKTION TILL PROGRAMMERING Föreläsning 2 (14. 11. 2005) INNEHÅLL: -Variabler och datatyper -Tilldelning av variabler -Aritmetiska uttryck -Matematiska standardfunktioner -Utmatning av variabelvärden -Inmatning av data från tangentbordet Jonny Karlsson 14. 10. 2005
Variabler Vad är en variabel? Ett utrymme i datorns arbetsminne som används av ett program under programmets exekvering. Det data som lagras i en variabel kallas för variabelns värde Varje variabel som används i C har ett unikt namn. Jonny Karlsson 14. 10. 2005
Datatyper Varje variabel i C skall vara av en viss datatyp. Nedan en lista på vanliga datatyper i C: Datatyp Beskrivnig Utrymme i minnet Värden int heltal/integer 4 byte -231 till 231 -1 float decimaltal/flyttal 4 byte -231 till 231 -1 double decimaltal/flyttal 8 byte -263 till 263 -1 long double decimaltal/flyttal 12 byte -295 till 295 -1 1 byte ett ASCII tecken char tecken Jonny Karlsson 14. 10. 2005
Variabeldeklarationer För att kunna använda variabler i C-koden måste man först reservera en plats i minnet för variabeln och ge den ett unikt namn. Detta kallas för en variabeldeklaration. Exempel: Deklarera ett heltal och ge detta namnet ”mitt. Tal”: int mitt. Tal; /* Detta reserverar en plats i minnet (4 byte) för variabeln ”mitt. Tal” */ /* som är av typen integer/heltal */ Variabeldeklarationer placeras i början av huvudfunktionen (main) före utförandet av övriga operationer. Jonny Karlsson 14. 10. 2005
Variabeldeklarationer. . . main() { int heltal; /* deklarerar ett heltal */ float flyttal; /* deklarerar ett flyttal/decimaltal */ char tecken; /* deklarerar ett tecken */. . . . } Jonny Karlsson 14. 10. 2005
Tilldelningssatser I en tilldelningssats ger man ett värde åt en variabel. En tilldelningssats på en variabel kan utföras först efter att variabeln är deklarerad, ex: float flyttal; flyttal = 5. 5; /* deklarerar en flyttalsvariabel */ /* tilldelar flyttalsvariabeln ”flyttal” värdet 5. 5 */ OBS! i C använder man ”. ” för kommatecken, inte ”, ”. En tilldelning kan även utföras i samband med variabeldeklarationen. Detta kallas för att initialisera en variabel, ex: int heltal = 5. 5; /* deklarerar en flyttalsvariabel och initialiserar den till */ /* 0 /* Jonny Karlsson 14. 10. 2005
Aritmetiska uttryck Med aritmetiska uttryck menas uttryck som har operander av aritmetisk typ och som ger ett resultat av aritmetisk typ. Exempel på operander är: + * / addition subtraktion mutiplikation division Exempel på aritmetiska uttryck: int heltal. A = 2; int heltal. B = 3; /* deklarerar ett heltal som initialiseras till 2 */ /* deklarerar ett heltal som initialiseras till 4 */ heltal. A + heltal. B /* utför ett aritmetiskt uttryck/aritmetisk operation */ /* som beräknar summan av värdena i heltal. A och heltal. B */ Jonny Karlsson 14. 10. 2005
Aritmetiska uttryck Operatorprioriteten är lika som i matematiken, dvs. * / % har högre prioritet än + Detta betyder att om man vill utföra t. ex. addition före multiplikation måste man använda parenteser. Exempel: (heltal. A + heltal. B) * (heltal. A – heltal. B) /* beräknar summan av heltal. A och */ /* heltal. B multiplicerat med */ /* subtratktionen av heltal. A */ /* och heltal. B */ Resultatet av ett aritmetiskt uttryck kan användas för att tilldela en operator. Exempel: int tal = heltal. A – heltal. B; Jonny Karlsson 14. 10. 2005
Sammansatta tilldelningsoperationer Exempel: int tal = 0; tal = tal + 5; /* deklarerar ett heltal som initialiseras till 0 */ /* ökar värdet i variabeln tal med 5 */ Ovanstående exempel kan också skrivas om på följande sätt: int tal = 0; tal += 5; Jonny Karlsson 14. 10. 2005
Matematiska standardfunktioner kan användas i aritmetiska uttryck för att utföra matematiska beräkningar. Inkluderingsfilen math. h innehåller bl. a. följande matematiska standardfunktioner: sin(x) cos(x) tan(x) sqrt(x) pow(x, y) Beräknar sinusvärdet av variabeln x som är ett flyttal angett i radianer Beräknar cosinusvärdet av variabeln x som är ett flyttal angett i radianer Beräknar tangenten av variableln x som. . . Beräknar kvadratroten av variabeln x Beräknar variabeln x upphöjt i variabeln y För mera information om funktionerna i math. h se t. ex: http: //www. cs. cf. ac. uk/Dave/C/node 17. html Jonny Karlsson 14. 10. 2005
Matematiska standardfunktioner Exempel på användning av matematiska standardfunktioner: #include <stdio. h> #include <math. h> main() { int heltal. A = 4; int heltal. B = 2; double resultat = 0; resultat = pow(heltal. A, heltal. B); /* beräknar heltal. A upphöjt i heltal. B och */ /* resultat tilldelas variabeln resultat */ } Jonny Karlsson 14. 10. 2005
Utmatning av variabelvärden Datavärden som finns lagrade i olika variabler kan skrivas ut på bildskärmen bl. a. med funktionen printf-funktionen kan användas i två olika former: printf(”teckensträng”) skriver ut den teckensträng som finns mellan ”” på bildskärmen eller printf(”formatsträng”, uttryck 1, uttryck 2, . . . , uttryck. N); där formatsträng = Vilka/vilken datatyper/datatyp som kommer att visas på skärmen och i vilken ordning Utrryck Den variabel vars värde skall visas på skärmen. Uttrycken sätts i samma ordning som formatsträngen. = Jonny Karlsson 14. 10. 2005
Utmatning av variabelvärden I formatsträngen kan man bl. a. använda följande betäckningar för att ange vilken datatyp som skall skrivas ut på bildskärmen: %d %f heltal (int) flyttal (float) Exempel: int heltal = 3; float flyttal = 5. 56; printf(”Heltalet är: %d och flyttalet är: %f”, heltal, flyttal); Kodexemplet ovan skulle resultera i följande skärmutskrift: Heltalet är: 3 och flyttalet är: 5. 56 Jonny Karlsson 14. 10. 2005
Inmatning av data Funktionen scanf kan användas föra att läsa in data som skrivs från tangentbordet och spara det inlästa datat i en variabel. Denna funktion finns, liksom printf, i inkluderingsfilen stdio. h. Funktionen scanf används enligt följande: scanf(”formatsträng”, &variabel 1, &variabel 2, . . &variabel. N); formatsträng = Vilka/vilken datatyper/datatyp som skall läsas in från tangentbordet och i vilken ordning variabel = Den variabeln dit man vill spara det data som lästs in från tangentbordet. Vid inläsning av flera datavärden med samma scanfsats anges variablerna i den ordning man vill läsa in dem från tangentbordet och i samma ordning som de angetts i formatsträngen. OBS! vid inläsning av tal bör tecknet ’&’ alltid sättas framför variabelnamnet i scanfsatsen. Tecknet ’&’ betyder här att man läser in till minnesadressen för angiven variabel. Jonny Karlsson 14. 10. 2005
Inmatning av data Exempel: int heltal; float flyttal; scanf(”%d”, &heltal); /*läser in ett heltal från tangentbordet och*/ /*sparar detta heltalsvärde i heltalsvariabeln tal*/ scanf(”%f”, &flyttal); /*läser in ett flyttal från tangentbordet och */ /*sparar detta flyttalsvärde i variabeln flyttal*/ Exemplet ovan kan skrivas om på följande sätt: int tal; float flyttal; scanf(”%d %f”, &heltal, &flyttal); /*läser frånt tangentbordet först ett heltal, sedan ett flyttal och dessa värden */ /* lagras i variabeln tal och i variabeln flyttal*/ Jonny Karlsson 14. 10. 2005
Inmatning av data scanf-satsen läser in data från tangentbordet ända tills man trycker på ”enter” tangenten eller ”space” tangenten. Exempel: Om man kör ett program som innehåller följande kodrad: scanf(”%d %f”, &heltal, &flyttal); och trycker på följande tangeter på tangentbordet: 4 4 5 <space> 4. 5 <enter> tilldelas variabeln ’heltal’ heltalet 445 och varabeln ’flyttal’ flyttalet 4. 5 Jonny Karlsson 14. 10. 2005
- Introduktion till vetenskapsteorin
- God be with you until we meet again
- Introduktion til den finansielle sektor i danmark
- Introduktion til offentlig servicetrafik
- Cassifier
- Frelsning
- Strukturell dissociation
- Funktionel programmering
- Processtillstånd
- Andengradsfunktioner
- Keuzedeel internationaal 1
- Rekursion programmering
- Kvadratisk programmering opgave
- Lineær programmering minimering
- Strukturerad programmering med c++
- Opgave om lineær programmering
- Sekvens programmering