\documentclass[11pt,norsk]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{babel}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{amsthm}

\usepackage{../MAT-INF1100-oppg}


\begin{document}
\begin{flushright}
\small 3.~september, 2015
\end{flushright}
\vspace{10mm}

\begin{center}
\huge MAT-INF 1100: Obligatorisk oppgave 1\\
\vspace{5mm}
\Large  Innleveringsfrist: 17/9-2015, kl. 14:30
\end{center}
\vspace{1mm}


\subsection*{Informasjon} Den skriftlige besvarelsen skal enten leveres i Devilry, eller i obligkassa som st氓r i gangen utenfor ekspedisjonen i 7.~et. i Niels Henrik Abels hus.
Frist er {\em kl. 14.30 torsdag 17/9}. Besvarelsen {\em skal} v忙re skrevet av deg selv, for h氓nd eller p氓 datamaskin.

Studenter som blir syke eller av andre grunner trenger 氓 s酶ke om utsettelse for denne obligatoriske oppgaven, m氓 ta kontakt med studieadministrasjonen ved Matematisk institutt (7.
et. Niels Henrik Abels hus, telefon 22~8558 88,  e-post: studieinfo@math.uio.no) i god tid f酶r innleveringsfristen.

Du kan l忙re masse fra medstudenter s氓 det er b氓de lurt og l忙rerikt 氓 中国竞猜网_中国足彩网-足球推荐e med andre i arbeidet med oppgavene.  Gruppel忙rerne har ogs氓 anledning til 氓 hjelpe, men ikke med ferdige l酶sninger. M氓let med den
obligatoriske oppgaven er at den skal bidra til l忙ring, men {\em den endelige besvarelsen som du leverer m氓 du skrive selv, og du m氓 kunne redegj酶re for innholdet ved en eventuell muntlig h酶ring (aktuelt ved mistanke om ren avskrift, det gir dessverre ikke s氓 mye l忙ring :-)).}

Husk at de to obligatoriske oppgavene i MAT-INF 1100 begge m氓 best氓s for 氓 kunne g氓 opp til endelig eksamen i kurset.
{\em For 氓 f氓 best氓tt p氓 denne f酶rste obligatoriske oppgaven m氓 du gj酶re seri酶se l酶sningsfors酶k p氓 alle oppgavene, og minst to av de fire oppgavene b酶r v忙re riktig besvart.}
\newpage

\begin{oppgaver}

\oppgave Uttrykk f酶lgende tall som en sifferutvikling i 2-tallsystemet, det vil si skriv dem p氓 formen  $(d_n d_{n-1}\ldots d_1 d_0\, .\,  d_{-1}d_{-2}\ldots)_2$. Angi den repeterende sekvensen i de tilfellene der sifrene gjentar seg.
\begin{deloppgaver}
\oppgave $\textrm{da7}_{16}$
\oppgave $29/64$
\oppgave $1/25$
\oppgave $0.4_{16}$
\oppgave $\textrm{b2c}_{16}/1000_{16}$.

\end{deloppgaver}

\oppgave 
F酶lgen $\{x_n\}$ er gitt ved differensligningen
$$
x_n=\bigl(\cos(x_{n-1})\bigr)^2\sin(x_{n-2}) \quad \text{for $n\ge2$}
$$
og  $x_0=\pi/2$ og $x_1=3$.
Vis ved induksjon at $0\le x_n\le 1$ for alle heltall $n\ge2$. 

\oppgave  
I denne oppgaven skal vi l酶se annengradsligninger p氓 datamaskin.

\begin{deloppgaver} 

\oppgave Skriv et Python-program som regner ut de reelle r酶ttene til annengradspolynomet $a x^2+b x + c=0$, og skriver de ut. Du kan bruke formlene  
$$x_1=\frac{-b-\sqrt{b^2-4ac}}{2a}, \quad x_2=\frac{-b+\sqrt{b^2-4ac}}{2a}$$
for de to l酶sningene. Koeffisientene  $a$, $b$ og $c$ er reelle tall, og skal leses inn fra terminalen. Programmet ditt trenger ikke ta h酶yde for at $a$ kan v忙re $0$, eller at du
kan f氓 et negativt tall under rottegnet. Test programmet ditt med tre eksempler som du ogs氓 l酶ser manuelt for 氓 sjekke at det er riktig.

\oppgave
Bruk programmet i a) til 氓 l酶se ligningen
$$10^{-8}x^2+10x+10^{-8}=0$$
(i terminalen kan du skrive {\tt 1e-8} i stedet for {\tt 10**(-8)}, for at Python skal klare 氓 tolke tallene som flyttall).
En av r酶ttene $x_1$, $x_2$ som maskinen regner ut vil f氓 stor relativ avrundingsfeil p氓 datamaskinen. Hvilken av r酶ttene gjelder dette, og hva skyldes det?
Foresl氓 en alternativ formel for denne roten som unng氓r problemet.

\end{deloppgaver}

\pagebreak
\oppgave
F酶lgende python-program er gitt:

\begin{verbatim}
from random import random

antfeil = 0; N = 10000
x0 = y0 = z0 = 0.0
feil1 = feil2 = 0.0

for i in range(N):
    x = random(); y = random(); z = random();
    res1 = (x + y)**3
    res2 = x**3 + 3*x**2*y + 3*x*y**2 + y**3
    
    if res1 != res2:
        antfeil += 1
        x0 = x; y0 = y; z0 = z
        feil1 = res1
        feil2 = res2

print (100. * antfeil/N)
print x0, y0, z0, feil1 - feil2
\end{verbatim}

En kj酶ring av programmet ga utskriften

{\small\begin{verbatim}
50.64
0.82693218052 0.276620385833 0.244855430623 -4.4408920985e-16
\end{verbatim}
}

\begin{deloppgaver}
\oppgave Forklar hva programmet gj酶r og hva utskriften forteller oss.
\oppgave Endre programmet slik at det i stedet sammenligner de to st酶rrelsene \verb/x+(y+z)/ og \verb/(x+y)+z/, og kj酶r det p氓 nytt. Du skal n氓 se at det f酶rste tallet som blir
skrevet ut er lavere enn det f酶rste tallet som ble skrevet ut over (d.v.s. {\tt 50.64}). Kan du tenke deg en mulig forklaring p氓 dette?
\end{deloppgaver}

\vspace{1cm}
\centerline{\em Lykke til!!}

\end{oppgaver}




\end{document}




