Administrivia Programmering Grunderna i C Kortspel. Programmering. Sommarkurs Verónica Gaspes.
|
|
- Emilia Eklund
- för 8 år sedan
- Visningar:
Transkript
1 Programmering Sommarkurs Verónica Gaspes IDE-sektionen Juni 12
2 Utkast 1 Administrivia 2 Programmering 3 Grunderna i C 4 Kortspel
3 Kurs resurser Lärare Verónica Gaspes ansvarig för kursmaterial, examination och föreläsningar. Anders Åhlander handledning under övningar och laborationer Program Ett operativ system. En webbrowser. En ANSI-C kompilator. En texteditor. Finns många av alla, vi tillhandahåller några, ni kan använda andra!
4 Moment Föreläsningar Går 2 ggr i veckan och presenterar material som kan vara till hjälp för att lösa övningsuppgifter och laborationer. De kan även hjälpa att ta till sig litteratur. Inte obligatorisk närvaro Övningar Går 2 ggr i veckan, alla exempel som tas i föreläsningar med variationer finns för att ni skall kunna experimentera med de. Handledning finns för att ni inte skall fastna utan att kunna gå vidare. Inte obligatorisk men rekommenderat!
5 Moment Laborationer Mer av problemlösning karaktär. Handledning finns för att ni inte skall fastna. Kräver mer tid än det som är under handledning. Obligatorisk inlämning i grupper av 2. Så: bilda grupper idag! Jag samlar namn på ett papper! Tentamen En skriftlig tentamen av praktisk karaktär (programmeringsuppgifter) Obligatorisk!
6 Kursbok Det finns böker on line och böker på biblioteket. Ni skall söka under Programmering (Pubb, Pubbz) där ni skall leta efter böker om programmering med C. Finns både på svenska och engelska. Det finns också mycket material på nätet i form av kursanteckningar, tutorials, programbibliotek. Lite av det finns under kursens hemsidans länkar.
7 Vad är program? If art interprets our dreams, the computer executes them in the guise of programs! Alan J. Perlis Vi använder datorn genom att exekvera köra program De olika program får datorn att bete sig som olika maskiner! Program måste laddas till datorns minne för att köras. Även detta görs av ett program: operativ systemet Efterssom datorn förstår inte mycket mer en nollor och ettor har man försett datorn med program som kan översätta något som vi kan förstå till något som datorn kan förstå. Dessa översättare kallas för kompilatorer.
8 Vad är program? If art interprets our dreams, the computer executes them in the guise of programs! Alan J. Perlis Vi använder datorn genom att exekvera köra program De olika program får datorn att bete sig som olika maskiner! Program måste laddas till datorns minne för att köras. Även detta görs av ett program: operativ systemet Efterssom datorn förstår inte mycket mer en nollor och ettor har man försett datorn med program som kan översätta något som vi kan förstå till något som datorn kan förstå. Dessa översättare kallas för kompilatorer.
9 Vad är program? If art interprets our dreams, the computer executes them in the guise of programs! Alan J. Perlis Vi använder datorn genom att exekvera köra program De olika program får datorn att bete sig som olika maskiner! Program måste laddas till datorns minne för att köras. Även detta görs av ett program: operativ systemet Efterssom datorn förstår inte mycket mer en nollor och ettor har man försett datorn med program som kan översätta något som vi kan förstå till något som datorn kan förstå. Dessa översättare kallas för kompilatorer.
10 Vad är program? If art interprets our dreams, the computer executes them in the guise of programs! Alan J. Perlis Vi använder datorn genom att exekvera köra program De olika program får datorn att bete sig som olika maskiner! Program måste laddas till datorns minne för att köras. Även detta görs av ett program: operativ systemet Efterssom datorn förstår inte mycket mer en nollor och ettor har man försett datorn med program som kan översätta något som vi kan förstå till något som datorn kan förstå. Dessa översättare kallas för kompilatorer.
11 Vad är program? If art interprets our dreams, the computer executes them in the guise of programs! Alan J. Perlis Vi använder datorn genom att exekvera köra program De olika program får datorn att bete sig som olika maskiner! Program måste laddas till datorns minne för att köras. Även detta görs av ett program: operativ systemet Efterssom datorn förstår inte mycket mer en nollor och ettor har man försett datorn med program som kan översätta något som vi kan förstå till något som datorn kan förstå. Dessa översättare kallas för kompilatorer.
12 Vad är programmering? The programs we use to conjure processes are like a sorcerer s spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform. Vi förklarar för en maskin hur alla instanser av ett problem skall lösas! Vi programmerar för att styra processer i datorn. Vi frambesvärjar datorns andar med våra besvärjelser.
13 Vad är programmering? The programs we use to conjure processes are like a sorcerer s spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform. Vi förklarar för en maskin hur alla instanser av ett problem skall lösas! Vi programmerar för att styra processer i datorn. Vi frambesvärjar datorns andar med våra besvärjelser.
14 Vad är programmering? The programs we use to conjure processes are like a sorcerer s spells. They are carefully composed from symbolic expressions in arcane and esoteric programming languages that prescribe the tasks we want our processes to perform. Vi förklarar för en maskin hur alla instanser av ett problem skall lösas! Vi programmerar för att styra processer i datorn. Vi frambesvärjar datorns andar med våra besvärjelser.
15 Vad är programspråk? A computer is like a violin. You can imagine a novice trying first a phonograph and then a violin. The latter, he says, sounds terrible. That is the argument we have heard from our humanists and most of our computer scientists. Computer programs are good, they say, for particular purposes, but they aren t flexible. Neither is a violin, or a typewriter, until you learn how to use it. Marvin Minsky När datorn fungerar som översättare, måste vi förse den med en text skriven enligt mycket strikta regler. Det vi skriver kallas för källkod och de regler vi måste följa kallas för programspråk. Det som kompilatorn producerar kallas för objektkod.
16 Vad är programspråk? A computer is like a violin. You can imagine a novice trying first a phonograph and then a violin. The latter, he says, sounds terrible. That is the argument we have heard from our humanists and most of our computer scientists. Computer programs are good, they say, for particular purposes, but they aren t flexible. Neither is a violin, or a typewriter, until you learn how to use it. Marvin Minsky När datorn fungerar som översättare, måste vi förse den med en text skriven enligt mycket strikta regler. Det vi skriver kallas för källkod och de regler vi måste följa kallas för programspråk. Det som kompilatorn producerar kallas för objektkod.
17 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
18 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
19 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
20 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
21 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
22 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
23 Programmering beståndsdelar De programspråk som intresserar oss erbjuder sätt att beskriva våra ideér av vad som datorn skall göra. De kan uppdelas i Enkla uttryck som beskriver de enkla sakler språket handlar om. Sätt att kombinera för att bygga mer sammansatta element från enklare sådana Sätt att abstrahera för att namge sammansatta element så att de kan hanterass som enkla! Och detta för både procedurer och data Data Stoft vi vill hantera. Procedurer Beskrivningar av det vi vill göra med datan!
24 Algoritmiska lösningar Programmering handlar även om att hitta på lösningar som kan beskrivas som algoritmer! Kursen kommer att handla lika mycket om vissa kända algoritmiska lösningar så som hur man uttrycker de i programspråket C.
25 Algoritmiska lösningar Programmering handlar även om att hitta på lösningar som kan beskrivas som algoritmer! Kursen kommer att handla lika mycket om vissa kända algoritmiska lösningar så som hur man uttrycker de i programspråket C.
26 Algoritmer unplugged Example Behöver 10 volontärer som skall få var sitt tal. Behöver en volontär för att ställa de andra på sin plats i ordning. Du kan fråga var och en vad de har för nummer och Du får be de att flytta på sig.
27 Hur tänker man? Vi tänker på att göra små steg, alltid samma sak, men många gånger! Insertion sort Vi ökar den delen som är sorterad med en position varje varv. Vi börjar med ett enda element! Sedan, inför nästa position, vi jämför elementet med de föregående, en i taget, och flyttar de för att göra plats om det behövs! När vi hittar rätt plats, sätter vi elementet!
28 Hur tänker man? Vi tänker på att göra små steg, alltid samma sak, men många gånger! Insertion sort Vi ökar den delen som är sorterad med en position varje varv. Vi börjar med ett enda element! Sedan, inför nästa position, vi jämför elementet med de föregående, en i taget, och flyttar de för att göra plats om det behövs! När vi hittar rätt plats, sätter vi elementet!
29 Ett problem - en lösning? Förhoppningsviss har vi kommit på olika sätt att lösa problemet med att få vännerna på rätt plats! Det finns alltså många olika algoritmer för att lösa samma problem. Alla är inte lika bra fast de löser problemet rätt!
30 Ett problem - en lösning? Förhoppningsviss har vi kommit på olika sätt att lösa problemet med att få vännerna på rätt plats! Det finns alltså många olika algoritmer för att lösa samma problem. Alla är inte lika bra fast de löser problemet rätt!
31 Ett litet C program main(){ 12345*67890; } Vi har definierat namgett en funktion: main Den skall multiplicera 2 givna tal. Observera användning av {, } och ;. De är skiljetecken och det finns strikta regler för hur vi kan använda de! Notera (), plats för funktionens argument *67890; är funktionens kropp.
32 Ett litet C program main(){ 12345*67890; } Vi har definierat namgett en funktion: main Den skall multiplicera 2 givna tal. Observera användning av {, } och ;. De är skiljetecken och det finns strikta regler för hur vi kan använda de! Notera (), plats för funktionens argument *67890; är funktionens kropp.
33 Ett litet C program main(){ 12345*67890; } Vi har definierat namgett en funktion: main Den skall multiplicera 2 givna tal. Observera användning av {, } och ;. De är skiljetecken och det finns strikta regler för hur vi kan använda de! Notera (), plats för funktionens argument *67890; är funktionens kropp.
34 Ett litet C program main(){ 12345*67890; } Vi har definierat namgett en funktion: main Den skall multiplicera 2 givna tal. Observera användning av {, } och ;. De är skiljetecken och det finns strikta regler för hur vi kan använda de! Notera (), plats för funktionens argument *67890; är funktionens kropp.
35 Ett litet C program main(){ 12345*67890; } Vi har definierat namgett en funktion: main Den skall multiplicera 2 givna tal. Observera användning av {, } och ;. De är skiljetecken och det finns strikta regler för hur vi kan använda de! Notera (), plats för funktionens argument *67890; är funktionens kropp.
36 Ett litet C program main(){ 12345*67890; } Vi har definierat namgett en funktion: main Den skall multiplicera 2 givna tal. Observera användning av {, } och ;. De är skiljetecken och det finns strikta regler för hur vi kan använda de! Notera (), plats för funktionens argument *67890; är funktionens kropp.
37 Ett litet C program main(){ 12345*67890; } Man använder en textredigerare för att knappra in detta och lagra det i en textfil. På våra system kommer ni att använda nedit. Man använder sedan en C kompilator för att producera ett annat fil med maskininstruktioner. I våra system kommer ni att använda gcc. Nu kan vi köra detta och få veta vad 12345*67890 är!
38 Ett litet C program main(){ 12345*67890; } Man använder en textredigerare för att knappra in detta och lagra det i en textfil. På våra system kommer ni att använda nedit. Man använder sedan en C kompilator för att producera ett annat fil med maskininstruktioner. I våra system kommer ni att använda gcc. Nu kan vi köra detta och få veta vad 12345*67890 är!
39 Ett litet C program main(){ 12345*67890; } Man använder en textredigerare för att knappra in detta och lagra det i en textfil. På våra system kommer ni att använda nedit. Man använder sedan en C kompilator för att producera ett annat fil med maskininstruktioner. I våra system kommer ni att använda gcc. Nu kan vi köra detta och få veta vad 12345*67890 är!
40 Ett litet C program main(){ 12345*67890; } Man använder en textredigerare för att knappra in detta och lagra det i en textfil. På våra system kommer ni att använda nedit. Man använder sedan en C kompilator för att producera ett annat fil med maskininstruktioner. I våra system kommer ni att använda gcc. Nu kan vi köra detta och få veta vad 12345*67890 är!
41 Vilken besvikelse! Vi kan använda datorn för att räkna C har många aritmetiska operationer fördefinierade! Men, så längre man bara använder datorns minne och räkneenheter kan man inte se något! Vill vi se något måste vi, från programmet, påverka något externt! Till exempel, lagra resultatet i en fil som en rad tecken, eller visa den på skärmen. #include <stdio.h> main(){ printf("%d",12345*67890); } Det är svårt och många behöver skriva på skärmen, då finns det bibliotek som måste inkluderas av kompilatorn. Det som finns där är funktioner som vi måste lära oss att använda! Man skall läsa om de och förstå vad de förväntas som argument och vad de gör med dessa.
42 Vilken besvikelse! Vi kan använda datorn för att räkna C har många aritmetiska operationer fördefinierade! Men, så längre man bara använder datorns minne och räkneenheter kan man inte se något! Vill vi se något måste vi, från programmet, påverka något externt! Till exempel, lagra resultatet i en fil som en rad tecken, eller visa den på skärmen. #include <stdio.h> main(){ printf("%d",12345*67890); } Det är svårt och många behöver skriva på skärmen, då finns det bibliotek som måste inkluderas av kompilatorn. Det som finns där är funktioner som vi måste lära oss att använda! Man skall läsa om de och förstå vad de förväntas som argument och vad de gör med dessa.
43 Vilken besvikelse! Vi kan använda datorn för att räkna C har många aritmetiska operationer fördefinierade! Men, så längre man bara använder datorns minne och räkneenheter kan man inte se något! Vill vi se något måste vi, från programmet, påverka något externt! Till exempel, lagra resultatet i en fil som en rad tecken, eller visa den på skärmen. #include <stdio.h> main(){ printf("%d",12345*67890); } Det är svårt och många behöver skriva på skärmen, då finns det bibliotek som måste inkluderas av kompilatorn. Det som finns där är funktioner som vi måste lära oss att använda! Man skall läsa om de och förstå vad de förväntas som argument och vad de gör med dessa.
44 Vilken besvikelse! Vi kan använda datorn för att räkna C har många aritmetiska operationer fördefinierade! Men, så längre man bara använder datorns minne och räkneenheter kan man inte se något! Vill vi se något måste vi, från programmet, påverka något externt! Till exempel, lagra resultatet i en fil som en rad tecken, eller visa den på skärmen. #include <stdio.h> main(){ printf("%d",12345*67890); } Det är svårt och många behöver skriva på skärmen, då finns det bibliotek som måste inkluderas av kompilatorn. Det som finns där är funktioner som vi måste lära oss att använda! Man skall läsa om de och förstå vad de förväntas som argument och vad de gör med dessa.
45 Vilken besvikelse! Vi kan använda datorn för att räkna C har många aritmetiska operationer fördefinierade! Men, så längre man bara använder datorns minne och räkneenheter kan man inte se något! Vill vi se något måste vi, från programmet, påverka något externt! Till exempel, lagra resultatet i en fil som en rad tecken, eller visa den på skärmen. #include <stdio.h> main(){ printf("%d",12345*67890); } Det är svårt och många behöver skriva på skärmen, då finns det bibliotek som måste inkluderas av kompilatorn. Det som finns där är funktioner som vi måste lära oss att använda! Man skall läsa om de och förstå vad de förväntas som argument och vad de gör med dessa.
46 Mera om printf Strängar printf("hello world\n"); Observera kontrolltecknet \n som markerar en radbyte. Observera att vi behöver ingen mönster sträng som första argument! Flera delar printf(%s%d%s%d%s, "the square of ", 11111, " is ", 11111*11111, "\n")
47 Mera om printf Strängar printf("hello world\n"); Observera kontrolltecknet \n som markerar en radbyte. Observera att vi behöver ingen mönster sträng som första argument! Flera delar printf(%s%d%s%d%s, "the square of ", 11111, " is ", 11111*11111, "\n")
48 Mera om printf Strängar printf("hello world\n"); Observera kontrolltecknet \n som markerar en radbyte. Observera att vi behöver ingen mönster sträng som första argument! Flera delar printf(%s%d%s%d%s, "the square of ", 11111, " is ", 11111*11111, "\n")
49 Mera om printf Strängar printf("hello world\n"); Observera kontrolltecknet \n som markerar en radbyte. Observera att vi behöver ingen mönster sträng som första argument! Flera delar printf(%s%d%s%d%s, "the square of ", 11111, " is ", 11111*11111, "\n")
50 Vilken besvikelse! Kan inte vi använda programmet för flera olika värden? Kommandoradsargument Programmet kan ta emot argument från kommandoraden. Efterssom det är main i programmet som körs, har man möjlighet att programmera main som en funktion med argument och, när operativ systemet startar programmet skickas dessa argument till main! #include <stdio.h> main(int argc, char * argv[]){ printf("%s%s","welcome ", argv[1]); }
51 Vilken besvikelse! Kan inte vi använda programmet för flera olika värden? Kommandoradsargument Programmet kan ta emot argument från kommandoraden. Efterssom det är main i programmet som körs, har man möjlighet att programmera main som en funktion med argument och, när operativ systemet startar programmet skickas dessa argument till main! #include <stdio.h> main(int argc, char * argv[]){ printf("%s%s","welcome ", argv[1]); }
52 Vilken besvikelse! Kan inte vi använda programmet för flera olika värden? Kommandoradsargument Programmet kan ta emot argument från kommandoraden. Efterssom det är main i programmet som körs, har man möjlighet att programmera main som en funktion med argument och, när operativ systemet startar programmet skickas dessa argument till main! #include <stdio.h> main(int argc, char * argv[]){ printf("%s%s","welcome ", argv[1]); }
53 Lite om typer I C, så som i många programspråk, finns det olika typer av värden. För varje typ finns vissa operationer och funktioner. Example Argumenten från kommandoraden är strängar av tecken medan * behöver tal för att beräkna resultatet! Just vad gäller tal brukar vi mäninskor inte medvetet skilja mellan följden av tecken och dess värde men när vi skall summera tal gör vi om strängen till en annan representation! Vilken? Vill vi läsa tal från kommandoraden måste vi ta emot en sträng och göra om den till tal! Efterssom detta är så pass vanligt, finns det stöd i språket: funktionen int atoi(char * str) återfinns i biblioteket stdlib.h
54 Lite om typer I C, så som i många programspråk, finns det olika typer av värden. För varje typ finns vissa operationer och funktioner. Example Argumenten från kommandoraden är strängar av tecken medan * behöver tal för att beräkna resultatet! Just vad gäller tal brukar vi mäninskor inte medvetet skilja mellan följden av tecken och dess värde men när vi skall summera tal gör vi om strängen till en annan representation! Vilken? Vill vi läsa tal från kommandoraden måste vi ta emot en sträng och göra om den till tal! Efterssom detta är så pass vanligt, finns det stöd i språket: funktionen int atoi(char * str) återfinns i biblioteket stdlib.h
55 Lite om typer I C, så som i många programspråk, finns det olika typer av värden. För varje typ finns vissa operationer och funktioner. Example Argumenten från kommandoraden är strängar av tecken medan * behöver tal för att beräkna resultatet! Just vad gäller tal brukar vi mäninskor inte medvetet skilja mellan följden av tecken och dess värde men när vi skall summera tal gör vi om strängen till en annan representation! Vilken? Vill vi läsa tal från kommandoraden måste vi ta emot en sträng och göra om den till tal! Efterssom detta är så pass vanligt, finns det stöd i språket: funktionen int atoi(char * str) återfinns i biblioteket stdlib.h
56 Lite om typer I C, så som i många programspråk, finns det olika typer av värden. För varje typ finns vissa operationer och funktioner. Example Argumenten från kommandoraden är strängar av tecken medan * behöver tal för att beräkna resultatet! Just vad gäller tal brukar vi mäninskor inte medvetet skilja mellan följden av tecken och dess värde men när vi skall summera tal gör vi om strängen till en annan representation! Vilken? Vill vi läsa tal från kommandoraden måste vi ta emot en sträng och göra om den till tal! Efterssom detta är så pass vanligt, finns det stöd i språket: funktionen int atoi(char * str) återfinns i biblioteket stdlib.h
57 Squares #include <stdio.h> main(int argc, char * argv[]){ printf("%s%d%s%d", "the square of ", atoi(argv[1]), " is ", atoi(argv[1])*atoi(argv[1])); } Vi ber programmet att beräkna atoi(argv[1]) 3 gånger!
58 Squares #include <stdio.h> main(int argc, char * argv[]){ printf("%s%d%s%d", "the square of ", atoi(argv[1]), " is ", atoi(argv[1])*atoi(argv[1])); } Vi ber programmet att beräkna atoi(argv[1]) 3 gånger!
59 Namn Abstraktion I programmet kan vi namnge uttryck för att använda namnet där uttrycket behövs. Detta hjälper till att organisera programmet och kan undvika upprepade beräkningar av samma uttryck! #include <stdio.h> main(int argc, char * argv[]){ int val = atoi(argv[1]); printf("%s%d%s%d", "the square of ", val, " is ", val*val ); }
60 Namn Abstraktion I programmet kan vi namnge uttryck för att använda namnet där uttrycket behövs. Detta hjälper till att organisera programmet och kan undvika upprepade beräkningar av samma uttryck! #include <stdio.h> main(int argc, char * argv[]){ int val = atoi(argv[1]); printf("%s%d%s%d", "the square of ", val, " is ", val*val ); }
61 Kortlek Kort finns inte i programspråket! Det finns inga värden som är kort och det finns inga operationer som har med kort att göra! Vi vill skriva program som handlar om kort. Var börjar vi?
62 Kortlek Kort finns inte i programspråket! Det finns inga värden som är kort och det finns inga operationer som har med kort att göra! Vi vill skriva program som handlar om kort. Var börjar vi?
63 Kortlek Kort finns inte i programspråket! Det finns inga värden som är kort och det finns inga operationer som har med kort att göra! Vi vill skriva program som handlar om kort. Var börjar vi?
64 Vad är ett kort? Den fransk-engelska kortleken består av 52 spelkort uppdelade i fyra så kallade färger, även kallade sviter. Varje färg innehåller ett ess, nummerkort från 2 till 10, en knekt, en dam och en kung. Esset var från början bara en etta, därför börjar nummerkorten på 2. Det finns totalt 13 olika i varje färg alltså, och en sammanfattande beteckning på dessa 13 är valörer. Ett korts identitet bestäms entydigt av dess färg och valör och en standardkortlek innehåller ett kort för varje tänkbar kombination av dessa båda egenskaper. sv.wikipedia.org/wiki/fransk-engelsk kortlek
65 Kort i C Vi vill så småningom kunna ha en typ för kort och definiera funktioner som har med kort att göra. Vi börjar med typer för svit och valör. I ett C program kan vi ha vårt eget bibliotek, av saker som vi behöver för vårt main! Example typedef enum {CLUB,SPADE, HEART, DIAMOND} suit; typedef enum {ACE,KING,QUEEN,KNIGHT,TEN, NINE, EIGHT, SEVEN, SIX, FIVE, FOUR, THREE,TWO} value;
66 Kort i C Vi vill så småningom kunna ha en typ för kort och definiera funktioner som har med kort att göra. Vi börjar med typer för svit och valör. I ett C program kan vi ha vårt eget bibliotek, av saker som vi behöver för vårt main! Example typedef enum {CLUB,SPADE, HEART, DIAMOND} suit; typedef enum {ACE,KING,QUEEN,KNIGHT,TEN, NINE, EIGHT, SEVEN, SIX, FIVE, FOUR, THREE,TWO} value;
67 Kort i C Vi vill så småningom kunna ha en typ för kort och definiera funktioner som har med kort att göra. Vi börjar med typer för svit och valör. I ett C program kan vi ha vårt eget bibliotek, av saker som vi behöver för vårt main! Example typedef enum {CLUB,SPADE, HEART, DIAMOND} suit; typedef enum {ACE,KING,QUEEN,KNIGHT,TEN, NINE, EIGHT, SEVEN, SIX, FIVE, FOUR, THREE,TWO} value;
68 Vad har vi gort? Nu kan vi i vårt program använda suit och value där vi behöver typer! På samma sätt som det finns värden i typerna int och char * så finns det värden i de nya typerna! SPADE är ett värde av typ suit Men, finns det operationer, funktioner? Nej! vi måste definiera de!
69 Vad har vi gort? Nu kan vi i vårt program använda suit och value där vi behöver typer! På samma sätt som det finns värden i typerna int och char * så finns det värden i de nya typerna! SPADE är ett värde av typ suit Men, finns det operationer, funktioner? Nej! vi måste definiera de!
70 Vad har vi gort? Nu kan vi i vårt program använda suit och value där vi behöver typer! På samma sätt som det finns värden i typerna int och char * så finns det värden i de nya typerna! SPADE är ett värde av typ suit Men, finns det operationer, funktioner? Nej! vi måste definiera de!
71 Att definiera funktioner Example Vi vill erbjuda möjlighet att visualisera sviterna till exempel genom att vissa esset av en given svit. Vilken funktion? Vi börjar med funktionens signatur: vad den heter, vilken typ av argument den förväntar sig och vilken typ av resultat den producerar. void showsuit(suit s) Detta är det man måste veta när man skall använda showsuit.
72 Att definiera funktioner Example Vi vill erbjuda möjlighet att visualisera sviterna till exempel genom att vissa esset av en given svit. Vilken funktion? Vi börjar med funktionens signatur: vad den heter, vilken typ av argument den förväntar sig och vilken typ av resultat den producerar. void showsuit(suit s) Detta är det man måste veta när man skall använda showsuit.
73 Att definiera funktioner Example Vi vill erbjuda möjlighet att visualisera sviterna till exempel genom att vissa esset av en given svit. Vilken funktion? Vi börjar med funktionens signatur: vad den heter, vilken typ av argument den förväntar sig och vilken typ av resultat den producerar. void showsuit(suit s) Detta är det man måste veta när man skall använda showsuit.
74 Att definiera funktioner Efterssom det finns program som kan visa bilder och det finns bilder på kort tillgängliga, kommer vi att använda oss av detta! Example SHOW A HEART Starta andra program Detta är också vanligt och svårt, så det finns stöd i Cs bibliotek. int system(char * cmnd) finns i biblioteket stdlib.h Example system("xv classic-cards/3.jpg")
75 Att definiera funktioner Efterssom det finns program som kan visa bilder och det finns bilder på kort tillgängliga, kommer vi att använda oss av detta! Example SHOW A HEART Starta andra program Detta är också vanligt och svårt, så det finns stöd i Cs bibliotek. int system(char * cmnd) finns i biblioteket stdlib.h Example system("xv classic-cards/3.jpg")
76 Att definiera funktioner Efterssom det finns program som kan visa bilder och det finns bilder på kort tillgängliga, kommer vi att använda oss av detta! Example SHOW A HEART Starta andra program Detta är också vanligt och svårt, så det finns stöd i Cs bibliotek. int system(char * cmnd) finns i biblioteket stdlib.h Example system("xv classic-cards/3.jpg")
77 Att definiera funktioner I kommandot till system behöver vi kunna välja olika filer beroende på vilken suit vi får! void showsuit(suit s){ switch(s){ case CLUB : system("xv classic-cards/1.png");return; case SPADE : system("xv classic-cards/2.png");return; case HEART : system("xv classic-cards/3.png");return; case DIAMOND : system("xv classic-cards/4.png");return; } }
Recap Mera om nya typer Kort Fält. Programmering. Sommarkurs 2007 www.hh.se/staff/vero/programmering. Verónica Gaspes. IDE-sektionen.
Programmering Sommarkurs 2007 www.hh.se/staff/vero/programmering Verónica Gaspes IDE-sektionen Juni 14 Utkast 1 Recap 2 Mera om nya typer 3 Kort 4 Fält Recap Man kan ge namn till typer. Vi undersökte enum
Läs merProgrammering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010. Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:
Föreläsning 1 OH: Övergripande information Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk: * maskinspråk = ettor och nollor, kan bara en maskin förstå. * programmeringsspråk
Läs merFöreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Läs merIntroduktion till programmering, hösten 2011
Föreläsning 1 Programmering är ett hantverk. Det betyder att man inte kan läsa sig till den förmågan, man måste träna och man tränar genom att skriva mer och mer avancerade program. Programmering förutsätter
Läs merFöreläsning 2. Operativsystem och programmering
Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data
Läs merAdministrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Mattias Enervall (Övningsassistent) Examination. 1 Skriftlig tentamen (betyg)
Programmering hh.se/db2004 Föreläsning 1 Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Välkomna till en kurs i programmering! Att programmera är att få datorn att bete sig på
Läs merBoken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf
Föreläsning1 Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf scanf Ni behöver läsa boken både för att
Läs merLite om reella tal. Programmering. I java. Om operatorers associativitet och prioritet
Programmering hh.se/db2004 Föreläsning 4: Fält samt Input/Output Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Lite om reella tal Vad kan man göra med reella tal? Utöver de
Läs merAdministrivia. hh.se/db2004. 1 Verónica Gaspes (Kursansvarig) 2 Daniel Petersson (Labassistent) Examination. 1 Skriftlig tentamen (betyg)
Programmering hh.se/db2004 Föreläsning 1 Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Välkomna till en kurs i programmering! Att programmera är att få datorn att bete sig på
Läs merGrundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1
Grundläggande programmering DVG A08 & ISG A04 Allmän information Grupp C och D slås ihop Schemat är ändrat Kurs i programmering utan förkunskaper Hjälp oss med detta Lita inte på era klasskamrater De ställer
Läs merTENTAMEN MOM1 GRUNDLÄGGANDE PROGRAMMERINGSTEKNIK OCH
UMEÅ UNIVERSITET Datavetenskap Marie Nordström 071207 TENTAMEN MOM1 GRUNDLÄGGANDE PROGRAMMERINGSTEKNIK OCH DATORSYSTEM/GRÄNSSNITT, 7.5HP. (5DV074/5DV075) Datum : 071207 Tid : 3 timmar Hjälpmedel : Allt.
Läs merPekare och arrayer. Indexering och avreferering
Pekare och arrayer En array är ett sammanhängande minnesområde rymmande ett antal element av en viss typ. Arraynamnet kan ses som adressen till arrayens början, dvs. dess första element. En pekare är en
Läs merFöreläsning 1: Intro till kursen och programmering
Föreläsning 1: Intro till kursen och programmering λ Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/mafykht11/ λ Studentportalen http://www.studentportalen.uu.se UNIX-konton (systemansvariga
Läs merInledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock
Inledning Vad är ett datorprogram, egentligen? Olika språk Problemlösning och algoritmer 1 (14) Varför använda en dator? Genom att variera de program som styr datorn kan den användas för olika uppgifter.
Läs merFöreläsning 1: Intro till kursen och programmering
Föreläsning 1: Intro till kursen och programmering Kursens hemsida http:www.it.uu.se/edu/course/homepage/prog1/vt11 Studentportalen http://www.studentportalen.uu.se Lärare: Tom Smedsaas, Tom.Smedsaas@it.uu.se
Läs merProgrammeringsteknik 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 merVälkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.
Välkomna till DIT012 IPGO 1 Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1. Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare
Läs merHej 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 merInledande programmering med C# (1DV402) Introduktion till C#
Introduktion till C# 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 i
Läs merFöreläsning 3. Programmering, C och programmeringsmiljö
Föreläsning 3 Programmering, C och programmeringsmiljö Vad är programmering? Ett väldigt kraftfullt, effektivt och roligt sätt att kommunicera med en dator Att skapa program / applikationer till en dator
Läs merProgrammering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1. Måndagen den 10 januari 2011,
Programmering, grundkurs, 8.0 hp HI1024, HI1900 etc., Tentamen TEN1 Måndagen den 10 januari 2011, 8.15 12.15 Tentamen består av två delar, del A och del B. Del A innehåller 10 kryssfrågor på olika teman
Läs merGrundkurs i programmering - intro
Grundkurs i programmering - intro Linda Mannila 4.9.2007 Dagens föreläsning Allmän kursinformation: mål, syfte, upplägg, examination, litteratur, etc. Hur arbetar en dator? Hur vi får datorn att förstå
Läs merProgrammeringsteknik 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 merLite mer om Javas stöd för fält. Programmering. Exempel: vad är det största talet? hh.se/db2004. Fält samt Input/Output
Programmering hh.se/db2004 Föreläsning 5: Fält samt Input/Output Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Lite mer om Javas stöd för fält Hur många element har ett fält?
Läs merITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet
ITK:P1 Föreläsning 1 Att programmera i språket Java DSV Peter Mozelius Programmering Olika typer av programmering som t ex: o Imperativ programmering (C, Pascal m fl) o Funktionell programmering (Lisp,
Läs merKTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012
KTH STH TENTAMEN HI1024:TEN2 - Praktisk tentamen Tid: 8-13, den 18 februari 2012 Gamla kurskoder: HI1900, 6E2950, etc. Examinator: Johnny Panrike Rättande lärare: Nicklas Brandefelt, Johnny Panrike och
Läs merJohan Karlsson Datavetenskap för teknisk kemi, 10p, moment 1 Datavetenskap Umeå Universitet. Tentamen
Tentamen för teknisk kemi, 10p, moment 1 29 november 1999 Skrivtid 9-15 Hjälpmedel: av följande böcker. - U. Bilting och J. Skansholm: Vägen till C - A. Kelley & I. Pohl: A Book on C Maxpoäng: Gräns för
Läs merKursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach
Föreläsning 1: Intro till kursen och Kursens hemsida http://www.it.uu.se/edu/course/homepage/prog1/esvt10 Studentportalen http://www.studentportalen.uu.se Kursmaterial Kursbok Kursprogramvara Tips: Installera
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 meröversiktskurs (5DV031)
Programmeringsteknisk översiktskurs (5DV031) Föreläsning 5 Innehåll Indexerade variabler Arrayer, sortering Läsanvisningar: Kapitel 6.1-6.3 Ett problem Hur sparas data T.ex. när man vill spara resultaten
Läs merInledande programmering med C# (1DV402) Introduktion till programmering
Introduktion till programmering 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
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 merTentamen *:58/ID100V Programmering i C Exempel 3
DSV Tentamen *:58/ID100V Sid 1(5) Tentamen *:58/ID100V Programmering i C Exempel 3 Denna tentamen består av fyra uppgifter som tillsammans kan de ge maximalt 22 poäng. För godkänt resultat krävs minst
Läs merIntroduktion till programmering
Introduktion till programmering Vad är programmering? Vad gör en dator? Vad är ett datorprogram? 1 (9) Vad är programmering? För att bestämma en cirkels area måste du: 1. Dividera diametern 5 med 2. 2.
Läs merGrundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp
Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp Dag Wedelin, bitr professor, och K V S Prasad, docent Institutionen för data- och
Läs merIntroduktionsmöte Innehåll
Introduktionsmöte Innehåll Introduktion till kursen Kursens mål och innehåll Undervisning Datavetenskap (LTH) Introduktionsmöte ST 2019 1 / 14 EDAA01 Programmeringsteknik - fördjupningskurs Ingen sommarkurs
Läs merPåminnelse: en datatyp för bilder. Programmering. En datatyp för bilder. Spegelbild. hh.se/db2004
Programmering hh.se/db2004 Föreläsning 10: Objektorienterad programmering - datatyper Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Påminnelse: en datatyp för bilder Vad är
Läs mertentaplugg.nu av studenter för studenter
tentaplugg.nu av studenter för studenter Kurskod Kursnamn D0017E Inledande programmering för ingenjörer Datum 2014-10-31 Material Tentamen Kursexaminator Betygsgränser Tentamenspoäng 3 14; 4??; 5?? 25/25
Läs merRepetition C-programmering
Repetition C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. Repetition
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 merVälkomna till DIT012 IPGO
Välkomna till DIT012 IPGO 1 Lärare och Handledare Kursansvariga, examinatorer, föreläsare och handledare Joachim von Hacht, hajo@chalmers.se, 772 1003 Handledare (se även kurssida) Alexander Sjösten, sjosten@chalmers.se
Läs merEn kort text om programmering i C.
En kort text om programmering i C C skapades 1972 av Brian Ritchie och Dennis Kerighan på Bell Labs i USA Det blev det språk som är mest använt genom tiderna Det finns många olika språk Pascal, FORTH,
Läs merIntroduktion C-programmering
Introduktion C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. 2 C Standarder
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 merInstruktioner för att kunna programmera på skolans datorer
Instruktioner för att kunna programmera på skolans datorer De här instruktionerna är viktiga att känna väl till inför tentamen samt inför laborationsredovisningar. Många av er kommer att använda bärbara
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 merSkriv i mån av plats dina lösningar direkt i tentamen. Skriv ditt kodnummer längst upp på varje blad.
5(16) Tentamen på kurserna Programmeringsteknik med C och Matlab Programmering i C Tid: 2/11-11, kl. 9-13 Lärare: Jonny Pettersson Totalt: 60 poäng Betyg 3: 30 poäng Betyg 4: 39 poäng Betyg 5: 48 poäng
Läs merLösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 13.00. Omtentamen i Programmering C, Fri, Kväll, 050108.
1(8) ÖREBRO UNIVERSITET INSTITUTIONEN FÖR TEKNIK Lösningar till uppgifterna sätts ut på kurssidan på nätet i dag kl 13.00. Denna tenta kommer att vara färdigrättad Fr 14/1 och kan då hämtas på mitt tjänsterum,
Läs merOOP Objekt-orienterad programmering
OOP Objekt-orienterad programmering OOP F1:1 Delkursansvarig Epost Kursens webbsidor sm@fc.dsv.su.se http://people.dsv.su.se/~sm/oop/ Föreläsning 1 Introduktion till kursen OOP Vad är Java? Ett första
Läs merPlanering Programmering grundkurs HI1024 HT 2015 - data
Planering Programmering grundkurs HI1024 HT 2015 - data Föreläsning V36 Föreläsning 1 Programmering Kurs-PM Programmeringsmiljö Hello World! Variabler printf scanf Föreläsning 2 Operatorer Tilldelning
Läs merMöte 7: Uppföljning av föreläsningen med Peer Instruction - (PI)
Möte 7: Uppföljning av föreläsningen med Peer Instruction - (PI) Som sagt så kommer den här kursen endast innehålla en enda föreläsning och det var förra gången. Från och med nu så kommer vi förutsätta
Läs merAlla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php
Introlektion PHP är ett av de enklare språken att lära sig just pga. dess dynamiska struktur. Det används för att bygga upp båda stora och mindre system. Några vanliga system som använder sig av PHP är
Läs merUtkast. Programmering. Signals. Olika typer av program. Sommarkurs 2007 www.hh.se/staff/vero/programmering. Avbrott i mjukvara.
Programmering Sommarkurs 2007 www.hh.se/staff/vero/programmering Verónica Gaspes Utkast Avbrott i mjukvara Larm signaler Avslutnings signaler IDE-sektionen Curses Juli 2 Olika typer av program Signals
Läs merIntroduktion till programmering D0009E. Föreläsning 1: Programmets väg
Introduktion till programmering D0009E Föreläsning 1: Programmets väg 1 Vad är en dator? En maskin vars beteende styrs av de innehållet (bitmönster) som finns lagrade i datorns minne (inte helt olikt förra
Läs merInformation Coding / Computer Graphics, ISY, LiTH CUDA. En lösning för generella beräkningar. En introduktion: Programmingsmodell och språk
CUDA En lösning för generella beräkningar. En introduktion: Programmingsmodell och språk Minnesareor och minnesaccess Delat minne Exempel CUDA = Compute Unified Device Architecture Utvecklat av NVidia
Läs merTDIU01 - 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 merkl Tentaupplägg
Tentaupplägg TIPS 1: Läs igenom ALLA uppgifterna. Välj den du känner är lättast först. Det kan gärna ta 10-20 minuter. Försök skriva saker som kan vara problem i uppgifterna. Är det något du absolut kommer
Läs merAtt komma igång. Föreläsning 1
Att komma igång Föreläsning 1 Att komma igång Vad är programmering? Boken! Kurs-PM Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera Variabler printf scanf
Läs merTDIU01 (725G67) - Programmering i C++, grundkurs
TDIU01 (725G67) - Programmering i C++, grundkurs Introduktion till kursen och programmering Eric Elfving Institutionen för datavetenskap 2 september 2014 Översikt Kursinformation Personal Kursmål Upplägg
Läs merProgrammering II (ID1019) :00-11:00
ID1019 Johan Montelius Programmering II (ID1019) 2015-06-11 08:00-11:00 Instruktioner Du får inte ha något materiel med dig förutom skrivmateriel. Mobiler etc, skall lämnas till tentamensvakten. Svaren
Läs mer#include <stdio.h> #include <string.h>
#include #include void fun(char s[]) int i=-1; while(s[++i]!=0) if('a'
Läs merEnkla 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 merFöreläsning 1: Introduktion till kursen
(18 januari 2015 F1.1 ) Föreläsning 1: Introduktion till kursen Lärare: Anna, Carl, Johan, Tom och ca 20 assistenter Registrering / avregistrering Undervisningsformer: föreläsningar och laborationer Kursmaterial
Läs merProgram & programmering
Program & programmering Vad är program? Satser och instruktioner, toggla igenom exempel Program på olika nivåer, för olika maskiner, för olika saker Tolka program; kompilator, intepretator, binärbytekod,
Läs merGrundläggande C-programmering del 2 Pekare och Arrayer. Ulf Assarsson
Grundläggande C-programmering del 2 Pekare och Arrayer Ulf Assarsson Läromoment: Pekare Absolutadressering (portar): typedef, volatile, #define Arrayer av pekare, arrayer av arrayer Hemuppgifter: v2. Föregående
Läs merMen först: Några funktioner ur preluden. Introduktion till programmering. Uppgiften. Variationer av uppgiften. Föreläsning 4
Introduktion till programmering Men först: Några funktioner ur preluden Vad är skillnaden mellan head str och take 1 str? Föreläsning 4 Ett större exempel. head :: [a] -> a take :: Int -> [a] -> [a] tail
Läs mer(2) Skriv ett program som skapar ett antal processer vars relationer beskrivs av nedanstående tidsdiagram a
Tentamen i Operativsystem, HI1025:LAB1-15 mars, 2017 Allmänna instruktioner. Tentamen innehåller 3 programmeringsproblem av den art vi exemplifierat på seminarier och i övningar. För godkänt betyg ska
Läs merLösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Omtentamen i Programmering C, 5p, fristående, kväll, 040110.
1(8) ÖREBRO UNIVERSITET INSTITUTIONEN FÖR TEKNIK Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Denna tenta kommer att vara färdigrättad On 14/1-04 och kan då hämtas på mitt
Läs mern Detta för att kunna koncentrera oss på n Tal: number? n Symboler: symbol? n Strängar: string? n Tecken: char? n Boolskt: boolean?
Tidigare TDDC74 Programming: Abstraktion och modellering Föreläsning 4 Symboler, Par, Listor Representation av par, Grafisk notation för par Representation av listor mha par Typiska listhanteringsprocedurer
Läs merProgramsystemkonstruktion med C++: Övning 1. Karl Palmskog september 2010
Programsystemkonstruktion med C++: Övning 1 Karl Palmskog palmskog@kth.se september 2010 Programuppbyggnad Klassens uppbyggnad en C++-klass består av en deklaration och en definition deklaration vanligtvis
Läs merBINÄRA TRÄD. (X = pekarvärdet NULL): struct int_bt_node *pivot, *ny; X X X 12 X X 12 X X -3 X X
Algoritmer och Datastrukturer Kary FRÄMLING/Göran PULKKIS (v23) Kap. 7, Sid 1 BINÄRA TRÄD Träd används för att representera olika slags hierarkier som ordnats på något sätt. Den mest använda trädstrukturen
Läs merÖ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 merReguljära uttryck. Reguljära uttryck. Nu kommer en siffra78 och en till SIFFRA(78) men utan 7kstuga SIFFRA(89)
Reguljära uttryck Ett sätt att söka och manipulera text Reguljära uttryck Konstruerar mönster som försöker hitta nåt i text Viktigt, användbart, många resurser http://regex.info/ http://etext.lib.virginia.edu/services/helpsheets/unix/regex.html
Läs merTypkonvertering. 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 merObjektorienterad programmering i Java I
Laboration 0 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: ca 2 3 timmar Att läsa: sidan 45 52 Syfte: Att ladda hem och installera utvecklingsmiljön Att skriva ditt första Javaprogram
Läs merUndervisning. Examination
Kursinfo Objektorienterad programmering Undervisning Föreläsning 1 Kursinformation Allmänt om programmering Java - några inledande exampel Grundbegrepp: variabler, uttryck, satser, typer. Föreläsningar
Läs merKompilering 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 merIntroduktion till programmering och Python Grundkurs i programmering med Python
Introduktion till programmering och Python Hösten 2009 Dagens lektion Vad är programmering? Vad är en dator? Filer Att tala med datorer En första titt på Python 2 Vad är programmering? 3 VAD ÄR PROGRAMMERING?
Läs merPlanering Programmering grundkurs HI1024 HT 2014
Planering Programmering grundkurs HI1024 HT 2014 Föreläsning V36 Föreläsning 1 Vad är programmering? Boken! Kurs-PM Vad är ett program? Kompilerande- Interpreterande Programmeringsmiljö Hello World! Att
Läs merSwitch, Array (fält) switch break, continue, goto (scary) Sammansatta tilldelningar Kommentarer Array Sortering
Switch, Array (fält) switch break, continue, goto (scary) Sammansatta tilldelningar Kommentarer Array Sortering switch int weekday; printf("mata in veckodagnummer 1-7: "); scanf("%d", &weekday); switch(weekday)
Läs merAnvändarhandledning Version 1.2
Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...
Läs merBakgrund och motivation. Definition av algoritmer Beskrivningssätt Algoritmanalys. Algoritmer. Lars Larsson VT 2007. Lars Larsson Algoritmer 1
Algoritmer Lars Larsson VT 2007 Lars Larsson Algoritmer 1 1 2 3 4 5 Lars Larsson Algoritmer 2 Ni som går denna kurs är framtidens projektledare inom mjukvaruutveckling. Som ledare måste ni göra svåra beslut
Läs merImperativ programmering
Imperativ programmering 1DL126 3p Imperativ programmering Jesper Wilhelmsson ICQ: 20328079 Yahoo: amigajoppe MSN / epost: jesperw@it.uu.se Rum: 1335 Tel: 471 1046 Imperativ programmering Vilka programmeringsspråk
Läs merProgrammering i C++ Kompilering från kommandoraden
Programmering i C++ Kompilering från kommandoraden Sven Gestegård Robertz Datavetenskap, LTH 9 november 2015 Sammanfattning Ibland vill man, av olika anledningar, inte använda en stor integrerad utvecklingsmiljö
Läs merDela, koda och korrigera! Undervisningsmaterial inom digital kompetens
Dela, koda och korrigera! Undervisningsmaterial inom digital kompetens Utvidgat regionalt lärarnätverk Stiftelsen Norrbottens Läns Arbetsstugor Lärarnätverket i samtliga Norrbottens kommuner Likvärdighet
Läs merTDP Regler
Regler Student får lämna salen tidigast en timme efter tentans start. Vid toalettbesök eller rökpaus ska pauslista utanför salen fyllas i. All form av kontakt mellan studenter under tentans gång är strängt
Läs merGrundläggande C-programmering del 2 Pekare och Arrayer. Ulf Assarsson
Grundläggande C-programmering del 2 Pekare och Arrayer Ulf Assarsson Läromoment: Pekare Absolutadressering (portar): typedef, volatile, #define Arrayer av pekare, arrayer av arrayer Hemuppgifter: v2. Föregående
Läs merDet finns många flaggor till g++,
C++, Övning 1 Jonas Sjöbergh, jsh@nada.kth.se Inge Frick, inge@nada.kth.se Alexander Baltsatsis hur man kompilerar och kör make preprocessor minnesallokering, pekare grundläggande C++, funktioner m.m.
Läs merIntroduktionslaboration
LINKÖPINGS TEKNISKA HÖGSKOLA Institutionen för datavetenskap Avdelningen för programvara och system (SaS) Tommy Olsson 2006-08-31 TDIU06 Programmering g.k Introduktionslaboration Ht1, 2006 Detta häfte
Läs merLaboration 1. "kompilera"-ikonen "exekvera"-ikonen
Programmerade system I1 Syfte Laboration 1. Syftet med denna laboration är dels att göra dej bekant med de verktyg som kan vara aktuella i programmeringsarbetet, dels ge en första inblick i att skriva
Läs merTentamen EDAF30 Programmering i C++
LUNDS TEKNISKA HÖGSKOLA 1(5) Institutionen för datavetenska Tentamen EDAF30 Programmering i C++ 2015 05 06, 8.00 13.00 Hjälmedel: En valfri C++-bok. OH-bilderna från föreläsningarna är inte tillåtna. Du
Läs merFöreläsning 10. Pekare (Pointers)
Föreläsning 10 Pekare (Pointers) Dagens kluringar 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; int f(int a) if(a==1) return a; else return
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 merHI1024, Programmering, grundkurs, 8hp KTH STH TENTAMEN. HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011,
KTH STH TENTAMEN HI1024:TEN2 - Praktisk tentamen Tid: Fredagen den 21 oktober 2011, 8.15-13.15 Gamla kurskoder: HI1900, 6E2950, etc. Examinator: Johnny Panrike Rättande lärare: Nicklas Brandefelt, Johnny
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 merObjektorienterad Programmering (TDDC77)
Objektorienterad Programmering (TDDC77) Föreläsning I: kursinfo, att programmera datorer, första programmet Ahmed Rezine IDA, Linköpings Universitet Hösttermin 2015 Outline Hemsida Organization Examination
Läs merPascal... 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 merObjektorienterad 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 merPascal. 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 merUppgift 1 ( Betyg 3 uppgift )
Uppgift 1 ( Betyg 3 uppgift ) Skriv ett program, Draw_Hexagones, som ritar ut en bikupa enligt körexemplen nedan. Exempel 1: Mata in storlek på bikupan: 1 Exempel 3: Mata in storlek på bikupan: 3 \ / \
Läs mer