Laboration 0: Introduktion
- Inlämningsdatum 29 Sep 2022 av 18:00
- Poäng 0
- Lämnar in en filuppladdning
- Filtyper pdf, txt, py, jpg och m
Välkommen till den första labben i DD1312!
I denna inledande labb tar vi upp:
0. Ubuntu
1. Hederskodex
2. Canvas
3. Parprogrammering
4. OLI-konto
5. Python
6. Matlab
Checka av att du har gjort alla punkter ovan innan du redovisar!
Du kommer att bli tilldelad en övningsgrupp och en labbkompis. Gör alla uppgifterna nedan och redovisa för din lärare under labbtiden! Vid redovisningen ska du kunna uppvisa legitimation.
0. Ubuntu
Det är varken Windows eller Mac i datorsalarna som vi använder i denna kurs, utan operativsystemet Ubuntu (en variant av Linux).
- Logga in med ditt vanliga KTH-användarnamn och lösenord. (Om du glömt ditt lösenord: gå till KTH Entré för att byta. Ta med leg.)
- När du lyckats logga in är skärmen ganska tom.
Längst upp till vänster ser du denna ikon
- Här kan du söka efter Chrome eller Firefox. Välj vilken du vill, starta, och gå till kursens Canvas-sida.
Spara de program du kommer att använda ofta i vänstermenyn:
- Sök efter Chrome (eller Firefox) och dra ner ikonen till vänstermenyn.
- Gör samma sak med Terminal (I Ubuntu använder man ofta Terminalfönstret för att hantera filer och köra program)
- Gör samma sak med IDLE3 (för att kunna skriva och köra Python-program)
- Gör samma sak med Matlab (som kommer i vår).
Logga nu ut och låt din labbkompis logga in. Gör sedan om punkterna ovan så att ni bägge har alla fyra ikonerna i vänstermenyn.
Nu kan ni gå tillbaka och fortsätta med resten av Laboration 0.
1. Hederskodex
På EECS används en gemensam hederskodex för alla kurser.
- Läs igenom hederskodexen.
- Skriv ett inlägg i Diskussioner där du bekräftar att du läst hederskodexen ((ska göras av varje kursdeltagare).
- Diskutera följande situationer med din labbkompis. Bryter agerandet mot någon av reglerna i hederskodexen? Vilken regel? Vad kan det få för konsekvenser?
- Carina har influensa så Fuad gör labben på egen hand. Sen redovisar dom labben tillsammans.
- Shirin har gjort en extra smart lösning till sin P-uppgift. Hon lägger upp den på webben så att andra kan lära sig av den.
- Charlie och Kim pluggar tillsammans inför provet. Dom löser varannan uppgift och diskuterar sedan lösningarna med varandra.
2. Utforska kursen i Canvas
- Gå till Startsidan och prova alla länkar i tabellen.
- Vilken information kan du se under Moduler?
- Lägg in en bild på din profil i Canvas (det måste inte vara en bild som föreställer dig).
- Är du inloggad på KTH? Är du också inloggad på Canvas? Hur syns skillnaden?
- Hur ser du vilka uppgifter som är aktuella denna vecka?
Mer information om Canvas finns i Canvas Guides Links to an external site. under Student Guide.
3. Parprogrammering
Laborationerna görs i grupper om två. Vid första labbtillfället blir du placerad i en grupp och tilldelad en labbkompis. Varje vecka kommer vi att ordna om i grupperna så att du får en ny labkompis.
Om du kan mer programmering än din labbkompis - öva dina pedagogiska färdigheter!
- Läs på om parprogrammering.
- Diskutera med din labbkompis hur ni ska organisera ert arbete. Gör sedan detta Parprogrammeringsquiz
4. OLI
I denna kurs kommer vi att använda OLI.
OLI är en plattform där du kan läsa om de olika modulerna för kursen och sen få göra test på programeringskod kopplat till varje modul. Om du har arbetat aktivt med materialet och gjort testet före deadline får du en bonuspoäng i kursen (oberoende av ditt resultat på testet).
Här är en liten film som gör reklam för OLI.
Gå in på denna länk https://kth.oli.cmu.edu/ Links to an external site. och klicka på Student Sign up.
Kursens nyckel (Course key) är DD1312-ht22
Fyll i den i rutan och tryck på Register. När du registrerar dig ska du använda din kth-mail (xxx@kth.se) men använd inte samma lösenord.
5. Python 
I denna kurs kommer du att arbeta mest med programspråket Python. Det är ett språk som lämpar sig väl för nybörjare. Mer om Python kan du läsa på Pythons hemsida Links to an external site.
- Om du använder en dator i en datorsal på KTH kan du öppna utvecklingsmiljön IDLE genom att klicka på IDLE3-ikonen i din vänstermeny.
- Om du jobbar på egen dator så ska du installera Python från https://www.python.org/downloads/ Links to an external site.
IDLE
IDLE står för Integrated Development and Learning Environment. Det är ett program där du kan redigera och köra dina Python-program. (Om du hellre vill använda en annan utvecklingsmiljö så går det förstås bra!)
Fönstret "Python Shell" är en Python-interpretator, där du direkt kan skriva in en sats och utföra den.
Testa Shell genom att räkna ut hur många timmar denna kurs motsvarar (1,5 hp motsvarar 40 timmar).
Längst upp i IDLE-fönstret kan du välja bland menyerna File, Edit, Windows och Help.
- Om du väljer File -> New File så öppnas ett nytt fönster där du kan skriva in, redigera filer.
- Med Open... öppnar du en befintlig fil.
- För att spara det du ändrat i filen väljer du
File -> Save
Skriv ett litet Python-program som bara innehåller satsen
print("Hello world!")
Spara och provkör! Dina Python-program ska alltid ha suffixet .py (t ex Layton.py).
Se till att detta fungerar för bägge gruppmedlemmarna!
Ett textbaserat Pythonprogram
- Öppna IDLE
- Gå till menyn File och välj New File
- Skriv in programmet nedan och spara som multiplikation.py
def main(): # Skriver ut en multiplikationstabell n = 5 print() print("Multiplikationstabell för", n) print("-------------") for i in range(1, 10): print(i*n) print() main()
- Provkör med Run -> Run Module
- Ändra så att multiplikationstabellen för 9 skrivs ut istället
- Snygga till streckraden under rubriken
- Under avsnittet Parprogrammering ovan bestämde ni var ni skulle spara kod så att ni bägge kan komma åt den. Spara programmet där, och testa så att ni bägge kan lägga upp filer.
Ett Pythonprogram med grafiskt gränssnitt
#Konverteringsprogram med grafiskt gränssnitt from tkinter import * def inches2cm(inch): return 1*inch def konvertera(indata): utmatning["text"] = str(inches2cm(indata)) STORLEK = 20 TIMES = ("Times", STORLEK) COURIER = ("Courier", STORLEK) rot = Tk() rot.title("Lindas konverteringsprogram") huvudRam = Frame(rot) huvudRam.grid() info = Label(text = "Konvertera inches till cm", font = TIMES) info.grid(row = 0, column = 0, padx = 5, pady = 5) inmatning = Entry(font=COURIER, width = 11) inmatning.grid(row=1, column = 0, padx = 5, pady = 5, sticky = E) ledtext = Label(text = "inch", font=TIMES) ledtext.grid(row = 1, column = 1, padx = 5, pady = 5, sticky = W) utmatning = Label(font=COURIER, width = 4) utmatning.grid(row=2, column = 0, padx = 5, pady = 5) svarstext = Label(text = "cm", font=TIMES) svarstext.grid(row = 2, column = 1, padx = 5, pady = 5, sticky = W) knapp = Button(text = "Konvertera", font = TIMES, command = lambda: konvertera(float(inmatning.get()))) knapp.grid(row = 3, column = 1, padx = 5, pady = 5) rot.mainloop()
- Skriv in programmet ovan (Copy-Paste fungerar) och spara det som konvertera.py
- Provkör med några olika värden. Det verkar vara något fel med konverteringen.
- Ändra så att programmet konverterar rätt!
6. Matlab 
Matlab är ett språk som är specialiserat för beräkningar. Vi kommer att arbeta med Matlab i vår, men redan nu ska du få starta Matlab och prova att göra en beräkning och att rita upp en graf.
Starta Matlab via ikonen i din vänstermeny.
(Om det inte fungerade, eller om du gör labben på egen dator så kan du använda online-versionen: Matlab Online. Gå till https://se.mathworks.com/login och skapa ett konto med din kth-mail (för att kunna använda kth-licensen). Använd inte samma lösenord!)
Gör följande i Matlab
- Gå till Command Window (nedre mitten). Här kan du skriva satser, precis som i Pythons shell-fönster.
- Prova genom att beräkna sin(3)
- Sök efter sin i sökrutan längst upp till höger och titta igenom dokumentationen.
- Välj New Script (längst upp till vänster). Skriv in programmet nedan och spara som graf.m
%Ritar funktionen z = x^2*y^2 clf %clear figure x = 0:1:5*pi; y = -6:1:6; [X,Y] = meshgrid(x,y); Z = sin(X).*sin(Y) surf(X,Y,Z) title("sin(x)*sin(y)")
- Provkör
- Prova att flytta runt/vrida grafen
- Ändra i programmet så att grafen blir mindre kantig
- Spara den nya versionen av ditt program
Vill du veta mer om Matlab? Se MathWorks Links to an external site. hemsida.
Redovisning
- Lämna in dina program multiplikation.py, konvertera.py och graf.m här i Canvas.
- Tryck på knappen "Starta uppgift" så kommer du till inlämningssidan.
- Ser du ingen inlämningsknapp? Kontrollera att du är inloggad i Canvas.
- OBS: Bägge i gruppen ska lämna in!
- Visa för din lärare att du gjort alla delarna av labben och se till att du blir avprickad på listan.
Nästa vecka ska du göra Labb 1. Läs igenom labben och planera tillsammans med din labbkompis (samma som för denna labb). |