From 76ef07d63c33ed195fa409e2f2613faf7e42b0e1 Mon Sep 17 00:00:00 2001 From: linza79 <63407420+linza79@users.noreply.github.com> Date: Wed, 4 Sep 2024 20:03:14 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20rage/ohj?= =?UTF-8?q?elmointi-24-sv@09e7273143161745447cd1a94f4cda4423617b98=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 404.html | 2 +- 404/index.html | 2 +- alla-uppgifter/index.html | 2 +- bedomningar-och-prov/index.html | 2 +- credits/index.html | 2 +- felanmalningar/index.html | 2 +- index.html | 4 ++-- ofta-stallda-fragar/index.html | 2 +- onlinetent-ohja/index.html | 2 +- onlinetent-ohpe/index.html | 2 +- onlinetent/index.html | 2 +- osa-1/1-introduktion/index.html | 2 +- osa-1/2-info-fran-anvandaren/index.html | 2 +- osa-1/3-mer-om-variabler/index.html | 4 ++-- osa-1/4-rakneoperationer/index.html | 2 +- osa-1/5-villkorssatser/index.html | 2 +- osa-1/index.html | 2 +- osa-10/1-klasshierarkier/index.html | 2 +- osa-10/2-atkamstmodifierare/index.html | 2 +- .../3-objektorienterade-programmeringstekniker/index.html | 2 +- osa-10/4-storre-applikation/index.html | 2 +- osa-10/index.html | 2 +- osa-11/1-list-comprehension/index.html | 2 +- osa-11/2-mer-om-comprehensions/index.html | 2 +- osa-11/3-rekursion/index.html | 2 +- osa-11/4-lisaa-esimerkkeja/index.html | 2 +- osa-11/index.html | 2 +- osa-12/1-funktioner-som-argument/index.html | 2 +- osa-12/2-generatorer/index.html | 2 +- osa-12/3-funktionell-programmering/index.html | 2 +- osa-12/4-reguljara-uttryck/index.html | 2 +- osa-12/index.html | 2 +- osa-13/1-pygame/index.html | 2 +- osa-13/2-animation/index.html | 2 +- osa-13/3-handelser/index.html | 2 +- osa-13/4-fler-pygame-tekniker/index.html | 2 +- osa-13/index.html | 2 +- osa-14/1-spelprojekt/index.html | 2 +- osa-14/2-robot-och-ladar/index.html | 2 +- osa-14/3-fardigstallande-av-spelet/index.html | 2 +- osa-14/4-ditt-eget-sepl/index.html | 6 +++--- osa-14/index.html | 2 +- osa-2/1-terminologi/index.html | 2 +- osa-2/2-else-elif/index.html | 2 +- osa-2/3-kombinera-villkor/index.html | 2 +- osa-2/4-loopar/index.html | 2 +- osa-2/index.html | 2 +- osa-3/1-loopar-med-villkor/index.html | 2 +- osa-3/2-behandla-strangar/index.html | 2 +- osa-3/3-mer-om-loopar/index.html | 2 +- osa-3/4-definiera-funktioner/index.html | 2 +- osa-3/index.html | 2 +- osa-4/1-vscode/index.html | 2 +- osa-4/2-mer-om-funktioner/index.html | 2 +- osa-4/3-listor/index.html | 2 +- osa-4/4-iteration/index.html | 2 +- osa-4/5-utskrift/index.html | 2 +- osa-4/6-strangar-listor/index.html | 2 +- osa-4/index.html | 2 +- osa-5/1-mer-om-listor/index.html | 2 +- osa-5/2-referenser/index.html | 2 +- osa-5/3-lexikon/index.html | 2 +- osa-5/4-tuple/index.html | 2 +- osa-5/index.html | 2 +- osa-6/1-lasa-filer/index.html | 2 +- osa-6/2-skriva-filer/index.html | 2 +- osa-6/3-fel/index.html | 2 +- osa-6/4-lokala-globala-variabler/index.html | 2 +- osa-6/index.html | 2 +- osa-7/1-moduler/index.html | 2 +- osa-7/2-slumpmassighet/index.html | 2 +- osa-7/3-tid-datum/index.html | 2 +- osa-7/4-behandla-data/index.html | 2 +- osa-7/5-egna-moduler/index.html | 2 +- osa-7/6-funktionaliteter-python/index.html | 2 +- osa-7/index.html | 2 +- osa-8/1-objekt-och-metoder/index.html | 2 +- osa-8/2-klasser-och-objekt/index.html | 2 +- osa-8/3-egna-klasser/index.html | 2 +- osa-8/4-metoder-i-egna-klasser/index.html | 2 +- osa-8/5-fler-exempel/index.html | 2 +- osa-8/index.html | 2 +- osa-9/1-objekt-och-referenser/index.html | 2 +- osa-9/2-objekt-som-attribut/index.html | 2 +- osa-9/3-inkapsling/index.html | 2 +- osa-9/4-metodernas-rackvidd/index.html | 2 +- osa-9/5-klassattribut/index.html | 2 +- osa-9/6-fler-exempel-med-klasser/index.html | 2 +- osa-9/index.html | 2 +- page-data/index/page-data.json | 2 +- report-issue/index.html | 2 +- sanasto/index.html | 2 +- sign-in/index.html | 2 +- sign-up/index.html | 2 +- stod/index.html | 2 +- 95 files changed, 99 insertions(+), 99 deletions(-) diff --git a/404.html b/404.html index 0ae88479f..3ae12b207 100644 --- a/404.html +++ b/404.html @@ -134,4 +134,4 @@ } } }) -

Ei löytynyt

Olet päätynyt osoitteeseen, jota ei ole olemassa.

\ No newline at end of file +

Ei löytynyt

Olet päätynyt osoitteeseen, jota ei ole olemassa.

\ No newline at end of file diff --git a/404/index.html b/404/index.html index 0b221be8d..4e62cc698 100644 --- a/404/index.html +++ b/404/index.html @@ -134,4 +134,4 @@ } } }) -

Ei löytynyt

Olet päätynyt osoitteeseen, jota ei ole olemassa.

\ No newline at end of file +

Ei löytynyt

Olet päätynyt osoitteeseen, jota ei ole olemassa.

\ No newline at end of file diff --git a/alla-uppgifter/index.html b/alla-uppgifter/index.html index 825ce3e34..d010e1ff5 100644 --- a/alla-uppgifter/index.html +++ b/alla-uppgifter/index.html @@ -136,4 +136,4 @@ } } }) -
\ No newline at end of file +
\ No newline at end of file diff --git a/bedomningar-och-prov/index.html b/bedomningar-och-prov/index.html index db69199a9..055b82a3d 100644 --- a/bedomningar-och-prov/index.html +++ b/bedomningar-och-prov/index.html @@ -181,4 +181,4 @@ underkänt -

Bedömningen baseras på uppgifterna (utgör 50 % av totalpoängen) och tenten (utgör 50 % av totalpoängen). Detta innebär att vitsordsskalans totalpoäng fås genom att addera ihop poängen från kursuppgifterna (som syns i poängvisualiseraren) och tenten.

Minimikrav

För att komma igenom kursen krävs minst 25 % av uppgiftspoängen i varje modul och minst 50 % i tenten.

\ No newline at end of file +

Bedömningen baseras på uppgifterna (utgör 50 % av totalpoängen) och tenten (utgör 50 % av totalpoängen). Detta innebär att vitsordsskalans totalpoäng fås genom att addera ihop poängen från kursuppgifterna (som syns i poängvisualiseraren) och tenten.

Minimikrav

För att komma igenom kursen krävs minst 25 % av uppgiftspoängen i varje modul och minst 50 % i tenten.

\ No newline at end of file diff --git a/credits/index.html b/credits/index.html index 148b8bea0..d3219f2d0 100644 --- a/credits/index.html +++ b/credits/index.html @@ -134,4 +134,4 @@ } } }) -

Kiitokset ja materiaalista

Kurssin on tehnyt Helsingin yliopiston Agile Education Research -tutkimusryhmä.

Kurssimateriaali

Kurssimateriaalin ja tehtävien tekijät ovat Erkki Kaila, Antti Laaksonen ja Matti Luukkainen. Muutama kurssin tehtävistä on Arto Hellaksen (né Vihavainen) käsialaa.

Kurssin materiaali on lisensoitu Creative Commons BY-NC-SA 4.0 -lisenssillä, joten voit käyttää ja levittää sitä vapaasti, kunhan alkuperäisten tekijöiden nimiä ei poisteta. Jos teet muutoksia materiaaliin ja haluat levittää muunneltua versiota, se täytyy lisensoida samalla lisenssillä. Materiaalien käyttö kaupalliseen tarkoitukseen on ilman erillistä lupaa kielletty.

Kurssilla käytössä oleva teknologia

Kurssisivuston ovat tehneet Henrik Nygren ja Antti Leinonen. Helsingin yliopiston Agile Education Research -tutkimusryhmä on luonut kurssilla käytetyn ohjelmointitehtävien palautusympäristön (Test My Code) ja sen liitännäiset ohjelmointiympäristöihin, kurssimateriaalissa olevan kyselyjärjestelmän ja muut toiminnot.

\ No newline at end of file +

Kiitokset ja materiaalista

Kurssin on tehnyt Helsingin yliopiston Agile Education Research -tutkimusryhmä.

Kurssimateriaali

Kurssimateriaalin ja tehtävien tekijät ovat Erkki Kaila, Antti Laaksonen ja Matti Luukkainen. Muutama kurssin tehtävistä on Arto Hellaksen (né Vihavainen) käsialaa.

Kurssin materiaali on lisensoitu Creative Commons BY-NC-SA 4.0 -lisenssillä, joten voit käyttää ja levittää sitä vapaasti, kunhan alkuperäisten tekijöiden nimiä ei poisteta. Jos teet muutoksia materiaaliin ja haluat levittää muunneltua versiota, se täytyy lisensoida samalla lisenssillä. Materiaalien käyttö kaupalliseen tarkoitukseen on ilman erillistä lupaa kielletty.

Kurssilla käytössä oleva teknologia

Kurssisivuston ovat tehneet Henrik Nygren ja Antti Leinonen. Helsingin yliopiston Agile Education Research -tutkimusryhmä on luonut kurssilla käytetyn ohjelmointitehtävien palautusympäristön (Test My Code) ja sen liitännäiset ohjelmointiympäristöihin, kurssimateriaalissa olevan kyselyjärjestelmän ja muut toiminnot.

\ No newline at end of file diff --git a/felanmalningar/index.html b/felanmalningar/index.html index 7104cf655..030da6f1c 100644 --- a/felanmalningar/index.html +++ b/felanmalningar/index.html @@ -166,4 +166,4 @@

