Grundläggande datavetenskap 4p

Relevanta dokument
Datavetenskapliga programmet, Allmän inriktning 180 högskolepoäng

Introduktion till datateknik och datavetenskap

Datavetenskapliga programmet, 180 högskolepoäng

Institutionen för datavetenskap vid Helsingfors universitet

Datavetenskapliga programmet, Mjukvaruutveckling 180 högskolepoäng

Datavetenskapliga programmet, Spel, 180 högskolepoäng

Algoritmer och datastrukturer. HI1029 8,0 hp Introduktion

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

Programvaruteknik, hp

Kursplan. System och programkonstruktion. Systems and Software Development

ENKEL Programmering 3

Avdelningen för informations- och kommunikationssystem Fakulteten för naturvetenskap, teknik och medier

Dela, koda och korrigera! Undervisningsmaterial inom digital kompetens

Program & programmering

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan. Högskoleingenjörsprogrammet i datateknik

Datateknik A, Tillämpad datavetenskap, 30 högskolepoäng Computer Science, Applied Computer Science, Basic Course, 30 Credits

Introduktionsmöte Innehåll

Programmera och hitta buggarna. Se video

Välkomna till DIT012 IPGO

Datavetenskapligt program, 180 högskolepoäng

Beslut om fastställande: - - Behörighetskrav: -

Utbildningsplan för Datavetenskapligt program, 180 högskolepoäng

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

Hur jag lärde mig att älska Datavetenskap

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg

Programmering. Seminarier i datavetenskap, datorteknik och informationsteknik. Niklas Broberg

Programmering. Den första datorn hette ENIAC.

LABORATION 1 Pingpong och Installation av Server 2008 R2

Teknikhistoria: Den första programmeraren

Föreläsning 2. Operativsystem och programmering

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan SGITD. IT-design. Study programme in IT-Design

Introduktion till programmering

Programschema för Datavetenskapliga programmet, 180 hp. Gäller för läsåret 2018/2019. Programschema för 2018/2019.

Programschemat är beslutat av utbildningsledare Annika Björklund vid akademin för innovation, design och teknik

Systemintegration 2019 YRGO. Introduktion till kursen

Datalogiskt tänkande. med DATALIA DATALIA

SSY1K, Kandidatprogram i systemvetenskap, 180 hp. SSY1K PROG, Kandidatprogram i systemvetenskap Programvaruteknik, 180 hp

Datavetenskapligt program, 180 högskolepoäng

Programschemat är beslutat av utbildningsledare Annika Björklund vid akademin för innovation, design och teknik

Samhällsmätning EXTA50, 9 hp

UTBILDNINGSPLAN. DATAINGENJÖRSPROGRAMMET, 120/160 POÄNG Computer Engineering Programme, 120/160 points

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan SGITD. IT-Designprogrammet. Study programme in IT-Design

INSTITUTIONEN FÖR MATEMATIK OCH NATURVETENSKAP. Fastställd i institutionsstyrelsen Dnr 853/333-03

Grundkurs i programmering - intro

NUMERISKA METODER HT01. Energiteknik & Teknisk fysik HT01. Institutionen för Datavetenskap Umeå Universitet

KURSPROGRAM MODELLERING AV DYNAMISKA SYSTEM, 5hp, period 4

Grundläggande datavetenskap, 4p

Föreläsning 17 UTBLICK: FORTSÄTTNINGSKURSER I DATAVETENSKAP + ANDROID

EDAA01 Programmeringsteknik - fördjupningskurs

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

Undervisningsprogram Uppdaterad DATAVETENSKAP

Fakulteten för ekonomi, kommunikation och IT. Utbildningsplan. Högskoleingenjörsprogrammet i datateknik TGDDI

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

13 1MA302 Automatateori DV1 4 A D, M 1TD442 Algoritmer och datastrukturer DV1 6 A D

HF0010. Introduktionskurs i datateknik 1,5 hp

DATAVETENSKAP Läsåret

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

Introduktion till programmering. Undervisning. Litteratur och examination. Lärare. Föreläsning 1

Kursanalys. Douglas Wikström 15 juni Problemlösning och programmering under press (DD2458) Högskolepoäng (hp): 9 Kursen gavs: Period 1-2, 2008

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

Bakgrundsinformation Kursens namn: Biomedicinsk laboratorievetenskap: Introduktion

Hur fungerar en dator?

Kursplan. Mål 1(5) Mål för utbildning på avancerad nivå. Kursens mål. Denna kursplan är nedlagd eller ersatt av ny kursplan.

Universitetet i Linköping Institutionen för datavetenskap Anders Haraldsson

Introduktionsföreläsning

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

