From 114db703752ab659a40fbd8454cb3b9844161d53 Mon Sep 17 00:00:00 2001
From: Eirik Lorgen Tanberg <eirik@tanberg.org>
Date: Mon, 25 Sep 2023 20:15:58 +0200
Subject: [PATCH] =?UTF-8?q?Legg=20til=20oppgaver=20for=20=C3=98F5?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 Ovingsforelesninger/OF5/tasks.ipynb | 268 ++++++++++++++++++++++++++++
 1 file changed, 268 insertions(+)
 create mode 100644 Ovingsforelesninger/OF5/tasks.ipynb

diff --git a/Ovingsforelesninger/OF5/tasks.ipynb b/Ovingsforelesninger/OF5/tasks.ipynb
new file mode 100644
index 0000000..c8089c5
--- /dev/null
+++ b/Ovingsforelesninger/OF5/tasks.ipynb
@@ -0,0 +1,268 @@
+{
+ "cells": [
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "# Øvingsforelesning 5 - TDT4110\n",
+    "\n",
+    "### Repetisjon for IØ1"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 1\n",
+    "\n",
+    "Vi ønsker å regne ut både overflatearealet og volumet av en boks.\n",
+    "\n",
+    " 1. Ta inn verdier for `lengde`, `bredde` og `høyde` fra bruker.\n",
+    " 2. Print ut `Volumet er {volum} og arealet er {areal}`\n",
+    "\n",
+    "$$V = l w h$$\n",
+    "$$A = 2(lw + wh + hl)$$"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": []
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 2: Sekunder til tid\n",
+    "\n",
+    "1. La brukeren skrive inn et antall sekunder `s`\n",
+    "2. Dette skal konverteres til formatet `t:m:s`, og printes ut. Her står `t` for timer, `m` for minutter og `s` for sekunder. Hvis tiden er mindre enn 1 time skal den printe `m:s`. Ellers skal den printe `t:m:s`.\n",
+    "\n",
+    "Eks. på riktig output:\n",
+    "\n",
+    " - 45 -> `0:45`\n",
+    " - 143 -> `2:23`\n",
+    " - 3729 -> `1:02:09`\n",
+    "\n",
+    " Legg merke til at hvis antall sekunder (og minutter hvis det er over en time) er mindre enn 10 skal det printes ut en 0 foran."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 3: Bergen prisrabatt\n",
+    "\n",
+    "Lag et Python-program som beregner en prisrabatt basert på kjøpesummen til en kunde. Bruk følgende regler for rabattberegning:\n",
+    "\n",
+    " - Hvis kjøpesummen er 1000 kr eller mer, skal kunden få 10% rabatt.\n",
+    " - Hvis kjøpesummen er mellom 500 kr (inkludert) og 999,99 kr, skal kunden få 5% rabatt.\n",
+    " - Ellers skal kunden ikke få noen rabatt.\n",
+    "\n",
+    "Programmet skal be brukeren om å angi kjøpesummen, beregne rabatten og deretter vise den endelige prisen etter rabatten er trukket fra."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 4: Multiplikasjonstabell\n",
+    "\n",
+    "Lag et Python-program som genererer en multiplikasjonstabell for et valgt tall. \n",
+    "\n",
+    "Programmet skal tillate brukeren å angi tallet de ønsker å generere multiplikasjonstabellen for, og deretter skal den generere og vise multiplikasjonstabellen for dette tallet fra 1 til og med 10. \n",
+    "\n",
+    "I tillegg skal programmet beregne og vise gjennomsnittet av tallene i tabellen."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Oppgave 5: Telle bokstaver\n",
+    "\n",
+    "Lag et Python-program som ber brukeren om å skrive inn en setning, og deretter teller antall bokstaver (alfabetiske tegn) i setningen. Programmet skal også telle antall mellomrom i setningen.\n",
+    "\n",
+    "**Hint:** Benytt metodene str#isalpha() og str#isspace()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 6: Hva er størst?\n",
+    "\n",
+    "Lag et program som ber brukeren om et flyttall helt til brukeren skriver “avslutt”. \n",
+    "\n",
+    "Når brukeren skriver “avslutt” skal programmet printe ut det største og det minste tallet av de tallene som er skrevet inn."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 7\n",
+    "\n",
+    "Vi ønsker å forbedre løsningen vår fra oppgave 1 til å benytte to funksjoner for utregning. Lag funksjonene\n",
+    " - `get_volume(lenght, height, width)`\n",
+    " - `get_total_surface_area(length, height, width)`\n",
+    "\n",
+    "\n",
+    "$$V = l w h$$\n",
+    "$$A = 2(lw + wh + hl)$$"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 8: Mønster av tall\n",
+    "\n",
+    "Lag et Python-program som ber brukeren om å oppgi et positivt heltall (n). Programmet skal deretter bruke nøstede for-løkker for å generere et mønster av tall som ser slik ut:\n",
+    "\n",
+    "**n = 5:**\n",
+    "```\n",
+    "1\n",
+    "12\n",
+    "123\n",
+    "1234\n",
+    "12345\n",
+    "```\n",
+    "\n",
+    "**n = 3:**\n",
+    "```\n",
+    "1\n",
+    "12\n",
+    "123\n",
+    "```"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "#### Oppgave 9: Karakter til tall\n",
+    "\n",
+    "Lag 2 funksjoner som gjør om mellom bokstavkarakter og tall:\n",
+    " - `convert_grade(grade)`\n",
+    " - `convert_score(score)`\n",
+    "\n",
+    "| Karakter | Score |\n",
+    "| --- | --- |\n",
+    "| A | 5 |\n",
+    "| B | 4 |\n",
+    "| C | 3 |\n",
+    "| D | 2 |\n",
+    "| E | 1 |\n",
+    "| F | 0 |"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  },
+  {
+   "cell_type": "markdown",
+   "metadata": {},
+   "source": [
+    "### Oppgave 10: Karakterkalkulator\n",
+    "\n",
+    "Du lurer på hva snittet ditt hos NTNU er. Bruk funksjonene fra forrige oppgave til å lage en snittkalkulator. Denne skal be om bokstavkarakterer til brukeren skriver “avslutt”, og deretter printe ut snittet av disse."
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "# Skriv kode her"
+   ]
+  }
+ ],
+ "metadata": {
+  "language_info": {
+   "name": "python"
+  },
+  "orig_nbformat": 4
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}
-- 
GitLab