From 9ef36700b12950e1dd77bde978c4f7dd42783200 Mon Sep 17 00:00:00 2001 From: rouhani <majid.rouhani@ntnu.no> Date: Fri, 7 Apr 2023 20:08:36 +0200 Subject: [PATCH] upd --- lectures/lecture1/lab/lab-1.md | 4 +- lectures/lecture2/lab/lab-2.md | 4 +- ..._gjett_tallet.ipynb => gjett_tallet.ipynb} | 0 ...il_lokker.ipynb => intro_til_lokker.ipynb} | 0 lectures/lecture3/lab/lab-3.md | 13 ++- ...er_om_lokker.ipynb => mer_om_lokker.ipynb} | 0 ...tede_lokker.ipynb => nostede_lokker.ipynb} | 0 ....ipynb => sammenligning_av_strenger.ipynb} | 0 ...il_lokker.ipynb => intro_til_lokker.ipynb} | 0 ...er_om_lokker.ipynb => mer_om_lokker.ipynb} | 0 ...tede_lokker.ipynb => nostede_lokker.ipynb} | 0 ....ipynb => sammenligning_av_strenger.ipynb} | 0 lectures/lecture3/notes/slides/lecture-3.md | 103 ++++++++++++++++++ lectures/lectures.ipynb | 22 +++- 14 files changed, 136 insertions(+), 10 deletions(-) rename lectures/lecture3/lab/{4_gjett_tallet.ipynb => gjett_tallet.ipynb} (100%) rename lectures/lecture3/lab/{1_intro_til_lokker.ipynb => intro_til_lokker.ipynb} (100%) rename lectures/lecture3/lab/{2_mer_om_lokker.ipynb => mer_om_lokker.ipynb} (100%) rename lectures/lecture3/lab/{3_nostede_lokker.ipynb => nostede_lokker.ipynb} (100%) rename lectures/lecture3/lab/{4_sammenligning_av_strenger.ipynb => sammenligning_av_strenger.ipynb} (100%) rename lectures/lecture3/notes/codes/{1_intro_til_lokker.ipynb => intro_til_lokker.ipynb} (100%) rename lectures/lecture3/notes/codes/{2_mer_om_lokker.ipynb => mer_om_lokker.ipynb} (100%) rename lectures/lecture3/notes/codes/{3_nostede_lokker.ipynb => nostede_lokker.ipynb} (100%) rename lectures/lecture3/notes/codes/{4_sammenligning_av_strenger.ipynb => sammenligning_av_strenger.ipynb} (100%) create mode 100644 lectures/lecture3/notes/slides/lecture-3.md diff --git a/lectures/lecture1/lab/lab-1.md b/lectures/lecture1/lab/lab-1.md index c4a82ca..548bb68 100644 --- a/lectures/lecture1/lab/lab-1.md +++ b/lectures/lecture1/lab/lab-1.md @@ -1,13 +1,13 @@ # Lab-1 -## Læringsutbytte +### Læringsutbytte * Komme i gang med jupyter (skjønne forskjellen mellom markdown, python, html) * Kunne skrive enkel Python program som inneholder: kommentar, kode som skriver til skjerm og leser fra tastatur. * Kunne definere variabler * Kunne konvertere mellom enkle datatyper -## Læringsaktiviteter +### Læringsaktiviteter * [Introduksjon til Jupyter](intro_til_jupyter.ipynb) * [Tall- og Typekonvertering](tall_og_typekonvertering.ipynb) diff --git a/lectures/lecture2/lab/lab-2.md b/lectures/lecture2/lab/lab-2.md index 2740167..d26f4eb 100644 --- a/lectures/lecture2/lab/lab-2.md +++ b/lectures/lecture2/lab/lab-2.md @@ -1,13 +1,13 @@ # Lab-2 -## Læringsutbytte +### Læringsutbytte * Kunne skrive enkle matematiske uttrykk i Python * Lære å definere funksjoner i Python * Kunne sette opp logiske uttrykk * Lære å bruke if-setningen i Python. -## Læringsaktiviteter +### Læringsaktiviteter * [Funksjoner og kalkulasjoner](funksjoner_og_kalkulasjoner.ipynb) * [Logiske operatorer og uttrykk](logiske_operatorer_uttrykk.ipynb) diff --git a/lectures/lecture3/lab/4_gjett_tallet.ipynb b/lectures/lecture3/lab/gjett_tallet.ipynb similarity index 100% rename from lectures/lecture3/lab/4_gjett_tallet.ipynb rename to lectures/lecture3/lab/gjett_tallet.ipynb diff --git a/lectures/lecture3/lab/1_intro_til_lokker.ipynb b/lectures/lecture3/lab/intro_til_lokker.ipynb similarity index 100% rename from lectures/lecture3/lab/1_intro_til_lokker.ipynb rename to lectures/lecture3/lab/intro_til_lokker.ipynb diff --git a/lectures/lecture3/lab/lab-3.md b/lectures/lecture3/lab/lab-3.md index fc7211b..dab0423 100644 --- a/lectures/lecture3/lab/lab-3.md +++ b/lectures/lecture3/lab/lab-3.md @@ -1,9 +1,14 @@ # Lab-3 -## Læringsutbytte +### Læringsutbytte -* ... +* Sammenligne strenger +* Velge egnet løkkekonstruksjon (for eller while) etter behov -## Læringsaktiviteter +### Læringsaktiviteter -* ... +* [Sammenligning ac strenger](sammenligning_av_strenger.ipynb) +* [Introduksjon til løkker](intro_til_lokker.ipynb) +* [Oppsamlingsløkker](mer_om_lokker.ipynb) +* [Nøstede løkker](nostede_lokker.ipynb) +* [Gjettelek](gjett_tallet.ipynb) diff --git a/lectures/lecture3/lab/2_mer_om_lokker.ipynb b/lectures/lecture3/lab/mer_om_lokker.ipynb similarity index 100% rename from lectures/lecture3/lab/2_mer_om_lokker.ipynb rename to lectures/lecture3/lab/mer_om_lokker.ipynb diff --git a/lectures/lecture3/lab/3_nostede_lokker.ipynb b/lectures/lecture3/lab/nostede_lokker.ipynb similarity index 100% rename from lectures/lecture3/lab/3_nostede_lokker.ipynb rename to lectures/lecture3/lab/nostede_lokker.ipynb diff --git a/lectures/lecture3/lab/4_sammenligning_av_strenger.ipynb b/lectures/lecture3/lab/sammenligning_av_strenger.ipynb similarity index 100% rename from lectures/lecture3/lab/4_sammenligning_av_strenger.ipynb rename to lectures/lecture3/lab/sammenligning_av_strenger.ipynb diff --git a/lectures/lecture3/notes/codes/1_intro_til_lokker.ipynb b/lectures/lecture3/notes/codes/intro_til_lokker.ipynb similarity index 100% rename from lectures/lecture3/notes/codes/1_intro_til_lokker.ipynb rename to lectures/lecture3/notes/codes/intro_til_lokker.ipynb diff --git a/lectures/lecture3/notes/codes/2_mer_om_lokker.ipynb b/lectures/lecture3/notes/codes/mer_om_lokker.ipynb similarity index 100% rename from lectures/lecture3/notes/codes/2_mer_om_lokker.ipynb rename to lectures/lecture3/notes/codes/mer_om_lokker.ipynb diff --git a/lectures/lecture3/notes/codes/3_nostede_lokker.ipynb b/lectures/lecture3/notes/codes/nostede_lokker.ipynb similarity index 100% rename from lectures/lecture3/notes/codes/3_nostede_lokker.ipynb rename to lectures/lecture3/notes/codes/nostede_lokker.ipynb diff --git a/lectures/lecture3/notes/codes/4_sammenligning_av_strenger.ipynb b/lectures/lecture3/notes/codes/sammenligning_av_strenger.ipynb similarity index 100% rename from lectures/lecture3/notes/codes/4_sammenligning_av_strenger.ipynb rename to lectures/lecture3/notes/codes/sammenligning_av_strenger.ipynb diff --git a/lectures/lecture3/notes/slides/lecture-3.md b/lectures/lecture3/notes/slides/lecture-3.md new file mode 100644 index 0000000..8cf04ac --- /dev/null +++ b/lectures/lecture3/notes/slides/lecture-3.md @@ -0,0 +1,103 @@ +--- +marp: true +size: 4:3 +paginate: true +--- +<!-- https://marpit.marp.app/directives --> + +# Leksjon 3 + +**Læringsutbytte** + +* Lære å sammenligne strenger og bruk av if + +--- + +## Sammenligning av strenger + +* Når man sammenligner to strenger i Python vil strengene sammenlignes karakter for karakter +* Hver karakter har et tallverdi (ascii-kode): + * A = 65, B = 66, ..., Z = 90, a = 97, ..., z = 122 + * '0' = 48, ..., '9' = 57 + + +```python +ord('A') # prints Unicode code for A, which is 65 (ordinal value) + +chr(65) # prints letter A +``` + +--- +## Hvordan skjer sammenligning? + +Anta vi har to strenger s1 og s2. + +1. Første tegnet i hver streng sammenlignes. \ +Hvis Unicode verdien i s1[0] er større enn s2[0], er s1 større +1. Hvis s1[0] == s2[0], sammenlignes s1[1] med s2[1]. \ +Slik fortsetter det inntil et avvik finnes, eller vi er ferdige +1. Hvis strengene er like, er den lengste større + +```python +student_one = "Penny" +student_two = "Paul" + +if student_one > student_two: + print(f"{student_two} comes before {student_one} in the alphabet.") +elif student_one < student_two: + print(f"{student_one} comes before {student_two} in the alphabet.") +``` + +--- +# Introduksjon til løkker + + + + +--- + +```python +print("Hipp Hipp Hurra!",1) +print("Hipp Hipp Hurra!",2) +print("Hipp Hipp Hurra!",3) +print("Hipp Hipp Hurra!",4) +print("Hipp Hipp Hurra!",5) +print("Hipp Hipp Hurra!",6) +print("Hipp Hipp Hurra!",7) +print("Hipp Hipp Hurra!",8) +print("Hipp Hipp Hurra!",9) +print("Hipp Hipp Hurra!",10) + +for tell in range(1,11): + print("Hipp Hipp Hurra!",tell) + +``` +--- +# Nøstede løkker + +* Løkker i løkker +* Eksempler på situasjoner der vi kan få bruk for nøstede løkker: + * Vi har 60 sekunder i et minutt, 60 minutter i en time, 24 timer i et døgn osv. + * Vi har en 2-dimensjonal tabell med kolonner og rader (looper gjennom rader og for hver rad, looper gjennom kolonner) + + +--- + +```python +def format_card_deck(): + + farger = ['♠', '♣', '♥', '♦'] + verdier = ['A', '2', '3', '4', '5', '6', '7', '8', + '9', '10', 'J', 'Q', 'K'] + outer_string = "" + + for farge in farger: + inner_string = "" + for verdi in verdier: + inner_string += farge + verdi + " " + outer_string += inner_string + "\n" + + return outer_string + +print(format_card_deck()) +``` \ No newline at end of file diff --git a/lectures/lectures.ipynb b/lectures/lectures.ipynb index 57220ce..0403775 100644 --- a/lectures/lectures.ipynb +++ b/lectures/lectures.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 6, + "execution_count": 1, "metadata": {}, "outputs": [ { @@ -31,6 +31,9 @@ "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">    <a target=\"_blank\" href=lecture1/notes/codes/tall_og_typekonvertering.ipynb>Tall og type konvertering</a></blockquote>\n", "</details>\n", "</details>\n", + "<details><summary style=\"font-size:200%;cursor: pointer;\">  Lab 1</summary>\n", + "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture1/lab/lab-1.md>Lab-1</a></blockquote>\n", + "</details>\n", "</details>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\"> Leksjon 2: Funksjoner og pakker, logiske uttrykk, valg</summary>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\">  Introduksjon (slides)</summary>\n", @@ -48,6 +51,9 @@ "<details><summary style=\"font-size:200%;cursor: pointer;\">  Ulike typer if-setninger</summary>\n", "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture2/notes/codes/ulike_typer_if_setninger.ipynb>Ulike typr if-setninger</a></blockquote>\n", "</details>\n", + "<details><summary style=\"font-size:200%;cursor: pointer;\">  Lab 2</summary>\n", + "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture2/lab/lab-2.md>Lab-2</a></blockquote>\n", + "</details>\n", "</details>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\"> Leksjon 3: Mer om valg, løkker</summary>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\">  Valg</summary>\n", @@ -64,6 +70,9 @@ "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">    </blockquote>\n", "</details>\n", "</details>\n", + "<details><summary style=\"font-size:200%;cursor: pointer;\">  Lab 3</summary>\n", + "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture3/lab/lab-3.md>Lab-3</a></blockquote>\n", + "</details>\n", "</details>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\"> Leksjon 4: Sammensatte datatyper (lister, tupler, set)</summary>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\">  Mer om løkker</summary>\n", @@ -83,6 +92,9 @@ "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">    </blockquote>\n", "</details>\n", "</details>\n", + "<details><summary style=\"font-size:200%;cursor: pointer;\">  Lab 4</summary>\n", + "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture4/lab/lab-4.md>Lab-4</a></blockquote>\n", + "</details>\n", "</details>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\"> Leksjon 5: Filbehandling, unntakshåndtering</summary>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\">  Filbehandling</summary>\n", @@ -99,11 +111,17 @@ "<details><summary style=\"font-size:200%;cursor: pointer;\">  Programmering mot databaser</summary>\n", "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   </blockquote>\n", "</details>\n", + "<details><summary style=\"font-size:200%;cursor: pointer;\">  Lab 5</summary>\n", + "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture5/lab/lab-5.md>Lab-5</a></blockquote>\n", + "</details>\n", "</details>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\"> Leksjon 6: Introduksjon til objekt orientert programmering</summary>\n", "<details><summary style=\"font-size:200%;cursor: pointer;\">  Object Orientert Programmering</summary>\n", "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   Introduksjon</blockquote>\n", "</details>\n", + "<details><summary style=\"font-size:200%;cursor: pointer;\">  Lab 6</summary>\n", + "<blockquote style=\"font-size:200%;cursor: pointer;padding: 10px;\">   <a target=\"_blank\" href=lecture6/lab/lab-6.md>Lab-6</a></blockquote>\n", + "</details>\n", "</details>\n" ], "text/plain": [ @@ -137,7 +155,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.11.2" + "version": "3.10.6" }, "orig_nbformat": 4 }, -- GitLab