UTBILDNINGSPLAN. Högskoleingenjörsutbildning i datateknik, 180 högskolepoäng. Computer Engineering Programme, 180 ECTS Credits

Utbildningslinjen för Informationsteknologi

Användningen av nätet i undervisningen Bilaga 1 Institution: "Bioblocket": biologi (BL), biokemi (BK), biovetenskap (BV), farmaci (F)

Kursinformation Mål för kursen är följande huvudområden: Kunskapsmålen för kursen är: Färdighetsmålen för kursen är:

PROGRAMMERING ÅK 9 INTRODUKTION

Presentation. Curriculum Vitae för Lars Kristiansson,

Undervisningsprogram Uppdaterat DATAVETENSKAP Uppd Åk 4-5 p3: Data Mining and Text Mining inhiberad

Programmering från början

Utbildningsplan för. International Software Engineering, 180 högskolepoäng

Hur fungerar en dator? Lektionen handlar om att förstå hur datorer styrs av program. Hur fungerar en dator? Lektionsförfattare: Boel Nygren

Introduktionsföreläsning

Datorsystemteknik DAV A14 Föreläsning 1

Viktiga roller. Martin Blom, , rum 21E411. Inger Bran, , rum 21E414

Programmering och digital kompetens

Fasta tillståndets fysik FFFF05

DATAINGENJÖRSPROGRAMMET, 180 HÖGSKOLEPOÄNG Computer Engineering Programme, 180 higher education credits

FMS032: MATEMATISK STATISTIK AK FÖR V OCH L KURSPROGRAM HT 2015

CS - Computer science. Datateknik Informationsbehandling Datalogi Datavetenskap (ÅA 2008)

Grundläggande programmering med matematikdidaktisk inriktning för lärare som undervisar i gy eller komvux gy nivå, 7,5 hp

KURSPROGRAM Kommunal och industriell avloppsvattenrening

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

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

Välkommen till IT-design programmet :-D

Programinformation för Webb, internet och programvaruteknik, 120 högskolepoäng

Kursvärdering Matematik 1 - distans

Datateknik B, Tillämpad datavetenskap, 30 högskolepoäng Computer Science, Applied Computer Science, Intermediate Course, 30 Credits

Evaluation Summary - CDT104 Grundläggande Webbdesign HT07 Dan Levin

Trippel Helix Workshop

Aktuell information finns på anslagstavlor och på institutionens hemsida Studieperiod Kod Lärare Vecka Tid Auditorium

Lars-Henrik Eriksson

SKOLFS. beslutade den -- maj 2015.

PROTOKOLL

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

Transkript:

Grundläggande datavetenskap 4p Stefan.Pettersson@mh.se http://www.itm.mh.se/~stepet Kursinformation Planering Läsanvisningar Föreläsningsbilder Övningsuppgifter Laborationer 2004-11-04 IT och Medier 1

Grundläggande datavetenskap 4p Övningsuppgifterna Övning inför tentan Kan skickas in för rättning Laborationer 1 maskinkodslab och 3 C++-labbar (just nu) Arbeta två och två Ett dokument per laboration med svar och kod Visa attniförstått 2004-11-04 IT och Medier 2

Grundläggande datavetenskap 4p Kurslitteratur Computer science - an overview, J. Glenn Brookshear, 8:e upplagan Kompendium: Introduktion till programmering, Martin Kjellqvist (vaktmästeriet) Projekt i tal & skrift Titel med kort beskrivning av projektet skickas till mig för godkännande 2004-11-04 IT och Medier 3

Grundläggande datavetenskap 4p Kursen behandlar grundläggande principer för hur datorer, datakommunikation och datorprogram fungerar samt grundprinciperna för konstruktion av datorprogram. Kursen ger behörighet för kurser i programmering. 2004-11-04 IT och Medier 4

Planering Föreläsning 1 2 3 4 5 6 7 8 9 10 11 12 Moment Introduktion Datarepresentation, datalagring Hårdvara, programexekvering Operativsystem Nätverk & Internet Algoritmer C++ Programmeringsspråk Programvaruutveckling Dataabstraktioner Databaser Repetition Kapitel 0 1 2 3 4 5 6 7 8 9 2004-11-04 IT och Medier 5

Grundläggande datavetenskap, 4p Kapitel 0 Introduktion och historik Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-04 IT och Medier 6

Innehåll Vad är Datavetenskap? Algoritmer Historik Abstraktioner 2004-11-04 IT och Medier 7

Datavetenskap Ämnesområdet Datavetenskap innehåller: Konstruktion av datorer Programmering av datorer Kommunikation mellan datorer Informationsbehandling Problemlösning med algoritmer Algoritmutveckling 2004-11-04 IT och Medier 8

