Grundkurs i programmering - intro



Relevanta dokument
Introduktion till programmering och Python Grundkurs i programmering med Python

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

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

Föreläsning 2. Operativsystem och programmering

Program & programmering

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

Objektorienterad Programmering (TDDC77)

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

TDIU01 (725G67) - Programmering i C++, grundkurs

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

Innehålls förteckning

TDDC77 Objektorienterad Programmering

Introduktion till programmering, hösten 2011

Introduktion till programmering. Programspråk och paradigmer

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

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

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

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

Imperativ programmering

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

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

OOP Objekt-orienterad programmering

TDP002 Imperativ programmering

Objektorienterad Programmering (TDDC77)

Programmering. Den första datorn hette ENIAC.

Outline. Objektorienterad Programmering (TDDC77) Kursinfo. Outline. Hemsida. Organization. Ahmed Rezine Examination. Webreg.

Datorsystemteknik DAV A14 Föreläsning 1

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

TDP002 - Imperativ programmering

Objektorienterad programmering i Java I

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

Välkomna till DIT012 IPGO

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

Välkomna till DIT012 IPGO. Tyvärr en bug i Google Docs: Sidnummer stämmer inte alltid. Alla anteckningar börjar på sidan 1.

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

Programmering för alla!

6. Ge korta beskrivningar av följande begrepp a) texteditor b) kompilator c) länkare d) interpretator e) korskompilator f) formatterare ( pretty-print

Föreläsning 1: Introduktion till kursen

TDP002 - Imperativ programmering

Introduktion till programmering

Programmeringsteknik I

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

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

Programmering av NXT Lego- robot Labbrapport för programmering av en Lego- robot

Programmering för alla!

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

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

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

GRUNDKURS I C-PROGRAMMERING

Programmering i C++ Kompilering från kommandoraden

IT OCH PROGRAMMERING I SKOLAN. Jan Erik Moström Peter Vinnervik

Föreläsning 1: Introduktion till kursen

PROGRAMMERING I SKOLAN Utbildning av kollegor på Carlssons skola CECILIA CHRISTIANSEN ULRIHCA MALMBERG

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

MATLAB-modulen Programmering i MATLAB. Höstterminen hp. Vad är MATLAB

Verktyg och Utvecklingsmiljö. Föreläsning 2 Eclipse

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

Operativsystem DVG A06. Definition. Varför operativsystem? - Vad är ett operativsystem?

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

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

JAVAUTVECKLING LEKTION 1

Föreläsning 1: Introduktion till kursen

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

Syfte : Lära sig objektorienterad programmering Syfte : Lära sig programmering i ett OO-språk vilket?

Objektorienterad programmering i Java

NetBeans 7. Avsikt. Projektfönster

Objektorienterad Programmering (TDDC77)

Mjukstart i programmering

Objektorienterad programmering

Välkomna till kursen i grundläggande programmering DVGA08, ISGA04

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

Testning av applikationer

Programmera och hitta buggarna. Se video

Programmering och begrepp

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.

SKAPA DET FÖRSTA PROJEKTET I mikrobasic PRO for AVR

Laboration 3 HI1024, Programmering, grundkurs, 8.0 hp

Tentamen den 18 mars svar Datorteknik, EIT070

NetBeans 5.5. Avsikt. Projektfönster

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

Introduktion till Datalogi DD1339. Föreläsning 1 8 sept 2014

Tentamen i Grundläggande programmering STS, åk 1 lördag

Programmering, grundkurs

! Introduktion till kursen! En dators delar! Vad är ett program? " Hur fungerar ett program när det körs

Introduktionsmöte Innehåll

Dela, koda och korrigera! Undervisningsmaterial inom digital kompetens

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

Introduktion till Arduino

Programmering på papper. Datorer, programmering och instruktioner

Verktyg och Utvecklingsmiljö. Jochim von Hacht

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

ITK:P1 Föreläsning 1. Programmering. Programmeringsspråket Java. Stark typning Explicit typning Strukturerat Hög säkerhet

1. Flervalsfråga Andel

Övning 1. Datateknik A, Java I, 5 poäng. Att ladda hem och installera Java Att skriva ditt första Javaprogram Att kompilera och exekvera ditt program

Föreläsning 1 & 2 INTRODUKTION

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

Program. Kapitel make Program Interpreterande och kompilerande program

729G75: Programmering och algoritmiskt tänkande. Tema 1, föreläsning 1 Jody Foo

Introduktion till Arduino

OOP F1:1. Föreläsning 1. Introduktion till kursen OOP Vad är Java? Ett första Java-program Variabler Tilldelning. Marie Olsson

Transkript:

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å oss och lösa de problem vi vill? Lite om programmeringsspråk Introduktion till Python

Kursen i ett nötskal Kräver inga förkunskaper, vi börjar från början Innehåll Grundläggande programstrukturer Planering och design av program Problemlösning Testning och felsökning Text- och filhantering Hantering av undantag

Kursens mål Efter kursen kommer du att Ha lärt dig att tänka som en informationsbehandlare/datatekniker Förstå idén bakom programmering Kunna planera, designa och skriva program även coola sådana Klara av att testa och debugga kod Kunna läsa och förstå kod som andra har skrivit Men du kommer inte att vara en fulländad programmerare... Sorry

Kursens uppläggning Föreläsningar Räkneövningar Skriftlig tent

Föreläsningar Period 1 (v. 36-42) Tisdag 8.30 10.00 Period 2 (v. 44-49) Tisdag 8.30 10.00 Torsdag 8.30 10.00 Sista föreläsningen 4.12 Auditorium Gamma

Räkneövningar Obligatoriska Sex stycken á 10 poäng Görs i datorklass under handledning Lämnas in för korrigering För att få tenträtt måste du göra minst 50% av varje räkneövning (dvs. totalt 30 poäng) Satsa på räkneövningarna Ni lär er massor! Pluspoäng i tenten!

Tent Med penna och papper Maxpoäng 30, 15 krävs för godkänt Kurstenter (OBS! Fel i tryckta utbprog) Nr 1: fre 14.12.07 Nr 2: fre 18.01.08 Pluspoäng från räkneövningarna till godkänt tentresultat RÖ Bonus 30-38 0 39-44 1 45-50 2 51-60 3

Kurssida http://www.abo.fi/~linda.mannila/proggk07 Down to business... föreläsning #1

Vad är en dator? a machine that stores and manipulates information under the control of a changeable program

Vad är en dator? a machine that stores and manipulates information under the control of a changeable program Indata Utdata Inte unikt för datorer (räknemaskin, bensinpump, mikrovågsugn,...)

Vad är en dator? a machine that stores and manipulates information under the control of a changeable program Skiljer datorer från bensinpumpar etc Datorer kan göra olika saker beroende på vilket program de kör En bensinpump kan inte mitt i allt börja fungera som en Nintendo Gameboy eller en mikrovågsugn som en texteditor byggda för att utföra en enda uppgift

Vad är en dator? Processorn (CPU) bearbetar information (data) Internminnet (RAM) lagrar program och data Input/output-enheterna (IO) kommunicerar med omvärlden, t.ex. tangentbord, skärm, hårddisk, skrivare, etc. Indata (via inputenhet) Bearbetning (processor och interminne) Utdata (via outputenhet)

Vad är en dator? Hårdvara: Fysiska delar i datorn (skärm, CPU, etc.), elektronik och sladdar Mjukvara: Serie av instruktioner till CPU som styr hårdvaran så att den löser något problem. Program. Mjukvaran styr hårdvaran

Programmering Att skapa mjukvara Kräver en förmåga att se större helheter samtidigt som man är petnoga med alla detaljer

Varför lära sig programmera? Väsentlig del av informationsbehandling/ datateknik viktig för alla som vill bli ITproffs Men även nyttigt för andra Icke-programmerare känner sig ofta utan kontroll då det kommer till datorer Programmerare har kontroll Utmanande men väldigt roligt! Utvecklar andra färdigheter, t.ex. problemlösning Industrin behöver programmerare

Programmeringsspråk Datorn förstår enbart ettor (1) och nollor (0) En dator förstår inte tvetydigheter eller underförstådda saker En dator gör ingenting automatiskt! Programmerare (vi) måste instruera datorn till allt Kommunikationen av instruktioner måste vara precis och exakt (som ettor och nollor)

Programmeringsspråk Naturligt språk? Programmeringsspråk Exakt notation Syntax: format Semantik: mening, betydelse

Maskinspråk Olika typer av programmeringsspråk Bara ettor och nollor Maskinberoende Assemblerspråk (lågnivåspråk) Maskinnära Maskinberoende Högnivåspråk Måste översättas för att datorn skall förstå koden Maskinoberoende Kompilerade eller tolkade

Kompilerade språk Kompilator Ett program som översätter ett program i ett högnivåspråk till motsvarande program i maskinspråk för en given dator

Tolkade språk Tolk Ett program som låtsas att datorn förstår högnivåspråk. Analyserar och exekverar källkoden en instruktion i taget inte hela programmet på en gång som en kompilator.

Kompilerade vs. tolkade språk Kompilerade språk Program översätts fullständigt på en gång Ett kompilerat program kan köras om och om igen utan att man behöver blanda in kompilatorn eller källkoden Snabbare program Tolkade språk Program översätts steg för steg Tolken och källkoden behövs varje gång programmet skall köras Flexiblare programutveckling, program kan köras interaktivt

Programmeringsspråk Fortran (1950-talet) COBOL (1959) Basic (1964) Pascal (1970) C (1970-talet) C++ (1983) Python (1991) Java (1995)

Python Tolkat skriptspråk Allt mer populärt i industrin Google, Yahoo, NASA, Compaq, Philips,... Förinstallerat på Mac och Linux (kolla versionen!) Ladda ner från http://www.python.org/download Senaste versionen 2.5.1

IDLE - Integrated DeveLopment Environment Python prompten

Interaktivt läge Perfekt för att testa enskilda satser / korta programsnuttar Python prompten >>> anger att interaktivt läge körs Exempel... >>> print Hello World >>> print 2+3 >>> print 2+3 =, 2+3

Skriptläge Kod som skrivs i det interativa läget lagras inte allt försvinner då tolken stängs måste skrivas in på nytt om vi vill köra samma program igen För att spara program skrivs de i en textfil (.py) som sparas modul / skript Kan sedan köras om och om igen, när som helst Exempel...

Inför nästa vecka Installera Python Sök upp kursböckerna på nätet Provkör Python...

Provkörning Starta Python i interaktivt läge och kör följande satser en i taget. Vad blir resultatet? Varför? a) print Att programmera är kul b) print 3.0 c) print 15 i kvadrat är, 15 * 15 d) print 2.0 + 3.0 e) print 2 + 3 f) print 2 * 3 g) print 2 ** 3 h) print 2 / 3 i) print 2.0 / 3.0