Introduktion till programmering och Python Grundkurs i programmering med Python



Relevanta dokument
Föreläsning 2. Operativsystem och programmering

Grundkurs i programmering - intro

Program & programmering

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

Kursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach

OOP Objekt-orienterad programmering

Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p

Boken?!?! Vad är ett program? Kompilerande-Interpreterande Programmeringsmiljö Hello World! Att programmera och ett enkelt program Variabler printf

Introduktion till programmering. Programspråk och paradigmer

Innehålls förteckning

Objektorienterad Programmering (TDDC77)

I Skapa Hej.java och skriv programmet. I Kompilera med javac Hej.java. I Rätta fel och repetera tills du lyckas kompilera ditt program

Övningar i 2D2050. Per-Anders Staav (kallas Pa) Epost: eller

Föreläsning 3. Programmering, C och programmeringsmiljö

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

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

TDDE44 Programmering, grundkurs

729G74 IT och programmering, grundkurs. Tema 1, Föreläsning 2 Jody Foo,

Extramaterial till Matematik Y

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten Programmering: att instruera en maskin att utföra en uppgift, kräver olika språk:

Föreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt

HF0010. Introduktionskurs i datateknik 1,5 hp

Att komma igång. Föreläsning 1

Inledande programmering med C# (1DV402) Introduktion till C#

Studentportalen UNIX-konton (systemansvariga P4118) Lärare: Anna Eckerdal,

Programmering. Den första datorn hette ENIAC.

Introduktion till programmering, hösten 2011

IT för personligt arbete F5

Program. Kapitel make Program Interpreterande och kompilerande program

Alla datorprogram har en sak gemensam; alla processerar indata för att producera något slags resultat, utdata.

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

TDP002 Imperativ programmering

Föreläsning 2 Programmeringsteknik och C DD1316. Programmering. Programspråk

Programmering för språkteknologer I, VT2012. Rum

Viktiga begrepp. Algoritm. Array. Binärkod. Blockprogrammering. Bugg / fel och felsökning. Dataspel. Dator

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Objektorienterad programmering i Java

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

Lektion Java Grunder. Javas historia. Programmeringsspråket Java. Skillnaderna mellan Java och C++ JVM (Javas Virtuella Maskin)

Föreläsning 5 5DV086 - Programspråk

Per Holm Lågnivåprogrammering 2014/15 24 / 177. int och double = = 2, 147, 483, 647

Programmering I Tobias Wrigstad fredag, 2009 augusti 28

Att komma igång. Föreläsning 1

TDIU01 - Programmering i C++, grundkurs

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

Lär dig programmera! Prova på programmering med enkla exempel! Björn Regnell

Extramaterial till Matematik Y

Användarhandledning Version 1.2

Föreläsning 2 Programmeringsteknik DD1310. Programmering. Programspråk

Planering av ett större program, del 2 - for och listor. Linda Mannila

ENKEL Programmering 3

Programmering från början

NetBeans 5.5. Avsikt. Projektfönster

NetBeans 7. Avsikt. Projektfönster

Digitalt lärande och programmering i klassrummet

729G74 IT och programmering, grundkurs. Tema 1, Föreläsning 2 Jody Foo,

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

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

Föreläsning 3. Programmering, C och programmeringsmiljö

Programmering i maskinspråk (Maskinassemblering)

Programmering för alla!

TDDC77 Objektorienterad Programmering

Föreläsning 1. Presentation av kursen Vad är programmering? Lite om java och utvecklingsmiljöer Aktivitetsdiagram Ett första program

Datorarkitektur. Informationsteknologi sommarkurs 5p, Agenda. Slideset 3

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

Digitalt lärande och programmering i klassrummet

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

Inledande programmering med C# (1DV402) Introduktion till programmering

Alla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php

SMD 134 Objektorienterad programmering

F4. programmeringsteknik och Matlab

TDP002 - Imperativ programmering

SMD 134 Objektorienterad programmering

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

Programmeringsteknik med C och Matlab

Studentportalen UNIX-konton (systemansvariga P4118) Lärare: Tom Smedsaas,

Datorsystemteknik DAV A14 Föreläsning 1