Algoritmer En algoritm är ett antal steg som definierar hur en uppgift ska utföras. Exempel på algoritmer: Byggbeskrivning för ett modellflygplan Program som styr en tvättmaskin Noter att spela musik efter Noter att köra rallybil efter Anvisningar för ett korttrick 2004-11-04 IT och Medier 9

Algoritm för ett korttrick Trick: Magikern placerar några kort från en ordinär kortlek med framsidan neråt på ett bord. Korten blandas och magikern frågar sedan om han ska vända upp ett rött eller svart kort, varpå han vänder upp ett kort med den efterfrågade färgen. Gör så här: 1) Välj 10 röda och 10 svarta kort från en vanlig kortlek. Lägg korten i två högar med framsidorna uppåt, de röda i den ena och de svarta i den andra högen. 2) Tillkännage att du har valt ut några röda och svarta kort. 3) Ta upp de röda korten. Under förevändning att göra en snygg liten hög av dem, böjer du korten lätt så att de ligger på magen när du lägger ner dem på bordet med framsidan neråt. Säg: Här är den röda högen. 4) Gör på motsvarande sätt med de svarta korten men böj dem så att de ligger på ändarna när du lägger dem på bordet med framsidan neråt. Säg: Här är den svarta högen. 2004-11-04 IT och Medier 10

Algoritm för ett korttrick II 5) Blanda korten på bordet genast efter att du lagt dit de svarta korten. Använd båda händerna och sprid ut korten på bordet sedan de är blandade. Förklara för åhörarna att du blandar korten. 6) Upprepa följande steg så länge det finns kort med framsidan mot bordet i. Be åhörarna fråga om dom vill se ett rött eller ett svart kort. ii. Om ett rött kort efterfrågas, välj ett kort som ligger på magen, vänd på det och säg: Här är ett rött kort. iii. Om ett svart kort efterfrågas, välj ett kort som ligger på ändarna, vänd på det och säg: Här är ett svart kort. iv. Om det är slut på den efterfrågade färgen, säg detta och vänd upp resterande kort av den andra färgen. 2004-11-04 IT och Medier 11

Största gemensamma divisorn Euclides algoritm för att hitta den största gemensamma divisorn till två positiva heltal 1) Tilldela det större talet till M och det mindre till N 2) Dividera M med N och tilldela resten till R 3) Om R = 0 är N den största gemensamma divisorn. Om R 0 sätt M = N och N = R och gå till steg 2) 2004-11-04 IT och Medier 12

Algoritmfunderingar En algoritm innehåller kunskap, intelligens Jfr Euklides algoritm Ett program är en algoritm skriven så att en maskin förstår den Ingen maskin är intelligentare än sin algoritm Mycket inom datavetenskapen hör ihop med utvecklingen av algoritmer Hur upptäcker man en algoritm? 2004-11-04 IT och Medier 13

Program- och hårdvara Programvara = program (algoritmer) Software Hårdvara = maskiner Hardware 2004-11-04 IT och Medier 14

Historik Abacus Kulram från Kina 500 f.kr till 1200 e.kr Pascal (1623 1662) additionsmaskin Leibniz (1646 1716) aritmetikmaskin Babbage (1792 1871) - programmerbar maskin 2004-11-04 IT och Medier 15

Hur definieras Datavetenskapen? Vilka problem kan lösas med algoritmer? Hur kan man göra det lättare att ta fram algoritmer? Hur kan tekniken för programmering och presentation av algoritmer förbättras? Hur kan våra kunskaper om algoritmer och teknologi användas för att förbättra våra maskiner? Hur kan karaktäristika för olika algoritmer analyseras och jämföras? 2004-11-04 IT och Medier 16

Algoritmers centrala roll Figur 0.5 2004-11-04 IT och Medier 17

Abstraktioner Abstraktion = man skiljer på en komponents yttre egenskaper och på dess inre detaljkonstruktion Köra en bil utan att veta hur den fungerar i detalj Använda en dator utan att veta hur den fungerar elektroniskt kunna programmera den 2004-11-04 IT och Medier 18

Från detaljer till abstraktion Från nollor och ettor till beräkningsteori Kap 1 Datalagring Kap 2 Datamanipulation Kap 3 Operativsystem Kap 4 Nätverk Kap 5 Algoritmer Kap 6 Programmeringsspråk Kap 7 Programvaruutveckling Kap 8 Dataabstraktioner Kap 9 Databaser Kap 10 Artificiell intelligens Kap 11 Beräkningsteori 2004-11-04 IT och Medier 19