Goldener Schnitt (Schleifen)
Schreiben Sie ein Programm, das die ersten 30 Zahlen (n = 1 ... 30) der Serie {p^n}/{\sqrt{5}} ausgibt. Die Zahlen sollen vor der Ausgabe auf die nächste ganze Zahl auf- bzw. abgerundet werden. Dabei ist p das Verhältnis im Goldenen Schnitt: p = 1.61803398874989484820…. Berechnen Sie p^n sukzessive in der Schleife. Beginnen Sie mit pHochN = p und multiplizieren Sie pHochN in jedem Durchlauf mit p. Was sind das wohl für Zahlen in der gesuchten Serie?
0 Kommentare
4 Lösung(en)
public class Phi {
public static void main(String args[]) {
new Phi() . top();
}
/**
* Phi oder der goldene Schnitt
*/
private void top() {
double phi = 1.618033988749894D;
double s5 = Math.sqrt(5.0);
int i = 1;
double phiHochN = phi;
while(i < 31) {
double result = phiHochN / s5;
System.out.println(i + ". = " + Math.round(result));
phiHochN = phiHochN * phi;
i = i + 1;
}
}
} // end of class Phi
p = 1.61803398874989484820
s = 5.0 **(1/2)
pHochN = p
i = 1
while i < 31:
result = pHochN / s
print("{0}. = {1}".format(i, round(result)))
pHochN = pHochN * p
i = i + 1
Lösung von: Alex Groeg (Freies Lernen)
const PHI = 1.6180339887498948482;
function goldenRatio(n) {
return Math.round(PHI ** n / Math.sqrt(5));
}
function nthFibonacci(n) {
if (n == 1 || n == 2) return 1;
let prevPrev = 1, prev = 1, cur;
for (let i = 2; i < n; i++) {
cur = prevPrev + prev;
prevPrev = prev;
prev = cur;
}
return cur;
}
let arr = [];
for (let i = 1; i <= 30; i++)
arr.push([goldenRatio(i), nthFibonacci(i)]);
console.table(arr);
Lösung von: Lisa Salander (Heidi-Klum-Gymnasium Bottrop)
// C++ 14 | VS-2022
#include <iostream>
#define SQRT_5 sqrt(5)
#define PHI (1 + SQRT_5) / 2
int main() {
auto p_pow_n{ PHI };
for (auto i{ 1 }; i < 31; i++) {
std::cout << floor(p_pow_n / SQRT_5 + 0.5) << "\n";
p_pow_n *= PHI;
}
}
Lösung von: Jens Kelm (@JKooP)
Verifikation/Checksumme:
Das Resultat sind die Zahlen der Fibonacci-Reihe: 1, 1, 2, 3, 5, 8, ...
Aktionen
Neue Lösung hinzufügen
Bewertung
Durchschnittliche Bewertung:
Meta
Zeit: | 0.5 |
Schwierigkeit: | k.A. |
Webcode: | 99id-v8un |
Autor: | Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch) |