print(alder//2) # fel: input läser in data som strängar, och här har variabeln alder inte omvandlats till ett heltal

TypeError: cannot concatenate 'str' and 'int' objects on line [radnummer]

-

Se ovanstående fel.

\ No newline at end of file +

Se ovanstående fel.

\ No newline at end of file diff --git a/index.html b/index.html index 64f7e98d1..1623619bb 100644 --- a/index.html +++ b/index.html @@ -251,9 +251,9 @@

Kursöversikt
DatumPlatsModulInspelning
Ons 4.9.2024Exactum1Kursträff 1, Linkki-presentation
Ons 11.9.2024Zoom2TBA
Ons 18.9.2024Zoom3TBA
Ons 25.9.2024Exactum4TBA
Ons 2.10.2024Exactum5TBA
Ons 9.10.2024Exactum6TBA
Ons 16.10.2024Exactum7TBA
Ti 29.10.2024Exactum8TBA
Ti 5.11.2024Exactum9TBA
Ti 12.11.2024Zoom10TBA
Ti 19.11.2024Zoom11TBA
Ti 26.11.2024Exactum12TBA
Ti 3.12.2024Zoom13TBA
Ti 10.12.2024Exactum14Ingen genomgång, projektarbete
+
DatumPlatsModulInspelning
Ons 4.9.2024Exactum D1221Kursträff 1, Linkki-presentation
Ons 11.9.2024Zoom2TBA
Ons 18.9.2024Zoom3TBA
Ons 25.9.2024Exactum D1224TBA
Ons 2.10.2024Exactum D1225TBA
Ons 9.10.2024Exactum D1226TBA
Ons 16.10.2024Exactum D1227TBA
Ti 29.10.2024Exactum D1228TBA
Ti 5.11.2024Exactum D1229TBA
Ti 12.11.2024Zoom10TBA
Ti 19.11.2024Zoom11TBA
Ti 26.11.2024Exactum D12212TBA
Ti 3.12.2024Zoom13TBA
Ti 10.12.2024Exactum D12214Ingen genomgång, projektarbete

OBS! Det kan bli ändringar i denna kursöversikt.

1 + 1 poäng tilläggsprestationer

Ifall du tidigare har slutfört motsvarande kurser i Java vid Helsingfors universitet, kan du nu genomföra kurserna i Python och få tilläggsstudiepoäng (1 + 1 sp). Du hittar mer info om detta under rubriken Bedömning och tentamen.

Tidsgräns

-

Kursen är öppen från september 2024 till mars 2025. Du kan göra uppgifterna i egen takt fram tills dess.

\ No newline at end of file +

Kursen är öppen från september 2024 till mars 2025. Du kan göra uppgifterna i egen takt fram tills dess.

\ No newline at end of file diff --git a/ofta-stallda-fragar/index.html b/ofta-stallda-fragar/index.html index 336df255f..b458e3ac8 100644 --- a/ofta-stallda-fragar/index.html +++ b/ofta-stallda-fragar/index.html @@ -165,4 +165,4 @@

FPA vill ha bevis på mina studier

Du kan ge FPA följande information:

Introduktion till programmering är en webbkurs som är gratis och öppen för alla intresserade. Att delta i kursen kan liknas med att låna en bok från ett bibliotek. Den bok du lånar på biblioteket kan vara relaterad till någon kurs som hör till dina universitetsstudier. Precis som en bok som lånas på biblioteket är vår onlinekurs tillgänglig för läsning för nöjes skull och självutbildning eller för att främja dina universitetsstudier.

-

Introduktion till programmering motsvarar en kurs värd 5 studiepoäng vid Helsingfors universitet. Den som genomför och avlägger kursen är däremot inte automatiskt studerande vid Helsingfors universitet, och vi tvingar inte heller någon att slutföra kursen i ett studiepoängsgivande format. Kursens genomförande kan dock vid önskan ge studiepoäng. Deltagande i kursen ger inte rätt till studiestöd.

\ No newline at end of file +

Introduktion till programmering motsvarar en kurs värd 5 studiepoäng vid Helsingfors universitet. Den som genomför och avlägger kursen är däremot inte automatiskt studerande vid Helsingfors universitet, och vi tvingar inte heller någon att slutföra kursen i ett studiepoängsgivande format. Kursens genomförande kan dock vid önskan ge studiepoäng. Deltagande i kursen ger inte rätt till studiestöd.

\ No newline at end of file diff --git a/onlinetent-ohja/index.html b/onlinetent-ohja/index.html index 40d893233..7dfd1e2a4 100644 --- a/onlinetent-ohja/index.html +++ b/onlinetent-ohja/index.html @@ -192,4 +192,4 @@
  • Tentsvaren granskas med plagieringsigenkänningsprogram. Svindling leder alltid minst till att tentprestationen underkänns, möjligen även till avlägsning ur kursen.
  • Tentfrågor påminner om kursmaterialets uppgifter - som förberedning till tenten lönar det alltså att gå igenom materialet
  • Kursens resultat kommer efter provet till eposten med instruktioner för tillgodoräknande
  • -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/onlinetent-ohpe/index.html b/onlinetent-ohpe/index.html index 671bc2e1a..a971a5177 100644 --- a/onlinetent-ohpe/index.html +++ b/onlinetent-ohpe/index.html @@ -192,4 +192,4 @@
  • Tentsvaren granskas med plagieringsigenkänningsprogram. Svindling leder alltid minst till att tentprestationen underkänns, möjligen även till avlägsning ur kursen.
  • Tentfrågor påminner om kursmaterialets uppgifter - som förberedning till tenten lönar det alltså att gå igenom materialet
  • Kursens resultat kommer efter provet till eposten med instruktioner för tillgodoräknande
  • -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/onlinetent/index.html b/onlinetent/index.html index 739443df2..4df1a8e84 100644 --- a/onlinetent/index.html +++ b/onlinetent/index.html @@ -192,4 +192,4 @@
  • Tentsvaren granskas med plagieringsigenkänningsprogram. Svindling leder alltid minst till att tentprestationen underkänns, möjligen även till avlägsning ur kursen.
  • Tentfrågor påminner om kursmaterialets uppgifter - som förberedning till tenten lönar det alltså att gå igenom materialet
  • Kursens resultat kommer efter provet till eposten med instruktioner för tillgodoräknande
  • -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/osa-1/1-introduktion/index.html b/osa-1/1-introduktion/index.html index 0096983c6..3ae3dcd06 100644 --- a/osa-1/1-introduktion/index.html +++ b/osa-1/1-introduktion/index.html @@ -228,4 +228,4 @@ # ett år består av 365 dagar och varje dag av 24 timmar print(365*24)

    När programmet körs, kommer kommentaren inte att synas för användaren:

    Exempelutskrift

    Antal timmar i ett år: 8760

    Korta kommentarer kan också skrivas i slutet på en rad, på följande sätt:

    print("Antal timmar i ett år:")
    -print(365*24) # 365 dagar, 24 timmar per dag

    Du hittar ett repetitionsquiz för denna del här:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Information från användaren

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(365*24) # 365 dagar, 24 timmar per dag

    Du hittar ett repetitionsquiz för denna del här:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Information från användaren

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-1/2-info-fran-anvandaren/index.html b/osa-1/2-info-fran-anvandaren/index.html index 1e9775126..bd45ad48e 100644 --- a/osa-1/2-info-fran-anvandaren/index.html +++ b/osa-1/2-info-fran-anvandaren/index.html @@ -246,4 +246,4 @@ print("Gatuadressen är nu " + gata)

    Så här kan det se ut när programmet körs:

    Exempelutskrift

    Vilken är din gatuadress? Slitagestigen 2 Ange en ny gatuadress: Värjan 1 -Gatuadressen är nu Värjan 1

    Du hittar ett repetitionsquiz för denna del här:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Mer om variabler

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Gatuadressen är nu Värjan 1

    Du hittar ett repetitionsquiz för denna del här:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Mer om variabler

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-1/3-mer-om-variabler/index.html b/osa-1/3-mer-om-variabler/index.html index f58c1ed75..e61fd1afc 100644 --- a/osa-1/3-mer-om-variabler/index.html +++ b/osa-1/3-mer-om-variabler/index.html @@ -210,7 +210,7 @@
  • kan du använda variabler i olika situationer
  • vet du vilken typ av data som kan lagras i variabler
  • känner du till skillnaderna mellan strängar, heltal och flyttal.
  • -

    Vänligen fyll i den här enkäten före du börjar med den här delen. Du får ett poäng efter att du har fyllt i enkäten.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Variabler har olika användningsområden inom programmering. Du kan använda variabler för att lagra vilken som helst typ av information som kan behövas senare medan ett program körs.

    I Python skapas variabler på följande sätt:

    variabelns_namn = ...

    där ... syftar till värdet som sparas i variabeln.

    Till exempel när du använde input för att läsa in en sträng från användaren, sparade du strängen i en variabel och använde variabeln senare i ditt program.

    namn = input("Ange ditt namn: ")
    +

    Vänligen fyll i den här enkäten före du börjar med den här delen. Du får ett poäng efter att du har fyllt i enkäten.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Variabler har olika användningsområden inom programmering. Du kan använda variabler för att lagra vilken som helst typ av information som kan behövas senare medan ett program körs.

    I Python skapas variabler på följande sätt:

    variabelns_namn = ...

    där ... syftar till värdet som sparas i variabeln.

    Till exempel när du använde input för att läsa in en sträng från användaren, sparade du strängen i en variabel och använde variabeln senare i ditt program.

    namn = input("Ange ditt namn: ")
     print("Hejsan " + namn)
    Exempelutskrift

    Ange ditt namn: Konstantin Hejsan Konstantin

    När man ger en variabel ett värde säger man att man tilldelar den ett värde. I koden ovan tilldelar vi alltså variabeln namn det värde som användaren matar in som svar på frågan "Ange ditt namn:".

    Värdet som lagras i variabeln kan också definieras med hjälp av andra variabler:

    fornamn = "Gabrielle"
     efternamn = "Gullholm"
    @@ -266,4 +266,4 @@
     siffra3 = 3.62
     
     medeltal = (siffra1 + siffra2 + siffra3) / 3
    -print(f"Medelvärde: {medeltal}")
    Exempelutskrift

    Medelvärde: 1.6233333333333333

    Du hittar ett repetitionsquiz för denna del här:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(f"Medelvärde: {medeltal}")
    Exempelutskrift

    Medelvärde: 1.6233333333333333

    Du hittar ett repetitionsquiz för denna del här:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Räkneoperationer

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-1/4-rakneoperationer/index.html b/osa-1/4-rakneoperationer/index.html index d3dc39272..4779dae93 100644 --- a/osa-1/4-rakneoperationer/index.html +++ b/osa-1/4-rakneoperationer/index.html @@ -349,4 +349,4 @@ print("Hej " + nimi + "!") alder = int(input("Vad är din ålder? ")) -# programmet fortsätter...

    Kertauskysely tämän osan asioihin liittyen:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. If-satser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +# programmet fortsätter...

    Kertauskysely tämän osan asioihin liittyen:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. If-satser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-1/5-villkorssatser/index.html b/osa-1/5-villkorssatser/index.html index 2fa7787e7..47fc23774 100644 --- a/osa-1/5-villkorssatser/index.html +++ b/osa-1/5-villkorssatser/index.html @@ -316,4 +316,4 @@ print("a är mindre än 5")
    Exempelutskrift

    True a är mindre än 5

    Pythons nyckelord True och False kan också användas direkt som sådana. I det följande exemplet körs print-instruktionen alltid, eftersom värdet på villkoret är True:

    villkor = True
     if villkor:
    -    print("Vi når hit alltid")
    Exempelutskrift

    Vi når hit alltid

    Man kan tycka att det inte i ovanstående exempel verkar vara en så nyttig funktion. Senare under kursens lopp ska vi se på situationer där vi kan ha mera nytta av Boolean-variabler.

    Kertauskysely tämän osan asioihin liittyen:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät om materialet i den här veckans modul. Du får ett poäng när du fyllt i enkäten.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + print("Vi når hit alltid")
    Exempelutskrift

    Vi når hit alltid

    Man kan tycka att det inte i ovanstående exempel verkar vara en så nyttig funktion. Senare under kursens lopp ska vi se på situationer där vi kan ha mera nytta av Boolean-variabler.

    Kertauskysely tämän osan asioihin liittyen:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät om materialet i den här veckans modul. Du får ett poäng när du fyllt i enkäten.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-1/index.html b/osa-1/index.html index 278d8da39..846a8140d 100644 --- a/osa-1/index.html +++ b/osa-1/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-10/1-klasshierarkier/index.html b/osa-10/1-klasshierarkier/index.html index d5880191c..f1386ef8b 100644 --- a/osa-10/1-klasshierarkier/index.html +++ b/osa-10/1-klasshierarkier/index.html @@ -393,4 +393,4 @@ print(bonus) print(bonus2)
    Exempelutskrift

    0.7225 -0.7586250000000001

    Loading
    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Åtkomstmodifierare

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +0.7586250000000001

    Loading
    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Åtkomstmodifierare

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-10/2-atkamstmodifierare/index.html b/osa-10/2-atkamstmodifierare/index.html index 3552b9d55..537c730f5 100644 --- a/osa-10/2-atkamstmodifierare/index.html +++ b/osa-10/2-atkamstmodifierare/index.html @@ -319,4 +319,4 @@ if __name__ == "__main__": fs = Fotbollsspelare("peter pythonson", "putte", "anfallare") print(fs) -
    Exempelutskrift

    Fotbollsspelare - namn:Peter Pythonson, smeknamn: Putte, position: anfallare

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Objektorienterade programmeringstekniker

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Exempelutskrift

    Fotbollsspelare - namn:Peter Pythonson, smeknamn: Putte, position: anfallare

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Objektorienterade programmeringstekniker

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-10/3-objektorienterade-programmeringstekniker/index.html b/osa-10/3-objektorienterade-programmeringstekniker/index.html index b205de0c9..b8d02a624 100644 --- a/osa-10/3-objektorienterade-programmeringstekniker/index.html +++ b/osa-10/3-objektorienterade-programmeringstekniker/index.html @@ -445,4 +445,4 @@ print(bok.namn)
    Exempelutskrift

    Livet av en Python Den gamle och Java -C-värdheter på nätet

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Att utveckla en större applikation

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +C-värdheter på nätet

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Att utveckla en större applikation

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-10/4-storre-applikation/index.html b/osa-10/4-storre-applikation/index.html index 18d9ed501..4541166c3 100644 --- a/osa-10/4-storre-applikation/index.html +++ b/osa-10/4-storre-applikation/index.html @@ -500,4 +500,4 @@ forvaringstjanst = MolnHanterare("amazon-cloud", "anvandarnamn", "losenord") applikation = TelefonkatalogApplikation(forvaringstjanst) -applikation.exekvera()

    Som du har sett tidigare har den här typen av tekniker ett pris, eftersom det blir mer kod att skriva, så en programmerare måste överväga om det är en acceptabel avvägning.

    Den teknik som beskrivs ovan kallas beroendeinjektion. Som namnet antyder är tanken att alla beroenden som krävs av ett objekt ska tillhandahållas utanför objektet. Det är ett mycket användbart verktyg i en programmerares verktygslåda, eftersom det gör det lättare att implementera nya funktioner i program och underlättar automatisk testning. Detta tema kommer att utforskas ytterligare på de tidigare nämnda kurserna Software Development och Software Engineering.

    Svara vänligen på en snabb enkät om denna del av kursen.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +applikation.exekvera()

    Som du har sett tidigare har den här typen av tekniker ett pris, eftersom det blir mer kod att skriva, så en programmerare måste överväga om det är en acceptabel avvägning.

    Den teknik som beskrivs ovan kallas beroendeinjektion. Som namnet antyder är tanken att alla beroenden som krävs av ett objekt ska tillhandahållas utanför objektet. Det är ett mycket användbart verktyg i en programmerares verktygslåda, eftersom det gör det lättare att implementera nya funktioner i program och underlättar automatisk testning. Detta tema kommer att utforskas ytterligare på de tidigare nämnda kurserna Software Development och Software Engineering.

    Svara vänligen på en snabb enkät om denna del av kursen.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-10/index.html b/osa-10/index.html index f501fbcfa..b77c65313 100644 --- a/osa-10/index.html +++ b/osa-10/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-11/1-list-comprehension/index.html b/osa-11/1-list-comprehension/index.html index 59bbdfc0a..11dafb4be 100644 --- a/osa-11/1-list-comprehension/index.html +++ b/osa-11/1-list-comprehension/index.html @@ -277,4 +277,4 @@ testlista = ["hej", 3, True, "hejsan", -123.344, "hejsansvejsan", 2, False] langder = strang_langder(testlista) print(langder) -
    Exempelutskrift

    [3, -1, -1, 6, -1, 13, -1, -1]

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Mer om comprehensions

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Exempelutskrift

    [3, -1, -1, 6, -1, 13, -1, -1]

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Mer om comprehensions

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-11/2-mer-om-comprehensions/index.html b/osa-11/2-mer-om-comprehensions/index.html index 5ae888a4d..dbb3205a2 100644 --- a/osa-11/2-mer-om-comprehensions/index.html +++ b/osa-11/2-mer-om-comprehensions/index.html @@ -363,4 +363,4 @@ lista = [-2, 3, 2, 1, 4, -10, 5, 1, 6] fakultett = {tal : fakultet(tal) for tal in lista if tal > 0} print(fakulteter) -
    Exempelutskrift

    {3: 6, 2: 2, 1: 1, 4: 24, 5: 120, 6: 720}

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Rekursion

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Exempelutskrift

    {3: 6, 2: 2, 1: 1, 4: 24, 5: 120, 6: 720}

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Rekursion

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-11/3-rekursion/index.html b/osa-11/3-rekursion/index.html index ccebf7bb5..2bed9b1f7 100644 --- a/osa-11/3-rekursion/index.html +++ b/osa-11/3-rekursion/index.html @@ -315,4 +315,4 @@ print(binarsokning(lista, 15, 0, len(lista)-1))
    Exempelutskrift

    True True False -False

    Funktionen binar_sokning tar fyra argument: mållistan, det objekt som söks samt vänster och höger kant på sökområdet. När funktionen anropas första gången täcker sökområdet hela mållistan. Den vänstra kanten ligger på index 0 och den högra kanten ligger på index len(lista)-1. Funktionen beräknar det centrala indexet och kontrollerar den positionen på listan. Antingen har objektet hittats eller så fortsätter sökningen till den mindre eller större halvan av mållistan.

    Låt oss jämföra detta med en enkel linjär sökning. Vid en linjär sökning är sökområdet från början och framåt, tills antingen objektet hittas eller sökområdet tar slut. Antalet steg som behövs för att täcka hela sökområdet växer linjärt i samma takt som sökområdets storlek. Varje söksteg täcker endast en sökkandidat från början av sökområdet. Låt oss anta att det sökta objektet inte hittas. Om sökområdet är en miljon objekt långt måste vi ta en miljon söksteg för att försäkra oss om att objektet inte finns i sökområdet.

    Vid en binär sökning växer däremot antalet steg som behövs logaritmiskt. Låt oss återigen anta att det sökta objektet inte hittas. Sökområdet halveras för varje steg, eftersom vi vet att objektet antingen är mindre eller större än den aktuella sökkandidaten i mitten. 2 gånger 20 (2^20) är redan långt över 1 miljon, så det tar som mest 20 steg att täcka hela sökområdet med en binär sökning. När vi har att göra med sorterade sökområden, vilket ofta är fallet när vi har att göra med datorer och material som ska bearbetas automatiskt, är en binär sökning alltså mycket effektivare än en linjär sökning.

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Fler exempel på rekursion

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +False

    Funktionen binar_sokning tar fyra argument: mållistan, det objekt som söks samt vänster och höger kant på sökområdet. När funktionen anropas första gången täcker sökområdet hela mållistan. Den vänstra kanten ligger på index 0 och den högra kanten ligger på index len(lista)-1. Funktionen beräknar det centrala indexet och kontrollerar den positionen på listan. Antingen har objektet hittats eller så fortsätter sökningen till den mindre eller större halvan av mållistan.

    Låt oss jämföra detta med en enkel linjär sökning. Vid en linjär sökning är sökområdet från början och framåt, tills antingen objektet hittas eller sökområdet tar slut. Antalet steg som behövs för att täcka hela sökområdet växer linjärt i samma takt som sökområdets storlek. Varje söksteg täcker endast en sökkandidat från början av sökområdet. Låt oss anta att det sökta objektet inte hittas. Om sökområdet är en miljon objekt långt måste vi ta en miljon söksteg för att försäkra oss om att objektet inte finns i sökområdet.

    Vid en binär sökning växer däremot antalet steg som behövs logaritmiskt. Låt oss återigen anta att det sökta objektet inte hittas. Sökområdet halveras för varje steg, eftersom vi vet att objektet antingen är mindre eller större än den aktuella sökkandidaten i mitten. 2 gånger 20 (2^20) är redan långt över 1 miljon, så det tar som mest 20 steg att täcka hela sökområdet med en binär sökning. När vi har att göra med sorterade sökområden, vilket ofta är fallet när vi har att göra med datorer och material som ska bearbetas automatiskt, är en binär sökning alltså mycket effektivare än en linjär sökning.

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Fler exempel på rekursion

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-11/4-lisaa-esimerkkeja/index.html b/osa-11/4-lisaa-esimerkkeja/index.html index c93a58ecc..574628b45 100644 --- a/osa-11/4-lisaa-esimerkkeja/index.html +++ b/osa-11/4-lisaa-esimerkkeja/index.html @@ -291,4 +291,4 @@ return sok_nod(rot.hoger_barn, varde) return sok_nod(rot.vanster_barn, varde) -
    Loading

    Besök till tiden innan rekursion

    Låt oss avsluta denna del av materialet med en lite större övning som koncentrerar sig på objektorienterade programmeringsprinciper. Vi rekommenderar inte att du använder rekursion i denna serie av uppgifter, men tekniker för list comprehension kommer att vara användbara.

    Loading
    Loading

    Svara slutligen på en snabb enkät:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Loading

    Besök till tiden innan rekursion

    Låt oss avsluta denna del av materialet med en lite större övning som koncentrerar sig på objektorienterade programmeringsprinciper. Vi rekommenderar inte att du använder rekursion i denna serie av uppgifter, men tekniker för list comprehension kommer att vara användbara.

    Loading
    Loading

    Svara slutligen på en snabb enkät:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-11/index.html b/osa-11/index.html index 9ec22db2e..0883719e9 100644 --- a/osa-11/index.html +++ b/osa-11/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-12/1-funktioner-som-argument/index.html b/osa-12/1-funktioner-som-argument/index.html index e2d5c2790..c2c9760ba 100644 --- a/osa-12/1-funktioner-som-argument/index.html +++ b/osa-12/1-funktioner-som-argument/index.html @@ -379,4 +379,4 @@ kopiera_rader("första.txt", "andra.txt", lambda rad: "Python" in rad) # Kopierar alla rader som inte slutar med en punkt - kopiera_rader("första.txt", "andra.txt", lambda rad: rad[-1] != ".")

    Funktionsdefinitionen innehåller ett standardvärde för nyckelordsparametern kriterie: lambda x: True. Denna anonyma funktion returnerar alltid True oavsett indata. Standardbeteendet är alltså att kopiera alla rader. Som vanligt gäller att om ett värde anges för en parameter med ett standardvärde, ersätter det nya värdet standardvärdet.

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Generatorer

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + kopiera_rader("första.txt", "andra.txt", lambda rad: rad[-1] != ".")

    Funktionsdefinitionen innehåller ett standardvärde för nyckelordsparametern kriterie: lambda x: True. Denna anonyma funktion returnerar alltid True oavsett indata. Standardbeteendet är alltså att kopiera alla rader. Som vanligt gäller att om ett värde anges för en parameter med ett standardvärde, ersätter det nya värdet standardvärdet.

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Generatorer

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-12/2-generatorer/index.html b/osa-12/2-generatorer/index.html index 6bef33006..9a54fb673 100644 --- a/osa-12/2-generatorer/index.html +++ b/osa-12/2-generatorer/index.html @@ -251,4 +251,4 @@ ghi hij ijk -jkl

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Funktionell programmering

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +jkl

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Funktionell programmering

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-12/3-funktionell-programmering/index.html b/osa-12/3-funktionell-programmering/index.html index 4c41d7ba9..2d7eb6933 100644 --- a/osa-12/3-funktionell-programmering/index.html +++ b/osa-12/3-funktionell-programmering/index.html @@ -414,4 +414,4 @@ talens_summa = reduce(lambda summa, foremal: summa + foremal, lista) -print(talens_summa)

    Ifall ett ursprungligt värde lämnas bort tar reduce det första föremålet i listan som sitt ursprungsvärde och börjar reducera från det andra föremålet framåt.

    OBS: Om föremålen i serien är av en annan typ än det avsedda reducerade resultatet, är det tredje argumentet obligatoriskt. Exemplet med bankkontona skulle inte fungera utan det ursprungliga värdet. Det vill säga att prova detta

    saldon_totalt = reduce(saldo_summa_hjalpare, konton)

    Skulle producera ett fel:

    TypeError: unsupported operand type(s) for +: 'Bankkonto' and 'int'

    I ovanstående fall, när reduce försöker utföra funktionen saldo_summa_hjalpare för första gången, är de argument som används de två första föremålen i listan, som båda är av typen Bankkonto. Specifikt är det värde som tilldelats parametern saldo_summa det första föremålet i listan. Funktionen saldo_summa_hjalpare försöker lägga till ett heltalsvärde till den, men att lägga till ett heltal direkt till ett Bankkonto-objekt är inte en åtgärd som stöds.

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Reguljära uttryck

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(talens_summa)

    Ifall ett ursprungligt värde lämnas bort tar reduce det första föremålet i listan som sitt ursprungsvärde och börjar reducera från det andra föremålet framåt.

    OBS: Om föremålen i serien är av en annan typ än det avsedda reducerade resultatet, är det tredje argumentet obligatoriskt. Exemplet med bankkontona skulle inte fungera utan det ursprungliga värdet. Det vill säga att prova detta

    saldon_totalt = reduce(saldo_summa_hjalpare, konton)

    Skulle producera ett fel:

    TypeError: unsupported operand type(s) for +: 'Bankkonto' and 'int'

    I ovanstående fall, när reduce försöker utföra funktionen saldo_summa_hjalpare för första gången, är de argument som används de två första föremålen i listan, som båda är av typen Bankkonto. Specifikt är det värde som tilldelats parametern saldo_summa det första föremålet i listan. Funktionen saldo_summa_hjalpare försöker lägga till ett heltalsvärde till den, men att lägga till ett heltal direkt till ett Bankkonto-objekt är inte en åtgärd som stöds.

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Reguljära uttryck

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-12/4-reguljara-uttryck/index.html b/osa-12/4-reguljara-uttryck/index.html index 89c8fcc2f..5707313b1 100644 --- a/osa-12/4-reguljara-uttryck/index.html +++ b/osa-12/4-reguljara-uttryck/index.html @@ -288,4 +288,4 @@ Ange sträng: jarmo the hut Hittades inte. Ange sträng: jabba the smut -Hittades inte.

    Loading

    Den stora finalen

    Som avslutning på denna del av materialet ska vi arbeta lite mer med objekt och klasser genom att bygga ett lite mer omfattande program. Denna övning innefattar inte nödvändigtvis reguljära uttryck, men avsnitten om Funktioner som argument och list comprehension kommer sannolikt att vara användbara.

    Du kan också ha nytta av de exempel som finns i modul 10.

    Loading

    Svara till sist på en snabb enkät:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Hittades inte.

    Loading

    Den stora finalen

    Som avslutning på denna del av materialet ska vi arbeta lite mer med objekt och klasser genom att bygga ett lite mer omfattande program. Denna övning innefattar inte nödvändigtvis reguljära uttryck, men avsnitten om Funktioner som argument och list comprehension kommer sannolikt att vara användbara.

    Du kan också ha nytta av de exempel som finns i modul 10.

    Loading

    Svara till sist på en snabb enkät:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-12/index.html b/osa-12/index.html index 9f8896f3c..a40dc0c06 100644 --- a/osa-12/index.html +++ b/osa-12/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-13/1-pygame/index.html b/osa-13/1-pygame/index.html index ca887a3c3..a4e8bc40a 100644 --- a/osa-13/1-pygame/index.html +++ b/osa-13/1-pygame/index.html @@ -258,4 +258,4 @@ fonster.blit(robot, (300, 0)) fonster.blit(robot, (100, 200))

    Resultatet borde vara att fönstret ser ut så här:

    Här sätter vi lokationen av bilden så, att den ligger i mitten av fönstret:

    bredd = robot.get_width()
     hojd = robot.get_height()
    -fonster.blit(robot, (320-bredd/2, 240-hojd/2))

    Fönstret borde nu se ut så här:

    Metoden get_width ger bildens bredd och metoden get_height ger dess höjd, båda i pixlar. Fönstrets mittpunkt ligger på halva bredden och höjden, alltså på (320, 240), vilket vi kan använda för att beräkna en lämplig plats för bildens övre vänstra hörn, så att det ligger exakt i mitten.

    Loading
    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Animation

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +fonster.blit(robot, (320-bredd/2, 240-hojd/2))

    Fönstret borde nu se ut så här:

    Metoden get_width ger bildens bredd och metoden get_height ger dess höjd, båda i pixlar. Fönstrets mittpunkt ligger på halva bredden och höjden, alltså på (320, 240), vilket vi kan använda för att beräkna en lämplig plats för bildens övre vänstra hörn, så att det ligger exakt i mitten.

    Loading
    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Animation

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-13/2-animation/index.html b/osa-13/2-animation/index.html index e5cf1f817..2663ed6be 100644 --- a/osa-13/2-animation/index.html +++ b/osa-13/2-animation/index.html @@ -258,4 +258,4 @@ vinkel += 0.01 klocka.tick(60)

    Exekvering av koden ovan borde se ut så här:

    Rotation i en relativt exakt cirkel uppnås med hjälp av några grundläggande trigonometriska funktioner. Variabeln vinkel innehåller vinkeln för robotens position i förhållande till fönstrets mittpunkt och den horisontella linjen som går genom fönstret. Sinus- och cosinusfunktionerna från Pythons matematikbibliotek används här för att beräkna koordinaterna för robotens position:

            x = 320+math.cos(vinkel)*100-robot.get_width()/2
    -        y = 240+math.sin(vinkel)*100-robot.get_height()/2

    Roboten roterar runt en cirkel med radien 100 runt fönstrets mittpunkt. Hypotenusan i detta scenario är cirkelns radie. Cosinusfunktionen anger längden på den angränsande sidan i en rätvinklig triangel i förhållande till hypotenusan, vilket innebär att den ger oss platsens x-koordinat. Sinusfunktionen ger längden på den motsatta sidan, dvs. y-koordinaten. Platsen justeras sedan för bildens storlek, så att cirkelns mittpunkt ligger i fönstrets mittpunkt.

    För varje iteration ökar storleken på vinkel med 0,01. Eftersom vi använder radianer är en hel cirkel 2π, vilket motsvarar ca 6,28. Det tar cirka 628 iterationer för roboten att gå en hel cirkel, och med 60 iterationer per sekund tar detta drygt 10 sekunder.

    Loading
    Loading
    Loading
    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Händelser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + y = 240+math.sin(vinkel)*100-robot.get_height()/2

    Roboten roterar runt en cirkel med radien 100 runt fönstrets mittpunkt. Hypotenusan i detta scenario är cirkelns radie. Cosinusfunktionen anger längden på den angränsande sidan i en rätvinklig triangel i förhållande till hypotenusan, vilket innebär att den ger oss platsens x-koordinat. Sinusfunktionen ger längden på den motsatta sidan, dvs. y-koordinaten. Platsen justeras sedan för bildens storlek, så att cirkelns mittpunkt ligger i fönstrets mittpunkt.

    För varje iteration ökar storleken på vinkel med 0,01. Eftersom vi använder radianer är en hel cirkel 2π, vilket motsvarar ca 6,28. Det tar cirka 628 iterationer för roboten att gå en hel cirkel, och med 60 iterationer per sekund tar detta drygt 10 sekunder.

    Loading
    Loading
    Loading
    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Händelser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-13/3-handelser/index.html b/osa-13/3-handelser/index.html index 1336dbb0c..5365a38ed 100644 --- a/osa-13/3-handelser/index.html +++ b/osa-13/3-handelser/index.html @@ -347,4 +347,4 @@ fonster.blit(robot, (robot_x, robot_y)) pygame.display.flip() - klocka.tick(60)

    Exekveringen av programmet borde se ut så här:

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Fler pygame-tekniker

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + klocka.tick(60)

    Exekveringen av programmet borde se ut så här:

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Fler pygame-tekniker

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-13/4-fler-pygame-tekniker/index.html b/osa-13/4-fler-pygame-tekniker/index.html index b563696fc..d7671ac25 100644 --- a/osa-13/4-fler-pygame-tekniker/index.html +++ b/osa-13/4-fler-pygame-tekniker/index.html @@ -222,4 +222,4 @@ while True: for handelse in pygame.event.get(): if handelse.type == pygame.QUIT: - exit()

    Körning av koden ovan borde se ut enligt följande:

    Här skapar metoden pygame.font.SysFont ett typsnittsobjekt, som använder systemtypsnittet Arial i storlek 24. Metoden render skapar sedan en bild av den angivna texten i den angivna färgen. Denna bild ritas på fönstret med metoden blit, precis som tidigare.

    OBS: olika system kommer att ha olika teckensnitt tillgängliga. Om det system som det här programmet körs på inte har teckensnittet Arial, trots att Arial är ett mycket vanligt teckensnitt som finns på de flesta system, används istället systemets standardteckensnitt. Om du behöver ha ett specifikt teckensnitt tillgängligt för ditt spel kan du inkludera teckensnittsfilen i spelkatalogen och ange dess plats för metoden pygame.font.Font.

    Övningar

    Här är några mer avancerade övningar för att öva på det du har lärt dig i denna del av kursmaterialet.

    Loading
    Loading

    Svara vänligen på en snabb enkät om denna del av kursen:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + exit()

    Körning av koden ovan borde se ut enligt följande:

    Här skapar metoden pygame.font.SysFont ett typsnittsobjekt, som använder systemtypsnittet Arial i storlek 24. Metoden render skapar sedan en bild av den angivna texten i den angivna färgen. Denna bild ritas på fönstret med metoden blit, precis som tidigare.

    OBS: olika system kommer att ha olika teckensnitt tillgängliga. Om det system som det här programmet körs på inte har teckensnittet Arial, trots att Arial är ett mycket vanligt teckensnitt som finns på de flesta system, används istället systemets standardteckensnitt. Om du behöver ha ett specifikt teckensnitt tillgängligt för ditt spel kan du inkludera teckensnittsfilen i spelkatalogen och ange dess plats för metoden pygame.font.Font.

    Övningar

    Här är några mer avancerade övningar för att öva på det du har lärt dig i denna del av kursmaterialet.

    Loading
    Loading

    Svara vänligen på en snabb enkät om denna del av kursen:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-13/index.html b/osa-13/index.html index cc10601fa..4aae65829 100644 --- a/osa-13/index.html +++ b/osa-13/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-14/1-spelprojekt/index.html b/osa-14/1-spelprojekt/index.html index d7fe54bb9..42ded88e9 100644 --- a/osa-14/1-spelprojekt/index.html +++ b/osa-14/1-spelprojekt/index.html @@ -408,4 +408,4 @@

    Huvudloopen.display.flip()

    I det här skedet är den enda händelse som faktiskt hanteras av spelet att stänga spelfönstret, t.ex. med exit-knappen. Spelet avslutas sedan genom att anropa Pythons exit-funktion.

    Varje gång metoden rita_fonster anropas korsas hela spelrutnätet igenom och den bild som motsvarar varje ruta i rutnätet ritas på rätt plats.

    -

    OBS: koordinaterna x och y används på två olika sätt i spelet. När man hanterar index i en tvådimensionell lista är det logiskt att ange y-koordinaten först, eftersom y hänvisar till numret på raden medan x är numret på kolumnen. Å andra sidan, när man använder pygame-metoder, skickas x vanligtvis först, vilket det ganska ofta gör när man arbetar med grafik och även i matematiska sammanhang.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +

    OBS: koordinaterna x och y används på två olika sätt i spelet. När man hanterar index i en tvådimensionell lista är det logiskt att ange y-koordinaten först, eftersom y hänvisar till numret på raden medan x är numret på kolumnen. Å andra sidan, när man använder pygame-metoder, skickas x vanligtvis först, vilket det ganska ofta gör när man arbetar med grafik och även i matematiska sammanhang.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-14/2-robot-och-ladar/index.html b/osa-14/2-robot-och-ladar/index.html index 88e1e7eb6..3388ff2ff 100644 --- a/osa-14/2-robot-och-ladar/index.html +++ b/osa-14/2-robot-och-ladar/index.html @@ -255,4 +255,4 @@

    Omfaktorisering?3. Färdigställande av spelet

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +

    Omfaktorisering och kodkvalitet är ett ämne för en del efterföljande kurser, t.ex. Software Development Methods och Software Engineering.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-14/3-fardigstallande-av-spelet/index.html b/osa-14/3-fardigstallande-av-spelet/index.html index 1116994a9..8ecba36f0 100644 --- a/osa-14/3-fardigstallande-av-spelet/index.html +++ b/osa-14/3-fardigstallande-av-spelet/index.html @@ -248,4 +248,4 @@

    Ditt spel på GitHub?GitHub är en populär plats för många typer av programmeringsprojekt. Det kan användas för att lagra källkoden och annat material för alla dina egna programmeringsprojekt också, och ditt program kommer då att underhållas genom git-versionskontroll, och det kan enkelt delas med andra. Du kommer att bli mycket bekant med git och GitHub om du fortsätter med andra programmeringskurser på mooc.fi.

    Hur många drag krävs?

    Rutnätet i det här spelet är ganska litet, men spelet är inte så lätt. Den första utmaningen är att helt enkelt klara spelet, men nästa steg är att försöka göra det med så få drag som möjligt. Hur kort är den kortaste vägen till en lösning?

    -

    Att leta efter den kortaste möjliga lösningen är inte alls en lätt uppgift, men det finns beräkningslösningar för detta också. Detta är ett av ämnena i kursen Datastrukturer och algoritmer.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +

    Att leta efter den kortaste möjliga lösningen är inte alls en lätt uppgift, men det finns beräkningslösningar för detta också. Detta är ett av ämnena i kursen Datastrukturer och algoritmer.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-14/4-ditt-eget-sepl/index.html b/osa-14/4-ditt-eget-sepl/index.html index 37e484516..2b4d95be8 100644 --- a/osa-14/4-ditt-eget-sepl/index.html +++ b/osa-14/4-ditt-eget-sepl/index.html @@ -255,9 +255,9 @@

    Kollegial granskningHur väl är det programmerat? Är koden läsbar och används klasser och funktioner på rätt sätt?

    En bra recension brukar peka ut både bra funktioner och några förslag till förbättringar.

    -
    Loading...
    :
    Loading...

    Log in to view the quiz

    +
    Loading...
    :
    Loading...

    Log in to view the quiz

    Frågeformulär för att avsluta

    Först ber vi dig svara på en snabb enkät om den här delen av kursen.

    -
    Loading...
    :
    Loading...

    Log in to view the quiz

    +
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara också på kursens feedbackformulär. Enkätens svar hjälper oss att förbättra kursen.

    -
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-14/index.html b/osa-14/index.html index 824558ce5..d6748e146 100644 --- a/osa-14/index.html +++ b/osa-14/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-2/1-terminologi/index.html b/osa-2/1-terminologi/index.html index 461713bb9..5c9c714da 100644 --- a/osa-2/1-terminologi/index.html +++ b/osa-2/1-terminologi/index.html @@ -330,4 +330,4 @@ Lön 276.0 euro

    Det verkar som att värdet lagrat i lon är korrekt i början: timlon = 20.0 och timmar = 12, 20,0 * 6 = 120,0. Instruktionen som ska multiplicera det här med två fungerar dock inte. Det måste alltså vara ett problem med den instruktionen:

    lon * 2

    Instruktionen multiplicerar nog värdet, men resultatet lagras ingenstans. Vi ändrar på det:

    lon *= 2

    När vi nu kör programmet, märker vi att resultatet är korrekt:

    Exempelutskrift

    villkor: True lön i början: 276.0 lön efter fördubbling: 552.0 -Lön 552.0 euro

    När programmet fungerar som det ska, är det viktigt att ta bort print-satser och annan kod som använts för att debugga.

    Det här var ett ganska enkelt exempel och i fall som det här kan man eventuellt hitta buggar genom att läsa igenom koden med omtanke. Att använda print-satser för att debugga är ändå ofta ett snabbt sätt att få en ledtråd för var problemet kan ligga. print-satser kan också användas för att fastställa vilka delar av koden som fungerar korrekt. Då kan man fokusera på andra ställen där buggar med större sannolikhet gömmer sig.

    print-satser är bara ett sätt att debugga program. Vi återkommer till det här ämnet senare under kursen. Nu ska du bli van vid att debugga, med hjälp av print-instruktioner, för att hitta problematiska delar i din kod. Proffs klarar sig inte utan print-satser i debuggningssyfte – det är alltså en viktig resurs redan som nybörjare.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Lön 552.0 euro

    När programmet fungerar som det ska, är det viktigt att ta bort print-satser och annan kod som använts för att debugga.

    Det här var ett ganska enkelt exempel och i fall som det här kan man eventuellt hitta buggar genom att läsa igenom koden med omtanke. Att använda print-satser för att debugga är ändå ofta ett snabbt sätt att få en ledtråd för var problemet kan ligga. print-satser kan också användas för att fastställa vilka delar av koden som fungerar korrekt. Då kan man fokusera på andra ställen där buggar med större sannolikhet gömmer sig.

    print-satser är bara ett sätt att debugga program. Vi återkommer till det här ämnet senare under kursen. Nu ska du bli van vid att debugga, med hjälp av print-instruktioner, för att hitta problematiska delar i din kod. Proffs klarar sig inte utan print-satser i debuggningssyfte – det är alltså en viktig resurs redan som nybörjare.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-2/2-else-elif/index.html b/osa-2/2-else-elif/index.html index 5c3b26ac5..4c7742a96 100644 --- a/osa-2/2-else-elif/index.html +++ b/osa-2/2-else-elif/index.html @@ -282,4 +282,4 @@ Det är juldag Tack och hej.

    Märk att det föregående exemplet saknar else-gren. Om användaren ger ett datum som inte uppfyller villkoret på någon av if- eller elif-grenarna, kommer ingen av grenarna att köras.

    Exempelutskrift

    Julkalender Vilken dag är det? 1/1 -Tack och hej.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Tack och hej.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-2/3-kombinera-villkor/index.html b/osa-2/3-kombinera-villkor/index.html index dab9be18f..79d8cb0c9 100644 --- a/osa-2/3-kombinera-villkor/index.html +++ b/osa-2/3-kombinera-villkor/index.html @@ -305,4 +305,4 @@ elif nummer > 0 and nummer % 2 != 0: print("Talet är ojämnt") else: - print("Talet är negativt")

    Man kan inte på rak arm säga vilkendera lösning är bättre. Situationen bestämmer ofta hur det lönar sig att bygga upp if-satsen på ett logiskt sätt. I det här exemplet tycker flera personer att versionen med kapsling är mera intuitiv.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + print("Talet är negativt")

    Man kan inte på rak arm säga vilkendera lösning är bättre. Situationen bestämmer ofta hur det lönar sig att bygga upp if-satsen på ett logiskt sätt. I det här exemplet tycker flera personer att versionen med kapsling är mera intuitiv.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-2/4-loopar/index.html b/osa-2/4-loopar/index.html index d0880fa9d..1c3be242b 100644 --- a/osa-2/4-loopar/index.html +++ b/osa-2/4-loopar/index.html @@ -356,4 +356,4 @@ forsok += 1 koder += kod + ", " # ...

    Hjälpvariabeln kan tilldelas värdet "" – det vill säga en tom sträng:

    koder = ""

    För varje iteration blir strängen längre i och med att koden användaren angett läggs till i slutet av strängen tillsammans med ett komma och ett mellanslag.

        kod = input("Ange pin-kod: ")
    -    koder += kod + ", "

    Om användaren anger koderna 1111 2222 1234 kommer värdet på koder till slut att vara:

    Exempelutskrift

    1111, 2222, 1234,

    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät som behandlar den här veckans material.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + koder += kod + ", "

    Om användaren anger koderna 1111 2222 1234 kommer värdet på koder till slut att vara:

    Exempelutskrift

    1111, 2222, 1234,

    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät som behandlar den här veckans material.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-2/index.html b/osa-2/index.html index 9f0e3545c..2da6079be 100644 --- a/osa-2/index.html +++ b/osa-2/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-3/1-loopar-med-villkor/index.html b/osa-3/1-loopar-med-villkor/index.html index d6907c2d2..d0105e653 100644 --- a/osa-3/1-loopar-med-villkor/index.html +++ b/osa-3/1-loopar-med-villkor/index.html @@ -314,4 +314,4 @@ text += f"vitsordet {vitsord} " text += f"i kursen {kurs}" -print(text)
    Exempelutskrift

    Du fick vitsordet 4 i kursen Introkurs i programmering

    I det förra exemplet räknade du summan av varandra påföljande siffror genom att alltid öka på värdet i loopen.

    Samma fungerar också för strängar – du kan lägga till nya delar i en sträng inom en loop. Den här tekniken kan vara till nytta i följande uppgift.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(text)
    Exempelutskrift

    Du fick vitsordet 4 i kursen Introkurs i programmering

    I det förra exemplet räknade du summan av varandra påföljande siffror genom att alltid öka på värdet i loopen.

    Samma fungerar också för strängar – du kan lägga till nya delar i en sträng inom en loop. Den här tekniken kan vara till nytta i följande uppgift.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-3/2-behandla-strangar/index.html b/osa-3/2-behandla-strangar/index.html index 4b71bae68..777c1ee21 100644 --- a/osa-3/2-behandla-strangar/index.html +++ b/osa-3/2-behandla-strangar/index.html @@ -356,4 +356,4 @@ Hittades inte Vad söker du efter? ampa Hittades på platsen 5 -...

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +...

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-3/3-mer-om-loopar/index.html b/osa-3/3-mer-om-loopar/index.html index 67b4ef30f..77fbd3451 100644 --- a/osa-3/3-mer-om-loopar/index.html +++ b/osa-3/3-mer-om-loopar/index.html @@ -336,4 +336,4 @@ 0 1 2 3 0 1 2 0 1 -0

    I programmet använder den yttre loopen hjälpvariabeln siffra som minskar med ett tills det når till noll. Hjälpvariabeln i tilldelas värdet 0 före man fortsätter till den inre loopen – varje gång den yttre loopen upprepas.

    Den inre loopen använder sig av hjälpvariabeln i som ökar med talet 1 för varje iteration av den inre loopen. Den inre loopen fortsätter tills i är lika med siffra, och skriver ut varje värde hos i med mellanslag emellan. När loopen avslutas skapar print-instruktionen i den yttre loopen en ny rad.

    I och med att värdet på siffra minskar för varje iteration av den yttre loopen, kommer antalet iterationer hos den inre loopen att minska. Vid varje upprepning blir sifferraden kortare, vilket bildar "pyramiden".

    Kapslade loopar kan vara svårtolkade på en första titt, men det är viktigt att förstå hur de fungerar. Du kan använda dig av Python Tutors visualiseringsverktyg för att bättre förstå hur ovanstående exempel fungerar. Kopiera koden ovan till kodfönstret och följ hur utskriften formar sig och hur hjälpvariablernas värden ändras medan programmet körs.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +0

    I programmet använder den yttre loopen hjälpvariabeln siffra som minskar med ett tills det når till noll. Hjälpvariabeln i tilldelas värdet 0 före man fortsätter till den inre loopen – varje gång den yttre loopen upprepas.

    Den inre loopen använder sig av hjälpvariabeln i som ökar med talet 1 för varje iteration av den inre loopen. Den inre loopen fortsätter tills i är lika med siffra, och skriver ut varje värde hos i med mellanslag emellan. När loopen avslutas skapar print-instruktionen i den yttre loopen en ny rad.

    I och med att värdet på siffra minskar för varje iteration av den yttre loopen, kommer antalet iterationer hos den inre loopen att minska. Vid varje upprepning blir sifferraden kortare, vilket bildar "pyramiden".

    Kapslade loopar kan vara svårtolkade på en första titt, men det är viktigt att förstå hur de fungerar. Du kan använda dig av Python Tutors visualiseringsverktyg för att bättre förstå hur ovanstående exempel fungerar. Kopiera koden ovan till kodfönstret och följ hur utskriften formar sig och hur hjälpvariablernas värden ändras medan programmet körs.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-3/4-definiera-funktioner/index.html b/osa-3/4-definiera-funktioner/index.html index 3e4ec33a9..cbd1585b4 100644 --- a/osa-3/4-definiera-funktioner/index.html +++ b/osa-3/4-definiera-funktioner/index.html @@ -274,4 +274,4 @@ halsa("Alice") halsa("Beatrice")
    Exempelutskrift

    Hej Beatrice -Hej Beatrice

    Oavsett vilka argument vi anropar funktionen med skrivs värdet "Beatrice" från den globala variabeln ut.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät gällande den här veckans material.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Hej Beatrice

    Oavsett vilka argument vi anropar funktionen med skrivs värdet "Beatrice" från den globala variabeln ut.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät gällande den här veckans material.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-3/index.html b/osa-3/index.html index 04d08c9ac..0a59b7bd7 100644 --- a/osa-3/index.html +++ b/osa-3/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-4/1-vscode/index.html b/osa-4/1-vscode/index.html index 5b87615e7..6431c567c 100644 --- a/osa-4/1-vscode/index.html +++ b/osa-4/1-vscode/index.html @@ -313,4 +313,4 @@ 4 1 9 -

    Du kan ha flera breakpoints i din kod. När körandet av koden har stannat upp kan du starta det genom att klicka på den blå triangeln. Körandet fortsätter tills nästa breakpoint nås.

    Den inbyggda visuella debuggaren är ett bra alternativ till debuggning med print-satser. Det är upp till dig själv vilken metod du använder dig av i fortsättningen. Alla programmerare har sina egna preferenser, men det är alltid en bra idé att testa på olika alternativ förrän man bestämmer sig för att göra på ett visst sätt.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +

    Du kan ha flera breakpoints i din kod. När körandet av koden har stannat upp kan du starta det genom att klicka på den blå triangeln. Körandet fortsätter tills nästa breakpoint nås.

    Den inbyggda visuella debuggaren är ett bra alternativ till debuggning med print-satser. Det är upp till dig själv vilken metod du använder dig av i fortsättningen. Alla programmerare har sina egna preferenser, men det är alltid en bra idé att testa på olika alternativ förrän man bestämmer sig för att göra på ett visst sätt.

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-4/2-mer-om-funktioner/index.html b/osa-4/2-mer-om-funktioner/index.html index 43f0bbcd2..5e2005b5a 100644 --- a/osa-4/2-mer-om-funktioner/index.html +++ b/osa-4/2-mer-om-funktioner/index.html @@ -343,4 +343,4 @@ print(meddelande) ganger -= 1

    Det här berättar för alla användare av funktionen att argumentet som lagras i meddelande ska vara en sträng medan argumentet som lagras i ganger ska vara ett heltal.

    Också typen av returvärdet kan specificeras när funktionen definieras:

    def fraga_namn() -> str:
         namn = input("Vad är ditt namn? ")
    -    return namn

    Det här berättar för användaren att funktionen borde returnera en sträng.

    Obs! Typledtrådar är bokstavligen ledtrådar. Det är inte en garanti och kan inte säkerställa att felaktiga datatyper inte ges till eller returneras av en funktion. Om det här sker kommer funktionen ändå att köras, men den fungerar inte nödvändigtvis korrekt.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + return namn

    Det här berättar för användaren att funktionen borde returnera en sträng.

    Obs! Typledtrådar är bokstavligen ledtrådar. Det är inte en garanti och kan inte säkerställa att felaktiga datatyper inte ges till eller returneras av en funktion. Om det här sker kommer funktionen ändå att köras, men den fungerar inte nödvändigtvis korrekt.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-4/3-listor/index.html b/osa-4/3-listor/index.html index 6f69cf4a4..cc63dc0f4 100644 --- a/osa-4/3-listor/index.html +++ b/osa-4/3-listor/index.html @@ -388,4 +388,4 @@ vikter = las_in_siffror() print("Pituudet:") -langder = las_in_siffror()
    Loading
    Loading
    Loading

    Mer om att behandla listor

    Det finns flera sätt till att använda listor i Python. Om du vill läsa mera är Pythons dokumentation ett bra ställe att börja med.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Iteration

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +langder = las_in_siffror()
    Loading
    Loading
    Loading

    Mer om att behandla listor

    Det finns flera sätt till att använda listor i Python. Om du vill läsa mera är Pythons dokumentation ett bra ställe att börja med.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Iteration

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-4/4-iteration/index.html b/osa-4/4-iteration/index.html index 9de51e949..d1ee5ffd2 100644 --- a/osa-4/4-iteration/index.html +++ b/osa-4/4-iteration/index.html @@ -274,4 +274,4 @@ if element bättre än bast: bast = element -# vi vet nu det bästa värdet

    Detaljerna kring den slutliga koden beror på typen av elementen i listan och kriteriet för väljandet av det bästa (eller sämsta) elementet. Ibland kan du behöva fler än en hjälpvariabel.

    Låt oss öva på den här metoden.

    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Formatera utskrift

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +# vi vet nu det bästa värdet

    Detaljerna kring den slutliga koden beror på typen av elementen i listan och kriteriet för väljandet av det bästa (eller sämsta) elementet. Ibland kan du behöva fler än en hjälpvariabel.

    Låt oss öva på den här metoden.

    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Formatera utskrift

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-4/5-utskrift/index.html b/osa-4/5-utskrift/index.html index eaef2bf3f..80ba4346f 100644 --- a/osa-4/5-utskrift/index.html +++ b/osa-4/5-utskrift/index.html @@ -227,4 +227,4 @@ alder = 59 stad = "Villmanstrand" halsning = f"Hej {namn}, du är {alder} år" -print(halsning + f", du bor i {stad}")
    Exempelutskrift

    Hej Leffe, du är 59 år, du bor i Villmanstrand

    Du kan tänka att f-strängen är en slags funktion som skapar en normal sträng baserat på "argumenten" mellan klammerparenteserna.

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    6. Mera strängar och listor

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(halsning + f", du bor i {stad}")
    Exempelutskrift

    Hej Leffe, du är 59 år, du bor i Villmanstrand

    Du kan tänka att f-strängen är en slags funktion som skapar en normal sträng baserat på "argumenten" mellan klammerparenteserna.

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    6. Mera strängar och listor

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-4/6-strangar-listor/index.html b/osa-4/6-strangar-listor/index.html index 07fffc9dd..5882a6c65 100644 --- a/osa-4/6-strangar-listor/index.html +++ b/osa-4/6-strangar-listor/index.html @@ -338,4 +338,4 @@ print(analysens_resultat) # start av programmet -main()
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät om den här veckans material.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +main()
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät om den här veckans material.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-4/index.html b/osa-4/index.html index 3cf2adf73..35665c494 100644 --- a/osa-4/index.html +++ b/osa-4/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-5/1-mer-om-listor/index.html b/osa-5/1-mer-om-listor/index.html index 616011349..db46dcd33 100644 --- a/osa-5/1-mer-om-listor/index.html +++ b/osa-5/1-mer-om-listor/index.html @@ -441,4 +441,4 @@ 7 _ 5 _ 6 _ 4 _ _ _ _ 7 8 _ 3 9 _ _ _ _ 1 _ _ _ _ _ 3 - 3 _ _ _ _ _ _ _ 2

    Flera andra spel kan också representeras på liknande sätt: till exempel schack, minröj, sänka skepp och Mastermind. I sudoku fungerar siffor väl för att representera spelets läge, medan för andra spel kan andra metoder vara bättre.

    Loading
    Loading
    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Referenser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + 3 _ _ _ _ _ _ _ 2

    Flera andra spel kan också representeras på liknande sätt: till exempel schack, minröj, sänka skepp och Mastermind. I sudoku fungerar siffor väl för att representera spelets läge, medan för andra spel kan andra metoder vara bättre.

    Loading
    Loading
    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Referenser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-5/2-referenser/index.html b/osa-5/2-referenser/index.html index 892bc280c..3d9c42f96 100644 --- a/osa-5/2-referenser/index.html +++ b/osa-5/2-referenser/index.html @@ -408,4 +408,4 @@ siffror = [1, 4, 2, 5, 3, 6, 4, 7] print(nast_minst(siffror)) print(siffror)
    Exempelutskrift

    2 -[1, 4, 2, 5, 3, 6, 4, 7]

    Funktionen sorted returnerar en ny ordnad kopia av listan, så vi behöver inte mera "sabotera" den ursprungliga listan när vi söker efter det näst minsta värdet.

    Det är en bra vana att undvika sidoeffekter i funktioner. Sidoeffekter kan göra det svårare att säkerställa att programmet fungerar som det ska i alla situationer.

    Funktioner som saknar sidoeffekter kallas rena funktioner. Då man arbetar med funktionell programmering är rena funktioner speciellt viktiga. Vi dyker djupare i det här under fortsättningskursen i programmering.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Lexikon

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +[1, 4, 2, 5, 3, 6, 4, 7]

    Funktionen sorted returnerar en ny ordnad kopia av listan, så vi behöver inte mera "sabotera" den ursprungliga listan när vi söker efter det näst minsta värdet.

    Det är en bra vana att undvika sidoeffekter i funktioner. Sidoeffekter kan göra det svårare att säkerställa att programmet fungerar som det ska i alla situationer.

    Funktioner som saknar sidoeffekter kallas rena funktioner. Då man arbetar med funktionell programmering är rena funktioner speciellt viktiga. Vi dyker djupare i det här under fortsättningskursen i programmering.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Lexikon

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-5/3-lexikon/index.html b/osa-5/3-lexikon/index.html index 5dcc874d7..e5b8e76cb 100644 --- a/osa-5/3-lexikon/index.html +++ b/osa-5/3-lexikon/index.html @@ -348,4 +348,4 @@ print("Medellängden är", total_langd / len(personer))
    Exempelutskrift

    Peppa Python Philip Python Pedro Python -Medellängden är 173.0

    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Tuple

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Medellängden är 173.0

    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Tuple

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-5/4-tuple/index.html b/osa-5/4-tuple/index.html index 33123a6df..5a5c0d671 100644 --- a/osa-5/4-tuple/index.html +++ b/osa-5/4-tuple/index.html @@ -235,4 +235,4 @@ print("nyckel:", nyckel) print("värde:", varde)

    Tupler finns i bakgrunden här också. Metoden lexikon.items() returnerar varje nyckel-värdepar som en tuple, där det första elementet innehåller nyckeln och det andra värdet.

    Ett annat användningsområde för tupler är att byta värden sinsemellan två variabler:

    tal1, tal2 = tal2, tal1

    Tilldelningssatsen ovan svänger på värdena lagrade i variablerna tal1 och tal2. Resultatet är detsamma som vi skulle uppnå med hjälp av en hjälpvariabel:

    hjalp = tal1
     tal1 = tal2
    -tal2 = hjalp
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät gällande materialet för den här veckan.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +tal2 = hjalp
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät gällande materialet för den här veckan.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-5/index.html b/osa-5/index.html index 681ae43db..84d8ce01d 100644 --- a/osa-5/index.html +++ b/osa-5/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-6/1-lasa-filer/index.html b/osa-6/1-lasa-filer/index.html index efe9516a0..6b28fb8af 100644 --- a/osa-6/1-lasa-filer/index.html +++ b/osa-6/1-lasa-filer/index.html @@ -444,4 +444,4 @@ '080488-123X': 3300, '290274-044S': 4350, '010479-007Z': 2500 -}

    For-loopen i slutet av programmet kombinerar namnen på arbetstagarna med deras löner.

    Programmet kan också ta i beaktande situationer där pic saknas för en arbetstagare.

    Kom ihåg att ordningen som elementen är lagrade i lexikon inte har någon skillnad, eftersom nycklarna behandlas med hjälp av hashvärden.

    Loading
    Loading
    Loading
    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Skriva filer

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +}

    For-loopen i slutet av programmet kombinerar namnen på arbetstagarna med deras löner.

    Programmet kan också ta i beaktande situationer där pic saknas för en arbetstagare.

    Kom ihåg att ordningen som elementen är lagrade i lexikon inte har någon skillnad, eftersom nycklarna behandlas med hjälp av hashvärden.

    Loading
    Loading
    Loading
    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Skriva filer

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-6/2-skriva-filer/index.html b/osa-6/2-skriva-filer/index.html index 67efb99b7..32d7cb699 100644 --- a/osa-6/2-skriva-filer/index.html +++ b/osa-6/2-skriva-filer/index.html @@ -298,4 +298,4 @@ veckopoang = las_veckopoang("veckopoang.csv") -print(hamta_vitsord("Paula", veckopoang))
    Exempeldata

    3

    Om vi märker att någon funktionalitet i programmet kräver åtgärdande, kommer ändringar inte att orsaka följder överallt i koden. Om vi till exempel vill ändra på vitsordsgränserna, behöver vi bara ändra på funktionen som räknar ut vitsordet – alla andra funktioner som använder den här funktionen skulle fortfarande fungera, med de nya gränserna. Om koden för den här funktionaliteten skulle vara splittrad, finns det en risk att vi glömmer att uppdatera koden på något ställe. Det här skulle antagligen orsaka problem.

    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Förbered dig på fel

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(hamta_vitsord("Paula", veckopoang))
    Exempeldata

    3

    Om vi märker att någon funktionalitet i programmet kräver åtgärdande, kommer ändringar inte att orsaka följder överallt i koden. Om vi till exempel vill ändra på vitsordsgränserna, behöver vi bara ändra på funktionen som räknar ut vitsordet – alla andra funktioner som använder den här funktionen skulle fortfarande fungera, med de nya gränserna. Om koden för den här funktionaliteten skulle vara splittrad, finns det en risk att vi glömmer att uppdatera koden på något ställe. Det här skulle antagligen orsaka problem.

    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Förbered dig på fel

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-6/3-fel/index.html b/osa-6/3-fel/index.html index 51b8dc917..e4245569f 100644 --- a/osa-6/3-fel/index.html +++ b/osa-6/3-fel/index.html @@ -312,4 +312,4 @@ print(fakultet(-1)) File "testi.py", line 3, in fakultet raise ValueError("Negativt värde: " + str(n)) -ValueError: Negativt värde: -1
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Lokala och globala variabler

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +ValueError: Negativt värde: -1
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Lokala och globala variabler

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-6/4-lokala-globala-variabler/index.html b/osa-6/4-lokala-globala-variabler/index.html index 1d720c306..a5d1e219d 100644 --- a/osa-6/4-lokala-globala-variabler/index.html +++ b/osa-6/4-lokala-globala-variabler/index.html @@ -330,4 +330,4 @@ print(analys) # start av programmet -main()
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät gällande materialet för den här veckan.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +main()
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät gällande materialet för den här veckan.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-6/index.html b/osa-6/index.html index 801fe8331..1097f6f2e 100644 --- a/osa-6/index.html +++ b/osa-6/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-7/1-moduler/index.html b/osa-7/1-moduler/index.html index b0a7ca84f..b74cb0e70 100644 --- a/osa-7/1-moduler/index.html +++ b/osa-7/1-moduler/index.html @@ -251,4 +251,4 @@
  • https://docs.python.org/3/library/math.html
  • Vi kan också kolla på innehållet i en modul med funktionen dir:

    import math
     
    -print(dir(math))

    Den här funktionen returnerar en lista av namn definierade av modulen. Det kan vara namn på klasser, fixerade värden eller funktioner:

    Exempelutskrift

    ['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']

    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Slumpmässighet

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(dir(math))

    Den här funktionen returnerar en lista av namn definierade av modulen. Det kan vara namn på klasser, fixerade värden eller funktioner:

    Exempelutskrift

    ['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc']

    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Slumpmässighet

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-7/2-slumpmassighet/index.html b/osa-7/2-slumpmassighet/index.html index 2f1ea8d73..a8785ea5a 100644 --- a/osa-7/2-slumpmassighet/index.html +++ b/osa-7/2-slumpmassighet/index.html @@ -252,4 +252,4 @@ seed(1337) # det här genererar alltid samma tal -print(randint(1, 100))

    Om vi har funktioner som baserar sig på slumpmässighet och har valt ett seed-värde, kommer funktionen att ge samma resultat varje gång den körs. Resultatet kan skilja sig mellan olika Python-versioner, men i grunden kommer slumpmässigheten att försvinna då vi definierar seed-värdet. Funktionaliteten kan dock vara nyttig då vi exempelvis testar på vårt program.

    Loading
    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Tid och datum

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +print(randint(1, 100))

    Om vi har funktioner som baserar sig på slumpmässighet och har valt ett seed-värde, kommer funktionen att ge samma resultat varje gång den körs. Resultatet kan skilja sig mellan olika Python-versioner, men i grunden kommer slumpmässigheten att försvinna då vi definierar seed-värdet. Funktionaliteten kan dock vara nyttig då vi exempelvis testar på vårt program.

    Loading
    Loading
    Loading
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Tid och datum

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-7/3-tid-datum/index.html b/osa-7/3-tid-datum/index.html index ef131e2cd..1e0693c9b 100644 --- a/osa-7/3-tid-datum/index.html +++ b/osa-7/3-tid-datum/index.html @@ -301,4 +301,4 @@ print("Du föddes på förra årtusendet") else: print("Du föddes på det här årtusendet")
    Exempelutskrift

    Ange din födelsetid i formatet dd.mm.åååå: 5.11.1986 -Du föddes på förra årtusendet

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Behandla data

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Du föddes på förra årtusendet

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Behandla data

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-7/4-behandla-data/index.html b/osa-7/4-behandla-data/index.html index f5c62ad34..999cc62ad 100644 --- a/osa-7/4-behandla-data/index.html +++ b/osa-7/4-behandla-data/index.html @@ -247,4 +247,4 @@
  • https://docs.python.org/3/library/
  • Förutom standardbiblioteket är internet fullproppat med andra Python-moduler för olika ändamål. Några vanliga moduler listas på den här sidan:

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Skapa dina egna moduler

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Skapa dina egna moduler

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-7/5-egna-moduler/index.html b/osa-7/5-egna-moduler/index.html index 2cf24b679..90391f64c 100644 --- a/osa-7/5-egna-moduler/index.html +++ b/osa-7/5-egna-moduler/index.html @@ -292,4 +292,4 @@ print(ord.sista_ordet(strang)) print(ord.antal_ord(strang))
    Exempelutskrift

    Polisstationen full -3

    I uppgifterna under den här kursen har du flera gånger ombetts att ha dina test under ett if __name__ == "__main__" -block. Nu vet du varför.

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät om materialet för den här veckan.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    6. Flera funktionaliteter i Python

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +3

    I uppgifterna under den här kursen har du flera gånger ombetts att ha dina test under ett if __name__ == "__main__" -block. Nu vet du varför.

    Loading
    Loading...
    :
    Loading...

    Log in to view the quiz

    Vänligen svara på en kort enkät om materialet för den här veckan.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen! Fortsätt till nästa del:
    6. Flera funktionaliteter i Python

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-7/6-funktionaliteter-python/index.html b/osa-7/6-funktionaliteter-python/index.html index f5da3dffe..360c9d856 100644 --- a/osa-7/6-funktionaliteter-python/index.html +++ b/osa-7/6-funktionaliteter-python/index.html @@ -232,4 +232,4 @@ print("Deras summa är", sum(lista)) test(1, 2, 3, 4, 5)
    Exempelutskrift

    Du gav 5 argument -Deras summa är 15

    Loading

    Vänligen svara på kursfeedbacksenkäten här nedan. Enkätens resultat hjälper oss att utveckla och förbättra den här kursen.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +Deras summa är 15

    Loading

    Vänligen svara på kursfeedbacksenkäten här nedan. Enkätens resultat hjälper oss att utveckla och förbättra den här kursen.

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-7/index.html b/osa-7/index.html index 7f146c0e3..ed8eaac4f 100644 --- a/osa-7/index.html +++ b/osa-7/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-8/1-objekt-och-metoder/index.html b/osa-8/1-objekt-och-metoder/index.html index 8ebc99c33..a2bbb6bd0 100644 --- a/osa-8/1-objekt-och-metoder/index.html +++ b/osa-8/1-objekt-och-metoder/index.html @@ -260,4 +260,4 @@ lista.pop(0) print(lista)
    Exempelutskrift

    [1, 2, 3, 5, 1] -[2, 3, 5, 1]

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Klasser och objekt

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +[2, 3, 5, 1]

    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Klasser och objekt

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-8/2-klasser-och-objekt/index.html b/osa-8/2-klasser-och-objekt/index.html index f41c20076..8e266ffc6 100644 --- a/osa-8/2-klasser-och-objekt/index.html +++ b/osa-8/2-klasser-och-objekt/index.html @@ -256,4 +256,4 @@ Månad: 12

    Veckodagen som datumet infaller på är tillgänglig via metoden isoweekday:

    veckodag = dag.isoweekday()

    Detta är en metodkallelse, alltså finns det parenteser efter namnet på metoden. Om du lämnar bort parenteserna uppstår det inte något fel, men resultatet blir konstigt:

    veckodag =  dag.isoweekday
     print("Veckodag:", veckodag)
    Exempelutskrift

    Veckodag: <built-in method isoweekday of datetime.date object at 0x10ed66450>

    Månaden av ett date-objekt är en variabel, alltså kan det tillgivna värdet kommas åt med en referens.

    manad = dag.month

    Lägg märke till att det inte finns parenteser här. Att sätta in parenteser skulle orsaka ett fel:

    manad = dag.month()
    Exempelutskrift
    Traceback (most recent call last): File "", line 1, in -TypeError: 'int' object is not callable
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Egna klasser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +TypeError: 'int' object is not callable
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Egna klasser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-8/3-egna-klasser/index.html b/osa-8/3-egna-klasser/index.html index 947fd2c72..772a4fc9a 100644 --- a/osa-8/3-egna-klasser/index.html +++ b/osa-8/3-egna-klasser/index.html @@ -304,4 +304,4 @@ tillagg_pengar_pa_kontot(peters_konto, 500) print(peters_konto.saldo)
    Exempelutskrift

    0 -500

    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Metoder i egna klasser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +500

    Loading
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Metoder i egna klasser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-8/4-metoder-i-egna-klasser/index.html b/osa-8/4-metoder-i-egna-klasser/index.html index 92dc5b9e4..dd622a120 100644 --- a/osa-8/4-metoder-i-egna-klasser/index.html +++ b/osa-8/4-metoder-i-egna-klasser/index.html @@ -341,4 +341,4 @@ self.saldo += superbonus def __str__(self): - return f"Bonuskort(namn={self.namn}, saldo={self.saldo})"
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Fler exempel

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + return f"Bonuskort(namn={self.namn}, saldo={self.saldo})"
    Loading
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Fler exempel

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-8/5-fler-exempel/index.html b/osa-8/5-fler-exempel/index.html index 3c5fa4085..430fcdfde 100644 --- a/osa-8/5-fler-exempel/index.html +++ b/osa-8/5-fler-exempel/index.html @@ -282,4 +282,4 @@ dejt studier 1 -0

    Loading

    Vänligen svara på en snabb enkät om veckans material:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +0

    Loading

    Vänligen svara på en snabb enkät om veckans material:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-8/index.html b/osa-8/index.html index 3728aca14..0ea3c887c 100644 --- a/osa-8/index.html +++ b/osa-8/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/osa-9/1-objekt-och-referenser/index.html b/osa-9/1-objekt-och-referenser/index.html index ae68af24b..976fb1c1a 100644 --- a/osa-9/1-objekt-och-referenser/index.html +++ b/osa-9/1-objekt-och-referenser/index.html @@ -540,4 +540,4 @@ # Detta fungerar inte, Person måste vara innanför citationstecken def aldre_an(self, annat: Person): - return self.fodelsear < annat.fodelsear:
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Objekt som attribut

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + return self.fodelsear < annat.fodelsear:
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    2. Objekt som attribut

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-9/2-objekt-som-attribut/index.html b/osa-9/2-objekt-som-attribut/index.html index 8ae24c447..ced43499a 100644 --- a/osa-9/2-objekt-som-attribut/index.html +++ b/osa-9/2-objekt-som-attribut/index.html @@ -308,4 +308,4 @@ if spelare is not None: print(f"Johans målmängd {p.mal}") else: - print(f"Johan spelar inte i Gumtäkts boll :(")
    Exempelutskrift

    Johan spelar inte i Gumtäkts boll :(

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Inkapsling

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + print(f"Johan spelar inte i Gumtäkts boll :(")
    Exempelutskrift

    Johan spelar inte i Gumtäkts boll :(

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    3. Inkapsling

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-9/3-inkapsling/index.html b/osa-9/3-inkapsling/index.html index a38e7f493..cc9d59828 100644 --- a/osa-9/3-inkapsling/index.html +++ b/osa-9/3-inkapsling/index.html @@ -344,4 +344,4 @@
  • Idag åt jag gröt
  • Idag lärde jag mig objekt-orienterad programmering
  • Idag lade jag mig tidigt
  • -
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Metodernas räckvidd

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +
    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    4. Metodernas räckvidd

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-9/4-metodernas-rackvidd/index.html b/osa-9/4-metodernas-rackvidd/index.html index cf6cd8e94..cdefa443e 100644 --- a/osa-9/4-metodernas-rackvidd/index.html +++ b/osa-9/4-metodernas-rackvidd/index.html @@ -244,4 +244,4 @@ print(hand1) hand2 = kortlek.dela(5) print(hand2)

    Eftersom händerna är slumpmässigt genererade, är följande endast ett exempel av det som kunde utskrivas:

    Exempelutskrift

    [('spader', 7), ('spader', 11), ('hjarter', 7), ('ruter', 3), ('spader', 4)] -[('klover', 8), ('spader', 12), ('ruter', 13), ('klover', 11), ('spader', 10)]

    Privata metoder är i allmänhet mindre vanliga än privata attribut. En tumregel är att en metod ska döljas när klienten inte har något behov av att direkt komma åt den. Detta är särskilt fallet när det är möjligt att klienten kan påverka objektets integritet negativt genom att anropa metoden.

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Klassattribut

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +[('klover', 8), ('spader', 12), ('ruter', 13), ('klover', 11), ('spader', 10)]

    Privata metoder är i allmänhet mindre vanliga än privata attribut. En tumregel är att en metod ska döljas när klienten inte har något behov av att direkt komma åt den. Detta är särskilt fallet när det är möjligt att klienten kan påverka objektets integritet negativt genom att anropa metoden.

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    5. Klassattribut

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-9/5-klassattribut/index.html b/osa-9/5-klassattribut/index.html index 644c5e031..72a5a3202 100644 --- a/osa-9/5-klassattribut/index.html +++ b/osa-9/5-klassattribut/index.html @@ -354,4 +354,4 @@ return True
    reg = Registration("Bertil Bilist", "Volvo", "1992", "abc-123")
     
     if Registration.registernummer_giltigt("xyz-789"):
    -    print("Detta är ett giltigt nummer!")
    Exempelutskrift

    Detta är ett giltigt nummer!

    Giltigheten för en registernummer kan kontrolleras även utan att skapa en enda instans av klassen, t.ex. med Registration.nummer_plat_giltig("xyz-789"). Samma metod anropas i klassens konstruktor. OBS: även inom konstruktören är denna metod åtkomlig via klassens namn, inte self!

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    6. Fler exempel med klasser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file + print("Detta är ett giltigt nummer!")
    Exempelutskrift

    Detta är ett giltigt nummer!

    Giltigheten för en registernummer kan kontrolleras även utan att skapa en enda instans av klassen, t.ex. med Registration.nummer_plat_giltig("xyz-789"). Samma metod anropas i klassens konstruktor. OBS: även inom konstruktören är denna metod åtkomlig via klassens namn, inte self!

    Loading
    Du har nått slutet av den här delen! Fortsätt till nästa del:
    6. Fler exempel med klasser

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-9/6-fler-exempel-med-klasser/index.html b/osa-9/6-fler-exempel-med-klasser/index.html index bd7ebbbd0..ba0870be3 100644 --- a/osa-9/6-fler-exempel-med-klasser/index.html +++ b/osa-9/6-fler-exempel-med-klasser/index.html @@ -384,4 +384,4 @@ print(studerande1.gjorda_kurser) print(studerande2.gjorda_kurser)
    Exempelutskrift

    ['ItP', 'Tira'] -[]

    Den stora finalen

    Fastän följande övning avslutar den här delen av materialet, så har de tekniker som krävs för att lösa den redan behandlats i avsnittet som heter Objekt som attribut. Du behöver inte använda @property-dekoratorn eller standardvärden för parametrar i den här övningen. Den här övningen är mycket lik övningarna "en presentask" och "den kortaste personen i rummet".

    Loading

    Svara avslutningsvis på följande frågeformulär:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file +[]

    Den stora finalen

    Fastän följande övning avslutar den här delen av materialet, så har de tekniker som krävs för att lösa den redan behandlats i avsnittet som heter Objekt som attribut. Du behöver inte använda @property-dekoratorn eller standardvärden för parametrar i den här övningen. Den här övningen är mycket lik övningarna "en presentask" och "den kortaste personen i rummet".

    Loading

    Svara avslutningsvis på följande frågeformulär:

    Loading...
    :
    Loading...

    Log in to view the quiz

    Du har nått slutet av den här delen!

    Se dina poäng genom att klicka på cirkeln nere till höger av sidan.

    \ No newline at end of file diff --git a/osa-9/index.html b/osa-9/index.html index 39a738e19..2f9859960 100644 --- a/osa-9/index.html +++ b/osa-9/index.html @@ -152,4 +152,4 @@ } })
    \ No newline at end of file +
    Loading...
    \ No newline at end of file diff --git a/page-data/index/page-data.json b/page-data/index/page-data.json index d26ad3d7f..d9a761dbd 100644 --- a/page-data/index/page-data.json +++ b/page-data/index/page-data.json @@ -1,5 +1,5 @@ { "componentChunkName": "component---src-templates-info-page-template-js", "path": "/", - "result": {"data":{"page":{"htmlAst":{"type":"root","children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Kursen börjar onsdagen den 4.9.2024"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Välkommen till kurssidorna för Introduktion till programmering (TKT10002, 5 sp) och Fortsättningskurs i programmering (TKT10003, 5 sp)!"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"kursens-upplagg","style":"position:relative;"},"children":[{"type":"text","value":"Kursens upplägg"},{"type":"element","tagName":"a","properties":{"href":"#kursens-upplagg","ariaLabel":"kursens upplagg permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Du genomför kurserna genom att göra "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"uppgifter"}]},{"type":"text","value":" och i slutet av vardera kurs delta i en "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"obligatorisk tentamen"}]},{"type":"text","value":". Mer information om bedömningen finns "},{"type":"element","tagName":"a","properties":{"href":"https://rage.github.io/ohjelmointi-24-sv/bedomningar-och-prov","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"här"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"kursmaterial","style":"position:relative;"},"children":[{"type":"text","value":"Kursmaterial"},{"type":"element","tagName":"a","properties":{"href":"#kursmaterial","ariaLabel":"kursmaterial permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Allt kursmaterial finns på denna sida. Modul 1-7 (se menyn till vänster) utgör Introduktion till programmering och modul 8-14 utgör Fortsättningskurs i programmering. Förutom modulerna finns "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"inspelade videogenomgångar"}]},{"type":"text","value":" för varje modul. Dessa publiceras kontinuerligt på denna sida."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"kurstraffar-och-handledningstillfallen","style":"position:relative;"},"children":[{"type":"text","value":"Kursträffar och handledningstillfällen"},{"type":"element","tagName":"a","properties":{"href":"#kurstraffar-och-handledningstillfallen","ariaLabel":"kurstraffar och handledningstillfallen permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"En "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"kursträff"}]},{"type":"text","value":" hålls varje vecka antingen på plats i Exactum (D122) eller via Zoom (se listan nedan). Campusträffarna streamas och spelas in. Vi använder samma länk genom båda kurserna: "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://helsinki.zoom.us/j/62306374955?pwd=3bW5tXSnFKeYJRQikXFzbPlieZwvg2.1","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"https://helsinki.zoom.us/j/62306374955?pwd=3bW5tXSnFKeYJRQikXFzbPlieZwvg2.1"}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Träffarna är inte föreläsningar där vi går exakt igenom det material som finns på kurssidan, utan fokuserar på andra exempel, problemlösning och felsökning. Varken träffarna eller handledningstillfällena är obligatoriska."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Handledning"}]},{"type":"text","value":" ordnas likaså varje vecka både på campus och på distans via Discord. Du hittar tidtabellen för handledningstillfällena "},{"type":"element","tagName":"a","properties":{"href":"https://rage.github.io/ohjelmointi-24-sv/stod","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"här"}]},{"type":"text","value":". Du kommer till kursens Discord-kanal "},{"type":"element","tagName":"a","properties":{"href":"https://study.cs.helsinki.fi/discord/join/ohjelmoinnin_mooc","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"här"}]},{"type":"text","value":". På kanalen kan du diskutera både med andra studerande och kursens handledare. Använd i första hand Discords meddelandefunktion. Du når också kursens lärare direkt per epost på "},{"type":"element","tagName":"a","properties":{"href":"mailto:ohjelmoinnin-mooc@helsinki.fi","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"ohjelmoinnin-mooc@helsinki.fi"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"kursoversikt","style":"position:relative;"},"children":[{"type":"text","value":"Kursöversikt"},{"type":"element","tagName":"a","properties":{"href":"#kursoversikt","ariaLabel":"kursoversikt permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tagName":"table","properties":{},"children":[{"type":"element","tagName":"thead","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Datum"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Plats"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Modul"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Inspelning"}]}]}]},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 4.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"1"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://youtu.be/D747XGyM3Ys","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Kursträff 1"}]},{"type":"text","value":", "},{"type":"element","tagName":"a","properties":{"href":"https://youtu.be/Owkx_ElzsQk","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Linkki-presentation"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 11.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"2"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 18.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"3"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 25.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"4"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 2.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"5"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 9.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"6"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 16.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"7"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 29.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"8"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 5.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"9"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 12.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"10"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 19.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"11"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 26.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"12"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 3.12.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"13"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 10.12.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"14"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ingen genomgång, projektarbete"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"OBS!"}]},{"type":"text","value":" Det kan bli ändringar i denna kursöversikt."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"1--1-poang-tillaggsprestationer","style":"position:relative;"},"children":[{"type":"text","value":"1 + 1 poäng tilläggsprestationer"},{"type":"element","tagName":"a","properties":{"href":"#1--1-poang-tillaggsprestationer","ariaLabel":"1 1 poang tillaggsprestationer permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Ifall du tidigare har slutfört motsvarande kurser i Java vid Helsingfors universitet, kan du nu genomföra kurserna i Python och få tilläggsstudiepoäng (1 + 1 sp). Du hittar mer info om detta under rubriken "},{"type":"element","tagName":"a","properties":{"href":"https://rage.github.io/ohjelmointi-24-sv/bedomningar-och-prov","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Bedömning och tentamen"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"tidsgrans","style":"position:relative;"},"children":[{"type":"text","value":"Tidsgräns"},{"type":"element","tagName":"a","properties":{"href":"#tidsgrans","ariaLabel":"tidsgrans permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Kursen är öppen från september 2024 till mars 2025. Du kan göra uppgifterna i egen takt fram tills dess."}]}],"data":{"quirksMode":false}},"html":"

    Kursen börjar onsdagen den 4.9.2024

    \n

    Välkommen till kurssidorna för Introduktion till programmering (TKT10002, 5 sp) och Fortsättningskurs i programmering (TKT10003, 5 sp)!

    \n

    Kursens upplägg

    \n

    Du genomför kurserna genom att göra uppgifter och i slutet av vardera kurs delta i en obligatorisk tentamen. Mer information om bedömningen finns här.

    \n

    Kursmaterial

    \n

    Allt kursmaterial finns på denna sida. Modul 1-7 (se menyn till vänster) utgör Introduktion till programmering och modul 8-14 utgör Fortsättningskurs i programmering. Förutom modulerna finns inspelade videogenomgångar för varje modul. Dessa publiceras kontinuerligt på denna sida.

    \n

    Kursträffar och handledningstillfällen

    \n

    En kursträff hålls varje vecka antingen på plats i Exactum (D122) eller via Zoom (se listan nedan). Campusträffarna streamas och spelas in. Vi använder samma länk genom båda kurserna: https://helsinki.zoom.us/j/62306374955?pwd=3bW5tXSnFKeYJRQikXFzbPlieZwvg2.1

    \n

    Träffarna är inte föreläsningar där vi går exakt igenom det material som finns på kurssidan, utan fokuserar på andra exempel, problemlösning och felsökning. Varken träffarna eller handledningstillfällena är obligatoriska.

    \n

    Handledning ordnas likaså varje vecka både på campus och på distans via Discord. Du hittar tidtabellen för handledningstillfällena här. Du kommer till kursens Discord-kanal här. På kanalen kan du diskutera både med andra studerande och kursens handledare. Använd i första hand Discords meddelandefunktion. Du når också kursens lärare direkt per epost på ohjelmoinnin-mooc@helsinki.fi.

    \n

    Kursöversikt

    \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    DatumPlatsModulInspelning
    Ons 4.9.2024Exactum1Kursträff 1, Linkki-presentation
    Ons 11.9.2024Zoom2TBA
    Ons 18.9.2024Zoom3TBA
    Ons 25.9.2024Exactum4TBA
    Ons 2.10.2024Exactum5TBA
    Ons 9.10.2024Exactum6TBA
    Ons 16.10.2024Exactum7TBA
    Ti 29.10.2024Exactum8TBA
    Ti 5.11.2024Exactum9TBA
    Ti 12.11.2024Zoom10TBA
    Ti 19.11.2024Zoom11TBA
    Ti 26.11.2024Exactum12TBA
    Ti 3.12.2024Zoom13TBA
    Ti 10.12.2024Exactum14Ingen genomgång, projektarbete
    \n

    OBS! Det kan bli ändringar i denna kursöversikt.

    \n

    1 + 1 poäng tilläggsprestationer

    \n

    Ifall du tidigare har slutfört motsvarande kurser i Java vid Helsingfors universitet, kan du nu genomföra kurserna i Python och få tilläggsstudiepoäng (1 + 1 sp). Du hittar mer info om detta under rubriken Bedömning och tentamen.

    \n

    Tidsgräns

    \n

    Kursen är öppen från september 2024 till mars 2025. Du kan göra uppgifterna i egen takt fram tills dess.

    ","frontmatter":{"path":"/","title":"Info om kursen","banner":true},"fileAbsolutePath":"/home/runner/work/ohjelmointi-24-sv/ohjelmointi-24-sv/data/index.md"}},"pageContext":{}}, + "result": {"data":{"page":{"htmlAst":{"type":"root","children":[{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Kursen börjar onsdagen den 4.9.2024"}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Välkommen till kurssidorna för Introduktion till programmering (TKT10002, 5 sp) och Fortsättningskurs i programmering (TKT10003, 5 sp)!"}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"kursens-upplagg","style":"position:relative;"},"children":[{"type":"text","value":"Kursens upplägg"},{"type":"element","tagName":"a","properties":{"href":"#kursens-upplagg","ariaLabel":"kursens upplagg permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Du genomför kurserna genom att göra "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"uppgifter"}]},{"type":"text","value":" och i slutet av vardera kurs delta i en "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"obligatorisk tentamen"}]},{"type":"text","value":". Mer information om bedömningen finns "},{"type":"element","tagName":"a","properties":{"href":"https://rage.github.io/ohjelmointi-24-sv/bedomningar-och-prov","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"här"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"kursmaterial","style":"position:relative;"},"children":[{"type":"text","value":"Kursmaterial"},{"type":"element","tagName":"a","properties":{"href":"#kursmaterial","ariaLabel":"kursmaterial permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Allt kursmaterial finns på denna sida. Modul 1-7 (se menyn till vänster) utgör Introduktion till programmering och modul 8-14 utgör Fortsättningskurs i programmering. Förutom modulerna finns "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"inspelade videogenomgångar"}]},{"type":"text","value":" för varje modul. Dessa publiceras kontinuerligt på denna sida."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h3","properties":{"id":"kurstraffar-och-handledningstillfallen","style":"position:relative;"},"children":[{"type":"text","value":"Kursträffar och handledningstillfällen"},{"type":"element","tagName":"a","properties":{"href":"#kurstraffar-och-handledningstillfallen","ariaLabel":"kurstraffar och handledningstillfallen permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"En "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"kursträff"}]},{"type":"text","value":" hålls varje vecka antingen på plats i Exactum (D122) eller via Zoom (se listan nedan). Campusträffarna streamas och spelas in. Vi använder samma länk genom båda kurserna: "},{"type":"element","tagName":"strong","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://helsinki.zoom.us/j/62306374955?pwd=3bW5tXSnFKeYJRQikXFzbPlieZwvg2.1","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"https://helsinki.zoom.us/j/62306374955?pwd=3bW5tXSnFKeYJRQikXFzbPlieZwvg2.1"}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Träffarna är inte föreläsningar där vi går exakt igenom det material som finns på kurssidan, utan fokuserar på andra exempel, problemlösning och felsökning. Varken träffarna eller handledningstillfällena är obligatoriska."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"Handledning"}]},{"type":"text","value":" ordnas likaså varje vecka både på campus och på distans via Discord. Du hittar tidtabellen för handledningstillfällena "},{"type":"element","tagName":"a","properties":{"href":"https://rage.github.io/ohjelmointi-24-sv/stod","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"här"}]},{"type":"text","value":". Du kommer till kursens Discord-kanal "},{"type":"element","tagName":"a","properties":{"href":"https://study.cs.helsinki.fi/discord/join/ohjelmoinnin_mooc","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"här"}]},{"type":"text","value":". På kanalen kan du diskutera både med andra studerande och kursens handledare. Använd i första hand Discords meddelandefunktion. Du når också kursens lärare direkt per epost på "},{"type":"element","tagName":"a","properties":{"href":"mailto:ohjelmoinnin-mooc@helsinki.fi","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"ohjelmoinnin-mooc@helsinki.fi"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"kursoversikt","style":"position:relative;"},"children":[{"type":"text","value":"Kursöversikt"},{"type":"element","tagName":"a","properties":{"href":"#kursoversikt","ariaLabel":"kursoversikt permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n"},{"type":"element","tagName":"table","properties":{},"children":[{"type":"element","tagName":"thead","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Datum"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Plats"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Modul"}]},{"type":"element","tagName":"th","properties":{},"children":[{"type":"text","value":"Inspelning"}]}]}]},{"type":"element","tagName":"tbody","properties":{},"children":[{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 4.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"1"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"element","tagName":"a","properties":{"href":"https://youtu.be/D747XGyM3Ys","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Kursträff 1"}]},{"type":"text","value":", "},{"type":"element","tagName":"a","properties":{"href":"https://youtu.be/Owkx_ElzsQk","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Linkki-presentation"}]}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 11.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"2"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 18.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"3"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 25.9.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"4"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 2.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"5"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 9.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"6"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ons 16.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"7"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 29.10.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"8"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 5.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"9"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 12.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"10"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 19.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"11"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 26.11.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"12"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 3.12.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Zoom"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"13"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"TBA"}]}]},{"type":"element","tagName":"tr","properties":{},"children":[{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ti 10.12.2024"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Exactum D122"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"14"}]},{"type":"element","tagName":"td","properties":{},"children":[{"type":"text","value":"Ingen genomgång, projektarbete"}]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"element","tagName":"strong","properties":{},"children":[{"type":"text","value":"OBS!"}]},{"type":"text","value":" Det kan bli ändringar i denna kursöversikt."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"1--1-poang-tillaggsprestationer","style":"position:relative;"},"children":[{"type":"text","value":"1 + 1 poäng tilläggsprestationer"},{"type":"element","tagName":"a","properties":{"href":"#1--1-poang-tillaggsprestationer","ariaLabel":"1 1 poang tillaggsprestationer permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Ifall du tidigare har slutfört motsvarande kurser i Java vid Helsingfors universitet, kan du nu genomföra kurserna i Python och få tilläggsstudiepoäng (1 + 1 sp). Du hittar mer info om detta under rubriken "},{"type":"element","tagName":"a","properties":{"href":"https://rage.github.io/ohjelmointi-24-sv/bedomningar-och-prov","target":"_blank","rel":["noopener","noreferrer"]},"children":[{"type":"text","value":"Bedömning och tentamen"}]},{"type":"text","value":"."}]},{"type":"text","value":"\n"},{"type":"element","tagName":"h2","properties":{"id":"tidsgrans","style":"position:relative;"},"children":[{"type":"text","value":"Tidsgräns"},{"type":"element","tagName":"a","properties":{"href":"#tidsgrans","ariaLabel":"tidsgrans permalink","className":["anchor","after"]},"children":[{"type":"element","tagName":"svg","properties":{"ariaHidden":"true","focusable":"false","height":"16","version":"1.1","viewBox":"0 0 16 16","width":"16"},"children":[{"type":"element","tagName":"path","properties":{"fillRule":"evenodd","d":"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"},"children":[]}]}]}]},{"type":"text","value":"\n"},{"type":"element","tagName":"p","properties":{},"children":[{"type":"text","value":"Kursen är öppen från september 2024 till mars 2025. Du kan göra uppgifterna i egen takt fram tills dess."}]}],"data":{"quirksMode":false}},"html":"

    Kursen börjar onsdagen den 4.9.2024

    \n

    Välkommen till kurssidorna för Introduktion till programmering (TKT10002, 5 sp) och Fortsättningskurs i programmering (TKT10003, 5 sp)!

    \n

    Kursens upplägg

    \n

    Du genomför kurserna genom att göra uppgifter och i slutet av vardera kurs delta i en obligatorisk tentamen. Mer information om bedömningen finns här.

    \n

    Kursmaterial

    \n

    Allt kursmaterial finns på denna sida. Modul 1-7 (se menyn till vänster) utgör Introduktion till programmering och modul 8-14 utgör Fortsättningskurs i programmering. Förutom modulerna finns inspelade videogenomgångar för varje modul. Dessa publiceras kontinuerligt på denna sida.

    \n

    Kursträffar och handledningstillfällen

    \n

    En kursträff hålls varje vecka antingen på plats i Exactum (D122) eller via Zoom (se listan nedan). Campusträffarna streamas och spelas in. Vi använder samma länk genom båda kurserna: https://helsinki.zoom.us/j/62306374955?pwd=3bW5tXSnFKeYJRQikXFzbPlieZwvg2.1

    \n

    Träffarna är inte föreläsningar där vi går exakt igenom det material som finns på kurssidan, utan fokuserar på andra exempel, problemlösning och felsökning. Varken träffarna eller handledningstillfällena är obligatoriska.

    \n

    Handledning ordnas likaså varje vecka både på campus och på distans via Discord. Du hittar tidtabellen för handledningstillfällena här. Du kommer till kursens Discord-kanal här. På kanalen kan du diskutera både med andra studerande och kursens handledare. Använd i första hand Discords meddelandefunktion. Du når också kursens lärare direkt per epost på ohjelmoinnin-mooc@helsinki.fi.

    \n

    Kursöversikt

    \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n
    DatumPlatsModulInspelning
    Ons 4.9.2024Exactum D1221Kursträff 1, Linkki-presentation
    Ons 11.9.2024Zoom2TBA
    Ons 18.9.2024Zoom3TBA
    Ons 25.9.2024Exactum D1224TBA
    Ons 2.10.2024Exactum D1225TBA
    Ons 9.10.2024Exactum D1226TBA
    Ons 16.10.2024Exactum D1227TBA
    Ti 29.10.2024Exactum D1228TBA
    Ti 5.11.2024Exactum D1229TBA
    Ti 12.11.2024Zoom10TBA
    Ti 19.11.2024Zoom11TBA
    Ti 26.11.2024Exactum D12212TBA
    Ti 3.12.2024Zoom13TBA
    Ti 10.12.2024Exactum D12214Ingen genomgång, projektarbete
    \n

    OBS! Det kan bli ändringar i denna kursöversikt.

    \n

    1 + 1 poäng tilläggsprestationer

    \n

    Ifall du tidigare har slutfört motsvarande kurser i Java vid Helsingfors universitet, kan du nu genomföra kurserna i Python och få tilläggsstudiepoäng (1 + 1 sp). Du hittar mer info om detta under rubriken Bedömning och tentamen.

    \n

    Tidsgräns

    \n

    Kursen är öppen från september 2024 till mars 2025. Du kan göra uppgifterna i egen takt fram tills dess.

    ","frontmatter":{"path":"/","title":"Info om kursen","banner":true},"fileAbsolutePath":"/home/runner/work/ohjelmointi-24-sv/ohjelmointi-24-sv/data/index.md"}},"pageContext":{}}, "staticQueryHashes": ["1357757885","994120085"]} \ No newline at end of file diff --git a/report-issue/index.html b/report-issue/index.html index d8e6befe8..cb23fcd95 100644 --- a/report-issue/index.html +++ b/report-issue/index.html @@ -134,4 +134,4 @@ } } }) -

    Hur meddela om ett problem i materialet


    Du kan rapportera ett problem på kursens GitHub-sida.

    Det här kräver ett GitHub-konto som du kan skapa här

    När du öppnar en issue, kolla här om det redan finns en öppen issue som gäller samma sak


    Upplägget för en issue

    1. Klicka på knappen ovan.
    2. Skriv en kort och koncis rubrik.
    3. Beskriv problemet tillräckligt noggrannt.
    4. Välj "Submit new issue".

    om vi svarar på din issue, vi kan behöva ytterligare information av dig.

    Tack för att du hjälper oss förbättra materialet!

    \ No newline at end of file +

    Hur meddela om ett problem i materialet


    Du kan rapportera ett problem på kursens GitHub-sida.

    Det här kräver ett GitHub-konto som du kan skapa här

    När du öppnar en issue, kolla här om det redan finns en öppen issue som gäller samma sak


    Upplägget för en issue

    1. Klicka på knappen ovan.
    2. Skriv en kort och koncis rubrik.
    3. Beskriv problemet tillräckligt noggrannt.
    4. Välj "Submit new issue".

    om vi svarar på din issue, vi kan behöva ytterligare information av dig.

    Tack för att du hjälper oss förbättra materialet!

    \ No newline at end of file diff --git a/sanasto/index.html b/sanasto/index.html index 486fd6c71..9e6795e7a 100644 --- a/sanasto/index.html +++ b/sanasto/index.html @@ -137,4 +137,4 @@ } } }) -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/sign-in/index.html b/sign-in/index.html index aaadacb09..61613c956 100644 --- a/sign-in/index.html +++ b/sign-in/index.html @@ -140,4 +140,4 @@ } } }) -
    \ No newline at end of file +
    \ No newline at end of file diff --git a/sign-up/index.html b/sign-up/index.html index 5494588b9..4b770fa90 100644 --- a/sign-up/index.html +++ b/sign-up/index.html @@ -140,4 +140,4 @@ } } }) -

    Skapa konto

    Kursen använder mooc.fi -konton. Om du tidigare har gjort Mooc.fi-kurser, logga in. På den här sidan kan du skapa ett konto som fungerar för majoriteten av Mooc.fi-kurserna.
    \ No newline at end of file +

    Skapa konto

    Kursen använder mooc.fi -konton. Om du tidigare har gjort Mooc.fi-kurser, logga in. På den här sidan kan du skapa ett konto som fungerar för majoriteten av Mooc.fi-kurserna.
    \ No newline at end of file diff --git a/stod/index.html b/stod/index.html index c49e6e976..6a77fb0a8 100644 --- a/stod/index.html +++ b/stod/index.html @@ -223,4 +223,4 @@

    Discord

    Discord är en meddelandetjänst, som du kan hitta mer info om här.

    Du hittar kursens kanaler här. Det finns en egen kanal för den svenskspråkiga kursen (swedish_ohjelmoinnin_mooc).

    -

    Under handledningstiden svarar handledaren på frågor i kurskanalen och via privata meddelanden på Discord. Discord används även för diskussioner och information utanför handledningstiderna, så det lönar sig att gå med!

    \ No newline at end of file +

    Under handledningstiden svarar handledaren på frågor i kurskanalen och via privata meddelanden på Discord. Discord används även för diskussioner och information utanför handledningstiderna, så det lönar sig att gå med!

    \ No newline at end of file