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