• kth.se
  • Studentwebben
  • Intranät
  • kth.se
  • Studentwebben
  • Intranät
Logga in
DD1319 HT23 (prgcl23)
Laboration 0: Introduktion
Hoppa över till innehåll
Översikt
  • Logga in
  • Översikt
  • Kalender
  • Inkorg
  • Historik
  • Hjälp
Stäng
  • Min översikt
  • DD1319 HT23 (prgcl23)
  • Uppgifter
  • Laboration 0: Introduktion
2023 HT
  • Startsida
  • Kursöversikt
  • Moduler
  • Uppgifter
  • OLI Torus SE
  • Course Evaluation

Laboration 0: Introduktion

  • Inlämningsdatum 28 sep 2023 av 18:00
  • Poäng 1
  • Lämnar in en filuppladdning
  • Filtyper pdf, txt, py, jpg och m

Välkommen till den första labben i DD1319!

I denna inledande labb tar vi upp:

0. Ubuntu 

1. Hederskodex

2. Canvas

3. Parprogrammering

4. OLI

5. Python

6. Terminal

Checka av att du har gjort alla punkter ovan innan du redovisar!

Du kommer att bli tilldelad en övningsgrupp och veckans 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 nere till vänster ser du denna ikon image.png

Spara nu de appar du kommer att använda ofta i vänstermenyn:

  • Sök efter Firefox, högerklicka, och välj Add to Favorites.
  • 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 IDLE (för att kunna skriva och köra Python-program)

Logga nu ut och låt din labbkompis logga in. Gör sedan om punkterna ovan så att ni bägge har alla tre ikonerna i vänstermenyn.

image.png  image.png  image.png

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. 

  1. Läs igenom hederskodexen.
  2. Skriv ett inlägg i Diskussioner där du bekräftar att du läst hederskodexen (ska göras av varje kursdeltagare).
  3. 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 image.png

  1. Gå till Startsidan och prova alla länkar.
  2. Vilken information kan du se under Moduler?
  3. Lägg in en bild på din profil i Canvas (det måste inte vara en bild som föreställer dig).
  4. Är du inloggad på KTH? Är du också inloggad på Canvas? Hur syns skillnaden?
  5. Hur ser du vilka uppgifter som är aktuella denna vecka?

Mer information om Canvas finns i Canvas Guides Links to an external site.

 

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!

  1. Läs på om parprogrammering.
  2. Diskutera med din labbkompis hur ni ska organisera ert arbete.  Gör sedan detta Parprogrammeringsquiz

4. OLI  image.png

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 veckans tester före deadline får du en bonuspoäng i kursen (oberoende av ditt resultat på testet).

Du kan nå OLI via Moduler i Canvas vänstermeny.

 

5. Python image.png

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.

  • När 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.
  • När du jobbar på egen dator så kan 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!)

Shell-fönstret


Fönstret IDLE Shell är en Python-interpretator, där du direkt kan skriva in en sats och utföra den. Här hamnar också utskriften från program du kör.

Testa nu att skriva satser direkt i Python Shell! Räkna ut hur många timmar denna kurs motsvarar (1,5 hp motsvarar 40 timmar).

image.png

Program-fönstret

Längst upp i fönstret kan du välja bland menyerna File, Edit, Shell, Debug, Options, Windows och Help. 

Välj nu  File -> New File  så öppnas ett nytt fönster där du kan skriva in och redigera program.

image.png       

 

Skriv ett litet Python-program som bara innehåller satsen

     print("Hello world!")

För att spara det du skrivit väljer du 
    File -> Save

Spara och provkör! Dina Python-program ska alltid ha suffixet .py (t ex Layton.py).

Om du senare vill öppna en fil som du sparat kan du använda Open...

□ Uppgift: 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.

□ Uppgift: Ett Pythonprogram med grafiskt gränssnitt

  • 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!
#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()


6. Terminal image.png

I Ubuntu använder man ofta Terminalfönstret för att hantera filer och köra program.

Läs avsnittet Why use the terminal?  (fram till Starting a Terminal). Om du vill kan du översätta texten till svenska med ChatGPT Links to an external site. ("Översätt till svenska" + klistra in texten) eller Google translate Links to an external site..

  • Öppna ett terminalfönster genom att klicka på Terminal-ikonen i vänster-menyn.
  • Skriv några tecken i terminalfönstret och tryck på Retur/Enter. Vilken felutskrift får du?

Läs avsnittet File and directory commands  (fram till Running a File Within a Directory)

  • Prova alla kommandon i avsnittet i ditt eget terminalfönster.
  • Testa också att använda wildcard: tecknet * matchar vilka tecken som helst.

Läs avsnittet Save on typing  (fram till Change the text). 

  • Skapa en ny katalog för programmeringsteknikkursen (kalla den prgcl).
  • Använd kommandot cd för att gå till katalogen prgcl (så att prgcl blir aktuell katalog).
  • Skapa nu sju underkataloger labb0, labb1, ... ,labb6
  • Gå upp till din hemkatalog igen.
  • Flytta dina python-program till din underkatalog labb0
  • Hur ser ditt filträd ut? Rita, och markera vad som är filer och vad som är kataloger.
  • Genom att skriva cat filnamn kan du visa en fil på skärmen. Prova! (kanske behöver du använda cd först...)
  • Testa till sist att köra ett pythonprogram genom att skriva python3 programnamn.py

 

Redovisning

  1. Lämna in dina program multiplikation.py, konvertera.py 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!
  2. 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).

 

 

 

1695916800 09/28/2023 06:00pm
Inkludera en beskrivning
Ytterligare kommentarer:
Maxresultat för gradering till > poäng
Inkludera en bedömningstitel

Matris

Hitta matris
Inkludera en titel
Hitta en matris
Titel
Du har redan bedömt studenter med den här matrisen. Större ändringar kan påverka resultaten för deras uppgifter.
 
 
 
 
 
 
 
     
Det går inte att ändra en matris efter att du börjat använda den.  
Titel
Kriterier Bedömningar Poäng
Det här kriteriet är länkat till ett lärandemål Beskrivning av kriterium
tröskel: 5 poäng
Redigera beskrivning av kriterium Ta bort kriterium rad
5 till >0 poäng Full poäng blank
0 till >0 poäng Inga poäng blank_2
Det här området kommer användas av utvärderaren för kommentarer relaterade till det här kriteriet.
poäng
  / 5 poäng
--
Ytterligare kommentarer
Det här kriteriet är länkat till ett lärandemål Beskrivning av kriterium
tröskel: 5 poäng
Redigera beskrivning av kriterium Ta bort kriterium rad
5 till >0 poäng Full poäng blank
0 till >0 poäng Inga poäng blank_2
Det här området kommer användas av utvärderaren för kommentarer relaterade till det här kriteriet.
poäng
  / 5 poäng
--
Ytterligare kommentarer
Poängsumma: 5 av 5
Föregående
Nästa
Föregående modul:
LAB4
Laboration 1: Biljettpriser