Programmering i maskinspråk (Maskinassemblering)

Extramaterial till Matematik Y

Eclipse. Avsikt. Nu ska ett fönster liknande figuren till höger synas.

OBS! All teori i detta och följande dokument kompletteras med genomgångar på lektionerna. Så det är viktigt att närvara och göra egna anteckningar.

Objektorienterad programmering i Java I

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

Föreläsning 1 & 2 INTRODUKTION

Dela, koda och korrigera! Undervisningsmaterial inom digital kompetens

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

Introduktion till programmering SMD180. Föreläsning 1: Programmets väg

Föreläsning 2 Programmeringsteknik och Matlab DD1312. Programspråk. Utskrift på skärmen

Föreläsning 10 Datalogi 1 DA2001. Utskrift på skärmen. Syntax. print( Hej ) Hur är det? Hej. print( Hej,end= ) print( Hur är det? ) HejHur är det?

Uppgifter teknik HT17 (uppdaterad v. 40)

Lågnivåprogrammering. Föreläsning 2 Lågnivåprogrammering. Binära tal. En enkel modell av datorns inre

TDP002 - Imperativ programmering

Programmering för alla!

Repetition av filer Grundkurs i programmering med Python

Grundläggande programmering DVG A08 & ISG A04. Allmän information. Å vem är jag då. Karlstads Universitet, Johan Öfverberg 1

Introduktion till användning av linux-servern sledge och några övningsuppgifter

Repetition C-programmering

Transkript:

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? Varför programmering är roligt Kombination av puzzellösning och kreativt skapande. Det ger nära omedelbar återkoppling. Stolheten av att mitt arbete används av andra och gör deras liv enklare. Farsinationen av att ta en maskin designad utan en specifik uppgift och låta den göra det jag vill. Glädjen att ständigt lära sig något nytt 4

Vad är en dator? 5

VAD ÄR EN DATOR? Vad behövs i en dator? Processor Utför begärda instruktioner som beräkningar eller datahantering. Beräkningar som aritmetiska operationer (plus, minus, gånger, delat) Datahantering som att styra data till olika delar av datorn. När ett program exekveras (körs), sänds en ström av instruktioner till processorn i form av s.k. maskinkod. 6

VAD ÄR EN DATOR? Vad behövs i en dator? Minne Minne finns i (minst) tre nivåer Supersnabbt men litet minne nära processorn (cache). Snabbt internminne. Töms när spänningen stängs av. Långsam hårddisk. Stor, långsam och behåller data även när spänningen stängs av. 7

VAD ÄR EN DATOR? Vad behövs i en dator? In-enheter Tangentbord Styrenheter (t.ex. möss) Mikrofon 8

VAD ÄR EN DATOR? Vad behövs i en dator? Ut-enheter Bildskärm (grafik styrs av grafikenhet) Högtalare (styrs av ljudenheter) 9

VAD ÄR EN DATOR? Moderkortet 10

VAD ÄR EN DATOR? VIA Epia-M 11

VAD ÄR EN DATOR? Digitalt Betyder tå eller finger på latin (digtus) Man räknar på fingrarna i diskreta storheter Jämför med analoga storheter som är kontinuerligt varierande. Något som är representerat digitalt kan kopieras exakt. 12

VAD ÄR EN DATOR? Ettor och nollor Vårt vanliga talsystem har basen 10 (decimalt) Gamla räknemaskiner hade hjul med 10 taggar. I elektronik enklare med enbart två tillstånd På eller av Positiv eller negativ Talsystem med basen 2 (binärt). 13

VAD ÄR EN DATOR? Byte och bit En bit antingen 1 eller 0 En byte är 8 bitar Nätverkshastighet angett i bitar per sekund. Datalagring angett i byte. 14

Filer 15

FILER Filer på en dator En fil består av en sekvens av digitalt data (ettor och nollor). Upp till program att tolka dessa siffror. Skillnad mellan binära filer och textfiler. Skillnad mellan 5 och 5. Siffran 5 (binärt 00000101) Textteknet 5 ofta representerat av 53 (binärt 00110101) Varje texttecken representerat av 1-4 byte. En textfil en sekvens av siffror som tolkas av program till tecken och bokstäver. 16

