Wiederholung: Datentypen und Programmstrukturen

Aus ProgrammingWiki

Wechseln zu: Navigation, Suche

An einfachen Problemstellungen wollen wir ausgewählte Datentypen und Programmstrukturen in JavaScript wiederholen.

Inhaltsverzeichnis

Fakultät einer natürlichen Zahl

Die Fakultät einer natürlichen Zahl berechnet sich aus:

$n! = 1 \cdot 2 \cdot 3 \cdot ... \cdot n$

Implementiere diese Bildungsvorschrift mit einer Funktion und teste diese mit (kleinen) Argumenten.

 

Quelltext überprüfen:

Das Heron-Verfahren

Das Heron-Verfahren ist ein Näherungsverfahren zur Bestimmung der Quadratwurzel einer beliebigen positiven reellen Zahl $z$. Aus einem beliebigen Startwert $x$ ergibt sich aus der nachfolgenden Gleichung mit $x_0$ ein erster Näherungswert für $\sqrt{z}$:

$x_0 = \frac{x + \frac{z}{x}}{2}$

Wird $x_0$ als neuer Startwert in diese Gleichung eingsetzt, erhält man einen besseren Näherungswert.
Durch mehrfaches Anwenden dieses Verfahrens kann der Wert von $\sqrt{z}$ mit beliebiger Genauigkeit angenähert werden.
Vervollständige dazu die entsprechende Funktion.

 

Quelltext überprüfen:

Die Fibonaccizahlen

Einer der bedeutendsten Mathematiker des Mittelalters, Leonardo Fibonacci di Pisa (* um 1180; † 1241), beschrieb die Fortpflanzung von Kaninchen mit der Zahlenfolge:

$1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...$

Definition:

$\mbox{fibo}(n)=\begin{cases}1,\mbox{wenn}\hspace{0.3em}n=1\\1,\mbox{wenn}\hspace{0.3em}n=2\\\mbox{fibo}(n-1)+\mbox{fibo}(n-2),\mbox{sonst}\end{cases}$

Beschreibung:

  • Die ersten beiden Glieder der Zahlenfolge sind jeweils 1.
  • Jedes weitere Glied ergibt sich aus der Summe seiner beiden Vorgänger.


Eine allgemeine Formel zur Berechnung der n-ten Fibonaccizahl wurde unabhängig voneinander von den französischen Mathematikern Abraham de Moivre (* 26. Mai 1667; † 27. November 1754) erst im Jahr 1718 und Jacques Philippe Marie Binet (* 2. Februar 1786; † 12. Mai 1856) sogar erst im Jahr 1843 entdeckt.

Berechnung der "Kaninchenaufgabe" mit der Fibonacci-Folge

Ergänze die nachfolgende Funktion und teste sie mit kleinen Argumenten.

 

Quelltext überprüfen:

Zufallszahlen

Mit den nachfolgenden Funktionen lassen sich beliebige Zufallszahlen ereugen:

Math.random() ... erzeugt eine (rationale) Zufallszahl $z$ im Intervall $0 \le z < 1$
Math.floor(z) ... rundet die Zahl $z$ auf die nächstniedrigere ganze Zahl ab

Experimentiere mit diesen Funktionen, so dass große ganze Zufallszahlen generiert werden.

Vervollständige nun die nachfolgende Funktion, mit der das Werfen eines Würfels simuliert werden soll.

 

Quelltext überprüfen:

Zufallsexperimente

Werfen einer Münze

Simuliere mit der nachfolgenden Prozedur das Werfen einer Münze. Dabei soll ausgegeben werden, wie oft Kopf und Zahl gefallen sind.

Würfeln mit einem Würfel

Wie oft muss im Mittel ein Würfel geworfen werden, bis nacheinander zwei Sechsen gefallen sind?

Würfeln mit zwei Würfeln

Wie oft müssen im Mittel zwei Würfel geworfen werden, bis beide Augenzahlen gleich sind?

Widerstandsnetzwerk

Zunächst besteht eine einfache elektrische Grundschaltung aus 2 gleichgroßen Widerständen. Durch Anhängen weiterer dieser Grundschaltungen entsteht daraus ein komplexes Widerstandsnetzwerk:

Widerstandsnetzwerk1.GIF


Entwickle eine Funktion, die den Gesamtwiderstand zwischen den Anschlussklemmen und berechnet, wenn Grundschaltungen zu diesem Widerstandsnetzwerk zusammengesetzt wurden.

 

Quelltext überprüfen:

Persönliche Werkzeuge