{ "cells": [ { "cell_type": "markdown", "metadata": { "deletable": false, "run_control": { "frozen": true } }, "source": [ "<nav class=\"navbar navbar-default\">\n", " <div class=\"container-fluid\">\n", " <div class=\"navbar-header\">\n", " <a class=\"navbar-brand\" href=\"_Oving3.ipynb\">Øving 3</a>\n", " </div>\n", " <ul class=\"nav navbar-nav\">\n", " <li ><a href=\"Intro%20til%20lokker.ipynb\">Intro til løkker</a></li>\n", " <li ><a href=\"Mer%20om%20lokker.ipynb\">Mer om løkker</a></li>\n", " <li><a href=\"Nostede%20lokker.ipynb\">Intro til nøstede løkker</a></li>\n", " <li ><a href=\"Kodeforstaelse.ipynb\">Kodeforståelse</a></li>\n", " <li ><a href=\"Gjett%20tallet.ipynb\">Gjett tallet</a></li>\n", " <li ><a href=\"Tekstbasert%20spill%202.ipynb\">Tekstbasert spill 2</a></li>\n", " <li ><a href=\"Geometrisk%20rekke.ipynb\">Geometrisk rekke</a></li>\n", " <li class=\"active\"><a href=\"Fibonacci.ipynb\">Fibonacci</a></li>\n", " <li><a href=\"Alternerende%20sum.ipynb\">Alternerende sum</a></li>\n", " <li ><a href=\"Hangman.ipynb\">Hangman</a></li>\n", " <li ><a href=\"Derivasjon.ipynb\">Derivasjon</a></li>\n", " <li ><a href=\"Doble%20lokker.ipynb\">Doble løkker</a></li>\n", " </ul>\n", " </div>\n", "</nav>\n", "\n", "# Fibonacci\n", "\n", "**Læringsmål:**\n", "\n", "* Løkker\n", "\n", "\n", "<br><br>\n", "I denne oppgaven skal du lage en funksjon som ved help av løkker regner ut fibonaccitall. \n", "\n", "Fibonaccitallene er definert som følger: \n", "\n", "* **f(0)=0**\n", "* **f(1)=1**\n", "* **f(k)=f(k−1)+f(k−2)**\n", "\n", "Det vil si at de to første tallene i rekken er 0 og 1, deretter er det neste tallet summen av de to forrige tallene. Starten på rekken ser derfor slik ut: 0 1 1 2 3 5 8 13 ..." ] }, { "cell_type": "markdown", "metadata": { "deletable": false, "run_control": { "frozen": true } }, "source": [ "**a)** Lag en funksjon, *fibonacci(k)* som regner ut og returnerer det k-te fibonaccitallet ved hjelp av iterasjon. Du kan sjekke om du har gjort det riktig ved å kalle *fibonacci(10)*. Har du gjort det rett skal funksjonen returnere 34. **Husk at det første tallet i rekken er tall nummer 0**\n", "\n", "***Skriv koden din her:***" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "end_time": "2019-07-03T05:55:08.163277Z", "start_time": "2019-07-03T05:55:08.156436Z" } }, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": { "deletable": false, "run_control": { "frozen": true } }, "source": [ "**b)** Skriv om funksjonen i deloppgave a) slik at den også returnerer summen av alle fibonaccitallene. Har du gjort det rett det rett skal kallet til *fibonacci_sum(10)* bli *(34, 88)*." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] }, { "cell_type": "markdown", "metadata": { "deletable": false, "run_control": { "frozen": true } }, "source": [ "**c)** (**Frivillig**, vanskeligere oppgave) Modifiser funksjonen til å returnere en liste med alle fibonaccitallene opp til og med f(k).\n", "\n", "Kallet *fibonacci_list(10)* skal se ut som følger: \n", "*\\[0, 1, 1, 2, 3, 5, 8, 13, 21, 34\\]*" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "celltoolbar": "Edit Metadata", "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.4" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": false } }, "nbformat": 4, "nbformat_minor": 2 }