FILER Teckentabeller 17

Att tala med datorer 18

ATT TALA MED DATORER Ett språks syntax Ordet syntax kommer av grekiskan syntaxis syn betyder "samman" och taxis betyder "ordning", "sekvens" Inom lingvistiken betyder det en beskrivningar i form av regler för hur man i ett givet språk sätter samman enskilda enheter (ord, lexem) till komplexa strukturer, satser och meningar. 19

ATT TALA MED DATORER Semantik Ordet semantik kommer från grekiskans semantikos och semantikos som betyder "meningsfull" och sema som betyder tecken. Semantik är studiet av teckensystems innebörd och tolkning 20

ATT TALA MED DATORER Hög- och lågnivåspråk Högnivåspråk är ett hitte-på-språk vars text relativt lätt kan läsas, skrivas och förstås av människor. Text i ett högnivåspråk översätts av program till maskinkod. En enda instruktion i ett högnivåspråk kan betyda massor av instruktioner i maskinkod. Ett lågnivåspråk är ett mellanting mellan maskinkod och högnivåspråk. 21

ATT TALA MED DATORER Kompilering eller interpretering Två strategier för att köra (exekvera) ett program. Kompilera en text till en separat fil som sedan kan exekveras Kompilera betyder att översätta en text till maskinkod En text översätts "live" (interpreteras) till maskinkod som sänds direkt till processorn Interpreterande högnivåspråk kallas ibland också skriptspråk 22

ATT TALA MED DATORER Exempel på programmeringsspråk Lågnivåspråk Assembler Högnivåspråk Python Java C C++ C# 23

ATT TALA MED DATORER Kompilera eller interpretera Källkod Kompilator Interpretator 0 1 1 1 0 0 1 0 1 körbarbart program 1 1 1 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 maskinkod maskinkod 24

En första titt på Python 25

EN FÖRSTA TITT PÅ PYTHON Python Python är ett interpreterande högnivåspråk. Program skrivna i Python iterpreteras (tolkas) av pythontolken. Skapades 1990 av Guido van Rossum. 26

EN FÖRSTA TITT PÅ PYTHON Varför är Python bra? Lättläst Portabelt Ofta använt Bra ingång till andra språk 27

EN FÖRSTA TITT PÅ PYTHON När är Python olämpligt? Inte lämpligt till stora mjukvaruprojekt där hög prsetanda krävs. Interpreterande språk är förhållandevis långsamma jämfört med kompilerade. 28

EN FÖRSTA TITT PÅ PYTHON Python och dess moduler Python Språket Python inte stort. Kan importera moduler skrivna för vitt skilda områden. Språket är alltså både litet och enormt. Standardmoduler Följer med när man installerar Python på sin dator. Ungefär 350, bl.a. för att hantera filer, databaser och mejl. Övriga moduler 29 Finns att ladda ned eller så kan man skriva egna

EN FÖRSTA TITT PÅ PYTHON Pythontolken 30

EN FÖRSTA TITT PÅ PYTHON Skriva direkt i tolken Programmering kan ske direkt i tolken Instruktionerna utförs direkt Programmen kan inte upprepas utan att skriva in dem igen 31

EN FÖRSTA TITT PÅ PYTHON Namngivna värden - variabler Vi kan namnge värden i minnet. Dessa kallas variabler Namnet kommer av att en variabel med ett visst namn kan ändra värde. Ett variabelnamn får innehålla tecknen a-z, _ samt 1-9 Siffror får inte inleda variabelnamnet 32

EN FÖRSTA TITT PÅ PYTHON Tilldelning Man säger att en variabel tilldelas ett värde >>> x = 3 >>> y = 7 >>> x + y 10 >>> x * y 21 33

EN FÖRSTA TITT PÅ PYTHON Kommentarer En kommentar inleds med tecknet # All text på raden efter # ignoreras av interpretatorn Används för att förklara för sig själv och andra vad programmet gör. 34

EN FÖRSTA TITT PÅ PYTHON Ett första program Skriv koden i en textfil, t.ex. hello.py print "Hello world!" Anropa filen direkt i fönstret >> python hello.py 35